* { box-sizing:border-box; }
        body { font-family:'Inter',sans-serif; background:#f1f5f9; }

        /* ══════ SIDEBAR ══════ */
        .sidebar { width:256px; background:#0a1628; min-height:100vh; position:fixed; top:0; left:0; display:flex; flex-direction:column; z-index:40; }
        .sidebar-link { display:flex; align-items:center; gap:11px; padding:10px 18px; margin:0 10px; border-radius:10px; font-size:13px; font-weight:600; color:#94a3b8; text-decoration:none; transition:all .12s; cursor:pointer; }
        .sidebar-link:hover { background:rgba(255,255,255,.05); color:#e2e8f0; }
        .sidebar-link.active { background:#0099b8; color:#fff; box-shadow:0 4px 14px rgba(0,153,184,.35); }
        .sidebar-link i { width:18px; text-align:center; font-size:14px; }
        .sidebar-section { font-size:9.5px; font-weight:700; color:#475569; text-transform:uppercase; letter-spacing:.1em; padding:18px 20px 8px; }

        .main-area { margin-left:256px; }

        /* ══════ TOPBAR ══════ */
        .topbar { background:#fff; border-bottom:1px solid #e2e8f0; height:68px; display:flex; align-items:center; justify-content:space-between; padding:0 28px; position:sticky; top:0; z-index:30; }
        .topbar-icon-btn { width:38px; height:38px; border-radius:10px; display:flex; align-items:center; justify-content:center; color:#64748b; cursor:pointer; transition:all .12s; position:relative; }
        .topbar-icon-btn:hover { background:#f1f5f9; }
        .notif-dot { position:absolute; top:2px; right:2px; min-width:16px; height:16px; padding:0 3px; border-radius:50%; background:#3b82f6; color:#fff; font-size:9px; font-weight:700; display:flex; align-items:center; justify-content:center; }
        .notif-dot.green { background:#10b981; }

        /* ══════ STAT CARDS (gaya gambar: putih, border atas warna, ikon bulat) ══════ */
        .stat-card2 { background:#fff; border:1px solid #e2e8f0; border-radius:16px; padding:20px; display:flex; align-items:center; gap:14px; position:relative; overflow:hidden; }
        .stat-card2::before { content:''; position:absolute; top:0; left:0; right:0; height:4px; }
        .stat-card2.s-blue::before   { background:#3b82f6; }
        .stat-card2.s-indigo::before { background:#6366f1; }
        .stat-card2.s-purple::before { background:#a855f7; }
        .stat-card2.s-teal::before   { background:#14b8a6; }
        .stat-icon2 { width:54px; height:54px; border-radius:14px; display:flex; align-items:center; justify-content:center; font-size:22px; flex-shrink:0; }
        .stat-icon2.i-blue   { background:#dbeafe; color:#2563eb; }
        .stat-icon2.i-indigo { background:#e0e7ff; color:#4f46e5; }
        .stat-icon2.i-purple { background:#f3e8ff; color:#9333ea; }
        .stat-icon2.i-teal   { background:#ccfbf1; color:#0d9488; }
        .stat-title2 { font-size:12px; color:#64748b; font-weight:600; margin-bottom:2px; }
        .stat-value2 { font-size:24px; font-weight:800; color:#1e293b; line-height:1.1; }
        .stat-delta2 { font-size:10.5px; color:#16a34a; font-weight:700; margin-top:4px; display:flex; align-items:center; gap:4px; }

        /* ══════ PANEL ══════ */
        .panel2 { background:#fff; border:1px solid #e2e8f0; border-radius:16px; padding:20px 22px; }
        .panel2-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; }
        .panel2-title { font-size:14px; font-weight:700; color:#1e293b; }
        .panel2-link { font-size:11.5px; font-weight:700; color:#0099b8; text-decoration:none; }
        .panel2-link:hover { text-decoration:underline; }

        .select-mini { font-size:11px; font-weight:600; color:#475569; border:1px solid #e2e8f0; border-radius:9px; padding:6px 12px; background:#fff; cursor:pointer; }

        /* DOKUMEN TERPOPULER LIST */
        .pop-item { display:flex; align-items:center; gap:12px; padding:10px 0; border-bottom:1px solid #f1f5f9; }
        .pop-item:last-child { border-bottom:none; }
        .pop-num { width:22px; height:22px; border-radius:7px; background:#f1f5f9; color:#64748b; font-size:11px; font-weight:700; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
        .pop-title { font-size:12.5px; font-weight:600; color:#334155; flex:1; }
        .pop-views { font-size:11px; font-weight:700; color:#2563eb; background:#eff6ff; padding:3px 10px; border-radius:8px; margin-right:8px; }
        .pop-eye { color:#94a3b8; cursor:pointer; font-size:12px; }
        .pop-eye:hover { color:#0099b8; }

        /* RINGKASAN KATEGORI */
        .kat-item { display:flex; align-items:center; gap:8px; padding:6px 0; font-size:11.5px; }
        .kat-dot { width:9px; height:9px; border-radius:3px; flex-shrink:0; }
        .kat-name { color:#475569; font-weight:600; flex:1; }
        .kat-pct  { color:#1e293b; font-weight:700; }
        .kat-count { color:#94a3b8; font-weight:500; margin-left:3px; }

        /* TABLE DOKUMEN TERBARU */
        table.doc-table { width:100%; border-collapse:collapse; font-size:12.5px; }
        table.doc-table thead tr { background:#0a1628; }
        table.doc-table th { text-align:left; padding:11px 16px; font-size:10.5px; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:#cbd5e1; }
        table.doc-table th:last-child { text-align:center; }
        table.doc-table td { padding:12px 16px; border-bottom:1px solid #f1f5f9; color:#334155; vertical-align:middle; }
        table.doc-table tr:hover td { background:#f8fafc; }
        table.doc-table tr:last-child td { border-bottom:none; }

        .file-badge { width:30px; height:30px; border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:11px; font-weight:800; color:#fff; flex-shrink:0; }
        .fb-word { background:#2563eb; }
        .fb-excel { background:#16a34a; }
        .fb-pdf { background:#dc2626; }
        .fb-ppt { background:#ea580c; }

        .cat-pill { font-size:10px; font-weight:700; padding:3px 10px; border-radius:7px; display:inline-block; }
        .cp-word { background:#dbeafe; color:#1d4ed8; }
        .cp-excel { background:#dcfce7; color:#15803d; }
        .cp-pdf { background:#fee2e2; color:#b91c1c; }
        .cp-ppt { background:#ffedd5; color:#c2410c; }

        .row-actions { display:flex; gap:6px; justify-content:center; }
        .row-act-btn { width:26px; height:26px; border-radius:7px; display:flex; align-items:center; justify-content:center; cursor:pointer; font-size:11px; transition:all .12s; }
        .ra-view { color:#2563eb; background:#eff6ff; }
        .ra-view:hover { background:#dbeafe; }
        .ra-edit { color:#d97706; background:#fffbeb; }
        .ra-edit:hover { background:#fef3c7; }
        .ra-del { color:#dc2626; background:#fef2f2; }
        .ra-del:hover { background:#fee2e2; }

        /* AKSI CEPAT */
        .aksi-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
        .aksi-btn { border:1px solid #e2e8f0; border-radius:12px; padding:14px 8px; display:flex; flex-direction:column; align-items:center; gap:8px; cursor:pointer; transition:all .15s; background:#fff; }
        .aksi-btn:hover { background:#f8fafc; border-color:#0099b8; }
        .aksi-icon { width:38px; height:38px; border-radius:10px; display:flex; align-items:center; justify-content:center; font-size:15px; }
        .aksi-label { font-size:10.5px; font-weight:700; color:#475569; text-align:center; line-height:1.3; }

        /* AKTIVITAS TERBARU */
        .akt-item { display:flex; align-items:flex-start; gap:10px; padding:9px 0; }
        .akt-icon { width:30px; height:30px; border-radius:9px; display:flex; align-items:center; justify-content:center; font-size:12px; flex-shrink:0; }
        .akt-text { font-size:11.5px; color:#334155; font-weight:500; line-height:1.4; }
        .akt-text b { font-weight:700; color:#1e293b; }
        .akt-time { font-size:10px; color:#94a3b8; margin-top:2px; }

        /* KEAMANAN AKUN BOX */
        .security-box { margin:14px 14px 0; padding:14px; background:rgba(0,153,184,.12); border:1px solid rgba(0,153,184,.25); border-radius:12px; }

        .date-pill { border:1px solid #e2e8f0; border-radius:10px; padding:9px 16px; font-size:12px; font-weight:600; color:#475569; display:flex; align-items:center; gap:8px; background:#fff; }