:root{--bg:#f5f5f7;--surface:#ffffff;--surface-2:#fbfbfd;--border:#d2d2d7;--border-light:#e8e8ed;--text:#1d1d1f;--text-secondary:#6e6e73;--text-tertiary:#86868b;--accent:#0a7d3c;--accent-hover:#0b8f46;--accent-soft:#e9f6ee;--blue:#0071e3;--red:#d70015;--red-soft:#fdecec;--amber:#a8560c;--amber-soft:#fdf3e7;--radius-lg:18px;--radius:12px;--radius-sm:8px;--shadow-sm:0 1px 2px rgba(0,0,0,0.04),0 1px 3px rgba(0,0,0,0.06);--shadow:0 6px 24px rgba(0,0,0,0.08);--shadow-lg:0 18px 44px rgba(0,0,0,0.13);--font:var(--font-body),-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;--grad-accent:linear-gradient(135deg,#0a7d3c,#17a34a 55%,#0ea5a4);--grad-hero:linear-gradient(135deg,#065f2e,#0a7d3c 42%,#0d9488);--tint-green:linear-gradient(160deg,#e9f6ee,#f6fbf8);--tint-blue:linear-gradient(160deg,#e8f1fe,#f5f9ff);--tint-purple:linear-gradient(160deg,#f0ecfe,#f9f7ff);--tint-orange:linear-gradient(160deg,#fdefe1,#fff8f2)}:root[data-theme=dark]{--bg:#000000;--surface:#1c1c1e;--surface-2:#2c2c2e;--border:#3a3a3c;--border-light:#2c2c2e;--text:#f5f5f7;--text-secondary:#a1a1a6;--text-tertiary:#8d8d93;--accent:#30d158;--accent-hover:#40dd68;--accent-soft:#123420;--blue:#0a84ff;--red:#ff453a;--red-soft:#3a1416;--amber:#ff9f0a;--amber-soft:#3a2a12;--grad-accent:linear-gradient(135deg,#12924a,#22c55e 55%,#2dd4bf);--grad-hero:linear-gradient(135deg,#0b3d22,#0f7a43 45%,#0f766e);--tint-green:linear-gradient(160deg,#12321f,#171a1c);--tint-blue:linear-gradient(160deg,#142234,#171a1c);--tint-purple:linear-gradient(160deg,#221f38,#171a1c);--tint-orange:linear-gradient(160deg,#33240f,#171a1c)}@media (prefers-color-scheme:dark){:root:not([data-theme]){--bg:#000000;--surface:#1c1c1e;--surface-2:#2c2c2e;--border:#3a3a3c;--border-light:#2c2c2e;--text:#f5f5f7;--text-secondary:#a1a1a6;--text-tertiary:#8d8d93;--accent:#30d158;--accent-hover:#40dd68;--accent-soft:#123420;--blue:#0a84ff;--red:#ff453a;--red-soft:#3a1416;--amber:#ff9f0a;--amber-soft:#3a2a12;--grad-accent:linear-gradient(135deg,#12924a,#22c55e 55%,#2dd4bf);--grad-hero:linear-gradient(135deg,#0b3d22,#0f7a43 45%,#0f766e);--tint-green:linear-gradient(160deg,#12321f,#171a1c);--tint-blue:linear-gradient(160deg,#142234,#171a1c);--tint-purple:linear-gradient(160deg,#221f38,#171a1c);--tint-orange:linear-gradient(160deg,#33240f,#171a1c)}}*{box-sizing:border-box}html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{margin:0;font-family:var(--font);color:var(--text);line-height:1.5;letter-spacing:-.01em;min-height:100dvh;background:radial-gradient(1100px 620px at 108% -8%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 58%),radial-gradient(880px 520px at -12% 6%,color-mix(in srgb,var(--blue) 13%,transparent),transparent 55%),radial-gradient(700px 700px at 50% 120%,color-mix(in srgb,#8b5cf6 10%,transparent),transparent 60%),var(--bg);background-attachment:fixed}h1,h2,h3{font-weight:700;font-family:var(--font-title),var(--font)}h1{font-size:34px;margin:0;letter-spacing:-.035em;line-height:1.1;font-weight:800}.appnav .brand .grad-text,.grad-text,.hero .value,.stat-value{font-family:var(--font-title),var(--font)}h2{font-size:23px;margin:0;letter-spacing:-.028em;line-height:1.15}h3{font-size:17px;letter-spacing:-.02em}a{color:var(--accent);text-decoration:none}.container{max-width:1000px;margin:0 auto;padding:32px 24px 64px;animation:masuk .35s ease both}.container-narrow{max-width:760px}@keyframes masuk{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.container{animation:none}}.topbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:28px}.backlink{color:var(--text-secondary);font-size:14px;font-weight:500}.backlink:hover{color:var(--text)}.eyebrow{color:var(--text-secondary);font-size:14px;margin:4px 0 0}.card{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:20px;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.card-pad{padding:24px}.card:hover{box-shadow:var(--shadow);border-color:var(--border)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:34px;padding:0 13px;border-radius:980px;border:1px solid var(--border);background:color-mix(in srgb,var(--surface) 65%,transparent);color:var(--text-secondary);font-size:13px;font-weight:500;font-family:inherit;cursor:pointer;white-space:nowrap;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background .15s,color .15s,transform .08s,border-color .15s}.theme-toggle:hover{color:var(--text);background:var(--border-light);border-color:var(--text-tertiary)}.theme-toggle:active{transform:scale(.94)}.theme-toggle .ico{font-size:15px;line-height:1}.switch{border:none;background:transparent;padding:0;cursor:pointer;display:inline-flex}.switch-track{position:relative;width:54px;height:30px;border-radius:980px;background:var(--border-light);border:1px solid var(--border);transition:background .2s,border-color .2s}.switch[aria-checked=true] .switch-track{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}.switch-knob{position:absolute;top:2px;left:2px;width:24px;height:24px;border-radius:50%;background:var(--surface);box-shadow:var(--shadow-sm);color:var(--amber);display:grid;place-items:center;transition:transform .24s cubic-bezier(.4,0,.2,1),color .2s}.switch[aria-checked=true] .switch-knob{transform:translateX(24px);color:var(--accent)}th.sortable{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}th.sortable:hover{color:var(--text)}th.sortable .arrow{opacity:.4;font-size:10px;margin-left:3px}th.sortable.aktif .arrow{opacity:1;color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-family:inherit;font-size:15px;font-weight:500;line-height:1;padding:10px 18px;border-radius:980px;border:1px solid transparent;cursor:pointer;transition:background .15s,opacity .15s,transform .06s;white-space:nowrap;text-decoration:none}.btn:active{transform:scale(.97)}.btn-primary{background:var(--grad-accent);color:#fff;box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 38%,transparent)}.btn-primary:hover{filter:brightness(1.05);box-shadow:0 6px 18px color-mix(in srgb,var(--accent) 46%,transparent)}.btn-secondary{background:color-mix(in srgb,var(--surface) 70%,transparent);color:var(--text);border-color:var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn-secondary:hover{background:var(--border-light)}.btn-ghost{background:transparent;color:var(--accent)}.btn-ghost:hover{background:var(--accent-soft)}.btn-block{width:100%}.btn-sm{padding:6px 12px;font-size:13px}.btn:disabled{opacity:.5;cursor:default}.btn-chip{font-size:12px;font-weight:500;padding:5px 11px;border-radius:980px;cursor:pointer;background:var(--surface);transition:background .15s;font-family:inherit}.btn-approve{border:1px solid var(--accent);color:var(--accent)}.btn-approve:hover{background:var(--accent-soft)}.btn-reject{border:1px solid var(--red);color:var(--red)}.btn-reject:hover{background:var(--red-soft)}.field{display:flex;flex-direction:column;gap:7px}.field>span{font-size:13px;color:var(--text-secondary);font-weight:500;padding-left:2px}.input,.select,.textarea{font-family:inherit;font-size:15px;color:var(--text);padding:11px 16px;border:1px solid var(--border);border-radius:999px;background:var(--surface);width:100%;transition:border-color .15s,box-shadow .15s,background .15s;-webkit-appearance:none;-moz-appearance:none;appearance:none}.textarea{border-radius:18px}.input:hover,.select:hover,.textarea:hover{border-color:color-mix(in srgb,var(--text-tertiary) 60%,var(--border))}.input:focus,.select:focus,.textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3.5px color-mix(in srgb,var(--accent) 20%,transparent)}.input::placeholder{color:var(--text-tertiary)}.select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%2386868b' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 13px center;padding-right:34px}.textarea{resize:vertical}.row{display:flex;gap:12px}.row>*{flex:1 1}.segmented{display:inline-flex;background:var(--border-light);border-radius:10px;padding:3px;gap:3px;width:100%}.segmented label{flex:1 1}.segmented input{position:absolute;opacity:0;pointer-events:none}.segmented span{display:block;text-align:center;font-size:14px;font-weight:500;color:var(--text-secondary);padding:8px 10px;border-radius:8px;cursor:pointer;transition:all .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.segmented input:checked+span{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);font-weight:600}.badge{display:inline-block;font-size:12px;font-weight:600;padding:3px 9px;border-radius:980px;letter-spacing:0}.badge-draft{background:var(--amber-soft);color:var(--amber)}.badge-diverifikasi{background:var(--accent-soft);color:var(--accent)}.badge-ditolak{background:var(--red-soft);color:var(--red)}.badge-dikoreksi{background:var(--border-light);color:var(--text-tertiary)}.table-wrap{overflow-x:auto;border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}table.data{border-collapse:collapse;width:100%;font-size:14px;line-height:1.45}table.data th{text-align:left;font-size:15px;font-weight:700;color:var(--text);letter-spacing:-.01em;padding:14px 16px;background:color-mix(in srgb,var(--text) 3%,var(--surface));border-bottom:1.5px solid var(--border);white-space:nowrap;position:-webkit-sticky;position:sticky;top:0;z-index:1}table.data th.num{text-align:right}table.data td{padding:13px 16px;border-bottom:1px solid var(--border-light);vertical-align:middle}table.data td:first-child,table.data th:first-child{padding-left:20px}table.data td:last-child,table.data th:last-child{padding-right:20px}table.data tr:last-child td{border-bottom:none}.num{text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}.row-masuk{background:color-mix(in srgb,var(--blue) 5%,var(--surface))}.money-in{color:var(--accent)}.money-out{color:var(--red)}.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));grid-gap:14px;gap:14px}.stat{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow-sm);transition:transform .18s ease,box-shadow .18s ease}.stat.clickable:hover{transform:translateY(-4px) scale(1.012);box-shadow:var(--shadow-lg)}.stat.clickable:hover .emoji{transform:scale(1.08) rotate(-4deg)}.stat:not(.clickable):hover{box-shadow:var(--shadow)}.stat .emoji{transition:transform .18s ease}.stat-label{font-size:13px;color:var(--text-secondary)}.stat-value{font-size:24px;font-weight:600;margin-top:4px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.stat-note{font-size:12px;color:var(--amber);margin-top:4px}.toast{position:fixed;left:50%;bottom:calc(90px + env(safe-area-inset-bottom, 0px));transform:translateX(-50%);z-index:60;background:var(--text);color:var(--bg);padding:12px 18px;border-radius:980px;box-shadow:var(--shadow-lg);font-size:14px;font-weight:500;white-space:nowrap;animation:toastIn .25s ease}@keyframes toastIn{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translateX(-50%)}}.alert{padding:12px 14px;background:var(--red-soft);color:var(--red);border-radius:var(--radius-sm);font-size:14px}.muted{color:var(--text-secondary);font-size:13px}.only-mobile{display:none}@media (max-width:640px){.only-mobile{display:inline-flex}}.toggle-pojok{position:fixed;top:16px;right:16px;z-index:40}.appnav{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;padding:11px 24px;background:color-mix(in srgb,var(--surface) 72%,transparent);backdrop-filter:saturate(180%) blur(24px);-webkit-backdrop-filter:saturate(180%) blur(24px);border-bottom:1px solid color-mix(in srgb,var(--border) 60%,transparent);box-shadow:0 1px 0 color-mix(in srgb,var(--surface) 40%,transparent) inset,0 8px 24px -18px rgba(0,0,0,.35)}.appnav,.appnav-center{align-items:center;justify-content:center}.appnav-center{display:inline-flex;gap:4px;flex-wrap:nowrap;padding:4px;border-radius:980px;background:color-mix(in srgb,var(--text) 3.5%,transparent);border:1px solid var(--border-light)}.appnav-right{position:absolute;right:24px;top:50%;transform:translateY(-50%)}.appnav .brand{display:inline-flex;align-items:center;gap:9px;margin:0 10px;white-space:nowrap;text-decoration:none}.appnav .brand .grad-text{font-weight:800;font-size:17px;letter-spacing:-.02em}.appnav .brand-mark{width:31px;height:31px;border-radius:10px;display:grid;place-items:center;background:var(--grad-accent);color:#fff;box-shadow:0 4px 12px color-mix(in srgb,var(--accent) 40%,transparent),0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent) inset;transition:transform .2s cubic-bezier(.34,1.56,.64,1)}.appnav .brand:hover .brand-mark{transform:rotate(-5deg) scale(1.06)}.appnav .brand.active .brand-mark{box-shadow:0 4px 14px color-mix(in srgb,var(--accent) 50%,transparent),0 0 0 3px var(--accent-soft)}.appnav a.navlink{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;color:var(--text-secondary);font-size:14px;font-weight:600;padding:8px 15px;border-radius:980px;transition:background .18s,color .18s,box-shadow .18s}.appnav a.navlink svg{opacity:.7;transition:opacity .18s}.appnav a.navlink:hover{color:var(--text);background:color-mix(in srgb,var(--text) 6%,transparent)}.appnav a.navlink:hover svg{opacity:1}.appnav a.navlink.active{color:var(--accent);background:var(--surface);box-shadow:0 1px 3px rgba(0,0,0,.08),0 0 0 1px var(--border-light)}.appnav a.navlink.active svg{opacity:1}.appnav .spacer{flex:1 1}.tabbar{display:none}@media (max-width:640px){.appnav{display:none}.tabbar{display:flex;position:fixed;z-index:30;left:50%;transform:translateX(-50%);bottom:calc(14px + env(safe-area-inset-bottom, 0px));gap:4px;align-items:stretch;padding:6px;border-radius:980px;border:1px solid color-mix(in srgb,var(--border) 55%,transparent);background:color-mix(in srgb,var(--surface) 80%,transparent);backdrop-filter:saturate(180%) blur(22px);-webkit-backdrop-filter:saturate(180%) blur(22px);box-shadow:0 12px 34px rgba(0,0,0,.22),0 3px 10px rgba(0,0,0,.12)}.tabbar a{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:3px;min-width:68px;padding:8px 10px;border-radius:22px;color:var(--text-tertiary);font-size:11px;font-weight:500;text-align:center;line-height:1.15;transition:color .15s,background .25s,transform .28s cubic-bezier(.34,1.56,.64,1)}.tabbar a svg{flex:0 0 auto;transition:transform .28s cubic-bezier(.34,1.56,.64,1)}.tabbar a.active{color:#fff;background:var(--grad-accent);box-shadow:0 5px 14px color-mix(in srgb,var(--accent) 48%,transparent);transform:translateY(-2px)}.tabbar a.active svg{transform:scale(1.1)}.tabbar svg{width:23px;height:23px}.container{padding:20px 16px calc(96px + env(safe-area-inset-bottom, 0px))}h1{font-size:24px}}.chips{display:flex;gap:8px;flex-wrap:wrap;margin:4px 0 16px}.chip{padding:7px 14px;border-radius:980px;font-size:13px;font-weight:500;border:1px solid var(--border);background:var(--surface);color:var(--text-secondary);text-decoration:none;transition:background .15s,color .15s,border-color .15s}.chip:hover{border-color:var(--text-tertiary);color:var(--text)}.chip.active{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 40%,transparent);color:var(--accent);font-weight:600}.cetak-page{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:28px;box-shadow:var(--shadow-sm)}.kwitansi-kop{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:2px solid var(--border)}.kwitansi-mark{display:grid;place-items:center;width:46px;height:46px;border-radius:12px;background:var(--grad-accent);color:#fff;flex:0 0 auto}.kwitansi-nama{font-family:var(--font-title),var(--font);font-weight:800;font-size:20px;letter-spacing:-.02em}.kwitansi-no,.kwitansi-sub{color:var(--text-secondary);font-size:13px}.kwitansi-no{margin-left:auto;font-weight:600;white-space:nowrap}.kwitansi-isi{width:100%;margin:18px 0;border-collapse:collapse}.kwitansi-isi td{padding:7px 0;vertical-align:top;font-size:14.5px}.kwitansi-isi td:first-child{width:190px;color:var(--text-secondary)}.kwitansi-bawah{display:flex;justify-content:space-between;align-items:flex-end;margin-top:8px;gap:20px}.kwitansi-jumlah{font-family:var(--font-title),var(--font);font-weight:800;font-size:24px;padding:10px 16px;border:2px solid var(--border);border-radius:12px}.kwitansi-ttd{text-align:center;font-size:13px;color:var(--text-secondary)}.cetak-ringkas{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:10px 24px;gap:10px 24px;margin-bottom:18px}.cetak-ringkas>div{display:flex;justify-content:space-between;border-bottom:1px solid var(--border-light);padding:6px 0}.cetak-ringkas span{color:var(--text-secondary);font-size:13px}.cetak-judul{font-size:15px;margin:18px 0 8px}.cetak-tabel{font-size:13px}.cetak-tabel td,.cetak-tabel th{padding:8px 10px}.cetak-kaki{margin-top:16px;font-size:11px;color:var(--text-tertiary);text-align:center}@media print{.appnav,.backlink,.no-print,.tabbar,.toggle-pojok,.usermenu{display:none!important}body,html{background:#fff!important}.container{padding:0!important;max-width:100%!important}.cetak-page{border:none!important;box-shadow:none!important;border-radius:0!important;padding:0!important}.cetak-tabel,.table-wrap{box-shadow:none!important;border:none!important}a[href]:after{content:""!important}}@page{size:A4;margin:16mm}.barchart{display:grid;grid-gap:10px;gap:10px}.bar-row{display:grid;grid-template-columns:minmax(110px,33%) 1fr auto;grid-gap:12px;gap:12px;align-items:center;padding:5px 4px;border-radius:9px;transition:background .12s}.bar-row.hover{background:color-mix(in srgb,var(--text) 4%,transparent)}.bar-label{font-size:13px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{position:relative;height:22px;background:color-mix(in srgb,var(--text) 7%,transparent);border-radius:7px}.bar-fill{height:100%;border-radius:7px;min-width:4px;transition:width .6s cubic-bezier(.4,0,.2,1)}.bar-tip{position:absolute;top:-24px;right:0;z-index:2;font-size:11px;font-weight:600;background:var(--text);color:var(--surface);padding:2px 7px;border-radius:6px;box-shadow:var(--shadow-sm)}.bar-tip,.bar-val{white-space:nowrap}.bar-val{font-size:13px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;text-align:right}@media (max-width:520px){.bar-row{grid-template-columns:minmax(90px,40%) 1fr auto;gap:8px}.bar-label,.bar-val{font-size:12px}}.tabel-interaktif .th-sort{cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none;white-space:nowrap}.tabel-interaktif .th-sort.aktif,.tabel-interaktif .th-sort:hover{color:var(--accent)}.tabel-interaktif .th-arrow{font-weight:700}.tabel-interaktif .drag-cell{width:34px;text-align:center;color:var(--text-tertiary);cursor:-webkit-grab;cursor:grab;-webkit-user-select:none;-moz-user-select:none;user-select:none}.tabel-interaktif .drag-cell:active{cursor:-webkit-grabbing;cursor:grabbing}.tabel-interaktif .drag-cell:hover{color:var(--text-secondary)}.tabel-interaktif tr.row-drag{opacity:.55}.tabel-interaktif tbody tr{transition:background .12s}.tautan-halus{color:inherit;text-decoration:none;border-bottom:1px dashed transparent}.tautan-halus:hover{color:var(--accent);border-bottom-color:color-mix(in srgb,var(--accent) 45%,transparent)}.chip-badge{display:inline-grid;place-items:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:980px;background:var(--amber);color:#fff;font-size:11px;font-weight:700;line-height:1;vertical-align:middle}table.data tbody tr{transition:background .12s}.paging{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:16px;flex-wrap:wrap}.paging .btn.disabled{opacity:.45;pointer-events:none}table.data tbody tr.row-klik{cursor:pointer}table.data tbody tr.row-klik:hover{background:color-mix(in srgb,var(--accent) 7%,transparent)}table.data tbody tr:nth-child(2n):not(.row-masuk){background:color-mix(in srgb,var(--text) 2.5%,transparent)}table.data tbody tr:hover:not(.row-masuk){background:var(--accent-soft)}table.data tbody tr.row-masuk:hover{background:color-mix(in srgb,var(--blue) 11%,var(--surface))}.empty{text-align:center;padding:44px 20px}.empty-ico{width:56px;height:56px;border-radius:16px;display:grid;place-items:center;margin:0 auto 14px;background:var(--accent-soft);color:var(--accent)}.empty h3{font-size:16px;margin:0 0 4px}.empty p{margin:0 0 16px}.dot{width:10px;height:10px;border-radius:3px;display:inline-block;flex:none}.bar{transform-box:fill-box;transform-origin:bottom;animation:grow .6s cubic-bezier(.2,.7,.2,1) both}@keyframes grow{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.bar{animation:none}}.grafik-wrap{position:relative}.grafik-tip{position:absolute;transform:translate(-50%,-100%);pointer-events:none;z-index:5;background:var(--surface);border:1px solid var(--border-light);box-shadow:var(--shadow);border-radius:10px;padding:8px 10px;font-size:12px;white-space:nowrap}.grafik-hit{fill:transparent;cursor:pointer;transition:fill .12s}.grafik-hit:hover{fill:color-mix(in srgb,var(--text) 5%,transparent)}.skel{position:relative;overflow:hidden;background:var(--border-light);border-radius:10px}.skel:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--surface) 65%,transparent),transparent);animation:shimmer 1.3s infinite}@keyframes shimmer{to{transform:translateX(100%)}}@media (max-width:640px){.topbar{flex-wrap:wrap;gap:12px;margin-bottom:22px}h1{font-size:26px}h2{font-size:20px}.section-title h2{font-size:19px}.hero{padding:22px 20px}.stat-grid{gap:12px}.card{padding:16px}.tabbar a{min-width:62px}}.form-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,340px);grid-gap:24px;gap:24px;align-items:start}@media (max-width:720px){.form-split{grid-template-columns:1fr}.row{flex-direction:column}}.hero{position:relative;overflow:hidden;background:var(--grad-hero);color:#fff;border-radius:var(--radius-lg);padding:26px 28px;box-shadow:0 14px 40px color-mix(in srgb,var(--accent) 30%,transparent)}.hero:after{top:-60%;right:-10%;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),transparent 70%)}.hero:after,.hero:before{content:"";position:absolute;pointer-events:none}.hero:before{inset:0;border-radius:inherit;background:linear-gradient(180deg,rgba(255,255,255,.12),transparent 42%)}.hero:after{animation:heroGlow 7s ease-in-out infinite alternate}@keyframes heroGlow{0%{transform:scale(1) translate(0);opacity:.85}to{transform:scale(1.25) translate(-16px,12px);opacity:1}}@media (prefers-reduced-motion:reduce){.hero:after{animation:none}}.hero>*{position:relative;z-index:1}.hero{display:flex;align-items:center;gap:28px;flex-wrap:nowrap}.hero-main{flex:1 1 auto;min-width:0}.hero .label{font-size:14px;opacity:.85;margin:0}.hero .value{font-size:40px;font-weight:700;margin:6px 0 0;letter-spacing:-.03em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hero .sub{font-size:13px;opacity:.8;margin-top:8px}.hero-stats{display:grid;grid-gap:12px;gap:12px;flex:0 0 auto;padding-left:24px;border-left:1px solid rgba(255,255,255,.22)}.hero-stat{display:flex;flex-direction:column;gap:1px}.hero-stat .hs-label{font-size:11.5px;opacity:.82;letter-spacing:.01em;white-space:nowrap}.hero-stat .hs-value{font-size:16px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;white-space:nowrap}@media (max-width:640px){.hero{gap:16px}.hero .value{font-size:28px}.hero-stats{gap:9px;padding-left:14px}.hero-stat .hs-label{font-size:10.5px}.hero-stat .hs-value{font-size:14px}}@media (max-width:380px){.hero .value{font-size:24px}.hero-stat .hs-value{font-size:13px}}.stat.tint-green{background:var(--tint-green)}.stat.tint-blue{background:var(--tint-blue)}.stat.tint-purple{background:var(--tint-purple)}.stat.tint-orange{background:var(--tint-orange)}.stat .emoji{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:20px;background:var(--surface);margin-bottom:10px;box-shadow:var(--shadow-sm),inset 0 0 0 1px var(--border-light)}.stat.tint-green .stat-value{color:var(--accent)}.stat.tint-blue .stat-value{color:var(--blue)}.stat.tint-purple .stat-value{color:#8b5cf6}.stat.tint-orange .stat-value{color:var(--amber)}.grad-text{background:var(--grad-accent);-webkit-background-clip:text;background-clip:text;color:transparent}.section-title{display:flex;align-items:center;gap:10px;margin:30px 0 14px}.section-title h2{font-size:22px;font-weight:700;letter-spacing:-.025em;position:relative;padding-left:14px}.section-title h2:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:5px;height:.78em;border-radius:3px;background:var(--grad-accent)}.pill-count{font-size:13px;font-weight:600;color:var(--accent);background:var(--accent-soft);padding:3px 11px;border-radius:980px}.stat.clickable{position:relative}.stat.clickable .chev{position:absolute;top:16px;right:14px;color:var(--text-tertiary);transition:transform .18s ease,color .18s ease}.stat.clickable:hover .chev{transform:translateX(3px);color:var(--accent)}.stat .edit-dana{position:absolute;top:14px;right:40px;width:27px;height:27px;display:grid;place-items:center;cursor:pointer;background:var(--surface);border:1px solid var(--border-light);border-radius:8px;color:var(--text-tertiary);transition:color .15s,background .15s}.stat .edit-dana:hover{color:var(--accent);background:var(--accent-soft)}.ikon-pilih{display:flex;flex-wrap:wrap;gap:5px}.ikon-opt{width:30px;height:30px;display:grid;place-items:center;cursor:pointer;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text-secondary);font-family:inherit;font-size:15px;transition:all .12s}.ikon-opt:hover{color:var(--text);border-color:var(--text-tertiary)}.ikon-opt.aktif{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.ai-filled,.segmented.ai-filled{border-color:#f59e0b!important;box-shadow:0 0 0 3px color-mix(in srgb,#f59e0b 22%,transparent)!important;background:color-mix(in srgb,#f59e0b 8%,var(--surface))!important;transition:box-shadow .2s,border-color .2s,background .2s}.scan-wrap{position:relative;overflow:hidden}.scan-wrap.scanning:before{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:color-mix(in srgb,var(--accent) 7%,transparent);animation:scanPulse 1.4s ease-in-out infinite}.scan-wrap.scanning:after{content:"";position:absolute;left:0;right:0;height:40%;z-index:3;pointer-events:none;background:linear-gradient(180deg,transparent,color-mix(in srgb,var(--accent) 45%,transparent) 48%,transparent);box-shadow:0 0 14px color-mix(in srgb,var(--accent) 55%,transparent);animation:scanMove 1.4s cubic-bezier(.5,0,.5,1) infinite}@keyframes scanMove{0%{top:-40%}to{top:100%}}@keyframes scanPulse{0%,to{opacity:.35}50%{opacity:.9}}@media (prefers-reduced-motion:reduce){.scan-wrap.scanning:after,.scan-wrap.scanning:before{animation:none}}.spin{display:inline-block;width:14px;height:14px;vertical-align:-2px;border:2px solid color-mix(in srgb,currentColor 25%,transparent);border-top-color:currentcolor;border-radius:50%;animation:spin .7s linear infinite;margin-right:7px}@keyframes spin{to{transform:rotate(1turn)}}.ocr-dots i{display:inline-block;width:5px;height:5px;margin:0 1.5px;border-radius:50%;background:currentColor;opacity:.4;animation:dotBounce 1s ease-in-out infinite}.ocr-dots i:nth-child(2){animation-delay:.15s}.ocr-dots i:nth-child(3){animation-delay:.3s}@keyframes dotBounce{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-3px)}}.btn-danger-outline{color:var(--red);border-color:color-mix(in srgb,var(--red) 45%,var(--border))}.btn-danger-outline:hover{background:var(--red-soft);border-color:var(--red)}.setting-link{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border:1px solid var(--border-light);border-radius:var(--radius);background:var(--surface);color:var(--text);text-decoration:none;transition:border-color .15s,transform .1s,box-shadow .15s}.setting-link:hover{border-color:var(--accent);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.setting-link-arrow{flex:0 0 auto;color:var(--text-tertiary);font-size:18px}.pair-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-light)}.pair-row:last-child{border-bottom:none}.filter-dana{position:relative}.filter-dana-btn{display:inline-flex;align-items:center;gap:8px;justify-content:space-between;width:auto;min-width:170px;padding:8px 12px;cursor:pointer;text-align:left}.filter-dana.open .filter-dana-btn{border-color:var(--accent)}.filter-dana-panel{position:absolute;top:calc(100% + 6px);right:0;z-index:40;min-width:210px;max-height:320px;overflow-y:auto;padding:6px;background:var(--surface);border:1px solid var(--border-light);border-radius:14px;box-shadow:0 16px 40px rgba(0,0,0,.16)}.fd-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:8px 10px;border:none;background:transparent;cursor:pointer;border-radius:9px;color:var(--text);font-size:13.5px;font-family:inherit}.fd-item:hover{background:var(--accent-soft)}.fd-item.aktif{color:var(--accent);font-weight:600}.fd-check{flex:0 0 16px;text-align:center;color:var(--accent);font-size:13px}.fd-sep{height:1px;background:var(--border-light);margin:4px 2px}.emoji-picker{display:grid;grid-gap:6px;gap:6px}.emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(30px,1fr));grid-gap:4px;gap:4px;max-height:148px;overflow-y:auto;padding:2px;border:1px solid var(--border-light);border-radius:10px;background:var(--surface)}.emoji-cell{aspect-ratio:1;display:grid;place-items:center;cursor:pointer;border:1px solid transparent;border-radius:8px;background:transparent;font-size:18px;line-height:1;transition:background .12s,transform .08s}.emoji-cell:hover{background:var(--accent-soft);transform:scale(1.08)}.emoji-cell.aktif{border-color:var(--accent);background:var(--accent-soft)}.warna-pilih{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.warna-opt{position:relative;width:24px;height:24px;border-radius:50%;cursor:pointer;border:2px solid var(--surface);box-shadow:0 0 0 1px var(--border);padding:0;display:grid;place-items:center;font-size:13px;color:var(--text-tertiary);transition:transform .1s,box-shadow .1s}.warna-opt:hover{transform:scale(1.12)}.warna-opt.aktif{box-shadow:0 0 0 2px var(--accent)}.warna-opt.warna-bawaan{background:var(--surface)}.warna-opt.warna-custom{background:linear-gradient(135deg,#f97316,#8b5cf6,#2563eb);color:#fff;font-weight:700;overflow:hidden}.input-plain{border-color:transparent;background:transparent}.input-plain:hover{border-color:var(--border);background:var(--surface)}.input-plain:focus{border-color:var(--accent);background:var(--surface)}.stat[draggable=true]{cursor:-webkit-grab;cursor:grab}.stat[draggable=true]:active{cursor:-webkit-grabbing;cursor:grabbing}.stat.dragging{cursor:-webkit-grabbing!important;cursor:grabbing!important;box-shadow:0 0 0 2px var(--accent),0 14px 30px rgba(0,0,0,.2);transform:scale(1.02)}.edit-nama-btn{flex:0 0 auto;display:grid;place-items:center;cursor:pointer;width:22px;height:22px;border-radius:6px;border:none;background:transparent;color:var(--text-tertiary);transition:color .15s,background .15s}.edit-nama-btn:hover{color:var(--accent);background:var(--accent-soft)}.usermenu{position:relative;display:inline-flex}.avatar{width:36px;height:36px;border-radius:50%;border:none;cursor:pointer;background:var(--grad-accent);color:#fff;font-weight:700;font-size:13px;display:grid;place-items:center;font-family:inherit;box-shadow:var(--shadow-sm);transition:transform .08s,box-shadow .15s}.avatar:hover{box-shadow:var(--shadow)}.avatar:active{transform:scale(.94)}.avatar.sm{width:40px;height:40px;font-size:14px}.usermenu-panel{display:none;position:absolute;right:0;top:calc(100% + 8px);width:250px;z-index:50;background:var(--surface);border:1px solid var(--border-light);border-radius:16px;box-shadow:var(--shadow);padding:8px}.usermenu.open .usermenu-panel{display:block}.usermenu-panel{top:calc(100% + 6px)}.usermenu-head{display:flex;gap:10px;align-items:center;padding:8px 8px 12px;border-bottom:1px solid var(--border-light);margin-bottom:6px}.usermenu-row{justify-content:space-between;padding:8px}.usermenu-item,.usermenu-row{display:flex;align-items:center;font-size:14px}.usermenu-item{gap:10px;padding:10px 8px;border-radius:9px;color:var(--text);background:none;border:none;cursor:pointer;text-decoration:none;font-family:inherit}.usermenu-item:hover{background:var(--border-light)}.usermenu-item.danger{color:var(--red)}@font-face{font-family:Figtree;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d9fef5bf2f64cf9a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Figtree;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/de42cfb9a3b980ae-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/d9fef5bf2f64cf9a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Figtree;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/de42cfb9a3b980ae-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/d9fef5bf2f64cf9a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Figtree;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/de42cfb9a3b980ae-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Figtree;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/d9fef5bf2f64cf9a-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Figtree;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/de42cfb9a3b980ae-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Figtree Fallback;src:local("Arial");ascent-override:94.32%;descent-override:24.82%;line-gap-override:0.00%;size-adjust:100.72%}.__className_c373bc{font-family:Figtree,Figtree Fallback;font-style:normal}.__variable_c373bc{--font-title:"Figtree","Figtree Fallback"}@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/88e4012f2051f8b4-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/0be08cad6fae8421-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/61d96c4884191721-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/cd5242d34e82716d-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/6662f7f4c6f2f062-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/b0bb26939bb40fdb-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7816b93d847886e9-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ea06843a6d8e9ab3-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/60c9b95e8d9e49be-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/1e6ec62843814326-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/a8bcd0492b5976ee-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Barlow;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6ad0344ed98ac2e9-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Barlow Fallback;src:local("Arial");ascent-override:103.43%;descent-override:20.69%;line-gap-override:0.00%;size-adjust:96.68%}.__className_52f0b0{font-family:Barlow,Barlow Fallback;font-style:normal}.__variable_52f0b0{--font-body:"Barlow","Barlow Fallback"}