/* ==========================================================================
   Gaya Halaman Profil Dosen (Desain Baru)
   ========================================================================== */

/* Container Utama */
.prodi-profil-container {
    margin-top: 20px;
}

/* Gaya dasar untuk semua kartu */
.profil-card {
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 5px 25px rgba(0, 87, 158, 0.07);
    border: 1px solid #e9e9e9;
}

/* Kartu Utama (Header) */
.profil-utama {
    display: flex;
    align-items: flex-start;
    gap: 30px;
    flex-wrap: wrap;
    align-items: stretch;
    position: relative; 
}

.profil-foto-wrapper {
    flex-shrink: 0;
}
.profil-foto, .profil-foto-placeholder {
    width: 180px;
    height: 240px;
    border-radius: 12px; /* Diubah dari bulat menjadi kotak rounded */
    object-fit: cover;
    display: block;
    border: 5px solid #fff;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1);
}
.profil-foto-placeholder {
    background-color: #e2e8f0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%2394a3b8'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");
    background-size: 50%;
    background-position: center;
    background-repeat: no-repeat;
}

.profil-info-wrapper {
    flex-grow: 1;
}

.profil-nama {
    margin-top: 0;
    margin-bottom: 5px;
    font-size: 28px;
    font-weight: 700;
    color: #0d1e4d;;
}

.profil-inisial-badge {
    display: inline-block;
    background-color: #090999;
    color: #fff;
    padding: 4px 12px;
    border-radius: 50px;
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 20px;
}
    
.profil-meta-list {
    list-style: none;
    padding: 0;
    margin: 0;
    color: #475569;
    font-size: 14px; /* Sedikit memperbesar font data */
    line-height: 1.2; /* Menambah jarak antar baris */
    border-left: 8px solid #090999; /* Menambahkan border biru tebal */
    padding-left: 5px; /* Memberi jarak antara border dan teks */
}
.profil-meta-list li {
    margin-bottom: 4px;
}
.profil-meta-list li strong {
    display: none;
    /*color: #334155;*/
}


/* Grid Bagian Bawah */
.profil-grid-bawah {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* Membuat 3 kolom */
    gap: 30px;
    margin-top: 30px;
}

/* Kartu Detail mengambil 2/3 ruang */
.profil-detail {
    grid-column: span 2;
}
/* Wadah kanan mengambil 1/3 ruang */
.profil-kolom-kanan-grid {
    grid-column: span 1;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

/* Styling konten di dalam kartu bawah */
.profil-detail h3, .profil-keahlian h3 {
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 18px;
    color: #0d1e4d;
    border-bottom: 1px solid #e2e8f0;
    padding-bottom: 10px;
}

.profil-detail-list dt {
    font-weight: 600;
    color: #0d1e4d;
    font-size: 14px;
    margin-bottom: 5px;
}
.profil-detail-list dd {
    margin: 0 0 15px 0;
    color: #475569;
    font-size: 15px;
    line-height: 1.6;
}

.profil-keahlian p {
    margin: 0;
    color: #475569;
    font-size: 15px;
    line-height: 1.6;
}



/* Tampilan di layar kecil (tablet ke bawah) */
@media (max-width: 992px) {
    .profil-grid-bawah {
        grid-template-columns: 1fr; /* Semua kartu menjadi satu kolom */
    }
    .profil-detail { grid-column: span 1; }
    .profil-kolom-kanan-grid { grid-column: span 1; }
}

/* Menghapus dekorasi link dari kartu dosen */
a.prodi-dosen-card-link, a.prodi-dosen-card-link:hover {
    text-decoration: none;
}



/* ==========================================================================
   PERBAIKAN FINAL: Tata Letak & Gaya Kartu Diagram
   ========================================================================== */

/* Mengatur kartu diagram menjadi flex column */
.profil-chart-wrapper {
    flex: 1;
    min-width: 300px;
    border: 1px solid #e2e8f0;
    border-radius: 12px;
    display: flex;
    flex-direction: column; /* Menyusun item dari atas ke bawah */
    padding: 20px;
}


/* Kanvas untuk chart, mengambil sisa ruang */
#dosenSpiderChart {
    flex-grow: 1;
}


/* ==========================================================================
   PERBAIKAN: Legenda Perbandingan Vertikal
   ========================================================================== */

.profil-chart-legend {
    text-align: center;
    margin-top: 15px;
    font-size: 13px;
    color: #475569;
    line-height: 1.5; /* Memberi jarak antar baris */
}

.profil-chart-legend span {
    display: block; /* Membuat setiap span berada di baris baru */
    font-weight: bold;
}

.profil-chart-legend .legend-vs {
    font-weight: normal; /* Teks 'vs' tidak tebal */
    font-size: 12px;
}

.legend-color-1 {
    color: #090999;
}

.legend-color-2 {
    color: #d63638;
}

/* ==========================================================================
   PERBAIKAN FINAL & UTUH: Dropdown Pencarian Pembanding
   ========================================================================== */

/* Wadah dropdown pencarian */
.prodi-compare-box {
    max-width: 260px;
    width: 100%;
    margin-bottom: 15px;
    margin-left: auto;
    margin-right: auto;
}

/* --- Bagian Inti dari Choices.js --- */
.choices {
    width: 100%;
}

.choices__inner {
    display: flex;
    align-items: center;
    background-color: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 50px !important;
    padding: 6px 15px !important;
    min-height: auto;
    font-size: 13px;
}

/* Mengatur posisi ikon panah dropdown (selalu di kanan) */
.choices[data-type*="select-one"]::after {
    content: '';
    height: 0;
    width: 0;
    border-style: solid;
    border-width: 5px 5px 0 5px;
    border-color: #090999 transparent transparent transparent;
    position: absolute;
    right: 20px;
    top: 50%;
    margin-top: -2.5px;
    pointer-events: none;
    transition: transform 0.2s ease;
}
.choices[data-type*="select-one"].is-open::after {
    transform: rotate(180deg);
}

