:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#07080b;--surface:#0f1116;--surface-2:#161920;--surface-3:#1e222b;--border:#242933;--border-strong:#333a47;--text:#f4f6fa;--text-dim:#a8b0bf;--text-faint:#6f788a;--violet:#9d8cff;--blue:#5b8cff;--cyan:#2ee6f0;--mint:#3df2a5;--lime:#c3f53c;--amber:#ffc53d;--coral:#ff5c7a;--pink:#ff7ac6;--primary:var(--violet);--primary-soft:#9d8cff21;--primary-text:#0c0a1f;--primary-strong:#bdb2ff;--grad:linear-gradient(120deg, #9d8cff 0%, #5b8cff 55%, #2ee6f0 100%);--grad-money:linear-gradient(120deg, #3df2a5 0%, #c3f53c 100%);--warn:var(--amber);--warn-soft:#ffc53d1c;--danger:var(--coral);--danger-soft:#ff5c7a1c;--good:var(--mint);--good-soft:#3df2a51a;--radius:16px;--radius-sm:11px;--shadow:0 1px 0 #ffffff08 inset, 0 10px 30px #00000059;--nav-h:62px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono:ui-monospace, "SF Mono", "Cascadia Mono", Consolas, monospace}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;margin:0;padding:0;font-size:16px;line-height:1.5}#root{min-height:100vh}.app{padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));min-height:100vh}.screen{max-width:640px;margin:0 auto;padding:16px}.topbar{background:var(--surface);border-bottom:1px solid var(--border);z-index:10;align-items:center;gap:8px;padding:14px 16px;display:flex;position:sticky;top:0}.topbar h1{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:650}.back-btn{color:var(--primary);cursor:pointer;background:0 0;border:none;padding:0 6px 4px 0;font-size:28px;line-height:1}.kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);margin:0 0 8px;font-size:11px;font-weight:700}h2.section{letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);margin:28px 0 10px;font-size:12px;font-weight:700}.lede{color:var(--text-dim);margin:0 0 18px}.muted{color:var(--text-dim);font-size:14px}.faint{color:var(--text-faint);font-size:13px;line-height:1.55}.nav{height:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--surface);border-top:1px solid var(--border);z-index:20;display:flex;position:fixed;bottom:0;left:0;right:0}.nav a{color:var(--text-faint);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:3px;font-size:11px;font-weight:600;text-decoration:none;display:flex}.nav-icon{font-size:19px;line-height:1}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:12px;padding:16px}.note{border-radius:var(--radius-sm);border-left:3px solid #0000;margin-bottom:12px;padding:12px 14px;font-size:14px;line-height:1.5}.note strong{margin-bottom:3px;display:block}.note.info{background:var(--surface-2);border-left-color:var(--cyan);color:var(--text-dim)}.note.info strong{color:var(--text)}.note.good{background:var(--good-soft);border-left-color:var(--good);color:var(--good)}.note.warn{background:var(--warn-soft);border-left-color:var(--warn);color:var(--warn)}.note.danger{background:var(--danger-soft);border-left-color:var(--danger);color:var(--danger)}.result{text-align:center;padding:8px 0 4px}.result .label{color:var(--text-dim);font-size:13px}.result .big{letter-spacing:-.03em;color:var(--good);background:var(--grad-money);-webkit-text-fill-color:transparent;font-variant-numeric:tabular-nums;filter:drop-shadow(0 0 22px #3df2a538);-webkit-background-clip:text;background-clip:text;font-size:44px;font-weight:800;line-height:1.1;display:inline-block}.result .big.neg{-webkit-text-fill-color:var(--danger);color:var(--danger);filter:none;background:0 0}.field{margin-bottom:14px}.field-row{justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.field-row label{font-size:15px;font-weight:500}.field-value{color:var(--primary);font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}input[type=range]{width:100%;accent-color:var(--primary);height:26px}.amount-input{border:1px solid var(--border);border-radius:var(--radius-sm);background:#0a0b0f;align-items:center;gap:4px;min-width:118px;padding:0 10px;display:flex}.amount-input span{color:var(--text-faint);white-space:nowrap;font-size:15px}.amount-input input{color:var(--text);font-size:15px;font-family:var(--font);font-variant-numeric:tabular-nums;text-align:right;background:0 0;border:none;outline:none;width:100%;padding:9px 0}.spend-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:12px;padding:11px 0;display:flex}.spend-row:last-child{border-bottom:none}.spend-row .label{font-size:15px}.presets{grid-template-columns:repeat(auto-fit,minmax(104px,1fr));gap:8px;margin-bottom:14px;display:grid}.preset{--accent:var(--violet);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;text-align:center;font-family:var(--font);color:var(--text);padding:12px 8px 10px;transition:border-color .15s,background .15s;position:relative;overflow:hidden}.preset:before{content:"";background:var(--accent);height:3px;position:absolute;inset:0 0 auto}.preset:first-child{--accent:var(--cyan)}.preset:nth-child(2){--accent:var(--mint)}.preset:nth-child(3){--accent:var(--violet)}.preset:nth-child(4){--accent:var(--amber)}.preset:nth-child(5){--accent:var(--pink)}.preset:hover{border-color:var(--accent)}.preset:active{background:var(--surface-2)}.preset b{font-size:14px;font-weight:650;display:block}.preset span{color:var(--text-faint);margin-top:2px;font-size:11px;display:block}.rank-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:inherit;box-shadow:var(--shadow);align-items:center;gap:12px;margin-bottom:8px;padding:12px 14px;text-decoration:none;display:flex}.rank-row:active{background:var(--surface-2)}.rank-n{color:var(--text-faint);font-variant-numeric:tabular-nums;min-width:16px;font-size:13px;font-weight:700}.rank-mid{flex:1;min-width:0}.rank-name{font-size:15px;font-weight:600;line-height:1.25}.rank-meta{flex-wrap:wrap;align-items:center;gap:5px;margin-top:4px;display:flex}.rank-issuer{color:var(--text-faint);font-size:12px}.rank-right{text-align:right}.rank-value{color:var(--good);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.rank-value.neg{color:var(--danger)}.rank-rate{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:11px}.badge{letter-spacing:.03em;text-transform:uppercase;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:800;display:inline-block}.badge.good{background:var(--good-soft);color:var(--good)}.badge.warn{background:var(--warn-soft);color:var(--warn)}.badge.danger{background:var(--danger-soft);color:var(--danger)}.badge.info{background:var(--surface-2);color:var(--text-dim)}.line{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--border);border-radius:var(--radius-sm);margin-bottom:8px;padding:12px 14px}.line.capped{border-left-color:var(--warn)}.line.excluded{border-left-color:var(--danger)}.line.dim{opacity:.6}.line-top{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.line-cat{font-size:15px;font-weight:600}.line-value{color:var(--good);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.line-value.zero{color:var(--danger)}.line-spend{color:var(--text-faint);font-variant-numeric:tabular-nums;margin-top:2px;font-size:12px}.line-why{color:var(--text-dim);margin-top:7px;font-size:13.5px;line-height:1.5}.line-loss{color:var(--warn);margin-top:5px;font-size:13px;line-height:1.5}.totals{background:var(--surface-2);border-radius:var(--radius);margin:14px 0;padding:14px 16px}.stat-row{justify-content:space-between;align-items:baseline;gap:12px;padding:6px 0;display:flex}.stat-row .k{color:var(--text-dim);font-size:14.5px}.stat-row .v{font-variant-numeric:tabular-nums;text-align:right;font-weight:650}.stat-row .v.pos{color:var(--good)}.stat-row .v.neg{color:var(--danger)}.stat-row.final{border-top:1px solid var(--border);margin-top:6px;padding-top:11px}.stat-row.final .k{color:var(--text);font-size:16px;font-weight:700}.stat-row.final .v{color:var(--good);text-shadow:0 0 18px #3df2a540;font-size:20px;font-weight:800}.facts{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.facts .stat-row{border-bottom:1px solid var(--border);padding:11px 14px}.facts .stat-row:last-child{border-bottom:none}.btn{border-radius:var(--radius-sm);background:var(--grad);width:100%;color:var(--primary-text);font-family:var(--font);cursor:pointer;text-align:center;border:none;padding:14px;font-size:16px;font-weight:650;text-decoration:none;transition:filter .15s,transform .15s,box-shadow .15s;display:block;box-shadow:0 6px 22px #5b8cff47}.btn:active{transform:translateY(1px)}.btn:disabled{background:var(--surface-2);color:var(--text-faint);box-shadow:none;cursor:not-allowed}.btn.secondary{background:var(--surface-2);color:var(--text);border:1px solid var(--border-strong);box-shadow:none}.sticky-bar{left:0;right:0;bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));background:var(--surface);border-top:1px solid var(--border);z-index:15;align-items:center;gap:12px;padding:10px 16px;display:flex;position:fixed}.sticky-bar .total{flex-shrink:0}.sticky-bar .total .k{color:var(--text-faint);text-transform:uppercase;letter-spacing:.06em;font-size:11px}.sticky-bar .total .v{font-variant-numeric:tabular-nums;font-size:17px;font-weight:750}.sticky-bar .btn{flex:1}.tabs{gap:6px;margin-bottom:16px;display:flex}.tab{border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--surface);color:var(--text-dim);font-family:var(--font);cursor:pointer;flex:1;padding:9px 8px;font-size:13.5px;font-weight:650}.tab.on{background:var(--primary-soft);border-color:var(--primary);color:var(--primary)}.assign-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:11px 14px;display:flex}.assign-row:last-child{border-bottom:none}.assign-cat{color:var(--text-dim);flex-shrink:0;font-size:14px}.assign-right{text-align:right;min-width:0}.assign-card{font-size:13.5px;font-weight:650;line-height:1.3}.assign-card.none{color:var(--danger);font-weight:400}.assign-value{color:var(--text-faint);font-variant-numeric:tabular-nums;margin-top:1px;font-size:11.5px}.bullets{margin:0;padding-left:18px}.bullets li{color:var(--text-dim);margin-bottom:7px;font-size:14.5px;line-height:1.5}a.plain{color:var(--primary);font-weight:600;text-decoration:none}.spend-row .label{flex-direction:column;min-width:0;display:flex}.hint{color:var(--text-faint);margin-top:1px;font-size:12px;line-height:1.35}.amount-input.wide{width:100%;min-width:0;margin-top:6px}.amount-input.wide input{text-align:left}.pref+.pref{border-top:1px solid var(--border);margin-top:14px;padding-top:14px}.pref-label{margin-bottom:8px;font-size:14.5px;font-weight:600}.chips{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.chip{border:1px solid var(--border);background:var(--surface);color:var(--text-dim);font-family:var(--font);cursor:pointer;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:600}.chip:hover{border-color:var(--border-strong);color:var(--text)}.chip.on{background:var(--primary-soft);border-color:var(--primary);color:var(--primary-strong);box-shadow:0 0 0 3px #9d8cff1f}.badge.brand{background:var(--primary-soft);color:var(--primary-strong)}.hero-name{color:var(--text);font-size:18px;font-weight:650;line-height:1.3;text-decoration:none;display:block}.card-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-top:4px;display:flex}.card-head-text{min-width:0}.card-title{letter-spacing:-.02em;margin:0;font-size:21px;line-height:1.25}.bank-link{color:var(--primary);background:var(--primary-soft);white-space:nowrap;border-radius:999px;flex-shrink:0;margin-top:2px;padding:7px 12px;font-size:13px;font-weight:700;text-decoration:none;display:inline-block}.held-toggle{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:var(--radius-sm);font-family:var(--font);cursor:pointer;align-items:center;gap:10px;margin-bottom:12px;padding:11px 14px;font-size:15px;font-weight:600;display:flex}.held-toggle .box{border:2px solid var(--border);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;font-size:14px;display:inline-flex}.held-toggle.on{border-color:var(--primary);background:var(--primary-soft);color:var(--primary)}.held-toggle.on .box{background:var(--primary);border-color:var(--primary);color:var(--primary-text)}.held-strip{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px;padding:12px 14px;display:flex}.held-strip .pref-label{margin-bottom:2px}.search{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:var(--radius-sm);font-family:var(--font);outline:none;margin-bottom:10px;padding:12px 14px;font-size:16px}.search:focus{border-color:var(--primary)}.filter-row{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:4px;display:flex}.select{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-sm);font-family:var(--font);max-width:100%;padding:8px 10px;font-size:14px}.check{color:var(--text-dim);align-items:center;gap:6px;font-size:13.5px;display:inline-flex}.check input{accent-color:var(--primary);width:16px;height:16px}.letter{z-index:5;background:var(--bg);color:var(--primary);padding:8px 2px 4px;font-size:13px;font-weight:800;position:sticky;top:53px}.list-row{padding:0;overflow:hidden}.list-link{color:inherit;padding:12px 14px;text-decoration:none;display:block}.tick{border:1px solid var(--border);background:var(--surface-2);width:40px;height:40px;color:var(--text-dim);cursor:pointer;border-radius:999px;flex-shrink:0;margin-right:10px;font-size:18px;font-weight:700}.tick.on{background:var(--primary);border-color:var(--primary);color:var(--primary-text)}.card-actions{gap:8px;margin-bottom:12px;display:flex}.card-actions .held-toggle{flex:1;margin-bottom:0}.save-toggle{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:var(--radius-sm);font-family:var(--font);cursor:pointer;flex-shrink:0;padding:11px 14px;font-size:15px;font-weight:600}.save-toggle.on{border-color:var(--danger);color:var(--danger);background:var(--danger-soft)}.fav,.remove{border:1px solid var(--border);background:var(--surface-2);width:40px;height:40px;color:var(--text-dim);cursor:pointer;border-radius:999px;flex-shrink:0;margin-right:10px;font-size:18px;line-height:1}.fav.on{color:var(--danger);border-color:var(--danger);background:var(--danger-soft)}.remove{font-size:14px}.cmp{border:2px solid var(--border);background:var(--surface);width:26px;height:26px;color:var(--primary-text);cursor:pointer;border-radius:7px;flex-shrink:0;margin-left:12px;font-size:14px;font-weight:800}.cmp.on{background:var(--primary);border-color:var(--primary)}.cmp:disabled{opacity:.35}.btn-pair{gap:8px;display:flex}.btn-pair .btn{flex:1}.btn.danger{background:var(--danger);color:#1f0409;box-shadow:none}.promo{border:1px dashed var(--border);border-radius:var(--radius);background:var(--surface);margin:20px 0 8px;padding:12px 14px}.promo-label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);margin-bottom:6px;font-size:11px;font-weight:700}.promo-title{font-size:15px;font-weight:700}.promo-body{color:var(--text-dim);margin-top:2px;font-size:13.5px;line-height:1.45}.promo-cta{border:1px solid var(--primary);color:var(--primary);font-family:var(--font);cursor:pointer;background:0 0;border-radius:999px;margin-top:10px;padding:6px 14px;font-size:13px;font-weight:700}.profile-head{align-items:center;gap:14px;margin:4px 0;display:flex}.avatar{background:var(--primary);width:56px;height:56px;color:var(--primary-text);border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;font-size:20px;font-weight:800;display:flex}.profile-name{font-size:19px;font-weight:700}.field-label{color:var(--text-dim);margin:12px 0 6px;font-size:13.5px;font-weight:600;display:block}.field-label:first-child{margin-top:0}.text-input{border:1px solid var(--border);width:100%;color:var(--text);border-radius:var(--radius-sm);font-family:var(--font);background:#0a0b0f;outline:none;padding:10px 12px;font-size:15px}.text-input:focus,.amount-input:focus-within{border-color:var(--primary);box-shadow:0 0 0 3px #9d8cff29}.text-input.bad,.amount-input.bad{border-color:var(--danger)}.field-error{color:var(--danger);margin-top:5px;font-size:12.5px}.link-row{border-bottom:1px solid var(--border);color:var(--text);justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;font-size:15px;text-decoration:none;display:flex}.link-row:last-child{border-bottom:none}.facts+.note,.note+.facts{margin-top:12px}.compare-wrap{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow-x:auto}.compare{border-collapse:collapse;width:100%;min-width:460px;font-size:13.5px}.compare th,.compare td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:10px}.compare thead th{background:var(--surface-2);font-size:13px;line-height:1.3}.compare tbody th{color:var(--text-dim);width:34%;font-weight:500}.compare td{font-variant-numeric:tabular-nums;font-weight:600}.compare td.best{color:var(--good);background:var(--good-soft)}.compare tr.group th{background:var(--surface-2);letter-spacing:.1em;text-transform:uppercase;color:var(--text-faint);font-size:11px;font-weight:700}.nav a span:last-child{white-space:nowrap;font-size:11px}:root{--header-h:60px;--content:760px;--ring:#9d8cff73}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:6px}.site-header{z-index:30;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(160%)blur(10px);backdrop-filter:saturate(160%)blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0}.site-header-inner{max-width:var(--content);height:var(--header-h);align-items:center;gap:18px;margin:0 auto;padding:0 16px;display:flex}.brand{color:var(--text);flex-shrink:0;align-items:center;gap:9px;text-decoration:none;display:inline-flex}.brand-mark{width:28px;height:28px;color:var(--primary);display:block}.brand-name{letter-spacing:-.02em;font-size:17px;font-weight:700}.site-nav{gap:2px;margin-left:auto;display:none}.site-nav a{color:var(--text-dim);white-space:nowrap;border-radius:999px;padding:8px 12px;font-size:14.5px;font-weight:600;text-decoration:none;transition:background .15s,color .15s}.site-nav a:hover{background:var(--surface-2);color:var(--text)}.site-nav a.active{background:var(--primary-soft);color:var(--primary-strong)}.site-header-note{color:var(--text-faint);white-space:nowrap;margin-left:18px;font-size:12.5px;display:none}.crumbs{color:var(--text-faint);flex-wrap:wrap;align-items:center;gap:6px;font-size:13px;display:none}.crumbs a{color:var(--text-dim);text-decoration:none}.crumbs a:hover{color:var(--primary);text-decoration:underline}.crumb-sep{color:var(--text-faint);margin:0 6px}.site-footer{border-top:1px solid var(--border);background:var(--surface);margin-top:32px}.site-footer-inner{max-width:var(--content);flex-direction:column;gap:14px;margin:0 auto;padding:22px 16px 28px;display:flex}.site-footer-line{color:var(--text-dim);margin:0 0 4px;font-size:13.5px;line-height:1.55}.site-footer-nav{flex-wrap:wrap;gap:16px;display:flex}.site-footer-nav a{color:var(--text-dim);font-size:13.5px;font-weight:600;text-decoration:none}.site-footer-nav a:hover{color:var(--primary)}.prerender h1{margin:8px 0 12px;font-size:22px;line-height:1.25}.prerender h2{text-transform:uppercase;letter-spacing:.04em;color:var(--text-dim);margin:20px 0 8px;font-size:15px}.prerender p,.prerender li{color:var(--text);line-height:1.55}.prerender ul{margin:0 0 12px;padding-left:20px}.prerender a{color:var(--primary)}@media (width>=768px){.site-nav{display:flex}.on-web .nav{display:none}.on-web{padding-bottom:0}.on-web .topbar{top:var(--header-h)}.on-web .topbar .back-btn,.on-web .topbar.has-crumbs h1{display:none}.on-web .crumbs{display:flex}.screen{max-width:var(--content);padding:22px 16px 8px}.on-web .sticky-bar{bottom:0}.rank-row,.list-row{transition:border-color .15s,box-shadow .15s,transform .15s}.rank-row:hover,.list-row:hover{border-color:color-mix(in srgb, var(--primary) 55%, var(--border));box-shadow:0 0 0 3px #9d8cff14}.card{padding:18px}.btn{cursor:pointer;justify-content:center;align-items:center;width:auto;min-width:200px;display:inline-flex}.btn-pair .btn,.sticky-bar .btn{min-width:0}.btn:hover{filter:brightness(1.08);box-shadow:0 8px 28px #5b8cff61}.btn:disabled:hover{filter:none;box-shadow:none}.btn.secondary:hover{background:var(--surface-3);box-shadow:none}}@media (width>=1024px){:root{--content:880px}.site-header-note{display:inline}.site-footer-inner{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:40px}}.split-row{background:var(--surface-2);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:12px 14px;display:flex}.split-label{color:var(--text-dim);font-size:14px;font-weight:600}.split-row .amount-input{flex:1;min-width:140px;margin:0}.btn.compact{border-radius:var(--radius-sm);width:auto;min-width:0;padding:10px 14px;font-size:14px}.fold-btn{text-align:left;background:var(--surface);border:1px dashed var(--border);border-radius:var(--radius);width:100%;color:var(--text-dim);font-family:var(--font);cursor:pointer;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;padding:14px 16px;font-size:14.5px;font-weight:600;display:flex}.fold-btn:hover{border-color:var(--primary);color:var(--primary)}.fold-count{background:var(--surface-2);min-width:22px;height:22px;color:var(--text-faint);border-radius:999px;flex-shrink:0;place-items:center;font-size:12px;font-weight:700;display:grid}.sticky-bar .total.leading{flex:1;min-width:0}.sticky-bar .total.leading .v{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;font-weight:650;overflow:hidden}@media (width<=420px){.sticky-bar .total.leading{display:none}}@media (width>=900px){.card-grid{grid-template-columns:1fr 1fr;gap:0 12px;display:grid}}.intro{margin:4px 0 18px}.intro h2{letter-spacing:-.02em;margin:0 0 8px;font-size:22px;font-weight:750;line-height:1.25}.intro p{color:var(--text-dim);margin:0;line-height:1.6}.in-app .web-only{display:none}.filter-note{border-radius:var(--radius-sm);background:var(--primary-soft);color:var(--primary-strong);margin:0 0 10px;padding:9px 12px;font-size:13.5px;font-weight:600}.filter-note a{color:inherit}.glance{background:var(--border);border:1px solid var(--border);border-radius:var(--radius);grid-template-columns:1fr 1fr;gap:1px;margin:12px 0;display:grid;overflow:hidden}.glance-item{background:var(--surface);flex-direction:column;gap:2px;min-width:0;padding:10px 12px;display:flex}.glance-item .k{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);font-size:11px;font-weight:700}.glance-item .v{font-size:14.5px;font-weight:650}@media (width>=768px){.intro h2{font-size:27px}.glance{grid-template-columns:repeat(4,1fr)}.on-web .sticky-bar{max-width:var(--content);border:1px solid var(--border-strong);border-radius:var(--radius);margin:0 auto;padding:12px 16px;bottom:16px;box-shadow:0 12px 40px #0000008c}.on-web .sticky-bar .btn{flex:none;min-width:200px;margin-left:auto}}.center{text-align:center}strong.pos,.pos{color:var(--good)}.intro h2{background:linear-gradient(120deg,#fff 0%,#d9d3ff 45%,#9fefff 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}h2.section{align-items:center;gap:10px;display:flex}h2.section:after{content:"";background:linear-gradient(90deg, var(--border-strong), transparent);flex:1;height:1px}.cat-dot{background:var(--dot,var(--text-faint));width:8px;height:8px;box-shadow:0 0 10px var(--dot,transparent);vertical-align:middle;border-radius:999px;flex-shrink:0;margin-right:8px;display:inline-block}.label-name,.line-cat,.assign-cat{align-items:center;display:inline-flex}.steps{gap:6px;margin:0 0 16px;padding:0;list-style:none;display:flex}.steps li{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);color:var(--text-faint);white-space:nowrap;text-overflow:ellipsis;flex:1;align-items:center;gap:8px;min-width:0;padding:9px 10px;font-size:13px;font-weight:650;display:flex;overflow:hidden}.step-n{background:var(--surface-3);width:22px;height:22px;color:var(--text-dim);border-radius:999px;flex-shrink:0;place-items:center;font-size:12px;font-weight:800;display:grid}.steps li.current{color:var(--text);border-color:var(--primary);background:var(--primary-soft)}.steps li.current .step-n{background:var(--grad);color:var(--primary-text)}.steps li.done{color:var(--text-dim)}.steps li.done .step-n{background:var(--good);color:#03170e}@media (width<=480px){.steps{gap:4px}.steps li{gap:5px;padding:8px 6px;font-size:12px}.steps .step-n{width:19px;height:19px;font-size:11px}}.card.about{border-color:var(--border-strong);background:radial-gradient(120% 60% at 0% 0%, #9d8cff1a, transparent 60%), var(--surface)}.card.about .btn{margin-top:18px}.about-summary{border-radius:var(--radius-sm);background:var(--surface);border:1px solid var(--border);color:var(--text-dim);justify-content:space-between;align-items:center;gap:12px;margin-bottom:6px;padding:11px 14px;font-size:13.5px;line-height:1.45;display:flex}.link-btn{color:var(--primary-strong);font-family:var(--font);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px 2px;font-size:14px;font-weight:700}.link-btn:hover{text-decoration:underline}.spend-head{margin:22px 0 12px}.spend-head h2{letter-spacing:-.01em;margin:0 0 4px;font-size:20px;line-height:1.3}.spend-head p{color:var(--text-dim);margin:0;font-size:14.5px}.spend-head strong{color:var(--lime)}.basis{border-radius:var(--radius);background:var(--surface);border:1px solid var(--border);grid-template-columns:1fr auto;align-items:start;gap:8px 12px;margin-bottom:12px;padding:12px 14px;display:grid}.basis-main{flex-direction:column;display:flex}.basis-k{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);font-size:11px;font-weight:700}.basis-v{font-variant-numeric:tabular-nums;font-size:17px;font-weight:750}.basis-tags{flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.tag{background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim);border-radius:999px;padding:3px 9px;font-size:12px;font-weight:600;display:inline-block}.basis-edit{color:var(--primary-strong);grid-area:1/2;font-size:14px;font-weight:700;text-decoration:none}.basis-edit:hover{text-decoration:underline}.nudge{border-radius:var(--radius);background:linear-gradient(var(--surface), var(--surface)) padding-box, var(--grad) border-box;border:1px solid #0000;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:4px 0 8px;padding:14px 16px;display:flex}.nudge strong{font-size:15px;display:block}.nudge p{color:var(--text-dim);max-width:52ch;margin:4px 0 0;font-size:13.5px;line-height:1.5}.answer{border-radius:var(--radius);border:1px solid var(--border);background:radial-gradient(90% 70% at 50% 0%, #3df2a514, transparent 65%), radial-gradient(70% 60% at 100% 0%, #9d8cff1a, transparent 60%), var(--surface);margin-top:16px;padding:18px 16px 16px}.answer .kicker{text-align:center;color:var(--text-dim)}.answer>.btn{width:fit-content;margin-left:auto;margin-right:auto;display:flex}.answer>.hero-name{text-align:center;font-size:20px}.value-mode{text-align:center;color:var(--text-faint);margin:2px 0 12px;font-size:13px}.value-mode a{color:var(--primary-strong);font-weight:650}.wallet{flex-direction:column;gap:8px;margin-top:14px;display:flex}.wallet-card{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);color:inherit;align-items:flex-start;gap:12px;padding:12px 14px;text-decoration:none;transition:border-color .15s;display:flex}.wallet-card:hover{border-color:color-mix(in srgb, var(--primary) 55%, var(--border))}.wallet-n{background:var(--grad);width:26px;height:26px;color:var(--primary-text);border-radius:999px;flex-shrink:0;place-items:center;margin-top:1px;font-size:13px;font-weight:800;display:grid}.wallet-mid{flex-direction:column;flex:1;gap:5px;min-width:0;display:flex}.wallet-uses{flex-wrap:wrap;gap:4px 12px;display:flex}.use{color:var(--text-dim);align-items:center;font-size:13px;display:inline-flex}.use .cat-dot{margin-right:6px}.rank-right,.assign-row .assign-right{flex-direction:column;align-items:flex-end;display:flex}.nav a.active{color:var(--primary-strong)}.nav{background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:saturate(160%)blur(10px);backdrop-filter:saturate(160%)blur(10px)}.sticky-bar{background:color-mix(in srgb, var(--surface) 92%, transparent);-webkit-backdrop-filter:saturate(160%)blur(10px);backdrop-filter:saturate(160%)blur(10px)}.trust-chip{color:var(--mint);font-family:var(--font);cursor:pointer;background:#3df2a514;border:1px solid #3df2a559;border-radius:999px;flex-shrink:0;align-items:center;gap:6px;margin-left:auto;padding:6px 11px;font-size:12.5px;font-weight:700;transition:background .15s,border-color .15s;display:inline-flex}.trust-chip:hover{background:#3df2a529;border-color:#3df2a599}@media (width>=768px){.trust-chip{margin-left:0}.site-nav{margin-left:auto}}.welcome-backdrop{z-index:100;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#030407b8;place-items:center;padding:16px;animation:.2s ease-out welcome-fade;display:grid;position:fixed;inset:0;overflow-y:auto}.welcome{border:1px solid var(--border-strong);background:radial-gradient(90% 55% at 0% 0%, #9d8cff29, transparent 62%), radial-gradient(70% 45% at 100% 0%, #3df2a51a, transparent 60%), var(--surface);border-radius:20px;width:100%;max-width:520px;margin:auto;padding:26px 24px 20px;animation:.28s ease-out welcome-rise;position:relative;box-shadow:0 30px 80px #0009}@keyframes welcome-fade{0%{opacity:0}to{opacity:1}}@keyframes welcome-rise{0%{opacity:0;transform:translateY(14px)scale(.98)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.welcome-backdrop,.welcome{animation:none}}.welcome-x{border:1px solid var(--border);background:var(--surface-2);width:32px;height:32px;color:var(--text-dim);cursor:pointer;border-radius:999px;font-size:13px;position:absolute;top:12px;right:12px}.welcome-x:hover{color:var(--text);border-color:var(--border-strong)}.welcome-badge{color:var(--mint);letter-spacing:.02em;background:#3df2a51a;border:1px solid #3df2a559;border-radius:999px;align-items:center;gap:7px;margin-bottom:12px;padding:5px 12px 5px 9px;font-size:12.5px;font-weight:750;display:inline-flex}.welcome h2{letter-spacing:-.02em;margin:0 0 8px;font-size:26px;line-height:1.2}.welcome-lead{color:var(--text-dim);margin:0 0 18px;font-size:15.5px;line-height:1.6}.welcome-lead strong{color:var(--text)}.welcome-steps{flex-direction:column;gap:8px;margin:0 0 16px;padding:0;list-style:none;display:flex}.welcome-steps li{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);color:var(--text-dim);align-items:flex-start;gap:12px;padding:10px 12px;font-size:14px;line-height:1.45;display:flex}.welcome-steps li b{color:var(--text);margin-bottom:1px;font-size:14.5px;display:block}.welcome-steps .step-n{background:var(--grad);color:var(--primary-text);margin-top:1px}.welcome-facts{color:var(--text-dim);flex-direction:column;gap:7px;margin:0 0 18px;padding:0;font-size:13.5px;line-height:1.5;list-style:none;display:flex}.welcome-facts li{padding-left:18px;position:relative}.welcome-facts li:before{content:"";background:var(--mint);border-radius:999px;width:7px;height:7px;position:absolute;top:8px;left:2px;box-shadow:0 0 8px #3df2a599}.welcome-facts b{color:var(--text)}.welcome-actions{flex-direction:column;gap:8px;display:flex}.welcome-actions .btn{width:100%}.welcome-foot{text-align:center;color:var(--text-faint);margin:14px 0 0;font-size:12.5px}.welcome-foot a{color:var(--primary-strong);font-weight:650}@media (width>=560px){.welcome{padding:32px 32px 24px}.welcome-actions{flex-direction:row}.welcome-actions .btn{flex:1;min-width:0}}.desktop-only{display:none}.eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--cyan);margin:0 0 12px;font-size:12px;font-weight:750}.hero-points{flex-direction:column;gap:12px;margin:22px 0 0;padding:0;list-style:none;display:flex}.hero-points li{color:var(--text-dim);padding-left:26px;font-size:15px;line-height:1.55;position:relative}.hero-points li:before{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4.5 8.4l2.3 2.3 4.7-5' fill='none' stroke='%2303170e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 100% no-repeat, var(--mint);border-radius:999px;width:16px;height:16px;position:absolute;top:5px;left:0;box-shadow:0 0 10px #3df2a573}.hero-points b{color:var(--text)}.live{border-radius:var(--radius);border:1px solid var(--border-strong);background:radial-gradient(90% 60% at 100% 0%, #3df2a51a, transparent 62%), radial-gradient(80% 50% at 0% 0%, #9d8cff1f, transparent 62%), var(--surface);padding:20px 20px 18px}.live-total{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:40px;font-weight:800;line-height:1.1}.live-sub{margin:4px 0 0}.live-list{flex-direction:column;gap:8px;margin:8px 0 0;padding:0;list-style:none;display:flex}.live-list li{border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);align-items:center;gap:10px;padding:10px 12px;display:flex}.live-n{background:var(--grad);width:22px;height:22px;color:var(--primary-text);border-radius:999px;flex-shrink:0;place-items:center;font-size:12px;font-weight:800;display:grid}.live-name{flex:1;min-width:0;font-size:13.5px;font-weight:600;line-height:1.3}.live-val{color:var(--good);font-variant-numeric:tabular-nums;flex-shrink:0;font-weight:750}@media (width>=1024px){:root{--content:1180px;--header-h:68px}body{background:radial-gradient(60% 420px at 12% -60px, #9d8cff21, transparent 70%), radial-gradient(50% 380px at 92% -40px, #2ee6f014, transparent 70%), var(--bg);background-repeat:no-repeat}.on-web .desktop-only{display:block}.on-web .topbar:not(.has-crumbs){display:none}.on-web .screen{max-width:var(--content);padding:36px 32px 24px}.on-web .screen.narrow{max-width:780px}.site-header-inner{gap:26px}.brand-name{font-size:19px}.site-nav a{padding:9px 15px;font-size:15px}.on-web .home-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:start;gap:64px;display:grid}.on-web .home-side{top:calc(var(--header-h) + 28px);position:sticky}.on-web .home-side .hero{margin:12px 0 0}.on-web .hero h2{letter-spacing:-.035em;margin-bottom:18px;font-size:clamp(38px,3.6vw,52px);line-height:1.08}.on-web .hero>p:not(.eyebrow){font-size:17px;line-height:1.65}.on-web .hero-points li{font-size:15.5px}.on-web .home-bar{display:none}.on-web .home-screen{padding-bottom:32px!important}.on-web .home-main .steps{margin-top:6px}.on-web .presets{grid-template-columns:repeat(5,1fr)}.on-web .detail-grid{grid-template-columns:minmax(0,1fr) 400px;align-items:start;gap:44px;display:grid}.on-web .detail-side{top:calc(var(--header-h) + 24px);order:2;position:sticky}.on-web .detail-main{order:1;min-width:0}.on-web .detail-side .glance{grid-template-columns:1fr 1fr;margin-top:0}.on-web .detail-main>.muted:first-child{margin-top:0;font-size:16px;line-height:1.65}.card-head{margin-bottom:4px}.card-title{font-size:30px}.on-web .wallet{grid-template-columns:1fr 1fr;gap:10px;display:grid}.on-web .answer{padding:26px 26px 22px}.on-web .answer .result .big{font-size:56px}.on-web .basis{grid-template-columns:auto 1fr auto;align-items:center}.on-web .basis-tags{grid-area:1/2;justify-content:flex-end}.on-web .basis-edit{grid-column:3}.on-web .card-grid,.on-web .rank-list{grid-template-columns:1fr 1fr;gap:0 14px;display:grid}.site-footer-inner{padding:34px 32px 38px}}@media (width>=1280px){.on-web .card-grid{grid-template-columns:1fr 1fr 1fr}.on-web .home-grid{gap:88px}}@media (width<=340px){.steps li{justify-content:center;padding:8px 4px;font-size:11.5px}.steps .step-n{display:none}}
