@import "https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@300;400;500;600;700&display=swap";.toast-wrap[data-v-3a93849d]{z-index:9999;pointer-events:none;flex-direction:column;gap:8px;max-width:min(380px,100vw - 32px);display:flex;position:fixed;top:16px;right:16px}.toast[data-v-3a93849d]{pointer-events:auto;color:#f9fafb;background:#1f2937;border-left:4px solid #6b7280;border-radius:10px;align-items:flex-start;gap:10px;padding:12px 14px;font-size:14px;line-height:1.4;display:flex;box-shadow:0 8px 24px #0000002e,0 2px 6px #00000014}.toast--info[data-v-3a93849d]{border-left-color:#3b82f6}.toast--success[data-v-3a93849d]{border-left-color:#10b981}.toast--warn[data-v-3a93849d]{border-left-color:#f59e0b}.toast--error[data-v-3a93849d]{border-left-color:#ef4444}.toast__msg[data-v-3a93849d]{word-break:break-word;flex:1}.toast__close[data-v-3a93849d]{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:0;flex:none;padding:0 2px;font-size:18px;line-height:1}.toast__close[data-v-3a93849d]:hover{opacity:1}.toast-enter-from[data-v-3a93849d],.toast-leave-to[data-v-3a93849d]{opacity:0;transform:translate(20px)}.toast-enter-active[data-v-3a93849d],.toast-leave-active[data-v-3a93849d]{transition:opacity .2s,transform .2s}.bottom-nav[data-v-3303b02d]{display:none}@media (width<=768px){.bottom-nav[data-v-3303b02d]{background:var(--surface);border-top:1px solid var(--border);z-index:300;height:60px;padding:0 4px;padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0;box-shadow:0 -4px 24px #0000001a}}.bn-item[data-v-3303b02d]{color:var(--text-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;padding:0;font-size:10px;font-weight:500;text-decoration:none;transition:color .15s;display:flex}.bn-item svg[data-v-3303b02d]{width:22px;height:22px}.bn-item.active[data-v-3303b02d]{color:var(--primary)}.bn-item.active svg[data-v-3303b02d]{stroke-width:2.4px}.bn-search[data-v-3303b02d]{position:relative}.bn-search-fab[data-v-3303b02d]{background:linear-gradient(135deg, var(--primary) 0%, #0055a0 100%);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;margin-top:-10px;transition:transform .15s,box-shadow .15s;display:flex;box-shadow:0 4px 16px #003d7966}.bn-search:active .bn-search-fab[data-v-3303b02d]{transform:scale(.94);box-shadow:0 2px 8px #003d794d}.bn-avatar[data-v-3303b02d]{background:var(--surface-3,#e5e7eb);border:2px solid var(--border);border-radius:50%;flex-shrink:0;width:30px;height:30px;overflow:hidden}.bn-item.active .bn-avatar[data-v-3303b02d]{border-color:var(--primary)}.bn-foto[data-v-3303b02d]{object-fit:cover;width:100%;height:100%;display:block}.bn-badge-wrap[data-v-3303b02d]{position:relative}.bn-dot[data-v-3303b02d]{color:#fff;border:2px solid var(--surface);background:#ef4444;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 3px;font-size:9px;font-weight:800;display:flex;position:absolute;top:-4px;right:-6px}.gs-overlay[data-v-1578c475]{z-index:9000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0000008c;justify-content:center;align-items:flex-start;padding-top:80px;padding-left:16px;padding-right:16px;display:flex;position:fixed;inset:0}.gs-modal[data-v-1578c475]{background:var(--surface);border:1px solid var(--border);border-radius:16px;width:100%;max-width:560px;overflow:hidden;box-shadow:0 24px 80px #0000004d}.gs-input-wrap[data-v-1578c475]{border-bottom:1px solid var(--border);align-items:center;gap:10px;padding:14px 16px;display:flex}.gs-search-ic[data-v-1578c475]{color:var(--text-muted);flex-shrink:0}.gs-input[data-v-1578c475]{color:var(--text-primary);background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:15px}.gs-input[data-v-1578c475]::placeholder{color:var(--text-muted)}.gs-esc-hint[data-v-1578c475]{color:var(--text-muted);background:var(--surface-2);border:1px solid var(--border);cursor:pointer;border-radius:5px;flex-shrink:0;padding:2px 7px;font-family:inherit;font-size:10px;font-weight:700}.gs-esc-hint[data-v-1578c475]:hover{color:var(--primary)}.gs-results[data-v-1578c475]{max-height:360px;overflow-y:auto}.gs-loading[data-v-1578c475]{justify-content:center;padding:28px 0;display:flex}.gs-dots[data-v-1578c475]{gap:5px;display:flex}.gs-dots span[data-v-1578c475]{background:var(--primary);border-radius:50%;width:7px;height:7px;animation:1.2s infinite bounce-1578c475}.gs-dots span[data-v-1578c475]:nth-child(2){animation-delay:.2s}.gs-dots span[data-v-1578c475]:nth-child(3){animation-delay:.4s}@keyframes bounce-1578c475{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.gs-empty[data-v-1578c475]{text-align:center;color:var(--text-muted);padding:28px 20px;font-size:13px}.gs-hint[data-v-1578c475]{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:10px;padding:32px 20px;font-size:13px;display:flex}.gs-row[data-v-1578c475]{cursor:pointer;border-bottom:1px solid var(--surface-2);align-items:center;gap:12px;padding:11px 16px;transition:background .1s;display:flex}.gs-row[data-v-1578c475]:last-child{border-bottom:none}.gs-row[data-v-1578c475]:hover,.gs-row.selected[data-v-1578c475]{background:#003d790d}.gs-avatar[data-v-1578c475]{object-fit:cover;border:2px solid var(--border);border-radius:6px;flex-shrink:0;width:36px;height:44px}.gs-info[data-v-1578c475]{flex:1;min-width:0}.gs-nama[data-v-1578c475]{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.gs-meta[data-v-1578c475]{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;margin-top:2px;font-size:11px;overflow:hidden}.gs-arr[data-v-1578c475]{color:var(--text-muted);flex-shrink:0}.gs-footer[data-v-1578c475]{border-top:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);gap:16px;padding:10px 16px;font-size:11px;display:flex}.gs-footer kbd[data-v-1578c475]{background:var(--surface);border:1px solid var(--border);border-radius:4px;margin-right:3px;padding:1px 5px;font-family:inherit;font-size:10px}.gs-fade-enter-active[data-v-1578c475],.gs-fade-leave-active[data-v-1578c475]{transition:opacity .18s,transform .18s}.gs-fade-enter-from[data-v-1578c475],.gs-fade-leave-to[data-v-1578c475]{opacity:0}.gs-fade-enter-from .gs-modal[data-v-1578c475]{transform:translateY(-12px)scale(.97)}.gs-fade-leave-to .gs-modal[data-v-1578c475]{transform:translateY(-8px)scale(.98)}@media (width<=600px){.gs-overlay[data-v-1578c475]{padding-top:env(safe-area-inset-top,0px);background:#0006;align-items:flex-start;padding-left:0;padding-right:0}.gs-modal[data-v-1578c475]{border-top:none;border-radius:0 0 18px 18px;width:100%;max-width:100%;box-shadow:0 8px 32px #00000040}.gs-footer[data-v-1578c475]{display:none}.gs-fade-enter-from .gs-modal[data-v-1578c475]{transform:translateY(-10px)}.gs-fade-leave-to .gs-modal[data-v-1578c475]{transform:translateY(-6px)}}.page-enter-active,.page-leave-active{transition:opacity .15s}.page-leave-active{width:100%;position:absolute}.page-enter-from,.page-leave-to{opacity:0}:root{--navy-900:#000e22;--navy-800:#001a3a;--navy-600:#003270;--primary:#003d79;--primary-light:#0056a8;--primary-dark:#002a5c;--gold:#f5a623;--gold-light:#fbbf24;--gold-pale:#fef3c7;--success:#16a34a;--success-pale:#f0fdf4;--success-dark:#166534;--warning:#d97706;--warning-pale:#fffbeb;--warning-dark:#92400e;--danger:#dc2626;--danger-pale:#fef2f2;--danger-dark:#991b1b;--info:#2563eb;--info-pale:#eff6ff;--purple:#7c3aed;--purple-pale:#f5f3ff;--grad-navy:linear-gradient(135deg, #002a5c 0%, #0056a8 100%);--grad-gold:linear-gradient(135deg, #b45309 0%, #f5a623 100%);--grad-green:linear-gradient(135deg, #166534 0%, #16a34a 100%);--grad-purple:linear-gradient(135deg, #5b21b6 0%, #7c3aed 100%);--grad-red:linear-gradient(135deg, #991b1b 0%, #dc2626 100%);--grad-sidebar:linear-gradient(160deg, #000e22 0%, #001a3a 40%, #003270 100%);--bg:#eef2f7;--bg-alt:#e5eaf2;--surface:#fff;--surface-2:#f8fafc;--surface-3:#f1f5f9;--border:#e2e8f0;--border-soft:#0000000f;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#64748b;--sidebar-w:240px;--topbar-h:64px;--radius:14px;--radius-sm:10px;--radius-xs:6px;--radius-lg:18px;--shadow-xs:0 1px 2px #0000000d;--shadow-sm:0 2px 8px #00000012, 0 1px 3px #0000000a;--shadow:0 4px 20px #00000017, 0 2px 6px #0000000a;--shadow-md:0 8px 30px #0000001c, 0 3px 8px #0000000d;--shadow-lg:0 20px 50px #00000024, 0 6px 14px #0000000f;--transition:all .2s cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--av-female-bg:#fce7f3;--av-female-col:#9d174d;--av-male-bg:#dbeafe;--av-male-col:#1e40af}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;touch-action:manipulation;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body{background:var(--bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-image:radial-gradient(#003d7908 1px,#0000 1px);background-size:28px 28px;font-family:IBM Plex Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5}input,select,textarea,button{font-family:IBM Plex Sans,sans-serif;font-size:14px}a{color:inherit;text-decoration:none}::-webkit-scrollbar{width:5px;height:5px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:99px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}::selection{background:var(--primary);color:#fff}.main{margin-left:var(--sidebar-w,240px)!important;padding-top:var(--topbar-h)!important;transition:margin-left .28s cubic-bezier(.4,0,.2,1)!important}.topbar{top:0!important;left:var(--sidebar-w,240px)!important;height:var(--topbar-h)!important;z-index:200!important;background:var(--surface)!important;border-bottom:2px solid var(--gold)!important;-webkit-backdrop-filter:none!important;transition:left .28s cubic-bezier(.4,0,.2,1)!important;position:fixed!important;right:0!important;box-shadow:0 2px 8px #0000000f!important}.tb-page{color:var(--text-primary)!important;letter-spacing:-.2px!important;font-size:15px!important;font-weight:700!important}.tb-env-badge{background:var(--grad-navy)!important;color:#fff!important;letter-spacing:.4px!important;border-radius:99px!important;padding:4px 12px!important;font-size:10.5px!important;font-weight:700!important;box-shadow:0 2px 8px #003d794d!important}.card{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-sm);transition:box-shadow .25s,transform .25s}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.metrics{gap:14px;display:grid}table{border-collapse:collapse;width:100%}thead tr th{color:var(--text-secondary);text-align:left;letter-spacing:.3px;text-transform:uppercase;border-bottom:2px solid var(--border);z-index:2;white-space:nowrap;background:linear-gradient(135deg,#f8fafc 0%,#f1f5f9 100%);padding:10px 14px;font-size:11px;font-weight:700;position:sticky;top:0}tbody tr td{color:var(--text-primary);border-bottom:1px solid #f1f5f9;padding:10px 14px;font-size:13px;transition:background .12s}tbody tr:hover td{background:#003d7907}tbody tr:last-child td{border-bottom:none}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}th.sortable:hover{background:linear-gradient(135deg,#f1f5f9 0%,#e8eef5 100%)}th.sort-asc:after{content:" ↑";color:var(--primary)}th.sort-desc:after{content:" ↓";color:var(--primary)}input[type=text],input[type=email],input[type=password],input[type=search],input[type=number],input[type=date],select,textarea{border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-2);color:var(--text-primary);outline:none;width:100%;padding:8px 12px;font-size:13.5px;transition:border-color .18s,box-shadow .18s,background .18s}input:focus,select:focus,textarea:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 3px #003d791a}button{cursor:pointer;border:none;outline:none;font-family:inherit}button:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.btn{border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition);border:none;align-items:center;gap:6px;padding:8px 16px;font-size:13px;font-weight:600;display:inline-flex}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark)}.btn-secondary{background:var(--surface-3);color:var(--text-secondary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--bg-alt)}.btn-danger{background:var(--danger-pale);color:var(--danger)}.btn-danger:hover{background:#fecaca}.btn-sm{padding:5px 12px;font-size:12px}.btn-icon{border-radius:var(--radius-xs);padding:7px}.badge{letter-spacing:.2px;border-radius:99px;align-items:center;gap:4px;padding:3px 9px;font-size:10.5px;font-weight:700;display:inline-flex}.badge-primary{background:var(--info-pale);color:var(--primary)}.badge-success{background:var(--success-pale);color:var(--success-dark)}.badge-warning{background:var(--warning-pale);color:var(--warning-dark)}.badge-danger{background:var(--danger-pale);color:var(--danger-dark)}.badge-gold{background:var(--gold-pale);color:var(--warning-dark)}.badge-purple{background:var(--purple-pale);color:var(--purple)}.badge-neutral{background:var(--surface-3);color:var(--text-secondary)}.av{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.av-sm{width:28px;height:28px;font-size:11px}.av-md{width:34px;height:34px;font-size:13px}.av-lg{width:42px;height:42px;font-size:16px}.av-f{background:var(--av-female-bg);color:var(--av-female-col)}.av-m{background:var(--av-male-bg);color:var(--av-male-col)}.av-default{background:var(--surface-3);color:var(--text-secondary)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg,#f1f5f9 25%,#e8edf5 50%,#f1f5f9 75%) 0 0/200% 100%;border-radius:6px;animation:1.5s ease-in-out infinite shimmer}.skeleton-text{border-radius:4px;height:13px}.skeleton-text-sm{border-radius:4px;height:10px}.skeleton-text-lg{border-radius:4px;height:18px}.skeleton-circle{border-radius:50%!important}.skeleton-row td{background:0 0!important;border-bottom:1px solid #f1f5f9!important;padding:10px 12px!important}.empty-state{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:60px 20px;display:flex}.empty-state-icon{opacity:.45;width:64px;height:64px;color:var(--text-muted);margin-bottom:16px}.empty-state-title{color:var(--text-secondary);margin-bottom:6px;font-size:15px;font-weight:600}.empty-state-sub{color:var(--text-muted);max-width:320px;font-size:13px;line-height:1.5}.loading{color:var(--text-muted)!important;justify-content:center!important;align-items:center!important;gap:10px!important;padding:60px 20px!important;font-size:13px!important;display:flex!important}.loading:before{content:"";border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}.loading-state{color:var(--text-muted);justify-content:center;align-items:center;gap:10px;padding:60px 20px;font-size:13px;display:flex}@keyframes spin{to{transform:rotate(360deg)}}.loading-spinner{border:2px solid var(--border);border-top-color:var(--primary);border-radius:50%;flex-shrink:0;width:18px;height:18px;animation:.8s linear infinite spin}.content-wrap{max-width:1400px;padding:24px}.section-title{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:13px;font-weight:700}.page-title{color:var(--text-primary);letter-spacing:-.3px;font-size:20px;font-weight:700}.page-sub{color:var(--text-muted);margin-top:2px;font-size:13px}.mc{background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);box-shadow:var(--shadow-sm);transform-style:preserve-3d;will-change:transform;padding:16px 18px;transition:box-shadow .25s,transform .25s;position:relative;overflow:hidden}.mc:hover{transform:translateY(-4px)perspective(500px)rotateX(2deg);box-shadow:0 12px 36px #003d7924,0 4px 12px #003d7914}.mc-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.4px;margin-bottom:8px;font-size:10.5px;font-weight:700}.mc-val{color:var(--text-primary);letter-spacing:-1px;font-size:30px;font-weight:900;line-height:1}.mc-sub{color:var(--text-muted);margin-top:4px;font-size:11px}.mc-trend{align-items:center;gap:3px;margin-top:6px;font-size:11px;font-weight:600;display:flex}.mc-trend.up{color:var(--success)}.mc-trend.down{color:var(--danger)}.filter-bar{-webkit-backdrop-filter:blur(10px);border-radius:var(--radius-sm);background:#ffffffe0;border:1px solid #e2e8f0cc;flex-wrap:wrap;align-items:center;gap:10px;padding:10px 16px;display:flex;box-shadow:0 2px 10px #0000000d}.filter-bar select,.filter-bar input{width:auto;min-width:130px;height:32px;padding:6px 10px;font-size:12.5px}.filter-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.filter-divider{background:var(--border);flex-shrink:0;width:1px;height:20px}.pagination{justify-content:center;align-items:center;gap:4px;padding:12px 0;display:flex}.pg-btn{border-radius:var(--radius-xs);border:1px solid var(--border);background:var(--surface);min-width:32px;height:32px;color:var(--text-secondary);cursor:pointer;transition:var(--transition);justify-content:center;align-items:center;padding:0 8px;font-size:12.5px;font-weight:600;display:flex}.pg-btn:hover:not(:disabled){background:var(--bg);border-color:var(--primary);color:var(--primary)}.pg-btn.active{background:var(--primary);color:#fff;border-color:var(--primary)}.pg-btn:disabled{opacity:.4;cursor:not-allowed}.pg-info{color:var(--text-muted);padding:0 8px;font-size:12px}@media (width<=768px){.main{padding-top:var(--topbar-h)!important;padding-bottom:calc(60px + env(safe-area-inset-bottom))!important;margin-left:0!important}.topbar{padding-left:62px!important;left:0!important}.metrics{grid-template-columns:repeat(2,1fr)!important;gap:10px!important}.grid2{grid-template-columns:1fr!important}.content{padding:16px!important}.mc-val{font-size:22px!important}.filter-bar{gap:8px}.filter-bar select,.filter-bar input{min-width:100px}}@media (width<=480px){.metrics{grid-template-columns:1fr 1fr!important}.mc-val{font-size:20px!important}}.fade-enter-active,.fade-leave-active{transition:opacity .2s}.fade-enter-from,.fade-leave-to{opacity:0}.slide-up-enter-active{transition:all .3s var(--ease-out)}.slide-up-leave-active{transition:all .2s ease-in}.slide-up-enter-from{opacity:0;transform:translateY(12px)}.slide-up-leave-to{opacity:0;transform:translateY(-6px)}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.text-muted{color:var(--text-muted)}.text-sm{font-size:12px}.text-xs{font-size:11px}.fw-600{font-weight:600}.fw-700{font-weight:700}.truncate{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.table-wrap{border-radius:var(--radius-sm);overflow-x:auto}@keyframes floatIn{0%{opacity:0;transform:translateY(16px)perspective(600px)rotateX(4deg)}to{opacity:1;transform:translateY(0)perspective(600px)rotateX(0)}}.float-in{animation:floatIn .45s var(--ease-out) both}.float-in-1{animation-delay:50ms}.float-in-2{animation-delay:.1s}.float-in-3{animation-delay:.15s}.float-in-4{animation-delay:.2s}@keyframes pill3dPress{0%{transform:scale(1)translateZ(0)}40%{transform:scale(.95)translateZ(-4px)}to{transform:scale(1)translateZ(0)}}.press-3d:active{animation:.18s both pill3dPress}@media (prefers-reduced-motion:reduce){.float-in,.press-3d:active{animation:none!important}.card:hover,.mc:hover{transform:none!important}}