/* Mengatur gaya dan posisi tombol hapus (x) */
.choices__button {
    flex-shrink: 0 !important;
    margin-left: 8px !important;
    padding: 0 !important;
    background: transparent !important; /* Tombolnya sendiri kita buat transparan */
    border: none !important;
    width: 20px !important;
    height: 20px !important;
    border-radius: 50% !important;
    position: relative;
    cursor: pointer;
    font-size: 0 !important; /* Ini tetap di sini untuk mencegah distorsi */
}

.choices__button::before {
    content: ''; /* Konten dikosongkan agar background bisa terlihat */
    color: white !important;
    background-color: #ef4444;
    border-radius: 50%;
    display: block;
    width: 100%;
    height: 100%;
    transition: background-color 0.2s ease;

    /* ===== PERBAIKAN: Menggunakan ikon SVG ===== */
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' viewBox='0 0 16 16'%3E%3Cpath d='M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 80% 80%; /* Ukuran ikon 'x' di dalam lingkaran */
}

.choices__button:hover::before {
    background-color: #dc2626; /* Warna merah lebih gelap saat hover */
}

.choices__button:hover {
    background: #dc2626 !important; /* Warna merah lebih gelap */
}



/* Mengatur daftar dropdown */
.choices__list--dropdown {
    margin-top: 5px !important;
    border-radius: 8px !important;
    border: 1px solid #e2e8f0 !important;
    max-height: 200px;
    overflow-y: auto;
    z-index: 10;
}

.choices__item--selectable.is-highlighted {
    background-color: #090999 !important;
    color: #FFFFFF !important; /* <-- warna text*/
}

/* ==========================================================================
   PERBAIKAN FINAL: Sembunyikan panah dropdown jika sudah ada pilihan
   ========================================================================== */
.choices.is-chosen[data-type*="select-one"]::after {
    display: none !important;
}

/* Memastikan tombol 'x' tidak terdorong keluar */
.choices__inner {
    padding-right: 15px !important;
}
.choices__list--single {
    padding-right: 25px !important;
}

/* ==========================================================================
   PERBAIKAN: Kontras Warna Teks pada Combobox Pembanding
   ========================================================================== */

/* Mengubah warna teks yang dipilih (misal: "ADR") dan placeholder menjadi putih */
.choices__inner .choices__list--single .choices__item,
.choices__inner .choices__placeholder {
    color: #070e32 !important;
    opacity: 1; /* Memastikan teks tidak transparan */
}

/* Mengubah warna panah dropdown menjadi putih */
.choices[data-type*="select-one"]::after {
    border-color: #FFFFFF transparent transparent transparent !important;
}

.choices__placeholder {
    font-size: 12px !important;
    white-space: nowrap;      
    overflow: hidden;        
    text-overflow: ellipsis;   
    width: 100%;              
}

/* ==========================================================================
   PENGATURAN WARNA PANAH DROPDOWN
   ========================================================================== */

.choices[data-type*="select-one"]::after {
    border-color: #070e32 transparent transparent transparent !important; 
}

/* ==========================================================================
   GAYA UNTUK GRUP BADGE PROFIL (INISIAL, SINTA, SCHOLAR)
   ========================================================================== */

/* Wadah untuk mensejajarkan semua badge */
.profil-badge-group {
    display: flex;
    align-items: center;
    gap: 10px; /* Jarak antar badge */
    margin-bottom: 20px; /* Jarak ke elemen di bawahnya */
}

/* Mengatur agar badge inisial tidak berubah posisi */
.profil-inisial-badge {
    margin-bottom: 0; 
}


/* [PERUBAHAN] Gaya untuk link logo SINTA, Scholar, Scopus (Pill Stroke) */
.profil-external-badge {
    display: inline-flex; /* Gunakan flex agar padding rapi */
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all 0.2s ease;
    margin: 0 2px; /* Jarak antar logo */
    
    /* [BARU] Gaya Pill Stroke */
    padding: 5px; /* Padding di dalam border (sesuaikan 6px jika perlu) */
    border: 1px solid #cbd5e1; /* Stroke/garis tepi abu-abu muda */
    border-radius: 50px; /* Bentuk Pil */
    background: transparent; /* Tanpa background */
    line-height: 1; /* Mencegah tinggi aneh */
    vertical-align: middle; /* Sejajarkan dengan badge inisial */
}

/* [PERUBAHAN] Gaya untuk gambar logo di dalam link */
.profil-logo-badge {
    height: 18px; /* [PERUBAHAN] Perkecil logo agar muat di dalam padding */
    width: auto; 
    display: block; /* Hapus vertical-align, gunakan flex parent */
    transition: all 0.2s ease;
    opacity: 0.85; 
}

/* [PERUBAHAN] Efek hover sekarang pada link (badge-nya) */
.profil-external-badge:hover {
    border-color: #090999; /* Stroke menjadi biru saat hover */
    background: #f8fafc; /* Latar abu-abu sangat muda saat hover */
}
.profil-external-badge:hover .profil-logo-badge {
    opacity: 1; /* Tampil penuh saat hover */
    transform: scale(1.05); /* Sedikit membesar */
}
/* ==========================================================================
   GAYA UNTUK KARTU DAFTAR PUBLIKASI
   ========================================================================== */

.profil-publikasi-wrapper {
    margin-top: 30px; /* Jarak dari grid di atasnya */
}

.profil-publikasi-wrapper h3 {
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 18px;
    color: #0d1e4d;
    border-bottom: 1px solid #e2e8f0;
    padding-bottom: 10px;
}

.profil-publikasi-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.profil-publikasi-list li {
    padding: 15px 0;
    border-bottom: 1px solid #f1f5f9;
}
.profil-publikasi-list li:last-child {
    border-bottom: none;
}

.publikasi-title {
    font-size: 16px;
    font-weight: 600;
    color: #090999;
    text-decoration: none;
    display: block;
    margin-bottom: 5px;
    transition: color 0.2s ease;
}
.publikasi-title:hover {
    color: #06066e;
}

.publikasi-authors, .publikasi-info {
    font-size: 14px;
    color: #64748b;
    line-height: 1.5;
}

.publikasi-authors {
    margin-bottom: 3px;
}

