@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');
:root{--gis-primary:#0081C9;--gis-secondary:#0369A1;--gis-bg:#f4f8fc;--gis-surface:#fff;--gis-text:#0f172a;--gis-muted:#64748b;--gis-border:#e4edf5;--sidebar-w:276px;--sidebar-mini:84px}
*{box-sizing:border-box}.gis-body{font-family:'Plus Jakarta Sans',system-ui,sans-serif;background:var(--gis-bg);min-height:100vh;overflow-x:hidden}.gis-sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar-w);z-index:50;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);border-right:1px solid var(--gis-border);display:flex;flex-direction:column;box-shadow:12px 0 40px rgba(15,23,42,.035);transition:width .24s cubic-bezier(.2,.8,.2,1),transform .24s ease}.gis-app-shell{min-height:100vh;padding-left:var(--sidebar-w);transition:padding-left .24s cubic-bezier(.2,.8,.2,1);display:flex;flex-direction:column}.gis-body.sidebar-collapsed .gis-sidebar{width:var(--sidebar-mini)}.gis-body.sidebar-collapsed .gis-app-shell{padding-left:var(--sidebar-mini)}.gis-body.sidebar-collapsed .sidebar-label{display:none}.gis-body.sidebar-collapsed .gis-brand{justify-content:center;padding:16px 12px}.gis-body.sidebar-collapsed #btn-sidebar-collapse{position:absolute;right:-15px}.gis-brand{height:82px;padding:16px 18px;display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--gis-border);position:relative}.gis-brand-logo{width:46px;height:46px;border-radius:15px;background:#fff;border:1px solid #dbeafe;box-shadow:0 8px 20px rgba(0,129,201,.10);display:grid;place-items:center;flex:none}.gis-brand-logo img{width:35px;height:35px;object-fit:contain}.gis-brand-copy{min-width:0;flex:1}.gis-brand-copy strong{display:block;color:#075985;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gis-brand-copy span{display:block;margin-top:2px;color:#94a3b8;font-size:9px;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gis-sidebar-nav{padding:17px 10px 28px;overflow-y:auto;flex:1}.gis-nav-group{margin-bottom:18px}.gis-nav-title{display:block;padding:0 12px 7px;color:#94a3b8;font-weight:800;font-size:9px;letter-spacing:.13em;text-transform:uppercase}.gis-nav-link{position:relative;display:flex;align-items:center;gap:12px;height:46px;padding:0 12px;margin:3px 0;border-radius:14px;color:#52667a;font-size:13px;font-weight:700;transition:background .16s,color .16s,transform .16s,box-shadow .16s}.gis-nav-link svg{width:19px;height:19px;flex:none}.gis-nav-link:hover{background:#eef8ff;color:#0369a1;transform:translateX(2px)}.gis-nav-link.is-active{color:#fff;background:linear-gradient(135deg,var(--gis-primary),var(--gis-secondary));box-shadow:0 10px 24px rgba(0,129,201,.20)}.gis-new-dot{margin-left:auto;width:19px;height:19px;display:grid;place-items:center;border-radius:7px;background:rgba(255,255,255,.2);font-size:12px}.gis-sidebar-footer{border-top:1px solid var(--gis-border);padding:12px;display:flex;align-items:center;gap:6px}.gis-profile-mini{min-width:0;flex:1;display:flex;align-items:center;gap:9px;padding:7px;border-radius:13px}.gis-profile-mini:hover{background:#eff8ff}.gis-profile-mini img{width:37px;height:37px;border-radius:12px;object-fit:cover;border:2px solid #dbeafe}.gis-profile-mini strong,.gis-profile-mini span{display:block;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gis-profile-mini strong{font-size:11px;color:#1e293b}.gis-profile-mini span{font-size:9px;color:#94a3b8}.gis-logout-btn{height:40px;min-width:40px;padding:0 10px;border-radius:12px;display:flex;align-items:center;justify-content:center;gap:8px;color:#e11d48}.gis-logout-btn:hover{background:#fff1f2}.gis-logout-btn svg,.gis-icon-btn svg{width:19px;height:19px}.gis-topbar{position:sticky;top:0;z-index:35;background:rgba(255,255,255,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(226,232,240,.8)}.gis-announcement{height:28px;background:linear-gradient(90deg,#0369a1,#0081c9);color:#fff;display:flex;align-items:center;gap:8px;padding:0 18px;overflow:hidden;font-size:10px;font-weight:700}.gis-announcement-track{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.gis-topbar-main{height:70px;padding:0 clamp(14px,2.5vw,36px);display:flex;align-items:center;justify-content:space-between;gap:14px}.gis-kicker{font-size:8px;font-weight:800;letter-spacing:.14em;color:#0ea5e9;margin-bottom:3px}.gis-page-title{font-size:clamp(16px,2vw,20px);font-weight:800;color:#0f172a}.gis-icon-btn{width:40px;height:40px;border:1px solid #e5eef7;background:#fff;border-radius:13px;display:grid;place-items:center;color:#567085;transition:.15s}.gis-icon-btn:hover{background:#eff8ff;color:var(--gis-primary);border-color:#bae6fd;transform:translateY(-1px)}.gis-quick-add{height:40px;padding:0 14px;border-radius:13px;align-items:center;gap:7px;background:#eaf7ff;color:#0369a1;font-size:11px;font-weight:800}.gis-quick-add svg{width:16px}.gis-quick-add:hover{background:#d9f1ff}.gis-notif-dot{position:absolute;right:-4px;top:-4px;min-width:18px;height:18px;padding:0 4px;border-radius:9px;background:#f43f5e;color:#fff;font-size:9px;font-weight:800;display:grid;place-items:center;border:2px solid #fff}.gis-top-profile{height:45px;padding:4px 7px;display:flex;align-items:center;gap:9px;border-radius:14px;transition:.15s}.gis-top-profile:hover{background:#f1f8fc}.gis-top-profile img{width:36px;height:36px;border-radius:12px;object-fit:cover;border:2px solid #dbeafe}.gis-top-profile strong,.gis-top-profile small{display:block;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gis-top-profile strong{font-size:10px;color:#1e293b}.gis-top-profile small{font-size:8px;color:#94a3b8;text-transform:capitalize}.gis-top-profile svg{width:14px;color:#94a3b8}.gis-dropdown{display:none;position:absolute;right:0;top:50px;width:min(390px,calc(100vw - 28px));background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 24px 60px rgba(15,23,42,.16);overflow:hidden}.gis-dropdown.show{display:block;animation:gisDrop .18s ease-out}@keyframes gisDrop{from{opacity:0;transform:translateY(-5px) scale(.99)}to{opacity:1;transform:none}}.gis-dropdown-head{display:flex;align-items:center;justify-content:space-between;padding:15px 16px;border-bottom:1px solid #eef2f7;background:#fbfdff}.gis-dropdown-head strong{display:block;font-size:12px}.gis-dropdown-head span{display:block;font-size:9px;color:#94a3b8;margin-top:1px}.gis-link-btn{font-size:9px;font-weight:800;color:#0284c7}.gis-dropdown-scroll{max-height:390px;overflow:auto}.gis-notif-item{display:flex;gap:11px;padding:13px 15px;border-bottom:1px solid #f1f5f9}.gis-notif-item:hover,.gis-notif-item.is-unread{background:#f0f9ff}.gis-notif-icon{width:32px;height:32px;border-radius:11px;background:#e0f2fe;color:#0284c7;display:grid;place-items:center;flex:none}.gis-notif-icon svg{width:15px}.gis-notif-item strong{font-size:10px;color:#1e293b}.gis-notif-item p{font-size:9px;color:#64748b;line-height:1.5;margin:2px 0}.gis-notif-item small{font-size:8px;color:#94a3b8}.gis-empty-mini{padding:32px;text-align:center;color:#94a3b8}.gis-empty-mini svg{width:28px;margin:auto auto 7px}.gis-empty-mini p{font-size:10px}.gis-content{width:100%;max-width:1600px;margin:0 auto;padding:clamp(16px,2.4vw,34px);flex:1}.gis-footer{display:flex;justify-content:space-between;gap:15px;padding:14px clamp(18px,3vw,38px);font-size:8px;color:#94a3b8;border-top:1px solid #e8eef4;background:#fff}.gis-sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(15,23,42,.52);backdrop-filter:blur(3px);z-index:45}.gis-action-toast{position:fixed;right:20px;bottom:20px;z-index:1000;background:#0f172a;color:#fff;box-shadow:0 18px 50px rgba(15,23,42,.24);border-radius:16px;padding:12px 15px;display:flex;align-items:center;gap:10px;max-width:min(400px,calc(100vw - 32px));animation:toastPop .25s ease-out}.gis-action-toast.is-success{background:#064e3b}.gis-action-toast.is-error{background:#881337}.gis-action-toast.is-warning{background:#78350f}@keyframes toastPop{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}.gis-pulse-ring{animation:gisRing 1.8s infinite}@keyframes gisRing{0%{box-shadow:0 0 0 0 rgba(0,129,201,.28)}70%{box-shadow:0 0 0 14px rgba(0,129,201,0)}100%{box-shadow:0 0 0 0 rgba(0,129,201,0)}}
/* reusable modern tables */
.gis-table-shell{background:#fff;border:1px solid var(--gis-border);border-radius:20px;overflow:hidden;box-shadow:0 10px 30px rgba(15,23,42,.035)}.gis-table{width:100%;border-collapse:separate;border-spacing:0;font-size:13px}.gis-table thead th{position:sticky;top:0;z-index:2;background:#f6faff;color:#64748b;text-transform:uppercase;letter-spacing:.06em;font-size:10px;font-weight:800;padding:13px 15px;border-bottom:1px solid #e8eef5}.gis-table tbody td{padding:13px 15px;border-bottom:1px solid #f1f5f9;color:#334155}.gis-table tbody tr:hover{background:#f8fcff}.gis-table tbody tr:last-child td{border-bottom:0}.gis-money{font-variant-numeric:tabular-nums;text-align:right;font-weight:800}.gis-modal-soft{border-radius:22px!important}.gis-skeleton{background:linear-gradient(90deg,#eef2f7 25%,#f8fafc 37%,#eef2f7 63%);background-size:400% 100%;animation:gisSkeleton 1.4s ease infinite}@keyframes gisSkeleton{0%{background-position:100% 0}100%{background-position:0 0}}
@media(max-width:767px){.gis-sidebar{transform:translateX(-100%);width:min(86vw,300px)}.gis-sidebar.is-open{transform:none}.gis-sidebar-overlay.is-open{display:block}.gis-app-shell,.gis-body.sidebar-collapsed .gis-app-shell{padding-left:0}.gis-body.sidebar-collapsed .gis-sidebar{width:min(86vw,300px)}.gis-body.sidebar-collapsed .sidebar-label{display:block}.gis-topbar-main{height:64px}.gis-content{padding:15px}.gis-footer{flex-direction:column}.gis-announcement{padding:0 12px}.gis-dropdown{position:fixed;right:14px;top:74px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
/* Receipt OCR */
.ocr-shell{background:linear-gradient(145deg,#f8fcff,#fff);border:1px solid #cfeeff;border-radius:24px;overflow:hidden;box-shadow:0 12px 34px rgba(2,132,199,.06)}.ocr-head{padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e8f6fd}.ocr-badge{font-size:9px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#0369a1;background:#e0f2fe;border-radius:999px;padding:6px 9px}.ocr-body{padding:20px;display:grid;grid-template-columns:180px 1fr;gap:18px}.ocr-preview{height:180px;border:1.5px dashed #a5d8f2;border-radius:18px;background:#f0f9ff;display:grid;place-items:center;overflow:hidden;color:#7aa4b8;font-size:10px;text-align:center;padding:12px}.ocr-preview img{width:100%;height:100%;object-fit:contain}.ocr-actions{display:flex;flex-wrap:wrap;gap:8px}.ocr-btn{display:inline-flex;align-items:center;gap:7px;border-radius:12px;padding:10px 12px;font-size:10px;font-weight:800;border:1px solid #dbeafe;background:#fff;color:#075985;cursor:pointer}.ocr-btn.primary{background:#0284c7;color:white;border-color:#0284c7}.ocr-btn:disabled{opacity:.45;cursor:not-allowed}.ocr-progress{height:6px;border-radius:99px;background:#e7eef5;overflow:hidden}.ocr-progress>span{display:block;width:0;height:100%;background:linear-gradient(90deg,#38bdf8,#0284c7);transition:width .2s}.ocr-status{font-size:10px;color:#64748b;font-weight:700}.ocr-raw{width:100%;min-height:115px;border:1px solid #e2e8f0;background:#fbfdff;border-radius:14px;padding:11px;font:10px/1.55 ui-monospace,monospace;color:#475569;resize:vertical}.ocr-result-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.ocr-result-grid>div{background:#f8fafc;border:1px solid #eef2f7;border-radius:12px;padding:9px}.ocr-result-grid span,.ocr-result-grid b{display:block}.ocr-result-grid span{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#94a3b8;font-weight:800}.ocr-result-grid b{font-size:10px;color:#1e293b;margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ocr-item-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:8px}.ocr-item-chips span{font-size:8px;font-weight:700;color:#0369a1;background:#eaf7ff;border-radius:999px;padding:5px 8px}@media(max-width:720px){.ocr-body{grid-template-columns:1fr}.ocr-preview{height:155px}.ocr-result-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* GIS Wallet 3.1.1 — Light/Dark mode + Champion Bubble */
html[data-theme="dark"]{color-scheme:dark;--gis-bg:#07111f;--gis-surface:#0d1928;--gis-text:#eaf2fb;--gis-muted:#94a9bd;--gis-border:#203246}
html[data-theme="dark"] .gis-body{background:#07111f;color:#eaf2fb}
html[data-theme="dark"] .gis-sidebar{background:linear-gradient(180deg,#0b1726 0%,#081321 100%);border-color:#203246;box-shadow:12px 0 40px rgba(0,0,0,.22)}
html[data-theme="dark"] .gis-brand,html[data-theme="dark"] .gis-sidebar-footer{border-color:#203246}
html[data-theme="dark"] .gis-brand-logo{background:#101f30;border-color:#29425c}
html[data-theme="dark"] .gis-brand-copy strong{color:#e6f4ff}html[data-theme="dark"] .gis-brand-copy span,html[data-theme="dark"] .gis-nav-title{color:#71869c}
html[data-theme="dark"] .gis-nav-link{color:#a9bbcc}html[data-theme="dark"] .gis-nav-link:hover{background:#10263a;color:#7dd3fc}html[data-theme="dark"] .gis-nav-link.is-active{color:#fff}
html[data-theme="dark"] .gis-profile-mini:hover,html[data-theme="dark"] .gis-top-profile:hover{background:#102235}
html[data-theme="dark"] .gis-profile-mini strong,html[data-theme="dark"] .gis-top-profile strong{color:#eaf2fb}
html[data-theme="dark"] .gis-topbar{background:rgba(8,19,33,.92);border-color:#203246}html[data-theme="dark"] .gis-page-title{color:#f8fbff}
html[data-theme="dark"] .gis-icon-btn{background:#0f1d2c;border-color:#26394d;color:#b8c9d8}html[data-theme="dark"] .gis-icon-btn:hover{background:#14283c;border-color:#2e6687;color:#7dd3fc}
html[data-theme="dark"] .gis-quick-add{background:#102b40;color:#7dd3fc}html[data-theme="dark"] .gis-dropdown{background:#0d1928;border-color:#25384c;box-shadow:0 24px 60px rgba(0,0,0,.45)}
html[data-theme="dark"] .gis-dropdown-head{background:#0b1726;border-color:#203246}html[data-theme="dark"] .gis-dropdown-head strong{color:#edf7ff}html[data-theme="dark"] .gis-notif-item{border-color:#1a2b3d}html[data-theme="dark"] .gis-notif-item:hover,html[data-theme="dark"] .gis-notif-item.is-unread{background:#10273a}
html[data-theme="dark"] .gis-notif-item strong{color:#e9f4fd}html[data-theme="dark"] .gis-notif-item p{color:#9db0c2}
html[data-theme="dark"] .gis-footer{background:#081321;border-color:#203246;color:#71869c}
html[data-theme="dark"] .gis-theme-toggle{box-shadow:0 8px 24px rgba(0,0,0,.12)}
/* Tailwind utility compatibility so legacy pages remain readable in dark mode. */
html[data-theme="dark"] .bg-white,html[data-theme="dark"] .bg-white\/95{background-color:#0d1928!important}
html[data-theme="dark"] .bg-slate-50{background-color:#0a1624!important}html[data-theme="dark"] .bg-slate-100{background-color:#132235!important}
html[data-theme="dark"] .bg-sky-50{background-color:#0d2638!important}html[data-theme="dark"] .bg-blue-50{background-color:#0d2239!important}
html[data-theme="dark"] .text-slate-900,html[data-theme="dark"] .text-slate-800,html[data-theme="dark"] .text-slate-700{color:#edf5fc!important}
html[data-theme="dark"] .text-slate-600,html[data-theme="dark"] .text-slate-500{color:#a8b9c9!important}html[data-theme="dark"] .text-slate-400{color:#8298ac!important}
html[data-theme="dark"] .border-slate-100,html[data-theme="dark"] .border-slate-200,html[data-theme="dark"] .border-slate-300{border-color:#26394c!important}
html[data-theme="dark"] .border,html[data-theme="dark"] .border-white{border-color:#26394c}
html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] textarea{background-color:#0a1624!important;color:#edf5fc!important;border-color:#2a4056!important}
html[data-theme="dark"] input::placeholder,html[data-theme="dark"] textarea::placeholder{color:#667f95!important}
html[data-theme="dark"] table{color:#dce9f4}html[data-theme="dark"] thead{color:#b9ccdc}html[data-theme="dark"] tr{border-color:#22364a}
html[data-theme="dark"] .hover\:bg-slate-50:hover{background-color:#122438!important}
html[data-theme="dark"] .shadow-sm,html[data-theme="dark"] .shadow-lg,html[data-theme="dark"] .shadow-xl{--tw-shadow-color:rgba(0,0,0,.28)!important}
html[data-theme="dark"] .swal2-popup.gis-modal-soft,html[data-theme="dark"] .swal2-popup{background:#0d1928!important;color:#edf5fc!important;border:1px solid #26394c!important}
html[data-theme="dark"] .swal2-title{color:#f7fbff!important}html[data-theme="dark"] .swal2-html-container{color:#aebfd0!important}
html[data-theme="dark"] .swal2-html-container b{color:#f2f8fd!important}

.gis-rank-avatar-wrap{z-index:3}
/* Liga Struk — podium #1 tanpa speech bubble */
.gis-rank-top1{position:relative;background:linear-gradient(118deg,rgba(245,158,11,.18),rgba(15,23,42,.96) 42%,rgba(2,132,199,.17));border:1.5px solid rgba(251,191,36,.82)!important;border-radius:20px;box-shadow:0 14px 34px rgba(0,0,0,.22),0 0 0 1px rgba(251,191,36,.08) inset;min-height:78px;transform-origin:center;overflow:hidden}
.gis-rank-top1:before{content:"";position:absolute;inset:-45% auto auto -12%;width:58%;height:190%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.10),transparent);transform:rotate(18deg);animation:gisTop1Shine 4.8s ease-in-out infinite;pointer-events:none}
.gis-rank-top1:after{content:"TOP 1";position:absolute;right:12px;top:7px;font-size:7px;line-height:1;font-weight:900;letter-spacing:.16em;color:rgba(251,191,36,.52);pointer-events:none}
.gis-rank-number-top1{width:38px;height:38px;font-size:13px;border-radius:13px;box-shadow:0 0 0 4px rgba(251,191,36,.10),0 7px 20px rgba(245,158,11,.24)}
.gis-rank-avatar-top1{width:52px;height:52px;border:2px solid rgba(251,191,36,.9)!important;box-shadow:0 0 0 4px rgba(251,191,36,.10),0 10px 25px rgba(0,0,0,.24)}
.gis-rank-amount-top1{font-size:14px;line-height:1.15;font-variant-numeric:tabular-nums;text-shadow:0 0 18px rgba(251,191,36,.18)}
@keyframes gisTop1Shine{0%,70%,100%{transform:translateX(-130%) rotate(18deg);opacity:0}78%{opacity:1}92%{transform:translateX(310%) rotate(18deg);opacity:0}}
@media(max-width:480px){.gis-rank-top1{padding:12px!important;min-height:72px}.gis-rank-avatar-top1{width:46px;height:46px}.gis-rank-number-top1{width:35px;height:35px}.gis-rank-amount-top1{font-size:12px}}
@media(prefers-reduced-motion:reduce){.gis-rank-top1:before{animation:none;display:none}}

/* =========================================================
   GIS WALLET V3.1.3 — THEME, ICON & LEGIBILITY CONSOLIDATION
   ========================================================= */
.gis-nav-link svg,.gis-icon-btn svg,.gis-theme-control svg,.gis-quick-add svg,.gis-logout-btn svg{width:18px;height:18px;flex:0 0 auto;display:block}
.gis-nav-link svg{stroke-width:2.15}.gis-nav-link.is-active svg{filter:drop-shadow(0 2px 5px rgba(255,255,255,.18))}
.gis-theme-control{height:40px;min-width:40px;padding:0 11px;border-radius:13px;border:1px solid #dbe7f0;background:#fff;color:#51697c;display:inline-flex;align-items:center;justify-content:center;gap:7px;transition:background .18s,border-color .18s,color .18s,transform .18s,box-shadow .18s;box-shadow:0 4px 14px rgba(15,23,42,.03)}
.gis-theme-control:hover{transform:translateY(-1px);background:#eff8ff;border-color:#bae6fd;color:var(--gis-primary);box-shadow:0 8px 20px rgba(2,132,199,.08)}
.gis-theme-label{font-size:10px;font-weight:850;white-space:nowrap}
.gis-toast-copy{font-size:12px;font-weight:750}.gis-alert-copy{font-size:13px;color:#64748b;line-height:1.65}.gis-alert-copy b{color:#0f172a}

/* Light mode must remain high contrast even when page-specific CSS is loaded later. */
html[data-theme="light"] body.gis-body{background:#f6f9fc!important;color:#0f172a!important}
html[data-theme="light"] .gis-sidebar{color:#334155}

/* Dark mode: applies to modern pages AND legacy Tailwind utility pages. */
html[data-theme="dark"] body,html[data-theme="dark"] body.gis-body{background:#07111f!important;color:#eaf2fb!important}
html[data-theme="dark"] .hero-bg{background:radial-gradient(circle at 10% 0,rgba(14,165,233,.09),transparent 35%),#07111f!important}
html[data-theme="dark"] .premium-panel,html[data-theme="dark"] .glass-card,html[data-theme="dark"] .stat-card,html[data-theme="dark"] .ca-glass{background:#0d1928!important;border-color:#26394c!important;box-shadow:0 12px 28px rgba(0,0,0,.20)!important}
html[data-theme="dark"] .bg-white,html[data-theme="dark"] .bg-white\/50,html[data-theme="dark"] .bg-white\/80,html[data-theme="dark"] .bg-white\/90,html[data-theme="dark"] .bg-white\/95{background-color:#0d1928!important}
html[data-theme="dark"] .bg-slate-50,html[data-theme="dark"] .bg-slate-50\/50,html[data-theme="dark"] .bg-slate-100{background-color:#101f30!important}
html[data-theme="dark"] .bg-indigo-50,html[data-theme="dark"] .bg-violet-50{background-color:#111f36!important}
html[data-theme="dark"] .text-slate-950,html[data-theme="dark"] .text-slate-900,html[data-theme="dark"] .text-slate-800,html[data-theme="dark"] .text-slate-700{color:#eef6fd!important}
html[data-theme="dark"] .text-indigo-950,html[data-theme="dark"] .text-indigo-900{color:#e4ebff!important}
html[data-theme="dark"] .text-slate-600,html[data-theme="dark"] .text-slate-500{color:#a8b9c9!important}
html[data-theme="dark"] .text-slate-400{color:#879caf!important}
html[data-theme="dark"] .border-slate-50,html[data-theme="dark"] .border-slate-100,html[data-theme="dark"] .border-slate-200,html[data-theme="dark"] .border-slate-300{border-color:#26394c!important}
html[data-theme="dark"] .divide-slate-50> :not([hidden])~ :not([hidden]),html[data-theme="dark"] .divide-slate-100> :not([hidden])~ :not([hidden]){border-color:#203246!important}
html[data-theme="dark"] .modern-table th{background:#111f30!important;color:#aabed0!important;border-color:#26394c!important}
html[data-theme="dark"] .modern-table td{border-color:#203246!important;color:#dce9f4!important}
html[data-theme="dark"] .modern-table tr:hover td{background:#102438!important}
html[data-theme="dark"] .form-input,html[data-theme="dark"] .table-input,html[data-theme="dark"] input,html[data-theme="dark"] select,html[data-theme="dark"] textarea{background:#0a1624!important;color:#edf5fc!important;border-color:#2a4056!important}
html[data-theme="dark"] .form-input:focus,html[data-theme="dark"] .table-input:focus,html[data-theme="dark"] input:focus,html[data-theme="dark"] select:focus,html[data-theme="dark"] textarea:focus{background:#0d1d2e!important;border-color:#38bdf8!important;box-shadow:0 0 0 4px rgba(56,189,248,.10)!important}
html[data-theme="dark"] input::placeholder,html[data-theme="dark"] textarea::placeholder{color:#6f879d!important}
html[data-theme="dark"] .gis-theme-control{background:#0f1d2c;border-color:#26394d;color:#facc15;box-shadow:0 6px 20px rgba(0,0,0,.16)}
html[data-theme="dark"] .gis-theme-control:hover{background:#14283c;border-color:#2e6687;color:#fde68a}
html[data-theme="dark"] .gis-alert-copy{color:#aebfd0}.tema-gelap .gis-alert-copy b{color:#f2f8fd}
html[data-theme="dark"] .gis-content a:not(.gis-nav-link):not(.gis-quick-add):not(.gis-logout-btn){text-decoration-color:rgba(125,211,252,.45)}
html[data-theme="dark"] .swal2-popup{background:#0d1928!important;color:#edf5fc!important;border:1px solid #26394c!important}
html[data-theme="dark"] .swal2-title{color:#f7fbff!important}html[data-theme="dark"] .swal2-html-container{color:#aebfd0!important}

/* Leaderboard: Top #1 is a clean podium, no speech bubble / extra copy. */
.gis-rank-top1{min-height:88px!important;padding:16px!important;background:linear-gradient(118deg,rgba(245,158,11,.22),rgba(15,23,42,.98) 45%,rgba(2,132,199,.18))!important;border:2px solid rgba(251,191,36,.92)!important;box-shadow:0 18px 38px rgba(0,0,0,.25),0 0 22px rgba(245,158,11,.10)!important}
.gis-rank-top1:after{content:none!important;display:none!important}.gis-rank-top1:before{opacity:.7}
.gis-rank-avatar-wrap{display:block!important;min-width:40px;min-height:40px;overflow:visible!important}.gis-rank-avatar-wrap img{display:block!important;opacity:1!important;visibility:visible!important;background:#fff}
.gis-rank-avatar-top1{width:58px!important;height:58px!important;min-width:58px!important;min-height:58px!important;border:3px solid #fbbf24!important;box-shadow:0 0 0 5px rgba(251,191,36,.12),0 12px 28px rgba(0,0,0,.28)!important}
.gis-rank-number-top1{width:40px!important;height:40px!important;min-width:40px!important;font-size:14px!important;border-radius:14px!important}
.gis-rank-amount-top1{font-size:16px!important;letter-spacing:-.02em;text-shadow:0 2px 12px rgba(245,158,11,.16)}
@media(max-width:480px){.gis-rank-top1{min-height:82px!important;padding:13px!important;gap:9px!important}.gis-rank-avatar-top1{width:50px!important;height:50px!important;min-width:50px!important;min-height:50px!important}.gis-rank-amount-top1{font-size:13px!important}}

/* ===== GIS Wallet V3.1.4 layout hardening ===== */
@media(min-width:768px){
  .gis-sidebar{width:var(--sidebar-w)!important;min-width:var(--sidebar-w)!important;max-width:var(--sidebar-w)!important;transform:none!important}
  .gis-app-shell{padding-left:var(--sidebar-w)!important}
  .gis-body.sidebar-collapsed .gis-sidebar{width:var(--sidebar-mini)!important;min-width:var(--sidebar-mini)!important;max-width:var(--sidebar-mini)!important}
  .gis-body.sidebar-collapsed .gis-app-shell{padding-left:var(--sidebar-mini)!important}
}
.gis-sidebar .gis-nav-link>svg,.gis-sidebar .gis-icon-btn>svg,.gis-sidebar .gis-logout-btn>svg{display:block!important;width:19px!important;height:19px!important;min-width:19px!important;opacity:1!important;visibility:visible!important;flex:0 0 19px!important}
.gis-theme-control{height:40px;min-width:40px;padding:0 12px;border:1px solid #dce8f2;background:#fff;border-radius:13px;color:#475569;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:10px;font-weight:850;cursor:pointer;transition:.18s}
.gis-theme-control:hover{background:#f0f9ff;border-color:#bae6fd;color:#0369a1}.gis-theme-icon{display:grid;place-items:center}.gis-theme-icon svg{display:block;width:17px;height:17px}.gis-theme-sun{display:none}html[data-theme="dark"] .gis-theme-moon{display:none}html[data-theme="dark"] .gis-theme-sun{display:grid}
html[data-theme="dark"] .gis-theme-control{background:#0f1d2c;border-color:#26394d;color:#facc15}.gis-nav-link{overflow:hidden}.gis-nav-link .sidebar-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Ensure old page-level CSS cannot shrink the universal sidebar. */
body.gis-body>.gis-sidebar,body.gis-body #sidebar.gis-sidebar{box-sizing:border-box!important}


/* ===== GIS Wallet V3.2.1 — extra theme consistency ===== */
html[data-theme="dark"] .bg-slate-900\/90,html[data-theme="dark"] .bg-slate-900{background-color:#081220!important}
html[data-theme="dark"] .bg-slate-800{background-color:#0c1827!important}
html[data-theme="dark"] .shadow-2xl,html[data-theme="dark"] .shadow-xl{box-shadow:0 18px 44px rgba(0,0,0,.28)!important}
html[data-theme="dark"] .ring-white\/10,html[data-theme="dark"] .border-white\/10{border-color:rgba(148,163,184,.12)!important}
html[data-theme="dark"] .text-white\/60{color:rgba(226,232,240,.72)!important}
html[data-theme="dark"] .text-white\/70{color:rgba(241,245,249,.82)!important}
html[data-theme="dark"] .text-white\/80{color:rgba(248,250,252,.92)!important}
html[data-theme="dark"] .text-indigo-200{color:#c8d5ff!important}
html[data-theme="dark"] .text-amber-300{color:#fcd34d!important}
html[data-theme="dark"] .mobile-dock{background:rgba(8,18,32,.92)!important;border-color:#223247!important}
html[data-theme="dark"] .mobile-dock .text-slate-400{color:#9eb0c2!important}
html[data-theme="dark"] .mobile-dock .text-sky-900{color:#d8f0ff!important}


/* =====================================================================
   GIS WALLET V3.2.3 — GLOBAL LIGHT/DARK CONSISTENCY HARDENING
   Satu tema untuk halaman modern + halaman legacy.
   ===================================================================== */
html[data-theme="light"]{color-scheme:light}
html[data-theme="dark"]{color-scheme:dark;--gis-bg:#07111f;--gis-surface:#0d1928;--gis-text:#eef6fd;--gis-muted:#a9bbcc;--gis-border:#26394c}
html[data-theme="dark"] body.gis-body,html.dark body.gis-body{background:#07111f!important;color:#eaf2fb!important}

/* Shared shell */
html[data-theme="dark"] .gis-topbar{background:rgba(8,18,32,.94)!important;border-color:#203246!important;box-shadow:0 8px 24px rgba(0,0,0,.18)!important}
html[data-theme="dark"] .gis-topbar-main{color:#eaf2fb!important}
html[data-theme="dark"] .gis-page-title{color:#f8fafc!important}
html[data-theme="dark"] .gis-kicker{color:#38bdf8!important}
html[data-theme="dark"] .gis-sidebar{background:linear-gradient(180deg,#091727 0%,#071321 100%)!important;border-color:#203246!important}
html[data-theme="dark"] .gis-brand-logo{background:#f8fafc!important;border-color:#35506a!important}
html[data-theme="dark"] .gis-brand-copy strong{color:#e0f2fe!important}
html[data-theme="dark"] .gis-brand-copy span,html[data-theme="dark"] .gis-nav-title{color:#8399ad!important}
html[data-theme="dark"] .gis-nav-link{color:#b8c8d7!important}
html[data-theme="dark"] .gis-nav-link:hover{background:#10263a!important;color:#e0f2fe!important}
html[data-theme="dark"] .gis-nav-link.is-active{color:#fff!important}
html[data-theme="dark"] .gis-sidebar-footer{background:#081522!important;border-color:#203246!important}
html[data-theme="dark"] .gis-profile-mini strong{color:#f1f5f9!important}
html[data-theme="dark"] .gis-profile-mini span{color:#8fa4b7!important}
html[data-theme="dark"] .gis-profile-mini:hover,html[data-theme="dark"] .gis-top-profile:hover{background:#10263a!important}
html[data-theme="dark"] .gis-top-profile strong{color:#f8fafc!important}
html[data-theme="dark"] .gis-top-profile small{color:#9eb0c2!important}
html[data-theme="dark"] .gis-footer{background:#07111f!important;border-color:#203246!important;color:#7f96aa!important}
html[data-theme="dark"] .gis-content{color:#eaf2fb}

/* Generic Tailwind-like surfaces used across legacy pages */
html[data-theme="dark"] .bg-white,
html[data-theme="dark"] .bg-white\/95,
html[data-theme="dark"] .bg-white\/90,
html[data-theme="dark"] .bg-white\/80,
html[data-theme="dark"] .bg-white\/70,
html[data-theme="dark"] .bg-white\/60,
html[data-theme="dark"] .bg-white\/50{background-color:#0d1928!important}
html[data-theme="dark"] .bg-slate-50,
html[data-theme="dark"] .bg-slate-50\/50,
html[data-theme="dark"] .bg-slate-100,
html[data-theme="dark"] .bg-gray-50,
html[data-theme="dark"] .bg-gray-100{background-color:#101f30!important}
html[data-theme="dark"] .bg-sky-50,html[data-theme="dark"] .bg-blue-50,html[data-theme="dark"] .bg-indigo-50,html[data-theme="dark"] .bg-violet-50{background-color:#0d2235!important}
html[data-theme="dark"] .bg-emerald-50,html[data-theme="dark"] .bg-green-50{background-color:#08251f!important}
html[data-theme="dark"] .bg-amber-50,html[data-theme="dark"] .bg-yellow-50,html[data-theme="dark"] .bg-orange-50{background-color:#2b2110!important}
html[data-theme="dark"] .bg-rose-50,html[data-theme="dark"] .bg-red-50{background-color:#2b151b!important}

/* Text colors */
html[data-theme="dark"] .text-slate-950,html[data-theme="dark"] .text-slate-900,html[data-theme="dark"] .text-slate-800,html[data-theme="dark"] .text-slate-700,
html[data-theme="dark"] .text-gray-950,html[data-theme="dark"] .text-gray-900,html[data-theme="dark"] .text-gray-800,html[data-theme="dark"] .text-gray-700{color:#eef6fd!important}
html[data-theme="dark"] .text-slate-600,html[data-theme="dark"] .text-slate-500,html[data-theme="dark"] .text-gray-600,html[data-theme="dark"] .text-gray-500{color:#a9bbcc!important}
html[data-theme="dark"] .text-slate-400,html[data-theme="dark"] .text-gray-400{color:#849bae!important}
html[data-theme="dark"] .text-indigo-950,html[data-theme="dark"] .text-indigo-900,html[data-theme="dark"] .text-blue-950,html[data-theme="dark"] .text-blue-900{color:#dce8ff!important}
html[data-theme="dark"] .text-indigo-800,html[data-theme="dark"] .text-blue-800{color:#b9d2ff!important}

/* Borders/dividers */
html[data-theme="dark"] .border-slate-50,html[data-theme="dark"] .border-slate-100,html[data-theme="dark"] .border-slate-200,html[data-theme="dark"] .border-slate-300,
html[data-theme="dark"] .border-gray-100,html[data-theme="dark"] .border-gray-200,html[data-theme="dark"] .border-gray-300{border-color:#26394c!important}
html[data-theme="dark"] .divide-slate-50> :not([hidden])~ :not([hidden]),html[data-theme="dark"] .divide-slate-100> :not([hidden])~ :not([hidden]),html[data-theme="dark"] .divide-slate-200> :not([hidden])~ :not([hidden]){border-color:#203246!important}
html[data-theme="dark"] hr{border-color:#26394c!important}

/* All common cards/panels from existing pages */
html[data-theme="dark"] .premium-panel,
html[data-theme="dark"] .glass-panel,
html[data-theme="dark"] .stat-card,
html[data-theme="dark"] .rv-card,
html[data-theme="dark"] .rv-stat-card,
html[data-theme="dark"] .av-card,
html[data-theme="dark"] .av-stat,
html[data-theme="dark"] .ca-glass,
html[data-theme="dark"] .info-card,
html[data-theme="dark"] .table-wrap,
html[data-theme="dark"] .gis-table-shell{background:#0d1928!important;border-color:#26394c!important;color:#eaf2fb!important;box-shadow:0 12px 30px rgba(0,0,0,.18)!important}
html[data-theme="dark"] .premium-panel:hover,html[data-theme="dark"] .glass-panel:hover,html[data-theme="dark"] .rv-card:hover,html[data-theme="dark"] .rv-stat-card:hover{border-color:#36566f!important}

/* Tables — no white islands in dark mode */
html[data-theme="dark"] .table-wrap,html[data-theme="dark"] .table-core,html[data-theme="dark"] .modern-table,html[data-theme="dark"] .ca-table,html[data-theme="dark"] .gis-table{background:#0d1928!important;color:#eaf2fb!important}
html[data-theme="dark"] .table-core thead th,html[data-theme="dark"] .modern-table thead th,html[data-theme="dark"] .modern-table th,html[data-theme="dark"] .ca-table th,html[data-theme="dark"] .gis-table thead th{background:#111f30!important;color:#b5c7d8!important;border-color:#26394c!important}
html[data-theme="dark"] .table-core td,html[data-theme="dark"] .modern-table td,html[data-theme="dark"] .ca-table td,html[data-theme="dark"] .gis-table tbody td{background:#0d1928!important;color:#e2edf7!important;border-color:#203246!important}
html[data-theme="dark"] .table-core tbody tr:hover td,html[data-theme="dark"] .modern-table tbody tr:hover td,html[data-theme="dark"] .modern-table tr:hover td,html[data-theme="dark"] .ca-table tr:hover td,html[data-theme="dark"] .gis-table tbody tr:hover td{background:#11263a!important}
html[data-theme="dark"] table:not(.liga-card table) caption{color:#e2edf7!important}

/* Form controls */
html[data-theme="dark"] input:not([type="checkbox"]):not([type="radio"]),html[data-theme="dark"] select,html[data-theme="dark"] textarea,html[data-theme="dark"] .form-input,html[data-theme="dark"] .table-input{background:#091725!important;color:#eff6ff!important;border-color:#2b4359!important;box-shadow:none!important}
html[data-theme="dark"] input:not([type="checkbox"]):not([type="radio"]):focus,html[data-theme="dark"] select:focus,html[data-theme="dark"] textarea:focus,html[data-theme="dark"] .form-input:focus,html[data-theme="dark"] .table-input:focus{background:#0c1c2c!important;color:#fff!important;border-color:#38bdf8!important;box-shadow:0 0 0 4px rgba(56,189,248,.10)!important}
html[data-theme="dark"] input::placeholder,html[data-theme="dark"] textarea::placeholder{color:#70879b!important;opacity:1!important}
html[data-theme="dark"] select option{background:#0d1928!important;color:#eef6fd!important}
html[data-theme="dark"] input:disabled,html[data-theme="dark"] select:disabled,html[data-theme="dark"] textarea:disabled{background:#111c29!important;color:#8297aa!important;opacity:1!important}
html[data-theme="dark"] input[type="date"],html[data-theme="dark"] input[type="datetime-local"],html[data-theme="dark"] input[type="time"]{color-scheme:dark}

/* Dropdowns, popups, modals */
html[data-theme="dark"] .gis-dropdown,html[data-theme="dark"] .gis-dropdown-head{background:#0d1928!important;border-color:#26394c!important;color:#eaf2fb!important}
html[data-theme="dark"] .gis-dropdown-head strong,html[data-theme="dark"] .gis-notif-item strong{color:#f1f5f9!important}
html[data-theme="dark"] .gis-dropdown-head span,html[data-theme="dark"] .gis-notif-item p,html[data-theme="dark"] .gis-notif-item small{color:#98adbf!important}
html[data-theme="dark"] .gis-notif-item{border-color:#203246!important}
html[data-theme="dark"] .gis-notif-item:hover,html[data-theme="dark"] .gis-notif-item.is-unread{background:#10263a!important}
html[data-theme="dark"] .swal2-popup,html[data-theme="dark"] .gis-modal-soft{background:#0d1928!important;color:#edf5fc!important;border:1px solid #2a4056!important}
html[data-theme="dark"] .swal2-title{color:#f8fafc!important}
html[data-theme="dark"] .swal2-html-container{color:#b4c5d4!important}
html[data-theme="dark"] .swal2-input,html[data-theme="dark"] .swal2-textarea,html[data-theme="dark"] .swal2-select{background:#091725!important;color:#f8fafc!important;border-color:#2a4056!important}

/* Reimburse list renderer V3.2.x uses .dark selectors — .dark is now synchronized globally.
   Extra overrides ensure action table keeps contrast. */
html[data-theme="dark"] .rg-list-wrap,html[data-theme="dark"] .rg-filters,html[data-theme="dark"] .rg-tabs,html[data-theme="dark"] .rg-card{background:#0d1928!important;border-color:#26394c!important}
html[data-theme="dark"] .rg-table thead th,html[data-theme="dark"] .rg-actions-head{background:#111f30!important;color:#b5c7d8!important}
html[data-theme="dark"] .rg-table tbody td,html[data-theme="dark"] .rg-actions-cell{background:#0d1928!important;color:#edf5fc!important;border-color:#203246!important}
html[data-theme="dark"] .rg-table tbody tr:hover td,html[data-theme="dark"] .rg-table tbody tr:hover .rg-actions-cell{background:#11263a!important}

/* Preserve intentionally branded/colored elements in either theme */
html[data-theme="dark"] .gis-announcement,html[data-theme="dark"] .gis-nav-link.is-active,html[data-theme="dark"] .rg-btn-primary,html[data-theme="dark"] .rg-submit{color:#fff!important}

/* Light mode explicit reset for shared components (prevents dark leftovers after switching live) */
html[data-theme="light"] body.gis-body{background:#f4f8fc!important;color:#0f172a!important}
html[data-theme="light"] .gis-topbar{background:rgba(255,255,255,.94)!important}
html[data-theme="light"] .gis-sidebar{background:linear-gradient(180deg,#fff 0%,#f8fbff 100%)!important}
html[data-theme="light"] .gis-dropdown,html[data-theme="light"] .gis-dropdown-head{background:#fff!important;color:#0f172a!important}
html[data-theme="light"] .table-wrap,html[data-theme="light"] .gis-table-shell{background:#fff!important}

@media(prefers-reduced-motion:reduce){html[data-theme="dark"] *,html[data-theme="light"] *{scroll-behavior:auto!important}}
