:root{--bg:#eff1ec;--surface:#fff;--surface-2:#e9ece4;--surface-3:#f6f7f3;--ink:#16201b;--ink-soft:#5a655e;--ink-faint:#8b948d;--line:#e0e4db;--line-strong:#cdd3c8;--accent:#0e8a5c;--accent-press:#0b7350;--on-accent:#fff;--gold:#b87519;--gold-soft:#f4e7d2;--up:#158a4e;--down:#c0463a;--shadow:0 1px 2px #1420190f, 0 8px 24px #1420190f;--shadow-key:0 1px 0 #1420190d;--r-a:#0e8a5c;--r-b:#3b5ba9;--r-c:#b0432e;--r-d:#7a4c9b;--r-e:#b87519;--maxw:480px}@media (prefers-color-scheme:dark){:root{--bg:#0c100e;--surface:#161c18;--surface-2:#1e2621;--surface-3:#121814;--ink:#eaf0ec;--ink-soft:#9da9a1;--ink-faint:#6d7972;--line:#28312b;--line-strong:#38443c;--accent:#32c489;--accent-press:#2aa876;--on-accent:#07130d;--gold:#e2a64c;--gold-soft:#2c2418;--up:#33c489;--down:#e0685c;--shadow:0 1px 2px #0006, 0 10px 30px #00000059;--shadow-key:0 1px 0 #00000040;--r-a:#32c489;--r-b:#6e8fe0;--r-c:#e27a5f;--r-d:#b892d8;--r-e:#e2a64c}}:root[data-theme=light]{--bg:#eff1ec;--surface:#fff;--surface-2:#e9ece4;--surface-3:#f6f7f3;--ink:#16201b;--ink-soft:#5a655e;--ink-faint:#8b948d;--line:#e0e4db;--line-strong:#cdd3c8;--accent:#0e8a5c;--accent-press:#0b7350;--on-accent:#fff;--gold:#b87519;--gold-soft:#f4e7d2;--up:#158a4e;--down:#c0463a;--shadow:0 1px 2px #1420190f, 0 8px 24px #1420190f;--r-a:#0e8a5c;--r-b:#3b5ba9;--r-c:#b0432e;--r-d:#7a4c9b;--r-e:#b87519}:root[data-theme=dark]{--bg:#0c100e;--surface:#161c18;--surface-2:#1e2621;--surface-3:#121814;--ink:#eaf0ec;--ink-soft:#9da9a1;--ink-faint:#6d7972;--line:#28312b;--line-strong:#38443c;--accent:#32c489;--accent-press:#2aa876;--on-accent:#07130d;--gold:#e2a64c;--gold-soft:#2c2418;--up:#33c489;--down:#e0685c;--shadow:0 1px 2px #0006, 0 10px 30px #00000059;--r-a:#32c489;--r-b:#6e8fe0;--r-c:#e27a5f;--r-d:#b892d8;--r-e:#e2a64c}*{box-sizing:border-box}html,body{margin:0;padding:0}html{background:var(--bg)}body{background:radial-gradient(120% 60% at 50% -6%, color-mix(in oklab, var(--accent) 9%, var(--bg)), var(--bg) 55%);min-height:100dvh;color:var(--ink);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;background-attachment:fixed;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Segoe UI,Roboto,system-ui,sans-serif}button{font-family:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{max-width:var(--maxw);min-height:100dvh;padding-bottom:calc(84px + env(safe-area-inset-bottom));margin:0 auto;position:relative}.loading{min-height:100dvh;color:var(--ink-faint);justify-content:center;align-items:center;font-size:14px;font-weight:600;display:flex}header.top{z-index:20;background:color-mix(in oklab, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(14px);padding:calc(10px + env(safe-area-inset-top)) 18px 10px;border-bottom:1px solid var(--line);position:sticky;top:0}.top-row{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:8px;font-size:20px;font-weight:750;display:flex}.brand .dot{background:var(--accent);width:10px;height:10px;box-shadow:0 0 0 4px color-mix(in oklab, var(--accent) 18%, transparent);border-radius:3px}.datechip{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:12px}.screen-title{color:var(--ink-faint);letter-spacing:.02em;margin:2px 0 0;font-size:13px;font-weight:600}.card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:20px}.rests{scrollbar-width:none;gap:8px;padding:12px 18px 4px;display:flex;overflow-x:auto}.rests::-webkit-scrollbar{display:none}.chip{border:1.5px solid var(--line-strong);background:var(--surface);color:var(--ink-soft);cursor:pointer;-webkit-user-select:none;user-select:none;border-radius:999px;flex:none;align-items:center;gap:8px;padding:8px 14px;font-size:14px;font-weight:650;transition:transform .12s,border-color .15s,color .15s;display:inline-flex}.chip .swatch{border-radius:50%;width:9px;height:9px}.chip[aria-pressed=true]{color:var(--ink);box-shadow:inset 0 0 0 2px var(--rc), var(--shadow-key);border-color:#0000}.chip.add{color:var(--ink-faint);font-weight:600}.chip:active{transform:scale(.96)}section{padding:0 18px}.shift{margin:14px 18px 6px;padding:16px 16px 14px}.shift .eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--ink-faint);justify-content:space-between;align-items:center;font-size:11px;font-weight:700;display:flex}.shift .rname{color:var(--rc)}.bignum{letter-spacing:-.03em;font-variant-numeric:tabular-nums;margin:10px 0 2px;font-size:44px;font-weight:800;line-height:1}.sub{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:13.5px}.statrow{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;display:grid}.stat{background:var(--surface-3);border:1px solid var(--line);border-radius:14px;padding:9px 10px}.stat .k{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);font-size:10.5px;font-weight:700}.stat .v{font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin-top:3px;font-size:18px;font-weight:750}.stat .v.gold{color:var(--gold)}.entry{margin:8px 18px 0;padding:14px 14px 16px}.entry h3{color:var(--ink-soft);margin:2px 2px 12px;font-size:13px;font-weight:650}.fields{grid-template-columns:1fr 1fr 1fr;gap:8px;display:grid}.field{border:1.5px solid var(--line-strong);background:var(--surface-3);cursor:pointer;text-align:left;border-radius:14px;width:100%;padding:10px 10px 9px;transition:border-color .12s,background .12s;position:relative;overflow:hidden}.field .fl{color:var(--ink-faint);letter-spacing:.03em;text-transform:uppercase;align-items:center;gap:5px;font-size:11px;font-weight:700;display:flex}.field .fv{font-variant-numeric:tabular-nums;letter-spacing:-.02em;min-height:24px;margin-top:5px;font-size:21px;font-weight:750}.field .fv .cur{color:var(--ink-faint);margin-right:1px;font-size:15px;font-weight:600}.field .fv.empty{color:var(--ink-faint)}.field[data-active=true]{border-color:var(--accent);background:color-mix(in oklab, var(--accent) 8%, var(--surface))}.field[data-auto=true]{background:var(--surface-2);border-style:dashed;border-color:var(--line-strong)}.autotag{letter-spacing:.06em;color:var(--accent);background:color-mix(in oklab, var(--accent) 15%, transparent);border-radius:5px;padding:1px 5px;font-size:9px;font-weight:800}.caret{background:var(--accent);vertical-align:-3px;width:2px;height:19px;margin-left:1px;animation:1.1s step-end infinite blink;display:inline-block}@keyframes blink{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.caret{animation:none}}.tippct{text-align:center;color:var(--ink-soft);font-variant-numeric:tabular-nums;margin:12px 0 2px;font-size:13.5px}.tippct b{color:var(--gold);font-size:15px}.more-toggle{width:100%;color:var(--ink-soft);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;gap:6px;margin-top:10px;padding:8px;font-size:13px;font-weight:600;display:flex}.more-toggle .chev{transition:transform .18s}.more-toggle[aria-expanded=true] .chev{transform:rotate(180deg)}.more{grid-template-columns:1fr 1fr;gap:8px;transition:max-height .22s,margin .22s;display:grid;overflow:hidden}.pad{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px;display:grid}.key{border:1px solid var(--line);background:var(--surface-3);color:var(--ink);cursor:pointer;box-shadow:var(--shadow-key);font-variant-numeric:tabular-nums;border-radius:16px;padding:14px 0;font-size:24px;font-weight:600;transition:transform 70ms,background .1s}.key:active{background:var(--surface-2);transform:scale(.95)}.key.util{color:var(--ink-soft);font-size:19px}.save{background:var(--rc);color:#fff;letter-spacing:-.01em;cursor:pointer;width:100%;box-shadow:0 6px 18px -6px color-mix(in oklab, var(--rc) 70%, transparent);border:none;border-radius:18px;margin-top:12px;padding:16px;font-size:17px;font-weight:750;transition:transform 80ms,filter .1s}.save:disabled{opacity:.4;box-shadow:none;cursor:default}.save:not(:disabled):active{filter:brightness(1.05);transform:scale(.985)}.reset-link{color:var(--ink-faint);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;margin:4px auto 0;font-size:12px;text-decoration:underline;display:block}.toast{left:50%;bottom:calc(96px + env(safe-area-inset-bottom));background:var(--ink);color:var(--bg);opacity:0;pointer-events:none;z-index:45;border-radius:14px;padding:11px 18px;font-size:14px;font-weight:650;transition:opacity .2s,transform .2s;position:fixed;transform:translate(-50%,20px);box-shadow:0 10px 30px #0000004d}.toast.show{opacity:1;transform:translate(-50%)}.tabbar{width:100%;max-width:var(--maxw);z-index:30;padding:8px 22px calc(env(safe-area-inset-bottom) + 12px);background:color-mix(in oklab, var(--bg) 85%, transparent);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line);gap:8px;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.tab{cursor:pointer;color:var(--ink-faint);background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:3px;padding:6px;font-size:11px;font-weight:650;display:flex}.tab svg{width:24px;height:24px}.tab[aria-selected=true]{color:var(--accent)}.filters{flex-wrap:wrap;gap:8px;padding:12px 18px 4px;display:flex}.seg{background:var(--surface-2);border-radius:12px;gap:2px;padding:3px;display:inline-flex}.seg button{color:var(--ink-soft);cursor:pointer;background:0 0;border:none;border-radius:9px;padding:6px 11px;font-size:12.5px;font-weight:650;transition:background .12s,color .12s}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-key)}.hero{justify-content:space-between;align-items:center;gap:12px;margin:12px 18px 0;padding:18px 18px 16px;display:flex}.hero .lab{text-transform:uppercase;letter-spacing:.07em;color:var(--ink-faint);font-size:11.5px;font-weight:700}.hero .big{letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--gold);margin-top:6px;font-size:40px;font-weight:800}.trend{font-variant-numeric:tabular-nums;align-items:center;gap:4px;margin-top:6px;font-size:13px;font-weight:750;display:inline-flex}.trend.up{color:var(--up)}.trend.down{color:var(--down)}.trend .muted{color:var(--ink-faint);font-weight:600}.hero .right{text-align:right}.hero .right .v{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:26px;font-weight:800}.h2{color:var(--ink-soft);letter-spacing:-.01em;justify-content:space-between;align-items:center;margin:20px 20px 8px;font-size:13px;font-weight:750;display:flex}.h2 .star{color:var(--gold);font-weight:750}.grid2{grid-template-columns:1fr 1fr;gap:10px;padding:0 18px;display:grid}.metric{padding:14px}.metric .k{text-transform:uppercase;letter-spacing:.05em;color:var(--ink-faint);font-size:11px;font-weight:700}.metric .v{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:5px;font-size:24px;font-weight:800}.metric .v.gold{color:var(--gold)}.metric .mm{color:var(--ink-faint);font-variant-numeric:tabular-nums;margin-top:4px;font-size:11.5px}.spark{margin:0 18px;padding:14px 14px 10px}.spark .cap{justify-content:space-between;align-items:baseline;margin-bottom:6px;display:flex}.spark .cap .t{color:var(--ink-soft);font-size:12.5px;font-weight:700}.spark .cap .n{color:var(--ink-faint);font-variant-numeric:tabular-nums;font-size:11px}.heat{margin:0 18px;padding:14px}.heat .cap{color:var(--ink-soft);font-size:11.5px}.heatgrid{grid-template-columns:34px repeat(5,1fr);gap:4px;margin-top:8px;display:grid}.heatgrid .hh{color:var(--ink-faint);text-align:center;letter-spacing:.02em;align-self:end;font-size:9.5px;font-weight:700}.heatgrid .rl{color:var(--ink-soft);align-items:center;font-size:11px;font-weight:650;display:flex}.cell{aspect-ratio:1/.82;font-variant-numeric:tabular-nums;border-radius:7px;justify-content:center;align-items:center;font-size:10px;font-weight:750;display:flex}.cell.empty{background:var(--surface-2);color:var(--ink-faint);font-weight:500}.legend{color:var(--ink-faint);justify-content:flex-end;align-items:center;gap:6px;margin-top:10px;font-size:10px;display:flex}.legend .bar{background:linear-gradient(90deg, var(--surface-2), var(--gold));border-radius:4px;width:76px;height:8px}.cmp{margin:0 18px;padding:14px 16px}.cmprow{grid-template-columns:78px 1fr;align-items:center;gap:10px;margin:11px 0;display:grid}.cmprow .cl{color:var(--ink-soft);font-size:11.5px;font-weight:650}.bars{flex-direction:column;gap:6px;display:flex}.barwrap{align-items:center;gap:8px;display:flex}.barwrap .nm{width:70px;color:var(--ink);font-size:11.5px;font-weight:650}.bartrack{background:var(--surface-2);border-radius:7px;flex:1;height:22px;overflow:hidden}.barfill{color:#fff;font-variant-numeric:tabular-nums;border-radius:7px;justify-content:flex-end;align-items:center;min-width:38px;height:100%;padding:0 8px;font-size:11px;font-weight:750;display:flex}.empty-note{text-align:center;color:var(--ink-faint);margin:16px 18px;padding:22px 18px;font-size:13.5px;line-height:1.5}.foot{text-align:center;color:var(--ink-faint);padding:22px 24px 6px;font-size:11px;line-height:1.5}.addbar{z-index:60;background:#0000006b;background:lab(0% 0 0/.42);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:var(--maxw);background:var(--surface);padding:20px 20px calc(env(safe-area-inset-bottom) + 20px);border-radius:26px 26px 0 0;animation:.26s cubic-bezier(.2,.8,.2,1) sheetUp;box-shadow:0 -20px 60px #0000004d}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.sheet{animation:none}}.sheet h3{letter-spacing:-.02em;margin:2px 0 4px;font-size:19px;font-weight:750}.sheet p{color:var(--ink-soft);margin:0 0 14px;font-size:13.5px}.sheet input{border:1.5px solid var(--line-strong);background:var(--surface-3);width:100%;color:var(--ink);border-radius:13px;margin-bottom:12px;padding:13px 14px;font-size:16px}.sheet input:focus{border-color:var(--accent);outline:none}.swatches{gap:10px;margin-bottom:16px;display:flex}.sw{cursor:pointer;border:3px solid #0000;border-radius:50%;width:34px;height:34px}.sw[aria-pressed=true]{border-color:var(--ink)}.sheet .row{gap:10px;display:flex}.sheet button.primary{background:var(--accent);color:var(--on-accent);cursor:pointer;border:none;border-radius:14px;flex:1;padding:14px;font-size:16px;font-weight:750}.sheet button.ghost{border:1.5px solid var(--line-strong);color:var(--ink-soft);cursor:pointer;background:0 0;border-radius:14px;padding:14px 18px;font-size:16px;font-weight:650}.auth{min-height:100dvh;max-width:var(--maxw);justify-content:center;align-items:center;margin:0 auto;padding:24px;display:flex}.auth-card{background:var(--surface);border:1px solid var(--line);width:100%;box-shadow:var(--shadow);border-radius:24px;padding:26px 22px 24px}.auth-brand{margin-bottom:20px;font-size:22px}.auth-card h1{letter-spacing:-.03em;margin:0 0 6px;font-size:24px;font-weight:800}.auth-card p{color:var(--ink-soft);margin:0 0 18px;font-size:14px;line-height:1.5}.auth-card input{border:1.5px solid var(--line-strong);background:var(--surface-3);width:100%;color:var(--ink);border-radius:14px;padding:14px 15px;font-size:16px}.auth-card input:focus{border-color:var(--accent);outline:none}.auth-card input.code-input{letter-spacing:.18em;text-align:center;font-variant-numeric:tabular-nums;font-size:24px;font-weight:750}.auth-error{color:var(--down);margin-top:10px;font-size:13px;font-weight:600}.auth-btn{background:var(--accent);width:100%;color:var(--on-accent);cursor:pointer;border:none;border-radius:14px;margin-top:14px;padding:15px;font-size:16px;font-weight:750;transition:filter .1s,opacity .1s}.auth-btn:disabled{opacity:.45;cursor:default}.auth-btn:not(:disabled):active{filter:brightness(1.06)}.auth-link{width:100%;color:var(--ink-soft);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;margin-top:12px;font-size:13.5px;font-weight:600;text-decoration:underline;display:block}.account{margin-top:6px}.account button{color:var(--ink-faint)}.hidden{display:none!important}