.publikasi-citations {
    font-size: 13px;
    color: #0d1e4d;
    font-weight: 500;
    margin-top: 8px;
    display: inline-block;
    background-color: #eef2ff;
    padding: 3px 10px;
    border-radius: 4px;
}

/* ==========================================================================
   GAYA UNTUK PUBLIKASI "TAMPILKAN SEMUA"
   ========================================================================== */

/* Sembunyikan item publikasi setelah urutan ke-5 secara default */
.publication-item-hidden {
    display: none;
}

/* Tampilkan item yang tersembunyi jika list memiliki class 'is-expanded' */
.profil-publikasi-list.is-expanded .publication-item-hidden {
    display: list-item;
}

/* Gaya untuk tombol buka/tutup (tirai) */
.publication-toggle-button {
    text-align: center;
    margin-top: 10px;
    padding: 8px;
    cursor: pointer;
    border-top: 1px solid #f1f5f9;
    color: #64748b;
}
.publication-toggle-button:hover {
    background-color: #f8fafc;
}

/* Gaya untuk ikon segitiga */
.publication-toggle-button .toggle-icon {
    display: inline-block;
    transition: transform 0.3s ease;
    font-size: 14px;
    font-size: 25px; /* <-- UBAH UKURAN DI SINI */
    color: #090999;  /* <-- TAMBAHKAN WARNA DI SINI (contoh: biru tua) */
}

/* Putar ikon segitiga jika tombol memiliki class 'is-expanded' */
.publication-toggle-button.is-expanded .toggle-icon {
    transform: rotate(180deg);
}

/* ==========================================================================
   GAYA UNTUK TAB DI HALAMAN PROFIL
   ========================================================================== */

/* Wadah utama untuk navigasi tab */
.prodi-profil-container .prodi-tabs {
    display: flex;
    border-bottom: 1px solid #e2e8f0;
    margin-bottom: 0;
}

/* Tautan tab individual */
.prodi-profil-container .prodi-tab-link {
    padding: 12px 20px;
    font-size: 14px;
    text-decoration: none;
    font-weight: 500;
    color: #64748b;
    border: 1px solid transparent;
    border-bottom: none;
    margin-bottom: -1px;
    transition: all 0.2s ease-in-out;
}

/* Gaya untuk tab yang aktif */
.prodi-profil-container .prodi-tab-link.active {
    color: #090999;
    font-weight: 600;
    border-color: #e2e8f0;
    border-bottom-color: #ffffff;
    border-radius: 8px 8px 0 0;
    background-color: #ffffff;
}

/* Efek saat mouse di atas tab yang tidak aktif */
.prodi-profil-container .prodi-tab-link:not(.active):hover {
    color: #1e293b;
}

/* ==========================================================================
   PERBAIKAN: Ikon Tab & Efek Konten Menyatu
   ========================================================================== */

/* Memberi gaya pada wadah konten utama sebagai KARTU */
.prodi-profil-container .prodi-tab-content {
    background: transparent;
    border: none;
    padding: 0;
    box-shadow: none;
    margin-top: 20px; /* Memberi jarak antara tab dan kartu pertama di bawahnya */
}

/* Menyesuaikan gaya tab aktif agar benar-benar menyatu */
.prodi-profil-container .prodi-tab-link.active {
    border-color: #e2e8f0;
    border-bottom-color: transparent; /* Cukup hilangkan border bawah */
    background-color: #f8fafc; /* Beri sedikit warna berbeda */
    z-index: 2;
}

/* Pastikan semua kartu di dalam tab konten memiliki margin */
.prodi-tab-content .profil-card {
    margin-bottom: 30px;
}

.prodi-tab-content .profil-grid-bawah {
    margin-top: 0; /* Hapus margin atas dari grid bawah */
}

/* MENAMBAHKAN IKON PADA TAB */
.prodi-profil-container .prodi-tab-link {
    display: flex; /* Aktifkan flexbox untuk mensejajarkan ikon dan teks */
    align-items: center;
    gap: 8px; /* Jarak antara ikon dan teks */
}

.prodi-profil-container .prodi-tab-link::before {
    content: '';
    display: inline-block;
    width: 18px;
    height: 18px;
    background-color: currentColor;
    -webkit-mask-size: cover;
    mask-size: cover;
}

/* Ikon untuk Tab Profil (default) */
.prodi-profil-container .prodi-tab-link:not([href*="tab="])::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M12 12c2.21 0 4-1.79 4-4s-1.79-4-4-4-4 1.79-4 4 1.79 4 4 4zm0 2c-2.67 0-8 1.34-8 4v2h16v-2c0-2.66-5.33-4-8-4z'/%3E%3C/svg%3E");
}

/* Ikon untuk Tab Statistik */
.prodi-profil-container .prodi-tab-link[href*="tab=statistik"]::before {
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M10 20h4V4h-4v16zm-6 0h4v-8H4v8zM16 9v11h4V9h-4z'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='currentColor'%3E%3Cpath d='M10 20h4V4h-4v16zm-6 0h4v-8H4v8zM16 9v11h4V9h-4z'/%3E%3C/svg%3E");
}

/* ==========================================================================
   GAYA UNTUK TAB STATISTIK
   ========================================================================== */

/* Membuat layout grid 2 kolom */
.statistik-grid-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 30px;
    align-items: start;
}

/* Mengatur agar semua kartu di dalam kolom kanan memiliki jarak */
.statistik-kolom-kanan {
    display: flex;
    flex-direction: column;
    gap: 30px; /* <-- Jarak antar kartu di kolom kanan disamakan */
}

/* === PERBAIKAN UTAMA ADA DI BAWAH INI === */

/* Gaya umum untuk judul section di dalam tab statistik */
.statistik-section-title {
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 18px;
    color: #0d1e4d; /* <-- Warna font header */
    border-bottom: 1px solid #e2e8f0; /* <-- Garis horizontal */
    padding-bottom: 15px; /* <-- Jarak antara judul dan garis */
    padding-top: 10px; /* <-- Jarak antara tepi atas kontainer dan judul */
}

/* Menghapus padding default dari SEMUA kartu agar judul bisa menempel rapi */
.profil-statistik-container,
.sinta-summary-card, 
.profil-diampu-container {
    padding: 0 !important;
}

