
:root{--primary:#0B1F3A;--primary-dark:#061426;--accent:#C7A55B;--ink:#152238;--muted:#64748B;--line:#E5EAF2;--bg:#F4F7FB;--surface:#fff;--shadow:0 18px 50px rgba(10,31,58,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);line-height:1.6}a{color:inherit}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:0;border-radius:12px;padding:11px 17px;font-weight:750;text-decoration:none;cursor:pointer;transition:.22s}.btn:hover{transform:translateY(-2px)}.btn.primary{background:linear-gradient(135deg,var(--primary),#155B98);color:#fff;box-shadow:0 10px 24px color-mix(in srgb,var(--primary) 25%,transparent)}.btn.ghost{background:#fff;color:var(--primary);border:1px solid #d8e2ef}.btn.wide{width:100%}
.alert{padding:13px 16px;border-radius:12px;margin-bottom:18px;font-size:13px}.alert.success{background:#e9f8ef;color:#166534}.alert.danger{background:#fff0f0;color:#b42318}
.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at 15% 10%,#dbeafe,transparent 32%),linear-gradient(135deg,var(--primary-dark),var(--primary))}
.login-card{width:min(430px,100%);background:#fff;border-radius:24px;padding:38px;box-shadow:0 30px 80px rgba(6,20,38,.33)}.brand-mark{width:50px;height:50px;border-radius:15px;display:grid;place-items:center;background:linear-gradient(135deg,var(--primary),var(--accent));color:#fff;font-weight:900;font-size:22px;margin-bottom:18px}.brand-mark.small{width:38px;height:38px;border-radius:11px;font-size:17px;margin:0}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:800;color:var(--primary);text-transform:uppercase}.login-card h1{margin:7px 0 4px;font-size:29px}.login-card p{color:var(--muted);margin:0 0 25px}.login-card label,.form-grid label{display:block;font-size:12px;font-weight:750;color:#334155}.login-card input,.form-grid input,.form-grid textarea,.form-grid select{display:block;width:100%;margin:7px 0 15px;padding:12px 13px;border:1px solid #d8e2ef;border-radius:11px;background:#fff;font:inherit;outline:0}.login-card input:focus,.form-grid input:focus,.form-grid textarea:focus,.form-grid select:focus{border-color:var(--primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--primary) 10%,transparent)}.form-grid textarea{min-height:130px;resize:vertical}.admin-body{background:var(--bg)}.admin-shell{display:flex;min-height:100vh}.sidebar{width:270px;flex:0 0 270px;background:linear-gradient(180deg,#061426,#0B1F3A 52%,#061426);color:#fff;position:sticky;top:0;height:100vh;display:flex;flex-direction:column;z-index:50}.brand{display:flex;align-items:center;gap:11px;padding:20px 18px;border-bottom:1px solid #ffffff18}.brand b{display:block;font-size:13px;max-width:165px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.brand span{font-size:9px;letter-spacing:1.3px;color:#b8d7f5}.sidebar nav{padding:13px 10px;overflow:auto}.nav-group{margin:7px 0 17px}.nav-label{padding:7px 11px;font-size:9px;letter-spacing:1.6px;color:#a9c8e6;font-weight:800}.sidebar nav a{display:flex;align-items:center;gap:10px;color:#e8f3ff;text-decoration:none;padding:9px 11px;border-radius:10px;font-size:12.5px;margin:2px 0;transition:.2s}.sidebar nav a i{width:20px;text-align:center;font-style:normal;opacity:.8}.sidebar nav a:hover,.sidebar nav a.active{background:#ffffff14;color:#fff}.sidebar nav a.active{box-shadow:inset 3px 0 var(--accent);background:#ffffff10}.side-footer{margin-top:auto;padding:13px 14px;border-top:1px solid #ffffff14}.side-footer a{display:block;color:#c8d9eb;text-decoration:none;padding:8px;font-size:11px}.admin-main{min-width:0;flex:1}.topbar-admin{height:88px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:18px;padding:0 34px;position:sticky;top:0;z-index:30}.topbar-admin h1{font-size:25px;margin:1px 0 0}.crumb{font-size:9px;letter-spacing:1.3px;color:var(--muted);font-weight:800}.top-actions{margin-left:auto;display:flex;align-items:center;gap:12px}.view-site{font-size:11px;font-weight:750;text-decoration:none;color:var(--primary);padding:9px 12px;border:1px solid #e4dadd;border-radius:10px}.user-chip{display:flex;flex-direction:column;align-items:flex-end;padding-left:10px}.user-chip span{font-size:12px;font-weight:800}.user-chip small{font-size:9px;color:var(--muted);text-transform:uppercase}.menu-toggle,.sidebar-close{display:none}.content-wrap{padding:30px 34px 50px;max-width:1500px;margin:auto}.welcome{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:28px 30px;border-radius:20px;background:linear-gradient(135deg,#fff,#fbf2f3);border:1px solid #dbe5f0;margin-bottom:20px}.welcome h2{margin:5px 0;font-size:26px}.welcome p{margin:0;color:var(--muted);font-size:13px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:20px}.metric{background:#fff;border:1px solid #e4ebf3;border-radius:17px;padding:19px;text-decoration:none;box-shadow:var(--shadow);transition:.2s}.metric:hover{transform:translateY(-3px)}.metric>span{display:block;font-size:19px;color:var(--primary)}.metric small{display:block;color:var(--muted);margin-top:10px}.metric b{display:block;font-size:30px;color:var(--primary);line-height:1.1;margin:3px 0}.metric em{font-style:normal;font-size:10px;color:var(--muted)}.panel{background:#fff;border:1px solid #e4ebf3;border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.panel-head{padding:21px 23px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:15px}.panel-head h3{margin:4px 0 0;font-size:19px}.panel-head p{margin:2px 0 0;color:var(--muted);font-size:11px}.quick-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:20px}.quick-grid a{padding:17px;border:1px solid #e4ebf3;border-radius:13px;text-decoration:none}.quick-grid b{display:block;font-size:13px}.quick-grid span{font-size:10px;color:var(--muted)}.form-panel{padding-bottom:25px}.form-panel .form-grid{padding:23px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.form-grid .full{grid-column:1/-1}.color-row{display:grid;grid-template-columns:55px 1fr;gap:8px}.color-row input[type=color]{padding:3px;height:43px}.theme-preview{display:flex;align-items:center;gap:8px;padding:15px;background:#f7faff;border:1px solid var(--line);border-radius:12px;margin-bottom:16px}.theme-preview div{width:42px;height:42px;border-radius:10px}.theme-preview span{font-size:11px;color:var(--muted)}.table-wrap{overflow:auto}.table-wrap table{width:100%;min-width:760px;border-collapse:collapse;font-size:11px}.table-wrap th,.table-wrap td{padding:12px 13px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}.table-wrap th{background:#f7faff;color:#817478;font-size:9px;text-transform:uppercase;letter-spacing:.8px}.table-wrap tbody tr:hover{background:#f8fbff}.actions{white-space:nowrap}.actions a{font-weight:800;text-decoration:none;color:var(--primary);margin-right:10px}.actions .danger-link{color:#b42318}.empty{text-align:center!important;padding:40px!important;color:var(--muted)}
.mobile-overlay{display:none}
@media(max-width:1050px){.sidebar{width:235px;flex-basis:235px}.stat-grid{grid-template-columns:repeat(2,1fr)}.quick-grid{grid-template-columns:repeat(2,1fr)}.topbar-admin{padding:0 22px}.content-wrap{padding:22px}}
@media(max-width:780px){.sidebar{position:fixed;left:-285px;top:0;bottom:0;height:100vh;width:275px;transition:.25s;box-shadow:20px 0 60px #0004}.sidebar.open{left:0}.mobile-overlay{position:fixed;inset:0;background:#17030788;z-index:45}.mobile-overlay.show{display:block}.sidebar-close{display:block;margin-left:auto;background:transparent;color:#fff;border:0;font-size:28px}.menu-toggle{display:block;border:0;background:#edf5ff;color:var(--primary);border-radius:10px;padding:9px 11px;font-size:17px}.view-site{display:none}.topbar-admin{height:76px;padding:0 15px}.topbar-admin h1{font-size:20px}.user-chip{display:none}.content-wrap{padding:15px}.welcome{align-items:flex-start;flex-direction:column;padding:22px}.stat-grid{grid-template-columns:1fr 1fr;gap:10px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}.panel-head{align-items:flex-start;flex-direction:column}.quick-grid{grid-template-columns:1fr}.table-wrap table{min-width:680px}}
@media(max-width:450px){.stat-grid{grid-template-columns:1fr}.login-card{padding:28px 22px}}
.module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.module-card{display:flex;align-items:center;gap:16px;padding:20px;border:1px solid rgba(21,91,152,.12);border-radius:20px;background:linear-gradient(135deg,#fff,#faf8f7);text-decoration:none;color:inherit;transition:.25s ease;min-height:116px}.module-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px rgba(24,18,18,.09);border-color:rgba(21,91,152,.28)}.module-icon{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:var(--primary);color:#fff;font-size:24px;flex:0 0 52px}.module-card div{flex:1}.module-card b{display:block;font-size:16px;margin-bottom:5px}.module-card span{display:block;color:#6d6870;font-size:13px;line-height:1.5}.module-card strong{font-size:22px;color:var(--accent)}@media(max-width:760px){.module-grid{grid-template-columns:1fr}.module-card{min-height:100px}}

.logo-preview{margin-top:10px;padding:14px;border:1px solid #e5e7eb;border-radius:14px;background:#fafafa;display:flex;align-items:center;justify-content:center;min-height:120px}.logo-preview img{max-width:180px;max-height:110px;object-fit:contain}.form-help{display:block;margin-top:6px;color:#6b7280;font-size:12px}.brand-logo{width:42px;height:42px;object-fit:contain;border-radius:10px;background:#fff;padding:4px}.profile-logo{width:100px;height:100px;object-fit:contain;margin-bottom:18px}.footer-logo{width:64px;height:64px;object-fit:contain;margin-bottom:10px}


/* =========================================================
   ADMIN PREMIUM V8 — FORM COMFORT & SPACING REFINEMENT
   Lebih lega, fokus, dan nyaman untuk input data
   ========================================================= */
.admin-body{
    background:
        radial-gradient(circle at 100% 0, rgba(199,165,91,.07), transparent 30%),
        linear-gradient(180deg,#f7faff 0%,#f6f3f4 100%);
}
.content-wrap{
    padding:38px 52px 70px;
    max-width:1440px;
}
.panel{
    border-radius:22px;
    box-shadow:0 20px 60px rgba(54,25,30,.07);
}
.panel-head{
    padding:26px 30px;
    background:linear-gradient(180deg,#fff,#fdfbfb);
}
.panel-head h3{
    font-size:20px;
    letter-spacing:-.015em;
}
.form-panel{
    max-width:1120px;
    margin:0 auto 28px;
    overflow:visible;
}
.form-panel .form-grid{
    padding:34px 38px 38px;
}
.form-grid{
    gap:10px 26px;
}
.form-grid label{
    padding:4px 0 8px;
    font-size:12px;
    letter-spacing:.01em;
}
.form-grid input,
.form-grid textarea,
.form-grid select{
    margin:9px 0 12px;
    padding:14px 16px;
    min-height:48px;
    border-radius:13px;
    border-color:#e8e0e2;
    background:#fff;
    transition:border-color .22s ease, box-shadow .22s ease, transform .22s ease, background .22s ease;
}
.form-grid textarea{
    min-height:150px;
    line-height:1.7;
}
.form-grid input:hover,
.form-grid textarea:hover,
.form-grid select:hover{
    border-color:#d7c7cb;
    background:#fffdfd;
}
.form-grid input:focus,
.form-grid textarea:focus,
.form-grid select:focus{
    border-color:var(--primary);
    box-shadow:0 0 0 5px rgba(116,16,34,.08);
}
.form-grid .full{
    padding-top:4px;
}
.form-panel .btn,
.form-grid .btn{
    min-height:48px;
    padding:12px 21px;
    border-radius:13px;
}
.form-panel .panel-head + .form-grid{
    border-top:0;
}
/* Ruang napas untuk grup tombol/form yang dirender tanpa class tambahan */
.form-grid > .actions,
.form-grid > div:last-child.full,
.form-grid > p:last-child.full{
    margin-top:8px;
}
/* Editor / konten panjang */
.form-grid textarea[name="content"],
.form-grid textarea[name="message"],
.form-grid textarea[name="description"]{
    min-height:210px;
}
/* Kartu input terasa lebih premium */
.form-panel{
    position:relative;
}
.form-panel:before{
    content:"";
    display:block;
    height:3px;
    width:72px;
    margin:0 0 -3px 30px;
    border-radius:999px;
    background:linear-gradient(90deg,var(--primary),var(--accent));
    position:relative;
    z-index:2;
}
.form-panel .panel-head{
    border-top-left-radius:22px;
    border-top-right-radius:22px;
}
.color-row{
    grid-template-columns:58px minmax(0,1fr);
    gap:12px;
}
.color-row input[type=color]{
    min-height:48px;
    height:48px;
    padding:4px;
    border-radius:13px;
}
.theme-preview{
    padding:18px;
    border-radius:15px;
}
.table-wrap{
    padding:4px 0;
}
@media(max-width:1050px){
    .content-wrap{padding:30px 30px 60px}
    .form-panel{max-width:100%}
    .form-panel .form-grid{padding:28px 30px 32px}
}
@media(max-width:780px){
    .content-wrap{padding:22px 16px 50px}
    .form-panel{border-radius:18px}
    .form-panel:before{margin-left:22px}
    .panel-head{padding:21px 22px}
    .form-panel .form-grid{
        grid-template-columns:1fr;
        padding:22px 22px 28px;
        gap:6px;
    }
    .form-grid .full{grid-column:auto}
    .form-grid input,
    .form-grid textarea,
    .form-grid select{padding:13px 14px}
}

/* =========================================================
   ADMIN PREMIUM V9 — UNIVERSAL FORM INSET
   Semua form tambah/edit diberi ruang dari tepi panel.
   Berlaku untuk seluruh menu admin, bukan hanya Profil.
   ========================================================= */
.content-wrap > .panel > .form-grid,
.content-wrap > section.panel > form.form-grid,
.content-wrap .panel:not(.form-panel) > form.form-grid{
    width:calc(100% - 96px);
    max-width:1180px;
    margin:0 auto;
    padding:32px 0 38px;
    gap:14px 30px;
}
/* Header dan isi form tetap satu garis visual yang rapi */
.content-wrap > .panel > .panel-head + .form-grid,
.content-wrap > section.panel > .panel-head + form.form-grid{
    padding-top:30px;
}
/* Jaga semua field memiliki ruang napas yang konsisten */
.content-wrap .panel > form.form-grid > label{
    min-width:0;
}
.content-wrap .panel > form.form-grid input,
.content-wrap .panel > form.form-grid select,
.content-wrap .panel > form.form-grid textarea{
    margin-bottom:10px;
}
/* Area tombol tidak menempel pada sisi panel */
.content-wrap .panel > form.form-grid > .full:last-child{
    padding-top:10px;
}
@media (max-width:1200px){
    .content-wrap > .panel > .form-grid,
    .content-wrap > section.panel > form.form-grid,
    .content-wrap .panel:not(.form-panel) > form.form-grid{
        width:calc(100% - 64px);
        max-width:none;
        padding:28px 0 34px;
        gap:12px 24px;
    }
}
@media (max-width:780px){
    .content-wrap > .panel > .form-grid,
    .content-wrap > section.panel > form.form-grid,
    .content-wrap .panel:not(.form-panel) > form.form-grid{
        width:calc(100% - 40px);
        padding:22px 0 28px;
        gap:8px;
    }
}
@media (max-width:480px){
    .content-wrap > .panel > .form-grid,
    .content-wrap > section.panel > form.form-grid,
    .content-wrap .panel:not(.form-panel) > form.form-grid{
        width:calc(100% - 28px);
        padding:18px 0 24px;
    }
}

/* =========================================================
   ADMIN PREMIUM V10 — FORM SAFE INSET
   Ruang samping dibuat jauh lebih jelas untuk SEMUA form admin.
   Menggunakan padding pada form, bukan hanya width/margin,
   sehingga kolom tidak bisa kembali menempel ke tepi panel.
   ========================================================= */
.admin-main .content-wrap .panel > form.form-grid,
.admin-main .content-wrap .panel.form-panel > form.form-grid,
.admin-main .content-wrap section.panel > form.form-grid{
    width:100% !important;
    max-width:none !important;
    box-sizing:border-box !important;
    margin:0 !important;
    padding:34px clamp(72px, 7vw, 120px) 42px !important;
    gap:18px 34px !important;
}

/* Area field dan tombol selalu mengikuti ruang inset yang sama */
.admin-main .content-wrap .panel > form.form-grid > label,
.admin-main .content-wrap .panel > form.form-grid > div,
.admin-main .content-wrap .panel > form.form-grid > p{
    min-width:0;
}

/* Form yang memiliki header tidak boleh menghapus ruang kiri/kanan */
.admin-main .content-wrap .panel > .panel-head + form.form-grid{
    padding-top:34px !important;
}

/* Beri ruang visual tambahan di bawah field terakhir */
.admin-main .content-wrap .panel > form.form-grid > .full:last-child{
    padding-top:14px !important;
}

@media (max-width:1100px){
    .admin-main .content-wrap .panel > form.form-grid,
    .admin-main .content-wrap .panel.form-panel > form.form-grid,
    .admin-main .content-wrap section.panel > form.form-grid{
        padding-left:48px !important;
        padding-right:48px !important;
        gap:16px 26px !important;
    }
}

@media (max-width:780px){
    .admin-main .content-wrap .panel > form.form-grid,
    .admin-main .content-wrap .panel.form-panel > form.form-grid,
    .admin-main .content-wrap section.panel > form.form-grid{
        padding:26px 28px 32px !important;
        gap:12px !important;
    }
}

@media (max-width:480px){
    .admin-main .content-wrap .panel > form.form-grid,
    .admin-main .content-wrap .panel.form-panel > form.form-grid,
    .admin-main .content-wrap section.panel > form.form-grid{
        padding-left:20px !important;
        padding-right:20px !important;
    }
}


/* =========================================================
   ADMIN PREMIUM V11 — UNIVERSAL DATA TABLE READABILITY FIX
   Memastikan semua kolom management data tetap terbaca,
   tidak terpotong, tidak menyatu, dan tidak tampak kosong.
   ========================================================= */
.admin-main .content-wrap .panel:has(.table-wrap){
    overflow:visible;
}
.admin-main .content-wrap .table-wrap{
    display:block;
    width:100%;
    overflow-x:auto !important;
    overflow-y:visible;
    -webkit-overflow-scrolling:touch;
    padding:0;
    border-radius:0 0 18px 18px;
}
.admin-main .content-wrap .table-wrap table{
    width:max(100%, 900px) !important;
    min-width:900px !important;
    table-layout:auto !important;
    border-collapse:separate;
    border-spacing:0;
    font-size:13px !important;
    color:#2e2729 !important;
    background:#fff;
}
.admin-main .content-wrap .table-wrap thead th{
    position:sticky;
    top:88px;
    z-index:2;
    white-space:nowrap;
    padding:16px 18px !important;
    color:#6b5d62 !important;
    background:#fbf9fa !important;
    border-bottom:1px solid #e7dde0 !important;
    font-size:10px !important;
    letter-spacing:1px;
}
.admin-main .content-wrap .table-wrap tbody td{
    padding:16px 18px !important;
    min-width:110px;
    color:#2e2729 !important;
    background:#fff;
    border-bottom:1px solid #eee7e9 !important;
    line-height:1.5 !important;
    vertical-align:middle !important;
    white-space:normal !important;
    word-break:break-word;
}
.admin-main .content-wrap .table-wrap tbody td:first-child,
.admin-main .content-wrap .table-wrap thead th:first-child{
    min-width:70px;
    width:80px;
}
.admin-main .content-wrap .table-wrap tbody tr:nth-child(even) td{background:#fdfbfb;}
.admin-main .content-wrap .table-wrap tbody tr:hover td{background:#faf3f4 !important;}
.admin-main .content-wrap .table-wrap .cell-value{display:block;min-height:20px;color:inherit;font-weight:500;}
.admin-main .content-wrap .table-wrap td[data-field="is_active"] .cell-value:empty::after{content:"—";}
.admin-main .content-wrap .table-wrap .actions{
    min-width:160px;
    white-space:nowrap !important;
}
.admin-main .content-wrap .table-wrap .actions a{
    display:inline-flex;
    align-items:center;
    min-height:34px;
    margin:2px 6px 2px 0 !important;
    padding:0 10px;
    border:1px solid #eadfe2;
    border-radius:9px;
    background:#fff;
}
.admin-main .content-wrap .table-wrap .actions .danger-link{border-color:#f0d5da;}
.admin-main .content-wrap .table-wrap .empty{
    padding:42px 24px !important;
    text-align:center !important;
    color:#76696d !important;
    background:#fff !important;
}
@media(max-width:780px){
    .admin-main .content-wrap .table-wrap table{min-width:760px !important;font-size:12px !important;}
    .admin-main .content-wrap .table-wrap thead th{top:76px;padding:14px !important;}
    .admin-main .content-wrap .table-wrap tbody td{padding:14px !important;}
}


/* =========================================================
   ADMIN PREMIUM V12 — DATA ROW VISIBILITY & RENDER FIX
   Reset table rendering globally. V11's aggressive table layout
   is replaced with conservative browser-native table display so
   existing database rows cannot disappear visually.
   ========================================================= */
.admin-main .content-wrap .panel:has(.table-wrap){
    overflow:hidden !important;
}
.admin-main .content-wrap .table-wrap{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    overflow-x:auto !important;
    overflow-y:visible !important;
    position:relative !important;
    isolation:auto !important;
}
.admin-main .content-wrap .table-wrap table{
    display:table !important;
    width:100% !important;
    min-width:760px !important;
    max-width:none !important;
    table-layout:auto !important;
    border-collapse:collapse !important;
    visibility:visible !important;
    opacity:1 !important;
    color:#2e2729 !important;
    background:#fff !important;
}
.admin-main .content-wrap .table-wrap thead{
    display:table-header-group !important;
    visibility:visible !important;
    opacity:1 !important;
}
.admin-main .content-wrap .table-wrap tbody{
    display:table-row-group !important;
    visibility:visible !important;
    opacity:1 !important;
    height:auto !important;
    overflow:visible !important;
}
.admin-main .content-wrap .table-wrap tr{
    display:table-row !important;
    visibility:visible !important;
    opacity:1 !important;
    height:auto !important;
}
.admin-main .content-wrap .table-wrap th,
.admin-main .content-wrap .table-wrap td{
    display:table-cell !important;
    visibility:visible !important;
    opacity:1 !important;
}
.admin-main .content-wrap .table-wrap thead th{
    position:static !important;
    top:auto !important;
    z-index:auto !important;
    padding:15px 18px !important;
    white-space:nowrap !important;
    background:#fbf9fa !important;
    color:#6b5d62 !important;
    border-bottom:1px solid #e7dde0 !important;
}
.admin-main .content-wrap .table-wrap tbody td{
    padding:15px 18px !important;
    min-width:0 !important;
    height:auto !important;
    color:#2e2729 !important;
    background:#fff !important;
    line-height:1.5 !important;
    white-space:normal !important;
    overflow:visible !important;
}
.admin-main .content-wrap .table-wrap tbody tr:nth-child(even) td{background:#fdfbfb !important;}
.admin-main .content-wrap .table-wrap .cell-value{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    min-height:0 !important;
    color:#2e2729 !important;
    font-weight:500 !important;
}
@media(max-width:780px){
    .admin-main .content-wrap .table-wrap table{min-width:680px !important;}
    .admin-main .content-wrap .table-wrap th,
    .admin-main .content-wrap .table-wrap td{padding:13px 14px !important;}
}


/* =========================================================
   ADMIN PREMIUM V13 — DATA VALUE SERVER RENDER FIX
   Menghilangkan wrapper cell lama dan memastikan teks database
   dirender langsung ke setiap <td>, termasuk status dan aksi.
   ========================================================= */
.admin-main .content-wrap .admin-data-table{
    display:table !important;
    width:100% !important;
    min-width:900px !important;
    table-layout:auto !important;
}
.admin-main .content-wrap .admin-data-table tbody tr{
    display:table-row !important;
}
.admin-main .content-wrap .admin-data-table tbody td.data-cell,
.admin-main .content-wrap .admin-data-table tbody td.actions,
.admin-main .content-wrap .admin-data-table tbody td.id-cell{
    display:table-cell !important;
    visibility:visible !important;
    opacity:1 !important;
    color:#2e2729 !important;
    -webkit-text-fill-color:#2e2729 !important;
    text-indent:0 !important;
    clip:auto !important;
    clip-path:none !important;
    transform:none !important;
    filter:none !important;
    font-size:13px !important;
}
.admin-main .content-wrap .admin-data-table tbody td.data-cell{
    min-width:120px !important;
    white-space:normal !important;
    overflow-wrap:anywhere;
}
.admin-main .content-wrap .admin-data-table tbody td.actions{
    min-width:180px !important;
}
.admin-main .content-wrap .admin-data-table tbody td.actions a{
    color:var(--primary) !important;
    -webkit-text-fill-color:var(--primary) !important;
    visibility:visible !important;
    opacity:1 !important;
}
.admin-main .content-wrap .admin-data-table tbody td.actions a.danger-link{
    color:#b42318 !important;
    -webkit-text-fill-color:#b42318 !important;
}
.admin-main .content-wrap .admin-data-table tbody td.data-cell *,
.admin-main .content-wrap .admin-data-table tbody td.actions *{
    visibility:visible !important;
    opacity:1 !important;
}
@media(max-width:780px){
  .admin-main .content-wrap .admin-data-table{min-width:760px !important;}
}

/* =========================================================
   V14 — ADMIN TYPOGRAPHY PREMIUM SMOOTH (GLOBAL)
   Berlaku untuk seluruh menu admin karena seluruh panel memakai premium.css
   ========================================================= */
.admin-body{
  font-size:15px;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
}
.admin-body .sidebar nav a{
  font-size:14px;
  line-height:1.45;
  font-weight:600;
  letter-spacing:.005em;
  padding:11px 13px;
  border-radius:12px;
  transition:background-color .22s ease,color .22s ease,transform .22s ease,box-shadow .22s ease;
}
.admin-body .sidebar nav a:hover{transform:translateX(2px)}
.admin-body .nav-label{
  font-size:10px;
  letter-spacing:1.7px;
  line-height:1.4;
  font-weight:850;
}
.admin-body .brand b{font-size:14.5px;letter-spacing:.01em}
.admin-body .brand span{font-size:10px;letter-spacing:1.5px}
.admin-body .side-footer a{font-size:12px;font-weight:600}

.admin-body .topbar-admin h1{
  font-size:30px;
  line-height:1.2;
  letter-spacing:-.025em;
  font-weight:750;
}
.admin-body .crumb{font-size:10px;letter-spacing:1.55px}
.admin-body .view-site{font-size:12.5px;font-weight:750;padding:10px 15px}
.admin-body .user-chip span{font-size:13px;font-weight:800}
.admin-body .user-chip small{font-size:10px;letter-spacing:.08em}

.admin-body .eyebrow{
  font-size:11px;
  letter-spacing:1.8px;
  font-weight:850;
}
.admin-body .panel-head h3,
.admin-body .welcome h2{
  font-size:24px;
  line-height:1.25;
  letter-spacing:-.02em;
  font-weight:750;
}
.admin-body .panel-head p,
.admin-body .welcome p{font-size:14px;line-height:1.65}
.admin-body .welcome h2{font-size:28px}

/* Semua label, input, select, textarea dan bantuan form */
.admin-body .login-card label,
.admin-body .form-grid label{
  font-size:14px;
  line-height:1.45;
  letter-spacing:.01em;
  font-weight:700;
}
.admin-body .form-grid input,
.admin-body .form-grid textarea,
.admin-body .form-grid select,
.admin-body .login-card input{
  font-size:14.5px;
  line-height:1.55;
  font-weight:550;
  letter-spacing:.005em;
}
.admin-body .form-help{font-size:12.5px;line-height:1.55}
.admin-body .theme-preview span{font-size:12.5px}
.admin-body .form-grid textarea{line-height:1.7}

/* Tombol dan aksi di seluruh menu */
.admin-body .btn{
  font-size:14px;
  font-weight:750;
  letter-spacing:.005em;
  transition:transform .22s ease,box-shadow .22s ease,background-color .22s ease,border-color .22s ease;
}
.admin-body .actions a,
.admin-body .table-wrap .actions a{font-size:13px;font-weight:750}

/* Semua tabel management data */
.admin-body .table-wrap table{font-size:13.5px;line-height:1.55}
.admin-body .table-wrap th{font-size:10.5px;letter-spacing:1px;font-weight:850}
.admin-body .table-wrap td{font-size:13.5px;font-weight:500}
.admin-body .table-wrap td b{font-weight:750}

/* Dashboard dan kartu modul */
.admin-body .metric small{font-size:12px;font-weight:600}
.admin-body .metric b{font-size:34px;font-weight:800}
.admin-body .metric em{font-size:11px}
.admin-body .quick-grid b{font-size:14px;font-weight:750}
.admin-body .quick-grid span{font-size:11.5px;line-height:1.55}
.admin-body .module-card b{font-size:17px;font-weight:750}
.admin-body .module-card span{font-size:13.5px;line-height:1.6}

@media(max-width:780px){
  .admin-body{font-size:14px}
  .admin-body .sidebar nav a{font-size:14px;padding:11px 13px}
  .admin-body .topbar-admin h1{font-size:24px}
  .admin-body .panel-head h3{font-size:21px}
  .admin-body .welcome h2{font-size:24px}
  .admin-body .form-grid label{font-size:13.5px}
  .admin-body .form-grid input,
  .admin-body .form-grid textarea,
  .admin-body .form-grid select{font-size:14px}
}

/* V24 HERO FORM: explicit controls, save action always visible */
.hero-form-fixed{display:block!important;width:100%!important;max-width:980px!important;margin:0 auto!important;padding:26px 32px 30px!important;overflow:visible!important;position:relative!important;min-height:0!important;height:auto!important;box-sizing:border-box!important}
.hero-form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px 22px!important;align-items:start!important;width:100%!important}
.hero-form-grid label{display:flex!important;flex-direction:column!important;gap:8px!important;min-width:0!important;visibility:visible!important;opacity:1!important}
.hero-form-grid .hero-full{grid-column:1/-1!important}
.hero-form-grid input,.hero-form-grid select,.hero-form-grid textarea{width:100%!important;box-sizing:border-box!important;display:block!important;visibility:visible!important;opacity:1!important}
.hero-form-actions{display:flex!important;align-items:center!important;gap:12px!important;width:100%!important;margin-top:26px!important;padding-top:20px!important;border-top:1px solid rgba(148,163,184,.22)!important;position:relative!important;z-index:50!important;visibility:visible!important;opacity:1!important;overflow:visible!important}
.hero-form-actions .hero-save-btn{display:inline-flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;position:relative!important;z-index:60!important;min-height:46px!important;align-items:center!important;justify-content:center!important}
@media(max-width:760px){.hero-form-fixed{padding:20px!important}.hero-form-grid{grid-template-columns:1fr!important}.hero-form-grid .hero-full{grid-column:auto!important}.hero-form-actions{flex-wrap:wrap!important}}

/* V25 HERO CRUD HARD FIX: gunakan struktur form admin standar */
.hero-crud-form{display:grid!important;visibility:visible!important;opacity:1!important;overflow:visible!important;height:auto!important;min-height:0!important}
.hero-crud-form > label,.hero-crud-form > .full{display:block!important;visibility:visible!important;opacity:1!important;position:static!important;transform:none!important}
.hero-crud-form > label input,.hero-crud-form > label textarea,.hero-crud-form > label select{display:block!important;width:100%!important;visibility:visible!important;opacity:1!important;height:auto!important;min-height:48px!important;box-sizing:border-box!important}
.hero-crud-form > label textarea{min-height:110px!important}
.hero-crud-actions{display:flex!important;align-items:center!important;gap:12px!important;min-height:58px!important;visibility:visible!important;opacity:1!important;overflow:visible!important}
.hero-crud-actions .btn{display:inline-flex!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important;align-items:center!important;justify-content:center!important;position:relative!important;z-index:10!important}


/* V27: HARD FIX HERO + STATISTIK FORM ACTIONS */
.admin-main .content-wrap .panel:has(form.hero-crud-form),
.admin-main .content-wrap .panel:has(form.statistics-crud-form){
    overflow:visible!important;
    height:auto!important;
    min-height:0!important;
}
.admin-main .content-wrap form.hero-crud-form,
.admin-main .content-wrap form.statistics-crud-form{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    grid-auto-rows:auto!important;
    align-items:start!important;
    align-content:start!important;
    gap:18px 26px!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    padding:26px 34px 34px!important;
    box-sizing:border-box!important;
}
.admin-main .content-wrap form.hero-crud-form > *,
.admin-main .content-wrap form.statistics-crud-form > *{
    min-width:0!important;
    min-height:0!important;
    visibility:visible!important;
    opacity:1!important;
    position:static!important;
    transform:none!important;
}
.admin-main .content-wrap form.hero-crud-form > label,
.admin-main .content-wrap form.statistics-crud-form > label{
    display:block!important;
}
.admin-main .content-wrap form.hero-crud-form > label.full,
.admin-main .content-wrap form.hero-crud-form > .full,
.admin-main .content-wrap form.statistics-crud-form > .full{
    grid-column:1/-1!important;
}
.admin-main .content-wrap form.hero-crud-form input,
.admin-main .content-wrap form.hero-crud-form textarea,
.admin-main .content-wrap form.hero-crud-form select,
.admin-main .content-wrap form.statistics-crud-form input,
.admin-main .content-wrap form.statistics-crud-form textarea,
.admin-main .content-wrap form.statistics-crud-form select{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
    height:auto!important;
    min-height:48px!important;
    max-height:none!important;
    visibility:visible!important;
    opacity:1!important;
}
.admin-main .content-wrap .hero-crud-actions,
.admin-main .content-wrap .statistics-crud-actions{
    display:flex!important;
    grid-column:1/-1!important;
    align-items:center!important;
    gap:12px!important;
    width:100%!important;
    min-height:58px!important;
    margin-top:8px!important;
    padding-top:18px!important;
    padding-bottom:2px!important;
    border-top:1px solid rgba(148,163,184,.22)!important;
    overflow:visible!important;
    visibility:visible!important;
    opacity:1!important;
}
.admin-main .content-wrap .hero-crud-actions .btn,
.admin-main .content-wrap .statistics-crud-actions .btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:48px!important;
    visibility:visible!important;
    opacity:1!important;
    pointer-events:auto!important;
    position:relative!important;
    z-index:100!important;
}
@media(max-width:780px){
    .admin-main .content-wrap form.hero-crud-form,
    .admin-main .content-wrap form.statistics-crud-form{
        grid-template-columns:1fr!important;
        padding:22px 20px 28px!important;
    }
    .admin-main .content-wrap form.hero-crud-form > label.full,
    .admin-main .content-wrap form.hero-crud-form > .full,
    .admin-main .content-wrap form.statistics-crud-form > .full{
        grid-column:auto!important;
    }
    .admin-main .content-wrap .hero-crud-actions,
    .admin-main .content-wrap .statistics-crud-actions{
        grid-column:auto!important;
        flex-wrap:wrap!important;
    }
}


/* V30 FINAL ADMIN SCROLL + SIDEBAR LOCK */
html,body{height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important}
.admin-shell{min-height:100vh!important;height:auto!important;overflow:visible!important}
.admin-main{height:auto!important;min-height:100vh!important;overflow:visible!important}
.content-wrap{height:auto!important;overflow:visible!important;padding-bottom:72px!important}
.sidebar{position:sticky!important;top:0!important;height:100vh!important;overflow:hidden!important}
.sidebar nav{overflow:hidden!important}


/* V31 FINAL SIDEBAR LOCK */

/* V31: remove Hero/Statistik modules and lock desktop sidebar */
@media(min-width:781px){
  .admin-shell{display:block!important;min-height:100vh!important;}
  .sidebar{
    position:fixed!important;
    left:0!important;top:0!important;bottom:0!important;
    width:270px!important;flex:none!important;
    height:100vh!important;max-height:100vh!important;
    overflow:hidden!important;
    z-index:50!important;
  }
  .admin-main{margin-left:270px!important;width:calc(100% - 270px)!important;min-height:100vh!important;}
}
@media(min-width:781px) and (max-width:1050px){
  .sidebar{width:235px!important;}
  .admin-main{margin-left:235px!important;width:calc(100% - 235px)!important;}
}
@media(max-width:780px){
  .sidebar{position:fixed!important;margin:0!important;}
  .admin-main{margin-left:0!important;width:100%!important;}
}



/* =========================================================
   V33 — NAVY PREMIUM ADMIN + PROFESSIONAL ICON SYSTEM
   ========================================================= */
.admin-body{background:radial-gradient(circle at 100% 0,rgba(96,165,250,.12),transparent 28%),linear-gradient(180deg,#F8FAFC 0%,#F1F5F9 100%)}
.sidebar{background:linear-gradient(180deg,#071A33 0%,#0B1F3A 52%,#102A4C 100%)!important;border-right:1px solid rgba(255,255,255,.07)}
.brand{padding:22px 19px!important}.brand b{font-size:13.5px!important;letter-spacing:.01em}.brand span{color:#B9C7D9!important}
.nav-label{color:#9FB3C8!important;font-size:9.5px!important;letter-spacing:1.7px!important}
.admin-body .sidebar nav a{font-size:15px!important;font-weight:650!important;letter-spacing:.005em;padding:11px 13px!important;color:#EAF1FA!important}
.admin-body .sidebar nav a:hover{background:rgba(255,255,255,.09)!important;color:#fff!important}
.admin-body .sidebar nav a.active{background:linear-gradient(90deg,rgba(96,165,250,.22),rgba(255,255,255,.07))!important;box-shadow:inset 3px 0 #7DD3FC!important}
.nav-icon{width:25px!important;height:25px!important;display:grid!important;place-items:center!important;flex:0 0 25px!important;color:#A9C8E8!important;opacity:1!important}.nav-icon svg{width:19px;height:19px;stroke-width:2}.sidebar nav a.active .nav-icon,.sidebar nav a:hover .nav-icon{color:#7DD3FC!important}
.metric-icon{width:44px;height:44px;display:grid!important;place-items:center;border-radius:14px;background:#EAF2FF;color:var(--primary)!important}.metric-icon svg{width:22px;height:22px;stroke-width:2}.module-icon svg{width:25px;height:25px;stroke-width:2}
.module-card{border-color:rgba(11,31,58,.10)!important;background:linear-gradient(135deg,#fff,#F7FAFF)!important}.module-card:hover{border-color:rgba(37,99,235,.28)!important;box-shadow:0 18px 42px rgba(11,31,58,.10)!important}.module-icon{background:linear-gradient(135deg,#0B1F3A,#173A68)!important;color:#DCEEFF!important}
.welcome{background:linear-gradient(135deg,#fff,#EEF5FF)!important;border-color:#DCE7F5!important}.panel-head{background:linear-gradient(180deg,#fff,#FBFDFF)!important}.panel,.metric{border-color:#E3EAF4!important;box-shadow:0 20px 58px rgba(11,31,58,.07)!important}.table-wrap th{background:#F7FAFD!important;color:#52657A!important}.table-wrap tbody tr:hover{background:#F8FBFF!important}
.btn.primary{background:linear-gradient(135deg,#0B1F3A,#1D4E89)!important}.view-site{color:var(--primary)!important;border-color:#D7E1EF!important}.menu-toggle{background:#EEF5FF!important;color:var(--primary)!important}
.admin-body .eyebrow{color:#1D4E89!important}.admin-body .content-wrap{max-width:1500px!important}

/* V50: utility actions match the main sidebar navigation */
.admin-body .side-footer{padding:10px 10px 14px;margin-top:auto;border-top:1px solid #ffffff14}
.admin-body .side-footer .utility-link{display:flex!important;align-items:center;gap:10px;width:100%;box-sizing:border-box;color:#eaf3ff!important;text-decoration:none;padding:10px 12px!important;border-radius:10px;font-size:12.5px!important;font-weight:650!important;margin:3px 0;transition:.2s;border:1px solid rgba(125,211,252,.12)!important;background:linear-gradient(135deg,rgba(18,58,104,.92),rgba(7,26,51,.96))!important;box-shadow:0 7px 18px rgba(0,0,0,.10)!important}
.admin-body .side-footer .utility-link .nav-icon{width:20px;text-align:center;font-style:normal;opacity:1;flex:0 0 20px;color:#9fd8ff!important}
.admin-body .side-footer .utility-link:hover{background:linear-gradient(135deg,#174d83,#0b2a50)!important;color:#fff!important;transform:translateY(-1px);border-color:rgba(125,211,252,.28)!important}
.admin-body .side-footer .utility-logout{background:linear-gradient(135deg,#123b68,#0b2547)!important;border-color:rgba(96,165,250,.24)!important}
.admin-body .side-footer .utility-logout .nav-icon{color:#7dd3fc!important}
.admin-body .side-footer .utility-logout:hover{background:linear-gradient(135deg,#1d5d9f,#0e3764)!important;border-color:rgba(125,211,252,.42)!important}

/* V5.4.3 FIX4 — definitive navy sidebar logout */
body.admin-body aside.sidebar .side-footer.nav-utility form.utility-logout-form > button.utility-link.utility-logout{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-height:46px!important;
  box-sizing:border-box!important;
  margin:7px 0!important;
  padding:0 14px!important;
  gap:11px!important;
  border-radius:13px!important;
  border:1px solid rgba(111,186,255,.28)!important;
  background:#0b2a50!important;
  background-image:linear-gradient(135deg,#123f72,#0b2a50)!important;
  color:#eaf4ff!important;
  box-shadow:0 8px 20px rgba(0,0,0,.14)!important;
  font-weight:700!important;
  text-align:left!important;
  cursor:pointer!important;
}
body.admin-body aside.sidebar .side-footer.nav-utility form.utility-logout-form > button.utility-link.utility-logout .nav-icon{
  color:#8fc8ff!important;
  opacity:1!important;
}
body.admin-body aside.sidebar .side-footer.nav-utility form.utility-logout-form > button.utility-link.utility-logout:hover{
  background:#0b3d70!important;
  background-image:linear-gradient(135deg,#155b98,#0b3d70)!important;
  color:#fff!important;
  border-color:rgba(126,202,255,.48)!important;
  transform:translateY(-1px)!important;
}


/* V5.4.3 NAVY FIX5 — authoritative admin palette */
:root{--primary:#0B1F3A;--primary-dark:#061426;--accent:#C7A55B;--ink:#152238;--muted:#64748B;--line:#E5EAF2;--bg:#F4F7FB}
.sidebar{background:linear-gradient(180deg,#061426 0%,#0B1F3A 52%,#071a30 100%)!important}
.sidebar nav a{color:#e8f3ff!important}.nav-label{color:#a9c8e6!important}.brand span{color:#b8d7f5!important}.side-footer a{color:#c8d9eb!important}
.utility-logout-form{margin:0!important}.utility-logout{width:100%!important;display:flex!important;align-items:center!important;gap:10px!important;justify-content:flex-start!important;min-height:44px!important;padding:10px 12px!important;background:linear-gradient(135deg,#123f72,#0b2a50)!important;background-color:#0b2a50!important;color:#eaf4ff!important;border:1px solid rgba(111,186,255,.28)!important;border-radius:13px!important;box-shadow:0 8px 20px rgba(0,0,0,.14)!important;appearance:none!important;-webkit-appearance:none!important}
.utility-logout:hover,.utility-logout:focus{background:linear-gradient(135deg,#155b98,#0b3d70)!important;color:#fff!important;border-color:rgba(199,165,91,.55)!important;transform:translateY(-1px)!important;outline:none!important}
.utility-logout .nav-icon{color:#a9d3ff!important}

/* =========================================================
   BHASKARATECH FINAL ADMIN + FRONTEND POLISH
   Satu standar sidebar, tagline, navbar.
   ========================================================= */
body.admin-body .sidebar{width:270px!important;min-width:270px!important;max-width:270px!important;background:linear-gradient(180deg,#061426 0%,#0b1f3a 55%,#071a30 100%)!important;border-right:1px solid rgba(255,255,255,.07)!important}
body.admin-body .sidebar .brand{min-height:82px!important;height:auto!important;padding:16px 16px 14px!important;align-items:flex-start!important}
body.admin-body .sidebar .brand b{color:#fff!important;font-size:13px!important;line-height:1.25!important}
body.admin-body .sidebar .brand .admin-school-tagline{display:block!important;color:#9fc0df!important;font-size:8.5px!important;line-height:1.35!important;letter-spacing:.01em!important;margin-top:5px!important;max-width:178px!important;white-space:normal!important}
body.admin-body .sidebar nav{height:calc(100vh - 158px)!important;overflow-y:auto!important;overflow-x:hidden!important;padding:8px 10px 10px!important}
body.admin-body .sidebar nav a{min-height:40px!important;margin:2px 0!important;padding:0 11px!important;border-radius:10px!important;color:#dce9f6!important;font-size:12px!important;font-weight:700!important;transform:none!important}
body.admin-body .sidebar nav a:hover{background:rgba(255,255,255,.07)!important;color:#fff!important;transform:none!important}
body.admin-body .sidebar nav a.active{background:linear-gradient(135deg,rgba(41,111,177,.82),rgba(20,65,113,.86))!important;color:#fff!important;box-shadow:inset 3px 0 #8fc8ff,0 5px 14px rgba(0,0,0,.10)!important}
body.admin-body .sidebar .nav-label{padding:9px 10px 5px!important;color:#8eabc6!important;font-size:9px!important;letter-spacing:.15em!important}
body.admin-body .sidebar .nav-icon{width:20px!important;min-width:20px!important;height:20px!important;color:#8fc8ff!important}
body.admin-body .sidebar .side-footer{padding:9px 10px 12px!important;background:rgba(2,13,27,.25)!important}
body.admin-body .sidebar .utility-link{min-height:42px!important;margin:4px 0!important;border-radius:10px!important;font-size:12px!important}
body.admin-body .admin-main{margin-left:270px!important;width:calc(100% - 270px)!important;min-height:100vh!important}
body.admin-body .topbar-admin{min-height:76px!important;padding:0 28px!important;background:rgba(255,255,255,.94)!important;border-bottom:1px solid #e4eaf2!important;display:flex!important;align-items:center!important;justify-content:space-between!important;box-sizing:border-box!important}
body.admin-body .topbar-admin h1{color:#152238!important;font-size:24px!important;margin:3px 0 0!important}
body.admin-body .topbar-admin .crumb{color:#718096!important;font-size:10px!important;letter-spacing:.08em!important}
body.admin-body .content-wrap{padding:28px 30px 64px!important}

/* Frontend navbar: school name + tagline always visible */
body:not(.admin-body) .nav{position:sticky!important;top:0!important;z-index:99!important;background:rgba(255,255,255,.97)!important;border-bottom:1px solid var(--line)!important;box-shadow:0 5px 24px rgba(0,0,0,.035)!important}
body:not(.admin-body) .nav .brand small{display:block!important;color:#64748b!important;font-size:10px!important;line-height:1.35!important;margin-top:3px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:360px!important}
body:not(.admin-body) .nav .menu{display:flex!important;align-items:center!important;gap:22px!important;margin:0!important;padding:0!important;list-style:none!important}
body:not(.admin-body) .nav .menu a{color:#26364a!important;font-size:14px!important;font-weight:750!important;text-decoration:none!important}
body:not(.admin-body) .nav .menu a:hover,body:not(.admin-body) .nav .menu a.active{color:var(--p)!important}
body:not(.admin-body) .hero-card-foot{justify-content:flex-start!important;gap:7px!important;flex-wrap:nowrap!important}

@media(max-width:780px){
  body.admin-body .sidebar{width:275px!important;min-width:275px!important;max-width:275px!important;left:-285px!important}
  body.admin-body .sidebar.open{left:0!important}
  body.admin-body .admin-main{margin-left:0!important;width:100%!important}
  body.admin-body .topbar-admin{padding:0 16px!important}
  body.admin-body .content-wrap{padding:18px 15px 50px!important}
}
@media(max-width:760px){
  body:not(.admin-body) .nav .brand small{max-width:220px!important}
  body:not(.admin-body) .nav .menu{display:none!important}
  body:not(.admin-body) .nav .menu.show{display:flex!important;position:absolute!important;top:70px!important;left:15px!important;right:15px!important;background:#fff!important;padding:16px!important;border-radius:16px!important;box-shadow:var(--shadow)!important;flex-direction:column!important;align-items:stretch!important}
  body:not(.admin-body) .nav .menu a{display:block!important;padding:9px!important}
}

/* Sambutan/Admin standalone: sidebar tetap identik dengan Dashboard dan menu bisa discroll penuh. */
body.admin-body .sidebar{display:flex!important;flex-direction:column!important;min-height:100vh!important;height:100vh!important;overflow:hidden!important}
body.admin-body .sidebar nav{flex:1 1 auto!important;height:auto!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important}
body.admin-body .sidebar .side-footer{flex:0 0 auto!important;margin-top:0!important}
body.admin-body .sidebar nav::-webkit-scrollbar{width:6px}
body.admin-body .sidebar nav::-webkit-scrollbar-thumb{background:rgba(143,200,255,.35);border-radius:10px}
/* Header halaman non-homepage: kotak biru tanpa sudut melengkung */
.student-style-header{border-radius:0!important}
.student-style-header-icon{border-radius:0!important}
.student-style-total{border-radius:0!important}
.student-style-total img{border-radius:0!important}
/* Halaman Data Siswa mengikuti bentuk header yang sama */
.student-hero{border-radius:0!important}
.student-hero-icon{border-radius:0!important}
.student-total{border-radius:0!important}
