@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_3e02c4b2-module__3qanGa__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_3e02c4b2-module__3qanGa__variable{--font-ui:"Inter", "Inter Fallback"}
@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/13bf9871fe164e7f-s.2f7nqdagzwx2-.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/cc545e633e20c56d-s.176arc174-8zp.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/71b036adf157cdcf-s.0bp8oijd_gu96.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/89b21bb081cb7469-s.1fby2rem9ngyr.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/3fe682a82f50d426-s.0vfdmo25voy_0.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(../media/70bc3e132a0a741e-s.p.3t6q91iet4nsy.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Fallback;src:local(Arial);ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.0%;size-adjust:134.59%}.jetbrains_mono_cf76f771-module__bHCMrG__className{font-family:JetBrains Mono,JetBrains Mono Fallback;font-style:normal}.jetbrains_mono_cf76f771-module__bHCMrG__variable{--font-mono:"JetBrains Mono", "JetBrains Mono Fallback"}
:root{--bg:#0b1220;--surface:#111b2f;--surface-2:#16233c;--surface-3:#0d1526;--border:#22314f;--border-strong:#2e4166;--text:#e9eff8;--text-muted:#90a4c4;--text-faint:#63779a;--accent:#5b8cff;--accent-hover:#7aa2ff;--accent-contrast:#061024;--accent-soft:#5b8cff21;--accent-2:#7c6cff;--accent-2-soft:#7c6cff24;--win:#2fd18a;--win-soft:#2fd18a24;--loss:#f2565f;--loss-soft:#f2565f24;--warn:#e8a33d;--warn-soft:#e8a33d24;--info:#58a6ff;--info-soft:#58a6ff1f;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 14px #0006;--shadow-lg:0 12px 32px #00000080;--glow:0 0 0 3px var(--accent-soft);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-mode=donker]{--bg:#0f1216;--surface:#171b21;--surface-2:#1e242c;--surface-3:#0c0f13;--border:#2a323c;--border-strong:#3a4552;--text:#e7ecf3;--text-muted:#98a4b5;--text-faint:#6b7787;--win:#2fd18a;--win-soft:#2fd18a24;--loss:#f2565f;--loss-soft:#f2565f24;--warn:#e8a33d;--warn-soft:#e8a33d24;--info:#58a6ff;--info-soft:#58a6ff1f;--shadow-sm:0 1px 2px #0006;--shadow-md:0 4px 14px #0006;--shadow-lg:0 12px 32px #00000080;--glow:0 0 0 3px var(--accent-soft);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-mode=licht]{--bg:#f4f6f9;--surface:#fff;--surface-2:#eaeff5;--surface-3:#f8fafc;--border:#dce3ec;--border-strong:#c2ccda;--text:#151b24;--text-muted:#566375;--text-faint:#808c9d;--win:#16855a;--win-soft:#16855a1f;--loss:#c22f3c;--loss-soft:#c22f3c1c;--warn:#a8690c;--warn-soft:#a8690c1f;--info:#2f5fd8;--info-soft:#2f5fd81a;--shadow-sm:0 1px 2px #14233c12;--shadow-md:0 4px 14px #14233c17;--shadow-lg:0 12px 32px #14233c21;--glow:0 0 0 3px var(--accent-soft);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-mode=donker][data-palette=blauw]{--bg:#0b1220;--surface:#111b2f;--surface-2:#16233c;--surface-3:#0d1526;--border:#22314f;--border-strong:#2e4166;--text:#e9eff8;--text-muted:#90a4c4;--text-faint:#63779a;--accent:#5b8cff;--accent-hover:#7aa2ff;--accent-contrast:#061024;--accent-soft:#5b8cff21;--accent-2:#7c6cff;--accent-2-soft:#7c6cff24}[data-mode=licht][data-palette=blauw]{--bg:#f5f7fb;--surface-2:#eef2f8;--border:#dbe3ee;--border-strong:#c3cfe0;--accent:#2f5fd8;--accent-hover:#2450c4;--accent-contrast:#fff;--accent-soft:#2f5fd81a;--accent-2:#5b46c9;--accent-2-soft:#5b46c91a}[data-mode=donker][data-palette=emerald]{--bg:#091412;--surface:#0f1d19;--surface-2:#142722;--surface-3:#071210;--border:#1e332d;--border-strong:#2b473f;--text:#e6f2ee;--text-muted:#8fa9a2;--text-faint:#647d77;--accent:#14b8a6;--accent-hover:#2dd4bf;--accent-contrast:#04211d;--accent-soft:#14b8a624;--accent-2:#38bdf8;--accent-2-soft:#38bdf824;--win:#a3e635;--win-soft:#a3e63526}[data-mode=licht][data-palette=emerald]{--bg:#f2f8f6;--surface-2:#e6f2ee;--surface-3:#f7fbfa;--border:#cfe3dc;--border-strong:#b2cec5;--accent:#0f766e;--accent-hover:#115e59;--accent-contrast:#fff;--accent-soft:#0f766e1a;--accent-2:#0369a1;--accent-2-soft:#0369a11a;--win:#4d7c0f;--win-soft:#4d7c0f1f}[data-mode=donker][data-palette=violet]{--bg:#120e1c;--surface:#1a1526;--surface-2:#221b31;--surface-3:#0e0b16;--border:#2f2542;--border-strong:#423356;--text:#efeaf8;--text-muted:#a598bd;--text-faint:#786a91;--accent:#a78bfa;--accent-hover:#c4b5fd;--accent-contrast:#150c2b;--accent-soft:#a78bfa24;--accent-2:#6ea8fe;--accent-2-soft:#6ea8fe24}[data-mode=licht][data-palette=violet]{--bg:#f7f5fc;--surface-2:#f0ecfa;--surface-3:#faf8fe;--border:#e2dcf1;--border-strong:#cbc0e4;--accent:#6d28d9;--accent-hover:#5b21b6;--accent-contrast:#fff;--accent-soft:#6d28d91a;--accent-2:#2563eb;--accent-2-soft:#2563eb1a}[data-mode=donker][data-palette=slate]{--accent:#94a3b8;--accent-hover:#cbd5e1;--accent-contrast:#0f1216;--accent-soft:#94a3b826;--accent-2:#64748b;--accent-2-soft:#64748b2e}[data-mode=licht][data-palette=slate]{--accent:#475569;--accent-hover:#334155;--accent-contrast:#fff;--accent-soft:#4755691a;--accent-2:#94a3b8;--accent-2-soft:#94a3b829}:root{--r-sm:6px;--r-md:10px;--r-lg:14px;--r-pill:999px;--r-flat:3px;--sidebar-w:236px;--content-max:1460px;--bottomnav-h:60px;--ease:cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-ui), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.5}.mono,.num,td.num,.stat-v,.kpi-v,.dash-v,.metric-v{font-family:var(--font-mono), ui-monospace, Menlo, monospace;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}h1,h2,h3,h4{letter-spacing:-.011em;margin:0;font-weight:650;line-height:1.25}h1{font-size:21px}h2{font-size:17px}h3{font-size:14px}p{margin:0}a{color:var(--accent)}.sub{color:var(--text-muted);margin:0;font-size:12.5px}.eyebrow{letter-spacing:.09em;text-transform:uppercase;color:var(--text-faint);font-size:10.5px;font-weight:700}.pos{color:var(--win)}.neg{color:var(--loss)}.zero{color:var(--text-muted)}::selection{background:var(--accent-soft)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--r-sm)}.shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);min-height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;gap:4px;height:100vh;padding:18px 12px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;padding:4px 8px 16px;display:flex}.brand-mark{background:linear-gradient(150deg, var(--accent), var(--accent-2));width:30px;height:30px;box-shadow:var(--shadow-sm);border-radius:8px;flex:none;place-items:center;display:grid}.brand-name{letter-spacing:-.01em;font-size:13.5px;font-weight:700}.brand-sub{color:var(--text-faint);font-size:10.5px}.nav-group{flex-direction:column;gap:2px;display:flex}.nav-label{letter-spacing:.09em;text-transform:uppercase;color:var(--text-faint);padding:14px 10px 6px;font-size:10px;font-weight:700}.nav-item{border-radius:var(--r-md);width:100%;color:var(--text-muted);font:inherit;text-align:left;cursor:pointer;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;align-items:center;gap:10px;padding:8px 10px;font-size:13.5px;font-weight:550;display:flex}.nav-item:hover{background:var(--surface-2);color:var(--text)}.nav-item.active{background:var(--accent-soft);color:var(--accent);font-weight:650}.nav-item .ico{flex:none;place-items:center;display:grid}.nav-item .count{font-family:var(--font-mono), monospace;color:var(--text-faint);margin-left:auto;font-size:11px}.nav-item.active .count{color:var(--accent)}.sidebar-foot{flex-direction:column;gap:8px;margin-top:auto;display:flex}.side-user{border-radius:var(--r-md);background:var(--surface-2);align-items:center;gap:9px;min-width:0;padding:9px 10px;display:flex}.avatar{border-radius:var(--r-pill);background:var(--accent-soft);width:26px;height:26px;color:var(--accent);text-transform:uppercase;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid}.side-user .who{min-width:0}.side-user .who .nm{text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;display:block;overflow:hidden}.side-user .who .rl{color:var(--text-faint);font-size:10.5px;display:block}.main{flex-direction:column;min-width:0;display:flex}.topbar{z-index:30;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);align-items:center;gap:12px;padding:12px 22px;display:flex;position:sticky;top:0}.topbar-title{flex:1;min-width:0}.topbar-title h1{text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.topbar-title .sub{font-size:11.5px}.topbar-actions{flex:none;align-items:center;gap:6px;display:flex}.content{max-width:var(--content-max);flex:1;width:100%;margin:0 auto;padding:22px}.bottomnav{display:none}.icon-btn{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface);width:34px;height:34px;color:var(--text-muted);cursor:pointer;transition:.15s var(--ease);place-items:center;display:grid}.icon-btn:hover{color:var(--text);border-color:var(--border-strong);background:var(--surface-2)}.icon-btn.ghost{background:0 0;border-color:#0000}.icon-btn.ghost:hover{background:var(--surface-2);border-color:var(--border)}.menu-wrap{position:relative}.menu{z-index:60;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);min-width:232px;box-shadow:var(--shadow-lg);animation:menu-in .14s var(--ease);padding:6px;position:absolute;top:calc(100% + 8px);right:0}@keyframes menu-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.menu-head{letter-spacing:.09em;text-transform:uppercase;color:var(--text-faint);padding:8px 10px 6px;font-size:10px;font-weight:700}.menu-item{border-radius:var(--r-sm);width:100%;color:var(--text);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:10px;padding:8px 10px;font-size:13px;display:flex}.menu-item:hover{background:var(--surface-2)}.menu-item.active{color:var(--accent);font-weight:600}.menu-sep{background:var(--border);height:1px;margin:6px 4px}.swatch-dot{border-radius:var(--r-pill);border:1px solid var(--border-strong);flex:none;width:16px;height:16px}.seg{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);gap:2px;margin:0 4px 4px;padding:3px;display:flex}.seg-item{border-radius:var(--r-sm);color:var(--text-muted);font:inherit;cursor:pointer;transition:.15s var(--ease);background:0 0;border:0;flex:1;padding:6px 10px;font-size:12.5px;font-weight:600}.seg-item:hover{color:var(--text)}.seg-item.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.card-head{border-bottom:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.card-head h2{font-size:14px}.card-body{padding:16px}.card-body.flush{padding:0}.section{margin-bottom:22px}.section:last-child{margin-bottom:0}.section-head{margin-bottom:12px}.section-head h2{margin-bottom:2px;font-size:15px}.btn{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);color:var(--text);font:inherit;cursor:pointer;transition:.15s var(--ease);white-space:nowrap;justify-content:center;align-items:center;gap:7px;padding:8px 14px;font-size:13px;font-weight:550;display:inline-flex}.btn:hover{border-color:var(--border-strong);background:var(--surface)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.55;cursor:default;transform:none}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);font-weight:650}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.btn-danger{color:var(--loss);border-color:var(--border)}.btn-danger:hover{background:var(--loss-soft);border-color:var(--loss)}.btn-ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn-ghost:hover{background:var(--surface-2);color:var(--text);border-color:var(--border)}.btn-sm{border-radius:var(--r-sm);padding:5px 10px;font-size:12px}.btn-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.form-grid{grid-template-columns:repeat(auto-fill,minmax(158px,1fr));gap:13px 14px;display:grid}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field.wide{grid-column:1/-1}label{letter-spacing:.04em;color:var(--text-muted);font-size:11px;font-weight:650}input,select,textarea{background:var(--surface-3);width:100%;color:var(--text);border:1px solid var(--border);border-radius:var(--r-sm);transition:border-color .15s var(--ease), box-shadow .15s var(--ease);padding:8px 10px;font-family:inherit;font-size:13.5px}input[type=number]{font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums}@media (pointer:coarse){input,select,textarea{font-size:16px}}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:var(--glow);outline:none}textarea{resize:vertical;min-height:64px;line-height:1.5}select{cursor:pointer}.unit-row{gap:6px;display:flex}.unit-row input{flex:1;min-width:0}.unit-row select{flex:none;width:62px;padding-inline:7px}.unit-hint{color:var(--accent);min-height:14px;font-size:11px}.hint{color:var(--text-muted);font-size:11.5px}.form-actions{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:8px;margin-top:16px;padding-top:14px;display:flex}.computed{border:1px dashed var(--border-strong);border-radius:var(--r-sm);background:var(--surface-3);font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;padding:8px 10px;font-size:13px;font-weight:600}.computed.auto{border-style:solid;border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.computed.warn{border-style:solid;border-color:var(--warn);color:var(--warn);background:var(--warn-soft)}.notes-field{background:var(--surface-3);border:1px solid var(--border);border-radius:var(--r-md);padding:14px}.notes-field textarea{min-height:150px;line-height:1.6}.msg{border-radius:var(--r-md);border:1px solid #0000;margin-bottom:12px;padding:10px 12px;font-size:12.5px}.msg-err{background:var(--loss-soft);color:var(--loss);border-color:var(--loss)}.msg-ok{background:var(--win-soft);color:var(--win);border-color:var(--win)}.msg-info{background:var(--info-soft);color:var(--text-muted);border-color:var(--border-strong)}.msg-warn{background:var(--warn-soft);color:var(--warn);border-color:var(--warn)}.note{border-radius:var(--r-md);background:var(--info-soft);border:1px solid var(--border);border-left:3px solid var(--info);color:var(--text-muted);margin-bottom:14px;padding:10px 12px;font-size:12px;line-height:1.5}.note b{color:var(--text)}.pill{border-radius:var(--r-pill);white-space:nowrap;align-items:center;gap:4px;padding:2px 9px;font-size:11px;font-weight:650;display:inline-flex}.pill-win{background:var(--win-soft);color:var(--win)}.pill-loss{background:var(--loss-soft);color:var(--loss)}.pill-warn{background:var(--warn-soft);color:var(--warn)}.pill-accent{background:var(--accent-soft);color:var(--accent)}.pill-neutral{background:var(--surface-2);color:var(--text-muted)}.table-wrap{overflow-x:auto}table{border-collapse:collapse;white-space:nowrap;width:100%;font-size:12.5px}th,td{text-align:left;border-bottom:1px solid var(--border);padding:9px 12px}th{background:var(--surface-2);color:var(--text-muted);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--border-strong);font-size:10.5px;font-weight:700;position:sticky;top:0}tbody tr{transition:background .12s var(--ease)}tbody tr:hover{background:var(--surface-2)}tbody tr:last-child td{border-bottom:0}td.num,th.num{text-align:right}.empty{text-align:center;color:var(--text-muted);padding:40px 20px;font-size:13px}.empty-title{color:var(--text);margin-bottom:4px;font-weight:600}.tabs{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);gap:2px;padding:4px;display:flex;overflow-x:auto}.tab{border-radius:var(--r-sm);min-width:96px;color:var(--text-muted);font:inherit;cursor:pointer;white-space:nowrap;transition:.15s var(--ease);background:0 0;border:0;flex:1;padding:8px 14px;font-size:13px;font-weight:600}.tab:hover{color:var(--text)}.tab.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.range{--pos:50%;flex-direction:column;gap:7px;display:flex}.range-track{border-radius:var(--r-sm);background:var(--surface-3);border:1px solid var(--border);height:34px;position:relative;overflow:hidden}.range-danger{background:linear-gradient(90deg, var(--loss-soft), transparent);border-right:1px solid var(--loss-soft);position:absolute;inset:0 auto 0 0}.range-fill{background:var(--accent-soft);border-right:2px solid var(--accent);transition:width .5s var(--ease), left .5s var(--ease);position:absolute;top:0;bottom:0}.range-fill.is-win{background:var(--win-soft);border-right-color:var(--win)}.range-fill.is-loss{background:var(--loss-soft);border-right-color:var(--loss)}.range-zero{border-left:1px dashed var(--border-strong);width:0;position:absolute;top:0;bottom:0}.range-marker{top:50%;left:var(--pos);border-radius:var(--r-pill);background:var(--surface);font-family:var(--font-mono), monospace;white-space:nowrap;box-shadow:var(--shadow-sm);transition:left .5s var(--ease);border:1px solid;padding:2px 8px;font-size:11px;font-weight:700;position:absolute;transform:translate(-50%,-50%)}.range-ends{color:var(--text-muted);justify-content:space-between;gap:10px;font-size:10.5px;display:flex}.range-ends .end{flex-direction:column;gap:1px;min-width:0;display:flex}.range-ends .end.right{text-align:right}.range-ends .lbl{letter-spacing:.07em;text-transform:uppercase;color:var(--text-faint);font-size:9.5px;font-weight:700}.range-ends .val{font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;font-weight:650}.range.compact .range-track{height:24px}.range.compact .range-marker{padding:1px 6px;font-size:10px}.bar{border-radius:var(--r-pill);background:var(--surface-3);border:1px solid var(--border);height:7px;overflow:hidden}.bar>i{height:100%;transition:width .5s var(--ease);display:block}.kpi-grid{grid-template-columns:repeat(auto-fill,minmax(146px,1fr));gap:10px;display:grid}.kpi{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:12px 13px}.kpi-k{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:10.5px;font-weight:700}.kpi-v{letter-spacing:-.02em;margin-top:3px;font-size:21px;font-weight:700}.kpi-n{color:var(--text-faint);margin-top:2px;font-size:10.5px}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px;display:grid}.stat{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:12px 13px}.stat-k{letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);font-size:10.5px;font-weight:700}.stat-v{letter-spacing:-.02em;margin-top:3px;font-size:20px;font-weight:700}.stat-n{color:var(--text-faint);margin-top:2px;font-size:10.5px;line-height:1.4}.stat.wide{grid-column:span 2}.stat.widest{grid-column:span 3}.stat .range{margin-top:2px}.split{grid-template-columns:1fr 1fr;gap:12px;display:grid}.box{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:13px}.box h3{margin-bottom:9px;font-size:12.5px}.box-row{border-bottom:1px solid var(--border);justify-content:space-between;gap:10px;padding:5px 0;font-size:12px;display:flex}.box-row:last-child{border-bottom:0}.box-row>span:first-child{color:var(--text-muted)}.box-row>span:last-child{font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;font-weight:650}.chart-wrap{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);padding:14px}.chart-wrap h3{margin-bottom:10px;font-size:12.5px}.chart-wrap svg{width:100%;height:230px;display:block}.acc-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px;display:grid}.acc-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);transition:.18s var(--ease);flex-direction:column;gap:11px;padding:15px;display:flex}.acc-card.clickable{cursor:pointer}.acc-card.clickable:hover{border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-2px)}.acc-top{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.acc-card h3{font-size:15px}.acc-badges{flex-wrap:wrap;gap:5px;margin-top:5px;display:flex}.acc-meta{color:var(--text-muted);flex-wrap:wrap;gap:4px 14px;font-size:11.5px;display:flex}.acc-meta b{color:var(--text);font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;font-weight:650}.acc-figures{border-top:1px solid var(--border);justify-content:space-between;gap:10px;padding-top:11px;display:flex}.acc-fig .k{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);font-size:10px;font-weight:700}.acc-fig .v{font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;margin-top:1px;font-size:15px;font-weight:700}.acc-fig.right{text-align:right}.acc-notes{color:var(--text-muted);background:var(--surface-3);border:1px solid var(--border);border-radius:var(--r-sm);white-space:pre-wrap;padding:8px 10px;font-size:11.5px}.acc-actions{gap:7px;display:flex}.hl-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px;display:grid}.hl{background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--r-md);padding:12px 13px}.hl .k{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);font-size:10.5px;font-weight:700}.hl .v{margin-top:3px;font-size:14px;font-weight:650}.hl .n{color:var(--text-faint);margin-top:1px;font-size:10.5px}.home{flex-direction:column;gap:22px;display:flex}.home .section{margin-bottom:0}.home-section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.hero{border:1px solid var(--border);border-radius:var(--r-lg);background:radial-gradient(120% 140% at 100% 0%, var(--accent-soft), transparent 58%), radial-gradient(90% 120% at 0% 100%, var(--accent-2-soft), transparent 55%), var(--surface);box-shadow:var(--shadow-md);padding:22px 24px;position:relative;overflow:hidden}.hero-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:18px;display:flex}.hero-greet{letter-spacing:-.015em;font-size:21px;font-weight:650}.hero-date{color:var(--text-muted);margin-top:2px;font-size:12.5px}.hero-body{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.hero-figure{flex-direction:column;min-width:0;display:flex}.hero-label{letter-spacing:.09em;text-transform:uppercase;color:var(--text-faint);font-size:10.5px;font-weight:700}.hero-value{font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;letter-spacing:-.035em;margin-top:2px;font-size:46px;font-weight:700;line-height:1.05}.hero-sub{color:var(--text-muted);margin-top:4px;font-size:12px}.hero-chart{flex:1;min-width:200px;max-width:380px}.sparkline{width:100%;height:64px;display:block}.hero-stats{border-top:1px solid var(--border);flex-wrap:wrap;gap:10px 28px;margin-top:20px;padding-top:16px;display:flex}.hero-stat{flex-direction:column;gap:1px;display:flex}.hero-stat .k{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);font-size:10px;font-weight:700}.hero-stat .v{font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;font-size:17px;font-weight:700}.hero-note{color:var(--text-faint);margin-top:12px;font-size:11.5px}.activity{border:1px solid var(--accent);border-radius:var(--r-lg);background:var(--accent-soft);flex-wrap:wrap;align-items:center;gap:18px;padding:15px 18px;display:flex}.activity.is-done{border-color:var(--border);background:var(--surface)}.activity-main{flex:1;min-width:190px}.activity-title{font-size:14.5px;font-weight:650}.activity-sub{color:var(--text-muted);margin-top:2px;font-size:12px}.activity-week{flex:none;gap:7px;display:flex}.activity-week .day{flex-direction:column;align-items:center;gap:4px;display:flex}.activity-week .day i{border-radius:var(--r-sm);background:var(--surface-3);border:1px solid var(--border);width:18px;height:18px;display:block}.activity-week .day.on i{background:var(--accent);border-color:var(--accent)}.activity-week .day em{color:var(--text-faint);text-transform:uppercase;font-size:9.5px;font-style:normal;font-weight:700}.cta-strip{background:var(--surface);border:1px dashed var(--border-strong);border-radius:var(--r-lg);flex-wrap:wrap;align-items:center;gap:14px;padding:15px 18px;display:flex}.cta-icon{border-radius:var(--r-md);background:linear-gradient(140deg, var(--accent-soft), var(--accent-2-soft));width:36px;height:36px;color:var(--accent);flex:none;place-items:center;display:grid}.cta-main{flex:1;min-width:190px}.cta-title{font-size:14px;font-weight:650}.cta-sub{color:var(--text-muted);margin-top:2px;font-size:12px}.goal-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px;display:grid}.goal-wrap{flex-direction:column;gap:8px;display:flex}.goal-actions{flex-wrap:wrap;gap:7px;display:flex}.goal-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);width:100%;box-shadow:var(--shadow-sm);font:inherit;color:var(--text);text-align:left;flex-direction:column;gap:8px;padding:15px;display:flex}.goal-card.clickable{cursor:pointer;transition:.15s var(--ease)}.goal-card.clickable:hover{border-color:var(--accent);box-shadow:var(--shadow-md)}.goal-card.done{border-color:var(--win);background:linear-gradient(160deg, var(--win-soft), transparent 70%), var(--surface)}.goal-card.lg{background:linear-gradient(155deg, var(--accent-2-soft), transparent 62%), var(--surface);padding:18px}.goal-card-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.goal-scope{letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:9.5px;font-weight:700;overflow:hidden}.goal-done{color:var(--win);flex:none;align-items:center;gap:4px;font-size:10.5px;font-weight:700;display:inline-flex}.goal-title{font-size:14px;font-weight:650;line-height:1.3}.goal-card.lg .goal-title{font-size:15.5px}.goal-figure{justify-content:space-between;align-items:baseline;gap:10px;display:flex}.goal-now{font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;font-size:18px;font-weight:700}.goal-card.lg .goal-now{font-size:22px}.goal-pct{font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;color:var(--accent);font-size:12.5px;font-weight:700}.goal-type{color:var(--text-faint);font-size:10.5px}.gate-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px;display:grid}.gate{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);font:inherit;color:var(--text);text-align:left;cursor:pointer;transition:.18s var(--ease);flex-direction:column;gap:12px;padding:15px;display:flex}.gate:hover{border-color:var(--accent);box-shadow:var(--shadow-md);transform:translateY(-2px)}.gate-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.gate-name{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:650;overflow:hidden}.gate-tag{border-radius:var(--r-pill);background:var(--surface-2);color:var(--text-muted);font-family:var(--font-mono), monospace;flex:none;align-items:center;gap:4px;padding:2px 8px;font-size:10px;font-weight:700;display:inline-flex}.gate-figure{flex-direction:column;gap:2px;display:flex}.gate-v{font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;letter-spacing:-.02em;font-size:20px;font-weight:700}.gate-meta{color:var(--text-faint);font-size:11px}.gate-bar{border-radius:var(--r-pill);background:var(--surface-3);height:4px;display:block;overflow:hidden}.gate-bar>i{background:var(--accent);height:100%;display:block}.link-btn{font:inherit;font-size:inherit;color:var(--accent);cursor:pointer;text-align:left;background:0 0;border:0;padding:0}.link-btn:hover{text-decoration:underline}.trade-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start;gap:16px;display:grid}.live-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:12px;padding:15px;display:flex;position:sticky;top:74px}.live-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.live-head h3{font-size:13px}.metric{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:10px;padding:8px 0;display:flex}.metric:last-of-type{border-bottom:0}.metric-k{color:var(--text-muted);font-size:11.5px}.metric-v{letter-spacing:-.01em;font-size:15px;font-weight:700}.metric-v.lg{font-size:19px}.metric-sub{color:var(--text-faint);font-size:10.5px}.live-cta{margin-top:2px}.live-group{border-top:1px solid var(--border);padding-top:12px}.live-group:first-of-type{border-top:0;padding-top:0}.live-group>.eyebrow{margin-bottom:6px;display:block}.live-group .metric:last-of-type{border-bottom:0}.narrow{max-width:660px;margin:0 auto}.form-section{border-top:1px solid var(--border);margin-top:18px;padding-top:18px}.form-section:first-of-type{border-top:0;margin-top:0;padding-top:0}.form-section-head{margin-bottom:12px}.form-section-head h3{font-size:13px}.form-section-head .sub{margin-top:2px;font-size:11.5px}.minor-row{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);flex-wrap:wrap;align-items:center;gap:10px;margin-top:16px;padding:12px 14px;display:flex}.minor-row label{flex:none}.minor-row input{flex:none;width:120px}.minor-row .hint{flex:1;min-width:200px}.cl-list{flex-direction:column;gap:6px;display:flex}.cl-row{align-items:center;gap:8px;display:flex}.cl-num{text-align:right;width:22px;font-family:var(--font-mono), monospace;color:var(--text-faint);flex:none;font-size:11px;font-weight:700}.cl-row input{flex:1;min-width:0}.cl-actions{flex:none;gap:2px;display:flex}.cl-actions .icon-btn{width:28px;height:28px}.cl-actions .icon-btn:disabled{opacity:.3;cursor:default}.modal-backdrop{z-index:80;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:fade-in .15s var(--ease);background:#0000008c;place-items:center;padding:18px;display:grid;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-lg);width:100%;max-width:520px;max-height:min(82vh,720px);box-shadow:var(--shadow-lg);animation:modal-in .18s var(--ease);flex-direction:column;display:flex}@keyframes modal-in{0%{opacity:0;transform:translateY(8px)scale(.99)}to{opacity:1;transform:none}}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:15px 16px;display:flex}.modal-head h2{font-size:15px}.modal-body{flex:1;padding:14px 16px;overflow-y:auto}.modal-foot{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:12px 16px;display:flex}.cl-check{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);letter-spacing:0;color:var(--text);text-transform:none;cursor:pointer;transition:.15s var(--ease);align-items:flex-start;gap:10px;margin-bottom:5px;padding:9px 10px;font-size:13px;font-weight:400;display:flex}.cl-check:hover{border-color:var(--border-strong)}.cl-check input[type=checkbox]{width:auto;accent-color:var(--accent);flex:none;margin:1px 0 0}.cl-check-num{font-family:var(--font-mono), monospace;color:var(--text-faint);flex:none;min-width:14px;font-size:11px;font-weight:700}.cl-check-text{flex:1;min-width:0;line-height:1.45}.cl-check.done{background:var(--win-soft);border-color:var(--win)}.cl-check.done .cl-check-text{color:var(--text-muted);text-decoration:line-through}.cl-notes{background:var(--surface-3);border:1px solid var(--border);border-left:3px solid var(--warn);border-radius:var(--r-md);white-space:pre-wrap;color:var(--text-muted);margin-top:12px;padding:12px;font-size:12.5px;line-height:1.55}.rule-sec{margin-bottom:18px}.rule-sec:last-of-type{margin-bottom:0}.rule-sec h3{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--border);margin-bottom:8px;padding-bottom:5px;font-size:11px;font-weight:700}.rule-sec.remember{background:var(--warn-soft);border-left:3px solid var(--warn);border-radius:var(--r-md);padding:12px 14px}.rule-sec.remember h3{color:var(--warn);border-bottom-color:var(--border)}ol.steps{counter-reset:step;margin:0;padding:0;list-style:none}ol.steps li{counter-increment:step;padding:5px 0 5px 32px;font-size:13px;position:relative}ol.steps li:before{content:counter(step);border-radius:var(--r-pill);background:var(--surface-2);border:1px solid var(--border);width:21px;height:21px;color:var(--text-muted);font-family:var(--font-mono), monospace;place-items:center;font-size:10.5px;font-weight:700;display:grid;position:absolute;top:5px;left:0}ul.reminders{margin:0;padding-left:18px;font-size:13px}ul.reminders li{margin:5px 0}.goal{background:var(--accent-soft);border-left:3px solid var(--accent);border-radius:var(--r-md);margin-top:14px;padding:12px 14px;font-size:13px;font-weight:600}textarea.rules-edit{min-height:340px;font-family:var(--font-mono), monospace;font-size:12.5px;line-height:1.6}.link-box{background:var(--surface-3);border:1px solid var(--border);border-radius:var(--r-sm);flex-wrap:wrap;gap:7px;padding:10px;display:flex}.link-box label{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-sm);letter-spacing:0;color:var(--text);cursor:pointer;transition:.15s var(--ease);align-items:center;gap:7px;padding:6px 10px;font-size:12.5px;font-weight:500;display:flex}.link-box label:hover{border-color:var(--border-strong)}.link-box label:has(input:checked){background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.link-box input[type=checkbox]{width:auto;accent-color:var(--accent);margin:0}.link-box .none{color:var(--text-muted);font-size:12px}.strat-links{flex-wrap:wrap;gap:5px;display:flex}.toast{z-index:90;background:var(--surface);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--r-md);box-shadow:var(--shadow-lg);animation:toast-in .22s var(--ease);align-items:center;gap:9px;padding:11px 16px;font-size:13px;font-weight:550;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,10px)}to{opacity:1;transform:translate(-50%)}}.toast .dot{background:var(--win);border-radius:50%;flex:none;width:7px;height:7px}.auth-wrap{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);width:100%;max-width:380px;box-shadow:var(--shadow-lg);padding:28px}.auth-brand{align-items:center;gap:11px;margin-bottom:18px;display:flex}.label-row{align-items:center;gap:5px;display:inline-flex}.label-row label{display:inline}.infotip{line-height:0;display:inline-flex;position:relative}.infotip-btn{border-radius:var(--r-pill);width:17px;height:17px;color:var(--text-faint);cursor:pointer;transition:.15s var(--ease);background:0 0;border:0;place-items:center;padding:0;display:grid}.infotip-btn:hover,.infotip-btn.open{color:var(--accent);background:var(--accent-soft)}.infotip-pop{z-index:70;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--r-md);width:max-content;max-width:min(300px,78vw);box-shadow:var(--shadow-lg);letter-spacing:0;text-transform:none;color:var(--text-muted);white-space:normal;animation:menu-in .14s var(--ease);padding:10px 12px;font-size:12px;font-weight:400;line-height:1.5;position:absolute;top:calc(100% + 7px);left:0}.field:nth-child(3n) .infotip-pop,.form-grid>.field:last-child .infotip-pop{left:auto;right:0}.stepper-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:10px;display:flex}.stepper-dots{align-items:center;gap:8px;display:flex}.stepper-dot{border-radius:var(--r-pill);border:1px solid var(--border);background:var(--surface-2);width:27px;height:27px;color:var(--text-faint);font-family:var(--font-mono), monospace;cursor:pointer;transition:.18s var(--ease);place-items:center;font-size:11.5px;font-weight:700;display:grid}.stepper-dot:hover{border-color:var(--border-strong);color:var(--text)}.stepper-dot.done{background:var(--accent-soft);border-color:var(--accent);color:var(--accent)}.stepper-dot.current{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);box-shadow:var(--glow)}.stepper-count{letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint);font-size:11px;font-weight:700}.stepper-bar{border-radius:var(--r-pill);background:var(--surface-3);border:1px solid var(--border);height:4px;margin-bottom:20px;overflow:hidden}.stepper-bar>i{background:linear-gradient(90deg, var(--accent), var(--accent-2));height:100%;transition:width .3s var(--ease);display:block}.stepper-title{margin-bottom:16px}.stepper-title h3{font-size:15px}.stepper-title .sub{margin-top:3px}.stepper-nav{border-top:1px solid var(--border);justify-content:space-between;gap:10px;margin-top:22px;padding-top:16px;display:flex}.verify-banner{background:var(--warn-soft);border:1px solid var(--warn);border-radius:var(--r-md);flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:18px;padding:11px 14px;display:flex}.verify-icon{color:var(--warn);flex:none;place-items:center;display:grid}.verify-main{flex-direction:column;flex:1;min-width:180px;display:flex}.verify-title{font-size:13px;font-weight:650}.verify-sub{color:var(--text-muted);font-size:11.5px}.chart-field{flex-direction:column;gap:10px;display:flex}.chart-drop{background:var(--surface-3);border:1px dashed var(--border-strong);border-radius:var(--r-md);width:100%;color:var(--text-muted);font:inherit;cursor:pointer;transition:.15s var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:22px 16px;font-size:13px;font-weight:550;display:flex}.chart-drop:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.chart-drop:disabled{opacity:.6;cursor:default}.chart-hint{color:var(--text-faint);font-size:11px;font-weight:400}.chart-preview{flex-direction:column;gap:9px;display:flex}.chart-thumb{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-3);cursor:zoom-in;width:100%;padding:0;display:block;overflow:hidden}.chart-thumb img{object-fit:contain;width:100%;max-height:260px;display:block}.chart-actions{flex-wrap:wrap;gap:8px;display:flex}.chart-modal{max-width:min(1100px,94vw)}.chart-modal-body{place-items:center;display:grid}.chart-modal-body img{object-fit:contain;border-radius:var(--r-sm);max-width:100%;max-height:74vh}.onboard{border:1px solid var(--border);border-radius:var(--r-lg);background:radial-gradient(90% 130% at 0% 0%, var(--accent-2-soft), transparent 58%), var(--surface);box-shadow:var(--shadow-sm);padding:18px 20px}.onboard-head{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px;display:flex}.onboard-head h2{font-size:16px}.onboard-count{font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;color:var(--accent);flex:none;font-size:14px;font-weight:700}.onboard-list{flex-direction:column;gap:8px;margin:14px 0 0;padding:0;list-style:none;display:flex}.onboard-step{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--r-md);align-items:center;gap:12px;padding:11px 13px;display:flex}.onboard-step.done{opacity:.62}.onboard-mark{border-radius:var(--r-pill);background:var(--surface-3);border:1px solid var(--border);width:25px;height:25px;color:var(--text-faint);font-family:var(--font-mono), monospace;flex:none;place-items:center;font-size:11px;font-weight:700;display:grid}.onboard-step.done .onboard-mark{background:var(--win-soft);border-color:var(--win);color:var(--win)}.onboard-main{flex-direction:column;flex:1;min-width:0;display:flex}.onboard-title{font-size:13.5px;font-weight:650}.onboard-step.done .onboard-title{color:var(--text-muted);text-decoration:line-through}.onboard-sub{color:var(--text-faint);font-size:11.5px}.chip{border-radius:var(--r-pill);white-space:nowrap;text-overflow:ellipsis;border:1px solid #0000;align-items:center;gap:5px;max-width:100%;padding:3px 9px;font-size:11.5px;font-weight:600;display:inline-flex;overflow:hidden}.chip.sm{padding:2px 7px;font-size:10.5px}.chip-neutral{background:var(--surface-2);color:var(--text-muted);border-color:var(--border)}.chip-loss{background:var(--loss-soft);color:var(--loss);border-color:var(--loss)}.chip-ghost{color:var(--text-muted);border:1px dashed var(--border-strong);cursor:pointer;font:inherit;background:0 0;font-size:11.5px;font-weight:600}.chip-ghost:hover{color:var(--accent);border-color:var(--accent);background:var(--accent-soft)}.chip button{color:inherit;opacity:.7;cursor:pointer;background:0 0;border:0;place-items:center;padding:0;display:grid}.chip button:hover{opacity:1}.taginput{flex-direction:column;gap:9px;display:flex}.tag-chips{flex-wrap:wrap;gap:6px;display:flex}.tag-add{gap:8px;display:flex}.tag-add input{flex:1;min-width:0}.tag-suggest{flex-wrap:wrap;gap:6px;display:flex}.tag-cell{white-space:normal;flex-wrap:wrap;gap:4px;max-width:200px;display:flex}.cal-layout{grid-template-columns:minmax(0,1fr) 280px;align-items:start;gap:16px;display:grid}.cal-side{position:sticky;top:74px}.cal-grid{grid-template-columns:repeat(7,1fr);gap:6px;display:grid}.cal-head{margin-bottom:6px}.cal-dow{text-align:center;letter-spacing:.07em;text-transform:uppercase;color:var(--text-faint);font-size:10px;font-weight:700}.cal-day{border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);min-height:72px;font:inherit;color:var(--text);text-align:left;cursor:pointer;transition:.15s var(--ease);flex-direction:column;align-items:flex-start;gap:2px;padding:7px 8px;display:flex}.cal-day:disabled{cursor:default;opacity:.55}.cal-day.out{opacity:.3}.cal-day.empty{background:var(--surface-3)}.cal-day.ok{background:var(--win-soft);border-color:var(--win)}.cal-day.broken{background:var(--loss-soft);border-color:var(--loss)}.cal-day:not(:disabled):hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.cal-day.selected{box-shadow:var(--glow);border-color:var(--accent)}.cal-num{font-family:var(--font-mono), monospace;color:var(--text-faint);font-size:11px;font-weight:700}.cal-r{font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;margin-top:auto;font-size:12.5px;font-weight:700}.cal-n{color:var(--text-faint);font-size:10px}.cal-daylist{flex-direction:column;gap:9px;display:flex}.cal-trade{border:1px solid var(--border);border-left:3px solid var(--border);border-radius:var(--r-md);background:var(--surface-2);align-items:flex-start;gap:12px;padding:11px 13px;display:flex}.cal-trade.ok{border-left-color:var(--win)}.cal-trade.broken{border-left-color:var(--loss)}.cal-trade-main{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.cal-trade-top{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.cal-trade-r,.cal-trade-money{font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;font-size:14px;font-weight:700}.cal-trade-tags{flex-wrap:wrap;gap:5px;display:flex}.cal-trade-notes{color:var(--text-muted);font-size:12px;line-height:1.5}.scope-row{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;display:flex}.journal-filters{border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:14px;padding:12px 16px;display:flex}.journal-filters .scope-row{margin-bottom:0}.journal-tagfilter{align-items:center;gap:8px;display:flex}.journal-tagfilter select{width:auto;min-width:140px}.journal-count{color:var(--text-faint);margin-left:auto;font-size:11.5px}.mistake-list{flex-direction:column;display:flex}.mistake-row{border-bottom:1px solid var(--border);padding:13px 16px}.mistake-row:last-child{border-bottom:0}.mistake-top{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:7px;display:flex}.mistake-label{font-size:13.5px;font-weight:650}.mistake-r{font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.mistake-bar{height:6px}.mistake-meta{color:var(--text-faint);flex-wrap:wrap;gap:14px;margin-top:7px;font-size:11px;display:flex}.dist-list{flex-direction:column;gap:7px;display:flex}.dist-row{align-items:center;gap:12px;display:flex}.dist-label{color:var(--text-muted);flex:0 0 96px;font-size:12.5px}.dist-track{border-radius:var(--r-pill);background:var(--surface-3);border:1px solid var(--border);flex:1;min-width:0;height:8px;display:block;overflow:hidden}.dist-track>i{height:100%;display:block}.dist-track .pos-bar{background:var(--win)}.dist-track .neg-bar{background:var(--loss)}.dist-value{text-align:right;min-width:62px;font-family:var(--font-mono), monospace;font-variant-numeric:tabular-nums;flex:none;font-size:12.5px;font-weight:700}.dist-n{text-align:right;min-width:24px;color:var(--text-faint);flex:none;font-size:11px}.details-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}.details-why{color:var(--text-muted);white-space:pre-wrap;margin-top:8px;font-size:12.5px;line-height:1.55}.details-chart{object-fit:contain;border:1px solid var(--border);border-radius:var(--r-md);background:var(--surface-3);width:100%;max-height:320px;display:block}@media (max-width:1023px){.shell{grid-template-columns:1fr}.sidebar{display:none}.content{padding:16px 14px calc(var(--bottomnav-h) + 26px)}.topbar{padding:11px 14px}.bottomnav{z-index:40;height:calc(var(--bottomnav-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:color-mix(in srgb, var(--surface) 94%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1px solid var(--border);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:0;right:0}.bn-item{color:var(--text-faint);font:inherit;cursor:pointer;transition:color .15s var(--ease);background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;font-size:10.5px;font-weight:600;display:flex}.bn-item.active{color:var(--accent)}.bn-item:active{background:var(--surface-2)}.trade-layout,.cal-layout{grid-template-columns:1fr}.cal-side{position:static}.cal-day{min-height:58px;padding:5px}.cal-grid{gap:4px}.details-grid{grid-template-columns:1fr}.live-panel{position:static}.split{grid-template-columns:1fr}.stat.widest{grid-column:1/-1}.acc-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}}@media (max-width:560px){.form-grid{grid-template-columns:1fr}.kpi-grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr))}.stat-grid{grid-template-columns:repeat(auto-fill,minmax(136px,1fr))}.kpi-v{font-size:18px}.stat-v{font-size:17px}.stat.wide,.stat.widest{grid-column:1/-1}.stepper-dot{width:24px;height:24px;font-size:11px}.stepper-dots{gap:6px}.onboard{padding:15px 14px}.onboard-step{gap:10px;padding:10px}.chart-thumb img{max-height:190px}.infotip-pop{max-width:74vw}.hero{padding:18px 16px}.hero-value{font-size:36px}.hero-stats{gap:10px 20px}.gate-grid{grid-template-columns:1fr 1fr}.goal-grid{grid-template-columns:1fr}.cal-day{min-height:50px}.cal-r{font-size:11px}.cal-n{display:none}.dist-label{flex-basis:74px;font-size:11.5px}.journal-filters{gap:10px;padding:11px 13px}.journal-count{margin-left:0}.activity-week .day i{width:15px;height:15px}.card-body{padding:13px}th,td{padding:8px 10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.acc-card.clickable:hover{transform:none}}