/* Memberi padding spesifik pada SEMUA judul section */
.profil-statistik-container .statistik-section-title,
.sinta-summary-card .statistik-section-title,
.profil-diampu-container .statistik-section-title {
    padding-left: 25px;
    padding-right: 25px;
}

/* Memberi padding pada KONTEN di bawah SEMUA judul */
.skor-mk-list,
.sinta-summary-table {
    padding: 0 25px 25px 25px;
}

.skor-mk-list {
    display: flex;
    flex-direction: column;
}

.skor-mk-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 10px;
    border-bottom: 1px solid #f1f5f9;
}

.skor-mk-item:nth-child(even) {
    background-color: #f8fafc;
}
.skor-mk-item:last-child {
    border-bottom: none;
}

.skor-mk-info {
    display: flex;
    align-items: center;
    gap: 12px;
}

.skor-mk-title {
    font-weight: 500;
    color: #334155;
    font-size: 15px;
}

.skor-mk-code {
    font-size: 11px;
    font-weight: bold;
    color: #475569;
    background-color: #eef2ff;
    padding: 4px 8px;
    border-radius: 5px;
    flex-shrink: 0;
}

/* ===== GAYA WARNA SKOR (disalin dari style.css agar konsisten) ===== */
.pengampu-skor.skor-sangat-baik { background-color: #f0fdf4; color: #1da065; }
.pengampu-skor.skor-baik { background-color: #fff7ed; color: #9a3412; }
.pengampu-skor.skor-cukup { background-color: #fef2f2; color: #b91c1c; }
.pengampu-skor.skor-rendah { background-color: #f1f5f9; color: #475569; }



/* GAYA UNTUK KOLOM KANAN DI TAB STATISTIK */
.statistik-kolom-kanan {
    display: flex;
    flex-direction: column;
    gap: 10px; /* Jarak antar kartu di kolom kanan */
}

/* GAYA UNTUK TABEL SUMMARY SINTA */
.sinta-summary-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}
.sinta-summary-table th,
.sinta-summary-table td {
    padding: 10px;
    text-align: center;
    border-bottom: 1px solid #f1f5f9;
}
.sinta-summary-table th {
    font-weight: 600;
    color: #475569;
    background-color: #f8fafc;
}
.sinta-summary-table tbody td:first-child {
    text-align: left;
    font-weight: 500;
    color: #334155;
    padding-left: 35px;
}
.sinta-summary-table tbody tr:last-child td {
    border-bottom: none;
}
.sinta-summary-table td {
    color: #1e293b;
    font-weight: bold;
}

/*META GRID*/

/* Tata letak grid untuk 2 kolom meta */
.profil-meta-grid {
    display: flex;
    gap: 30px; /* Jarak antar kolom */
    align-items: flex-start;
    width: 100%;
}

/* [PERBAIKAN] Membagi ruang kolom meta (40% kiri, 60% kanan) */
.profil-meta-grid .profil-meta-list {
    padding-left: 20px; /* Jarak antara garis biru dan teks */
}

/* Atur kolom kiri (NIP/Lahir) agar lebih sempit */
.profil-meta-grid .profil-meta-list:first-child {
    flex: 0 0 40%; /* Lebar 40% */
}

/* Atur kolom kanan (Beban Dosen) agar mengambil sisa ruang */
.profil-meta-grid .profil-meta-list:last-child {
    flex: 1; /* Lebar 60% (mengisi sisa) */
}

/* Mengubah style item di dalam list */
.profil-meta-list li {
    padding: 2px 0; /* Memberi sedikit jarak vertikal */
}

/* Style untuk item di kolom kedua (Beban Dosen, dll) */
.profil-meta-list .meta-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 15px; /* Menyamakan ukuran font */
}

.profil-meta-list .meta-label {
    color: #475569; /* Warna abu-abu untuk label */
}

.profil-meta-list .meta-value {
    font-weight: 600; /* Teks tebal untuk nilai */
    color: #334155;
}

/* Gaya untuk Logo di Pojok Kartu Profil */
.profil-card-logo {
    position: absolute;
    top: 25px; /* Jarak dari atas */
    right: 30px; /* Jarak dari kanan */
    width: 80px; /* Lebar logo */
    height: auto;
    opacity: 1.0; /* Membuat logo transparan seperti watermark */
    pointer-events: none; /* Agar logo tidak bisa di-klik atau menghalangi elemen lain */
}


/* ==========================================================================
   GAYA UNTUK TOMBOL BANDINGKAN STATISTIK (VERSI FINAL)
   ========================================================================== */

/* Membuat kartu utama sebagai referensi posisi */
.profil-utama {
    position: relative;
    padding-bottom: 70px; /* Menambah ruang di bawah agar tombol tidak menimpa konten */
}

.profil-card.profil-utama {
    position: relative; 
}

/* Memposisikan wadah tombol di pojok kanan bawah */
.profil-compare-action {
    position: absolute;
    bottom: 30px; /* Jarak dari bawah */
    right: 30px;  /* Jarak dari kanan */
}

.button-compare-stats {
    display: inline-block;
    background-color: #090999; /* DIUBAH: Warna biru utama */
    color: #ffffff;             /* DIUBAH: Warna teks putih */
    padding: 10px 25px;          /* Disesuaikan agar lebih proporsional */
    border-radius: 50px;         /* DIUBAH: Menjadi bentuk pil */
    font-size: 14px;
    font-weight: bold;
    text-decoration: none;
    border: none;                /* Dihilangkan border */
    transition: all 0.2s ease;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}

.button-compare-stats:hover {
    background-color: #06066e; /* Warna biru lebih gelap saat hover */
    color: #ffffff;
    border-color: transparent;
    transform: translateY(-2px); /* Efek sedikit terangkat */
    box-shadow: 0 4px 10px rgba(9,9,153,0.2);
}

/* ==========================================================================
   GAYA FINAL UNTUK TATA LETAK PROFIL & JADWAL INLINE
   ========================================================================== */

/* Pastikan kartu utama bisa menampung konten baru yang memanjang */
.profil-utama {
    flex-wrap: wrap; 
}

/* Blok jadwal baru yang akan menempati lebar penuh di bawah info utama */
.profil-jadwal-inline {
    flex-basis: 100%; /* Ambil lebar penuh */
    margin-top: 25px;
    padding-top: 20px;
    border-top: 1px solid #f1f5f9; /* Garis pemisah tipis */
}

.profil-jadwal-title {
    margin-top: 0;
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: 600;
    color: #334155;
}

.jadwal-dosen-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.jadwal-dosen-item {
    margin: 0;
    padding: 0;
    font-size: 14px;
    color: #475569;
    line-height: 1.5;
}

.jadwal-dosen-item strong {
    color: #1e293b;
    margin-right: 5px;
}

.jadwal-kosong-info {
    font-style: italic;
    color: #94a3b8;
    margin: 0;
    padding: 10px 0;
}

/* ==========================================================================
   PERBAIKAN FINAL: KARTU JADWAL MENGGANTIKAN DETAIL
   ========================================================================== */

/* Hapus gaya untuk container jadwal yang lama */
.profil-jadwal-inline,
.profil-jadwal-title {
    display: none;
}

/* Pastikan judul di kartu baru konsisten dengan kartu lainnya */
.profil-detail h3 {
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 18px;
    color: #0d1e4d;
    border-bottom: 1px solid #e2e8f0;
    padding-bottom: 10px;
}

.profil-detail .jadwal-dosen-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* Membuat 3 kolom dengan lebar sama */
    gap: 10px; /* Jarak antar kartu jadwal */
}

/* Gaya untuk setiap kartu jadwal */
.profil-detail .jadwal-dosen-item {
    background-color: #f8fafc;      /* Latar abu-abu sangat terang */
    border: 1px solid #e2e8f0;      /* Border tipis */
    border-radius: 8px;             /* Sudut membulat */
    padding: 12px 15px;             /* Ruang di dalam kartu */
    text-align: center;             /* Teks rata tengah */
    line-height: 1.4;               /* Jarak antar baris teks */
}

/* Memaksa Hari/Jam dan Nama MK berada di baris terpisah */
.profil-detail .jadwal-dosen-item strong,
.profil-detail .jadwal-dosen-item span {
    display: block; /* Ini akan membuat mereka menumpuk secara vertikal */
}

/* Gaya untuk teks Hari dan Jam */
.profil-detail .jadwal-dosen-item strong {
    font-weight: 600;
    font-size: 14px;
    color: #1e293b; /* Biru gelap */
}

/* Gaya untuk teks Nama Mata Kuliah */
.profil-detail .jadwal-dosen-item span {
    font-size: 13px;
    color: #64748b; /* Abu-abu */
}

/* Gaya untuk pesan jika tidak ada jadwal */
.profil-detail .jadwal-kosong-info {
    font-style: italic;
    color: #94a3b8;
    margin: 0;
    padding: 10px 0;
    grid-column: 1 / -1; /* Agar pesan ini mengambil lebar penuh jika tidak ada jadwal */
    text-align: center;
}


/* ==========================================================================
   PERBAIKAN FINAL: GAYA UNTUK DETAIL LAINNYA DI KARTU UTAMA (GRID 2x3)
   ========================================================================== */

/* Wadah untuk detail inline */
.profil-detail-inline {
    flex-basis: 75%;
    margin-top: 5px;
    padding-top: 10px;
    
}

/* Tata letak untuk daftar detail menggunakan flex */
.profil-detail-inline .profil-detail-list {
    display: flex;        /* Mengatur item agar berbaris ke samping */
    flex-wrap: wrap;      /* Memungkinkan item turun ke baris baru jika tidak cukup ruang */
    gap: 30px;            /* Memberi jarak 30px antar setiap item */
}

.profil-detail-inline .profil-detail-item {
    break-inside: auto; /* Menghapus properti lama untuk mencegah konflik */
}

.profil-detail-inline dt {
    font-weight: 600;
    color: #0d1e4d;
    font-size: 14px;
    margin-bottom: 1px;
}

.profil-detail-inline dd {
    margin: 0;
    color: #475569;
    font-size: 15px;
    line-height: 1;
}

/* ==========================================================================
   PERBAIKAN: POSISI TOMBOL STATISTIK DI KARTU JADWAL
   ========================================================================== */

/* Jadikan kartu jadwal sebagai 'container' untuk posisi tombol */
.profil-jadwal-card {
    position: relative;   /* Wajib ada agar tombol absolut di dalamnya */
    padding-bottom: 80px; /* Beri ruang di bawah untuk tombol */
}

/* Pindahkan aturan posisi tombol dari global ke spesifik di kartu jadwal */
.profil-jadwal-card .profil-compare-action {
    position: absolute;
    bottom: 30px;
    right: 30px;
}

/* ==========================================================================
   GAYA BADGE UNTUK DETAIL LAINNYA
   ========================================================================== */

/* Mengganti gaya flexbox menjadi inline-flex agar item tidak meregang penuh */
.profil-detail-inline .profil-detail-list {
    display: flex;
    flex-wrap: wrap;
    gap: 15px; /* Mengurangi jarak antar badge */
}

/* Ini adalah gaya untuk setiap badge */
.profil-detail-inline .profil-detail-item {
    display: inline-flex;  /* Mengatur agar label dan nilai bersebelahan */
    align-items: center;    /* Menyejajarkan teks secara vertikal */
    background-color: #f1f5f9; /* Warna latar abu-abu muda */
    border-radius: 6px;       /* Sudut membulat */
    padding: 8px 12px;        /* Memberi ruang di dalam badge */
    border: 1px solid #e2e8f0; /* Garis tepi tipis */
    font-size: 14px;
}

/* Menghilangkan margin dan memberi garis pemisah pada label (dt) */
.profil-detail-inline dt {
    margin: 0;
    padding-right: 10px;
    margin-right: 10px;
    border-right: 1px solid #cbd5e1; /* Garis pemisah vertikal */
}

/* Menghilangkan margin pada nilai (dd) */
.profil-detail-inline dd {
    margin: 0;
    font-weight: 500;
}

/* ==========================================================================
   GAYA HEADER UNTUK "INFO LAINNYA"
   ========================================================================== */

.profil-detail-inline h3 {
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 18px;
    color: #0d1e4d;
    border-bottom: 1px solid #e2e8f0;
    padding-bottom: 10px;
}

/* ==========================================================================
   PEWARNAAN DINAMIS BERDASARKAN PRODI (PROFIL DOSEN)
   ========================================================================== */

/* --- Warna Default (Biru untuk TO atau jika tidak ada kelas prodi) --- */
/* Selector ini menargetkan elemen di dalam .prodi-profil-container ATAU .profil-card */
.prodi-profil-container .profil-meta-list,
.profil-card .profil-meta-list {
    border-left-color: #090999; /* Biru */
}
.prodi-profil-container .profil-inisial-badge,
.profil-card .profil-inisial-badge {
    background-color: #090999; /* Biru */
    color: #ffffff; /* Pastikan teks putih */
}

/* --- Warna untuk Prodi MLOG (Merah) --- */
/* Selector ini mencari .prodi-mlog di container ATAU di card itu sendiri */
.prodi-profil-container.prodi-mlog .profil-meta-list,
.profil-card.prodi-mlog .profil-meta-list {
    border-left-color: #c31432 !important; /* Merah */
}
.prodi-profil-container.prodi-mlog .profil-inisial-badge,
.profil-card.prodi-mlog .profil-inisial-badge {
    background-color: #c31432 !important; /* Merah */
    color: #ffffff !important; /* Pastikan teks putih */
}

/* --- Warna untuk Prodi MTJ (Hijau) --- */
.prodi-profil-container.prodi-mtj .profil-meta-list,
.profil-card.prodi-mtj .profil-meta-list {
    border-left-color: #42BA3A !important; /* Hijau */
}
.prodi-profil-container.prodi-mtj .profil-inisial-badge,
.profil-card.prodi-mtj .profil-inisial-badge {
    background-color: #42BA3A !important; /* Hijau */
    color: #ffffff !important;
}

/* ==========================================================================
   GAYA TATA LETAK KHUSUS TAB STATISTIK (UNTUK MK DIAMPU HORIZONTAL)
   ========================================================================== */

/* 1. Paksa profil-utama menjadi grid di tab statistik */
.prodi-profil-container .profil-card.profil-utama {
    display: grid;
    /* Grid 3 kolom: Foto (180px) | Info + MK Diampu (Flex) | Diagram (Min 300px) */
    grid-template-columns: 210px minmax(350px, 1fr) minmax(300px, 400px);
    grid-template-rows: auto auto; /* 2 baris: Info di atas, MK Diampu di bawah */
    gap: 30px;
    align-items: start;
    padding-bottom: 30px; /* Tambah padding bawah agar tombol compare tidak mepet */
}

/* 2. Tata letak elemen-elemen di dalam grid */
.profil-foto-wrapper {
    grid-column: 1 / 2; /* Kolom 1 */
    grid-row: 1 / 3;    /* Membentang di 2 baris (Foto di samping Meta dan MK) */
}

.profil-info-wrapper {
    grid-column: 2 / 3; /* Kolom 2 */
    grid-row: 1 / 2;    /* Baris 1 (Nama, Badge, Meta List) */
    /* Menggunakan flex-grow: 1 di sini akan membuatnya memanjang horizontal di kolom 2 */
}

.profil-chart-wrapper {
    grid-column: 3 / 4; /* Kolom 3 */
    grid-row: 1 / 3;    /* Membentang di 2 baris (Diagram di samping Foto + Info MK) */
    /* Hapus margin-bottom yang mungkin ada */
    margin-bottom: 0;
}


/* ==========================================================================
   GAYA UNTUK CARD MATA KULIAH DIAMPU (TAB STATISTIK)
   ========================================================================== */

/* Card MK Diampu (Diletakkan di dalam profil-info-wrapper) */
.profil-mk-diampu-card {
    border: 1px solid #e2e8f0;
    border-radius: 8px;
    padding: 15px;
    margin-top: 0; /* Tetap 0 karena diposisikan oleh Grid */
    background-color: #f8fafc;
    width: 100%;
    box-sizing: border-box;
}

.profil-mk-diampu-card .mk-diampu-title {
    margin-top: 0;
    margin-bottom: 15px;
    font-size: 16px;
    font-weight: 600;
    color: #0d1e4d;
    border-bottom: 1px solid #e2e8f0;
    padding-bottom: 10px;
}

.profil-mk-diampu-card .mk-diampu-list {
    /* [PERBAIKAN] Menggunakan layout vertikal untuk grouping prodi */
    display: flex;
    flex-direction: column; /* Susun grup prodi secara vertikal */
    /* gap: 15px; */ /* <-- DIHILANGKAN (diganti padding-top di atas) */
}

.profil-mk-diampu-card .empty-list-info {
    font-style: italic;
    color: #94a3b8;
    font-size: 14px;
    margin: 0;
    padding: 5px 0;
}

/* Gaya Pill/Badge Mata Kuliah */
.profil-mk-diampu-card .mk-diampu-pill {
    /* Gunakan inline-flex untuk tampilan horizontal */
    display: inline-flex; 
    align-items: center;
    gap: 5px; /* Kurangi gap internal */
    padding: 0; /* Hapus padding agar elemen menempel */
    border-radius: 0; 
    font-size: 13px;
    font-weight: 500;
    transition: all 0.2s ease;
    box-shadow: none; /* Hapus shadow */
    background-color: transparent !important; /* Hapus background pill */
    border: none !important; /* Hapus border */
    min-width: 0;
    /* PENTING: Beri margin kanan agar ada ruang untuk koma dan item selanjutnya */
    margin-right: 15px; 
}

.profil-mk-diampu-card .mk-diampu-pill strong {
    /* Kode MK */
    font-weight: 700;
    font-size: 13px; /* Sedikit diperbesar agar kontras */
    flex-shrink: 0;
    min-width: auto; /* Biarkan lebar mengikuti konten */
    color: #0d1e4d;
}

.profil-mk-diampu-card .mk-diampu-pill span {
    /* Nama MK */
    font-weight: 400;
    font-size: 13px;
    color: #475569;
    flex-grow: 1; 
    min-width: 0;
    word-wrap: break-word; 
    overflow-wrap: break-word;
    white-space: normal;
    padding-right: 5px; /* Ruang antara nama MK dan koma */
}


/* Pseudo-element untuk menambahkan koma setelah setiap pill, kecuali yang terakhir */
.profil-mk-diampu-card .mk-diampu-pill:not(:last-child)::after {
    content: ",";
    color: #0d1e4d; 
    font-size: 13px; /* Ukuran koma disesuaikan dengan teks */
    font-weight: 700;
    position: relative; /* Ganti absolute ke relative */
    top: 0;
    margin-left: 0;
}

/* Hapus semua gaya warna karena sekarang backgroundnya transparan */
.profil-mk-diampu-card .mk-diampu-pill.pill-ganjil,
.profil-mk-diampu-card .mk-diampu-pill.pill-genap {
    background-color: transparent !important;
    border: none !important;
    color: inherit;
}

/* Efek Hover (Dihilangkan, karena ini list inline) */
.profil-mk-diampu-card .mk-diampu-pill:hover {
    transform: none;
    box-shadow: none;
    cursor: default;
}

/* [BARU] Gaya untuk Grup MK Diampu per Prodi */
.profil-mk-diampu-card .prodi-group-label {
    font-size: 14px;
    font-weight: 700;
    color: #0d1e4d;
    padding-bottom: 5px;
    
    /* Spasi antara "Prodi TO:" dan daftar MK di bawahnya */
    margin-bottom: 1px; 

    /* [PERBAIKAN] Pisahkan margin dan padding untuk spasi garis */
    
    /* Spasi antara (Daftar MK) dan (Garis Putus-putus) */
    margin-top: 12px; /* <-- ATUR SPASI DI ATAS GARIS */
    
    /* Spasi antara (Garis Putus-putus) dan (Label Prodi) */
    padding-top: 12px; /* <-- ATUR SPASI DI BAWAH GARIS */
    
    border-top: 1px dashed #0B3161; /* Border putus-putus */
}

/* [BARU] Hapus border/margin/padding atas untuk grup prodi yang pertama */
.profil-mk-diampu-card .prodi-group-label:first-child {
    margin-top: 0;
    padding-top: 0;
    border-top: none;
}

.profil-mk-diampu-card .prodi-mk-list-items {
    font-size: 13px;
    color: #475569;
    line-height: 1.6; /* Beri jarak jika daftar MK-nya wrap */
}

.profil-mk-diampu-card .prodi-mk-list-items b {
    color: #334155; /* Buat kode MK sedikit lebih gelap */
    font-weight: 700; /* Pastikan tetap bold */
}

/* Perbaikan untuk responsivitas */
@media (max-width: 768px) {
    .profil-mk-diampu-card {
        margin-top: 20px;
        padding: 15px;
    }
}

/* ==========================================================================
   [BARU] GAYA TOMBOL GOOGLE CALENDAR
   ========================================================================== */

.profil-dosen-item {
    /* (Pastikan .profil-dosen-item menggunakan flex jika belum) */
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.add-to-calendar-btn {
    display: inline-block;
    width: 28px;
    height: 28px;
    line-height: 28px;
    text-align: center;
    border-radius: 50%;
    background-color: #eef2ff;
    color: #4338ca;
    border: 1px solid #c7d2fe;
    transition: all 0.2s ease;
    flex-shrink: 0; /* Mencegah tombol mengecil */
    margin-left: 10px; /* Jarak dari teks */
}
.add-to-calendar-btn svg {
    width: 14px;
    height: 14px;
    vertical-align: middle;
}
.add-to-calendar-btn:hover {
    background-color: #4338ca;
    color: #ffffff;
    border-color: #4338ca;
    transform: scale(1.1);
}

/* ==========================================================================
   [BARU] GAYA TOMBOL GOOGLE CALENDAR & MODAL
   ========================================================================== */

/* Header Card Jadwal (Flex) */
.profil-detail .jadwal-header-container {
    display: flex;
    justify-content: space-between; /* Judul Kiri, Tombol Kanan */
    align-items: center; /* Sejajar Vertikal */
    gap: 20px; /* Jarak antara judul dan tombol */
    
    /* Garis pemisah */
    border-bottom: 1px solid #e2e8f0;
    padding-bottom: 15px; /* Jarak dari garis ke konten */
    margin-bottom: 20px; /* Jarak ke konten */
}

/* Override aturan <h3> global agar judulnya tidak mengambil lebar penuh */
.profil-detail .jadwal-header-container h3 {
    /* Hapus margin, border, padding bawaan dari .profil-detail h3 */
    margin: 0;
    border-bottom: none;
    padding-bottom: 0;
    
    /* [PENTING] Izinkan judul dan tombol untuk berbagi ruang */
    flex-grow: 1; /* Biarkan judul mengambil sisa ruang */
    flex-shrink: 1;
}

/* Pastikan wrapper tombol tidak meregang */
.profil-detail .jadwal-header-container .jadwal-action-buttons {
    flex-shrink: 0; /* Jangan biarkan wrapper tombol mengecil/wrap */
    display: flex; /* Sejajarkan tombol di dalamnya */
    gap: 10px;
}



/* Wrapper untuk dua tombol kalender */
.profil-detail .jadwal-action-buttons {
    display: flex;
    flex-wrap: wrap; /* Biarkan tombol turun di mobile */
    gap: 10px;
    flex-shrink: 0; /* Jangan biarkan wrapper mengecil */
}

/* Styling Tombol Kalender (menggunakan gaya .button-compare-stats) */
.profil-detail .button-download-ics,
.profil-detail .button-manual-add {
    /* Menggunakan gaya dasar dari .button-compare-stats */
    padding: 8px 18px !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    /* Pastikan gaya dasar .button-compare-stats ada (biru) */
    background-color: #090999;
    color: #ffffff;
    border-radius: 50px;
    text-decoration: none;
    border: none;
}
.profil-detail .button-download-ics:hover,
.profil-detail .button-manual-add:hover {
    background-color: #06066e;
    color: #ffffff;
}


/* Warna berbeda untuk tombol Download (.ics) & Tambah Manual */
.profil-detail .button-download-ics,
.profil-detail .button-manual-add {
    background-color: #ffffff !important;
    color: #090999 !important;
    border: 1px solid #090999 !important;
    /* Pastikan properti .button-compare-stats lain ada */
    border-radius: 50px !important;
}
.profil-detail .button-download-ics:hover,
.profil-detail .button-manual-add:hover {
    background-color: #eef2ff !important;
    /* [OPSIONAL] Pastikan warna border/teks hover konsisten */
    border-color: #06066e !important;
    color: #06066e !important;
}

/* Penyesuaian untuk list di dalam modal GCal */
#gcal-link-list {
    list-style: none;
    padding: 0;
    margin: 0;
    max-height: 40vh;
    overflow-y: auto;
}


/* ==========================================================================
   [BARU] PERBAIKAN RESPONSIVE HALAMAN PROFIL (MOBILE)
   ========================================================================== */

/* Aturan ini berlaku untuk layar dengan lebar 768px ke bawah */
@media (max-width: 768px) {

    /* 1. Susun Foto dan Info Utama secara vertikal */
    .prodi-profil-container .profil-utama {
        flex-direction: column;
        align-items: center; /* Opsional: Pusatkan foto */
        padding-bottom: 30px; /* Jaga jarak dari bawah */
    }

    /* 2. Pindahkan tombol 'Bandingkan' ke bawah info */
    .profil-utama .profil-compare-action {
        position: static; /* Hapus posisi absolut */
        width: 100%;
        margin-top: 20px;
    }
    .profil-utama .button-compare-stats {
        width: 100%; /* Buat tombol jadi lebar penuh */
        text-align: center;
    }

    /* 3. Susun dua kolom meta list (NIP & Beban) secara vertikal */
    .profil-meta-grid {
        flex-direction: column;
        gap: 15px; /* Kurangi jarak antar list */
        width: 100%; /* Pastikan lebar penuh */
    }

    /* 4. Terapkan Grid 60/40 (Sesuai permintaan Anda) */
    .profil-meta-list .meta-item {
        /* Biarkan display: flex; */
        align-items: flex-start; /* Ratakan ke atas jika beda tinggi */
    }
    
    .profil-meta-list .meta-label {
        width: 60%; /* Lebar 60% */
        flex-shrink: 0; /* Jangan biarkan label mengecil */
        padding-right: 10px; /* Jarak agar tidak menempel */
        box-sizing: border-box; /* Pastikan padding dihitung */
    }
    
    .profil-meta-list .meta-value {
        width: 40%; /* Lebar 40% */
        flex-shrink: 0; /* Jangan biarkan nilai mengecil */
        text-align: right; /* Rata kanan */
        word-break: break-word; /* Izinkan nilai panjang turun */
    }

    /* 5. Susun grid tab statistik (jika ada) jadi 1 kolom */
    .statistik-grid-container {
        grid-template-columns: 1fr;
    }
    
    /* 6. Susun grid utama tab statistik (foto, info, chart) jadi 1 kolom */
    .prodi-profil-container .profil-card.profil-utama {
        grid-template-columns: 1fr; /* 1 kolom */
    }
    .profil-foto-wrapper,
    .profil-info-wrapper,
    .profil-chart-wrapper {
        grid-column: 1 / -1; /* Ambil lebar penuh */
        grid-row: auto; /* Susun otomatis */
    }
    .profil-chart-wrapper {
        margin-top: 20px;
    }
}

/* ==========================================================================
   [BARU] GAYA UNTUK KARTU DAFTAR ABDIMAS
   ========================================================================== */

.profil-abdimas-wrapper {
    margin-top: 30px; /* Jarak dari kartu publikasi */
}

.profil-abdimas-wrapper h3 {
    margin-top: 0;
    margin-bottom: 20px;
    font-size: 18px;
    color: #0d1e4d;
    border-bottom: 1px solid #e2e8f0;
    padding-bottom: 10px;
}

.profil-abdimas-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.profil-abdimas-list li {
    padding: 15px 0;
    border-bottom: 1px solid #f1f5f9;
}
.profil-abdimas-list li:last-child {
    border-bottom: none;
}

.abdimas-title {
    font-size: 16px;
    font-weight: 600;
    color: #090999; /* Warna link biru */
    text-decoration: none;
    display: block;
    margin-bottom: 5px;
    transition: color 0.2s ease;
}
.abdimas-title:hover {
    color: #06066e;
}
.abdimas-title-no-link {
    font-size: 16px;
    font-weight: 600;
    color: #334155; /* Warna teks biasa (jika tidak ada link) */
    display: block;
    margin-bottom: 5px;
}

.abdimas-info {
    display: flex;
    gap: 15px;
    font-size: 14px;
    color: #64748b;
    line-height: 1.5;
}

.abdimas-year {
    font-weight: 500;
    color: #1e293b;
}

.abdimas-skema {
    font-style: italic;
}

/* GAYA UNTUK ABDIMAS "TAMPILKAN SEMUA" */
.abdimas-item-hidden {
    display: none;
}
.profil-abdimas-list.is-expanded .abdimas-item-hidden {
    display: list-item;
}
.abdimas-toggle-button {
    text-align: center;
    margin-top: 10px;
    padding: 8px;
    cursor: pointer;
    border-top: 1px solid #f1f5f9;
    color: #64748b;
}
.abdimas-toggle-button:hover {
    background-color: #f8fafc;
}
.abdimas-toggle-button .toggle-icon {
    display: inline-block;
    transition: transform 0.3s ease;
    font-size: 25px;
    color: #090999;
}
.abdimas-toggle-button.is-expanded .toggle-icon {
    transform: rotate(180deg);
}

/* ==========================================================================
   [BARU] Garis Pemisah untuk Metrik HKI di SINTA Summary
   ========================================================================== */

.sinta-summary-table tbody tr.sinta-summary-separator td {
    border-bottom: 1px dashed #cbd5e1 !important; /* [PERBAIKAN] Diubah ke border-bottom */
}