/* Style khusus aplikasi STAF. Jangan ubah style.css (bawaan tema Inspinia). */

/* ===== Global ===== */
.select2-close-mask{z-index:2099}
.select2-dropdown{z-index:3051}
.select2-container--open{z-index:9999999}

/* ===== Dashboard Admin Unit (Admin_unit/v_beranda) ===== */
.au-hero{background:linear-gradient(120deg,#1ab394 0%,#1c84c6 100%);color:#fff;border-radius:10px;padding:24px 28px;margin-bottom:20px;box-shadow:0 6px 18px rgba(28,132,198,.18)}
.au-hero h2{margin:0 0 4px;font-weight:600;font-size:22px}
.au-hero p{margin:0;opacity:.9}
.au-hero-isi{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}
.au-hero-isi form{text-align:right;margin-top:10px}
.au-btn-hero{background:#fff;color:#1c84c6;font-weight:600;border-radius:20px;padding:6px 18px}
.au-btn-hero:hover,.au-btn-hero:focus{background:#f0f7fc;color:#1a7bb9}
.au-btn-hero[disabled]{opacity:.8;cursor:wait}
.au-hero-ket{display:block;margin-top:6px;font-size:11px;opacity:.85;line-height:1.3}
.au-hero .au-badge{display:inline-block;background:rgba(255,255,255,.18);border-radius:20px;padding:4px 12px;font-size:12px;margin-top:10px;margin-right:6px}

.au-card{display:block;background:#fff;border-radius:10px;padding:18px;margin-bottom:20px;box-shadow:0 1px 3px rgba(0,0,0,.06);border:1px solid #eef0f2;transition:transform .15s,box-shadow .15s;color:#676a6c;height:calc(100% - 20px)}
a.au-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.08);text-decoration:none;color:#676a6c}
.au-kpi{display:flex;align-items:center}
.au-kpi .au-ikon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0;margin-right:14px}
.au-kpi .au-nilai{font-size:26px;font-weight:700;color:#2f4050;line-height:1.1}
.au-kpi .au-label{font-size:12px;text-transform:uppercase;letter-spacing:.4px;color:#8a8f94}
.au-kpi .au-sub{font-size:12px;color:#a0a4a8;margin-top:2px}
.au-teal{background:#e6f7f3;color:#1ab394}
.au-blue{background:#e7f1fa;color:#1c84c6}
.au-amber{background:#fef4e6;color:#f8ac59}
.au-purple{background:#f0ebfa;color:#7952b3}
.au-red{background:#fdecee;color:#ed5565}

.au-section{display:flex;align-items:center;margin:6px 0 14px}
.au-section h4{margin:0;font-weight:600;color:#2f4050;font-size:16px;white-space:nowrap}
.au-section h4 i{color:#1ab394;margin-right:6px}
.au-section:after{content:'';flex:1;height:1px;background:#e3e6e9;margin-left:14px}

.au-panel{background:#fff;border-radius:10px;border:1px solid #eef0f2;box-shadow:0 1px 3px rgba(0,0,0,.06);margin-bottom:20px}
.au-panel-head{padding:14px 18px;border-bottom:1px solid #f1f3f5;display:flex;align-items:center;justify-content:space-between}
.au-panel-head h5{margin:0;font-weight:600;color:#2f4050;font-size:14px}
.au-panel-head small{color:#a0a4a8}
.au-panel-body{padding:18px}
.au-link-pojok{margin-top:-24px}

.au-chart{position:relative;height:240px}
.au-chart-sm{height:160px}
.au-chart-md{height:220px}
.au-chart-lg{height:280px}

.au-legend{list-style:none;padding:0;margin:14px 0 0}
.au-legend li{display:flex;align-items:center;justify-content:space-between;font-size:13px;padding:3px 0}
.au-dot{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px}
.au-text-sm{font-size:13px}
.au-text-xs{font-size:12px}
.au-male{color:#1c84c6}
.au-female{color:#ed5565}
.au-bg-male,.au-bg-pns{background:#1c84c6}
.au-bg-female{background:#ed5565}
.au-bg-pppk{background:#1ab394}
.au-split{display:flex;height:10px;border-radius:5px;overflow:hidden;background:#eef0f2;margin:6px 0 4px}

.au-alert{display:flex;align-items:flex-start;padding:10px 0;border-bottom:1px dashed #eef0f2}
.au-alert:last-child{border-bottom:0}
.au-alert i{margin-right:10px;margin-top:3px}
.au-alert .au-alert-teks{flex:1;font-size:13px}

.au-tabel th{background:#f8f9fa;font-size:12px;text-transform:uppercase;color:#6c757d;white-space:nowrap;vertical-align:middle!important}
.au-tabel td{vertical-align:middle!important}
.au-tabel td.au-angka,.au-tabel th.au-angka{text-align:center}
.au-tabel tfoot td{font-weight:700;background:#f8f9fa}
.au-tabel .au-subtotal{background:#f4fbf9;font-weight:600}
.au-nol{color:#ccd0d4}
.au-prodi a{color:#2f4050;font-weight:500}
.au-prodi small{color:#a0a4a8}
.au-tabs .nav-link{color:#6c757d;font-weight:500;border:0;border-bottom:2px solid transparent}
.au-tabs .nav-link.active{color:#1ab394;border-bottom-color:#1ab394;background:transparent}
.au-progress{height:6px;border-radius:3px;background:#eef0f2;min-width:80px}
.au-progress .progress-bar{background:#1ab394;border-radius:3px}

/* ===== Kelengkapan Angka Kredit Jafung (Dosen/v_kelengkapan_ak) ===== */
.ak-header{background:#fff;border-radius:10px;border:1px solid #eef0f2;box-shadow:0 1px 3px rgba(0,0,0,.06);padding:22px 24px 0;margin-bottom:20px}
.ak-header-isi{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap}
.ak-header h2{margin:2px 0 6px;font-weight:600;color:#2f4050;font-size:22px}
.ak-kecil{font-size:12px;text-transform:uppercase;letter-spacing:.4px;color:#8a8f94}
.ak-target{color:#1ab394;font-weight:600}
.ak-dosen{color:#676a6c;font-size:13px}
.ak-btn-kembali{border:1px solid #e3e6e9;background:#fff;color:#676a6c;border-radius:20px;padding:5px 16px}
.ak-btn-kembali:hover{background:#f8f9fa;color:#2f4050}
.ak-langkah{display:flex;list-style:none;padding:0;margin:18px -24px 0;border-top:1px solid #f1f3f5;overflow-x:auto}
.ak-langkah li{flex:1;min-width:130px}
.ak-langkah a{display:flex;align-items:center;padding:14px 16px;color:#8a8f94;border-bottom:3px solid transparent;white-space:nowrap}
.ak-langkah a:hover{background:#fafbfc;color:#2f4050;text-decoration:none}
.ak-langkah-no{width:24px;height:24px;border-radius:50%;background:#eef0f2;color:#8a8f94;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;margin-right:8px;flex-shrink:0}
.ak-langkah li.selesai .ak-langkah-no{background:#e6f7f3;color:#1ab394}
.ak-langkah li.aktif a{color:#2f4050;font-weight:600;border-bottom-color:#1ab394}
.ak-langkah li.aktif .ak-langkah-no{background:#1ab394;color:#fff}

.ak-grup{background:#fff;border-radius:10px;border:1px solid #eef0f2;box-shadow:0 1px 3px rgba(0,0,0,.06);margin-bottom:20px}
.ak-grup-head{display:flex;align-items:center;padding:16px 18px;border-bottom:1px solid #f1f3f5}
.ak-grup-head h4{margin:0;font-weight:600;color:#2f4050;font-size:15px}
.ak-grup-head small{color:#a0a4a8}
.ak-grup-ikon{width:40px;height:40px;border-radius:10px;background:#e7f1fa;color:#1c84c6;display:flex;align-items:center;justify-content:center;font-size:18px;margin-right:12px;flex-shrink:0}
.ak-slot-list{padding:6px 18px}
.ak-slot{display:flex;align-items:center;padding:12px 0;border-bottom:1px dashed #eef0f2}
.ak-slot:last-child{border-bottom:0}
.ak-slot-status{width:26px;height:26px;border-radius:50%;border:2px solid #d7dbdf;color:transparent;display:flex;align-items:center;justify-content:center;font-size:12px;margin-right:14px;flex-shrink:0;transition:all .15s}
.ak-slot.terisi .ak-slot-status{background:#1ab394;border-color:#1ab394;color:#fff}
.ak-slot-isi{flex:1;min-width:0}
.ak-slot-isi label{display:block;font-weight:600;color:#2f4050;margin-bottom:6px;font-size:13px}
.ak-lihat{margin-left:12px;border:1px solid #e3e6e9;background:#fff;color:#1c84c6;border-radius:6px;visibility:hidden;align-self:flex-end}
.ak-slot.terisi .ak-lihat{visibility:visible}
.ak-lihat:hover{background:#e7f1fa;color:#1c84c6}
.ak-kosong{background:#fafbfc;border:1px dashed #d7dbdf;border-radius:6px;padding:8px 12px;font-size:13px;color:#8a8f94}
.ak-kosong a{font-weight:600;margin-left:4px}

.ak-ringkasan{background:#fff;border-radius:10px;border:1px solid #eef0f2;box-shadow:0 1px 3px rgba(0,0,0,.06);padding:20px;margin-bottom:20px;position:sticky;top:20px}
.ak-ringkasan h4{margin:0 0 16px;font-weight:600;color:#2f4050;font-size:15px}
.ak-cincin{--ak-persen:0;width:130px;height:130px;border-radius:50%;margin:0 auto 18px;background:conic-gradient(#1ab394 calc(var(--ak-persen) * 1%),#eef0f2 0);display:flex;align-items:center;justify-content:center}
.ak-cincin>div{width:104px;height:104px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.ak-cincin strong{font-size:26px;color:#2f4050;line-height:1}
.ak-cincin small{font-size:11px;color:#8a8f94;margin-top:4px;padding:0 10px}
.ak-cek{list-style:none;padding:0;margin:0 0 18px;font-size:13px}
.ak-cek li{margin-bottom:10px}
.ak-cek li>strong{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.4px;color:#8a8f94;margin-bottom:2px}
.ak-cek-item{display:block;color:#676a6c;padding:2px 0}
.ak-cek-item .fa:before{content:"\f10c";color:#ccd0d4}
.ak-cek-item.terisi .fa:before{content:"\f058";color:#1ab394}
.ak-simpan{border-radius:6px;padding:9px;font-weight:600}
.ak-catatan{font-size:12px;color:#a0a4a8;margin:10px 0 0}

/* ===== Syarat Khusus Jafung (Dosen/v_syarat_khusus) ===== */
.ak-lihat-tetap{border:1px solid #e3e6e9;background:#fff;color:#1c84c6;border-radius:6px}
.ak-lihat-tetap:hover{background:#e7f1fa;color:#1c84c6}
.sk-artikel{padding:14px 0;border-bottom:1px dashed #eef0f2}
.sk-artikel:last-child{border-bottom:0}
.sk-artikel-judul{font-weight:600;color:#2f4050;margin-bottom:6px}
.sk-artikel-meta{font-size:12px;color:#8a8f94;margin-bottom:8px}
.sk-artikel-meta span{margin-right:14px;display:inline-block}
.sk-artikel-aksi .btn{margin-right:6px}
.sk-form-tautan{padding:16px 18px}
.sk-form-tautan label{font-weight:600;color:#2f4050;font-size:13px}
.sk-form-tautan .input-group-text{background:#f8f9fa;color:#8a8f94}
.sk-unggah{margin:0}
.sk-ket{display:block;color:#a0a4a8;margin:-2px 0 8px}
.sk-pilih{display:flex;align-items:center;min-width:0}
.sk-pilih-btn{display:inline-block!important;margin:0 10px 0 0!important;padding:4px 12px;border:1px dashed #b8c2cc;border-radius:6px;background:#fafbfc;color:#1c84c6!important;font-weight:600!important;cursor:pointer;white-space:nowrap;flex-shrink:0}
.sk-pilih-btn:hover{background:#e7f1fa;border-color:#1c84c6}
.sk-nama-file{font-size:12px;color:#a0a4a8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sk-nama-file.dipilih{color:#2f4050;font-weight:600}
.sk-file{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}
.sk-galat{font-size:12px;margin-top:4px}
.sk-aksi{display:flex;flex-direction:column;align-items:flex-end;margin-left:12px;flex-shrink:0}
.sk-aksi .btn{margin-bottom:6px;min-width:88px}

/* ===== IKD Dosen (Dosen/v_ikd_dosen) ===== */
.ikd-syarat{font-size:13px;color:#555;background:#f7fbfa;border-left:3px solid #1ab394;border-radius:4px;padding:8px 12px;margin-bottom:10px;line-height:1.5}
.ikd-tabel{font-size:13px}
.ikd-tabel th{background:#f8f9fa;font-size:12px;text-transform:uppercase;color:#6c757d;border-top:0}
.ikd-tabel td{vertical-align:top;line-height:1.5}
.ikd-tabel tr.ikd-aktif td{background:#f4fbf9}
.ikd-tabel tr.ikd-aktif td:first-child{box-shadow:inset 3px 0 0 #1ab394}
.ikd-info{display:flex;align-items:flex-start;margin:14px 18px 0;padding:10px 14px;background:#e7f1fa;border-radius:6px;color:#2f4050;font-size:13px}
.ikd-info .fa{color:#1c84c6;margin:3px 10px 0 0}
.ikd-tabel td.ikd-semua{vertical-align:middle;background:#fafbfc;color:#555}
.ikd-kelompok{margin:14px 18px;border:1px solid #eef0f2;border-radius:8px}
.ikd-kelompok.ok{border-color:#bfe8de}
.ikd-kelompok-head{display:flex;align-items:baseline;flex-wrap:wrap;padding:10px 14px;background:#fafbfc;border-bottom:1px solid #eef0f2;border-radius:8px 8px 0 0}
.ikd-kelompok.ok .ikd-kelompok-head{background:#f4fbf9}
.ikd-kelompok-head strong{color:#2f4050;margin-right:8px}
.ikd-kelompok-head small{color:#8a8f94}
.ikd-kelompok-status{margin-right:8px;color:#ccd0d4}
.ikd-kelompok.ok .ikd-kelompok-status{color:#1ab394}
.ikd-kelompok .ak-slot-list{padding:0 14px}
.ikd-atau{position:relative;text-align:center;margin:2px 0;height:14px}
.ikd-atau:before{content:'';position:absolute;left:0;right:0;top:50%;border-top:1px dashed #d7dbdf}
.ikd-atau span{position:relative;background:#fff;padding:0 10px;font-size:11px;font-weight:700;text-transform:uppercase;color:#1c84c6;letter-spacing:.5px}
.ikd-kelompok .ak-slot{border-bottom:0}

/* ===== Profil & Ijazah Jafung (Dosen/v_kelengkapan_ijazah) ===== */
.ij-serdos{display:flex;align-items:flex-start;padding:12px 0;border-bottom:1px dashed #eef0f2;font-size:13px}
.ij-serdos:last-child{border-bottom:0}
.ij-serdos dl{flex:1}
.ij-serdos dt{font-weight:normal;color:#8a8f94}
.ij-serdos dd{color:#2f4050;font-weight:600;margin-bottom:4px}
.ij-serdos-ikon{width:26px;height:26px;border-radius:50%;background:#1ab394;color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;margin-right:14px;flex-shrink:0}

/* ===== Tugas Belajar (Admin/Tugas_belajar) ===== */
.tb-filter .form-control{height:36px}
.tb-tabel td{vertical-align:top!important;font-size:13px}
.tb-masa{white-space:nowrap}
.tb-jenis,.tb-status{display:inline-block;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap}
.tb-jenis-penuh{background:#e7f1fa;color:#1c84c6}
.tb-jenis-tanpa_meninggalkan_tugas{background:#f0ebfa;color:#7952b3}
.tb-jenis-kosong{background:#fdecee;color:#ed5565}
.tb-status-sedang_belajar{background:#fef4e6;color:#c77c16}
.tb-status-lulus{background:#e6f7f3;color:#12876f}
.tb-isian{padding:16px 18px}
.tb-isian label{font-weight:600;color:#2f4050;font-size:13px}
.tb-pilihan{display:block;margin-bottom:10px;cursor:pointer}
.tb-pilihan input{position:absolute;opacity:0}
.tb-pilihan-isi{display:flex;align-items:flex-start;border:2px solid #eef0f2;border-radius:8px;padding:12px;transition:all .15s}
.tb-pilihan-isi>.fa{width:32px;height:32px;border-radius:8px;background:#f1f3f5;color:#8a8f94;display:flex;align-items:center;justify-content:center;margin-right:10px;flex-shrink:0}
.tb-pilihan-isi strong{display:block;color:#2f4050;font-size:13px}
.tb-pilihan-isi small{color:#8a8f94}
.tb-pilihan input:checked+.tb-pilihan-isi{border-color:#1ab394;background:#f4fbf9}
.tb-pilihan input:checked+.tb-pilihan-isi>.fa{background:#1ab394;color:#fff}
.tb-pilihan input:focus+.tb-pilihan-isi{box-shadow:0 0 0 3px rgba(26,179,148,.2)}
.tb-segmen{display:flex;background:#f1f3f5;border-radius:8px;padding:3px}
.tb-segmen label{flex:1;margin:0;cursor:pointer}
.tb-segmen input{position:absolute;opacity:0}
.tb-segmen span{display:block;text-align:center;padding:7px;border-radius:6px;font-weight:600;font-size:13px;color:#8a8f94}
.tb-segmen input:checked+span{background:#fff;color:#2f4050;box-shadow:0 1px 3px rgba(0,0,0,.1)}
.tb-segmen-lebar{max-width:360px}
.tb-lokasi{display:inline-block;margin-left:4px;padding:1px 7px;border-radius:10px;font-size:10px;font-weight:700;vertical-align:middle}
.tb-lokasi-dalam_negeri{background:#eef0f2;color:#676a6c}
.tb-lokasi-luar_negeri{background:#e7f1fa;color:#1c84c6}
