:root{--bg:#f4f3ef;--surface:#fff;--raised:#ecebe6;--line:#dcdad3;--line-strong:#c7c4bb;--text:#14171c;--text-2:#626977;--text-3:#8b919c;--accent:#b9801d;--accent-ink:#fff;--accent-soft:#b9801d1f;--up:#1e8f66;--down:#c9463d;--up-soft:#1e8f661f;--down-soft:#c9463d1f;--primary:#14171c;--on-primary:#f4f3ef;--shadow:0 10px 30px #14171c1a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1217;--surface:#171b22;--raised:#1f242d;--line:#262c36;--line-strong:#38404d;--text:#eef0f4;--text-2:#98a1b0;--text-3:#6b7383;--accent:#e8b04b;--accent-ink:#14171c;--accent-soft:#e8b04b24;--up:#34c08e;--down:#e4655b;--up-soft:#34c08e24;--down-soft:#e4655b24;--primary:#eef0f4;--on-primary:#0f1217;--shadow:0 10px 30px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1217;--surface:#171b22;--raised:#1f242d;--line:#262c36;--line-strong:#38404d;--text:#eef0f4;--text-2:#98a1b0;--text-3:#6b7383;--accent:#e8b04b;--accent-ink:#14171c;--accent-soft:#e8b04b24;--up:#34c08e;--down:#e4655b;--up-soft:#34c08e24;--down-soft:#e4655b24;--primary:#eef0f4;--on-primary:#0f1217;--shadow:0 10px 30px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overscroll-behavior-y:none;margin:0;font:15px/1.45 Instrument Sans,system-ui,-apple-system,Segoe UI,sans-serif}.mono{font-variant-numeric:tabular-nums;font-family:IBM Plex Mono,ui-monospace,SFMono-Regular,Menlo,monospace}.num{font-variant-numeric:tabular-nums}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}button:focus-visible,input:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:2px}input{font:inherit;color:inherit}a{color:inherit}.up{color:var(--up)}.down{color:var(--down)}.muted{color:var(--text-2)}.faint{color:var(--text-3)}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.app{background:var(--bg);flex-direction:column;max-width:430px;min-height:100dvh;margin:0 auto;display:flex;position:relative}@media (width>=600px){.app{border:1px solid var(--line);height:100dvh;min-height:auto;max-height:900px;box-shadow:var(--shadow);border-radius:28px;margin:min(3vh,24px) auto;overflow:hidden}}.top{padding:calc(env(safe-area-inset-top,0px) + 14px) 18px 10px;justify-content:space-between;align-items:center;display:flex}.wordmark{letter-spacing:.01em;align-items:center;gap:8px;font-weight:600;display:flex}.wordmark i{background:var(--accent);width:12px;height:12px;box-shadow:0 0 0 4px var(--accent-soft);border-radius:50%;display:inline-block}.avatar{background:var(--accent-soft);width:30px;height:30px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}main{padding:0 18px calc(env(safe-area-inset-bottom,0px) + 92px);flex:1;overflow:hidden auto}.tabs{padding:8px 18px calc(env(safe-area-inset-bottom,0px) + 10px);background:color-mix(in srgb, var(--bg) 86%, transparent);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line);z-index:10;grid-template-columns:repeat(3,1fr);display:grid;position:absolute;bottom:0;left:0;right:0}@media (width<=599px){.tabs{position:fixed}}.tabs button{color:var(--text-3);border-radius:12px;flex-direction:column;align-items:center;gap:4px;padding:6px 0;font-size:11px;display:flex}.tabs button svg{stroke:currentColor;fill:none;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.tabs button.on{color:var(--text)}.tabs button.on svg{stroke:var(--accent)}.banner{color:var(--text-2);background:var(--accent-soft);border:1px solid color-mix(in srgb, var(--accent) 35%, transparent);border-radius:12px;align-items:flex-start;gap:10px;margin:6px 0 14px;padding:10px 12px;font-size:12.5px;display:flex}.banner strong{color:var(--text)}.hero{padding:10px 0 4px}.label{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);font-size:12px;font-weight:500}.total{letter-spacing:-.02em;margin:4px 0 6px;font-size:40px;font-weight:600;line-height:1.1}.total small{color:var(--text-2);margin-left:6px;font-size:20px;font-weight:500}.delta{border-radius:999px;align-items:center;gap:6px;padding:4px 10px;font-size:14px;font-weight:500;display:inline-flex}.delta.up{background:var(--up-soft)}.delta.down{background:var(--down-soft)}.spark{height:88px;margin:14px 0 4px}.spark svg{width:100%;height:100%;display:block;overflow:visible}.spark-range{color:var(--text-3);justify-content:space-between;margin-top:4px;font-size:11px;display:flex}.actions{grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0 22px;display:grid}.actions button{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 0;font-size:14px;font-weight:500}.actions button.primary{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.block{margin-bottom:22px}.block h3{letter-spacing:.06em;text-transform:uppercase;color:var(--text-3);justify-content:space-between;align-items:baseline;margin:0 0 8px;font-size:12px;font-weight:500;display:flex}.block h3 span{text-transform:none;letter-spacing:0;font-weight:400}.rows{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden}.row{border-top:1px solid var(--line);text-align:left;grid-template-columns:1fr auto;align-items:center;gap:12px;width:100%;padding:12px 14px;display:grid}.row:first-child{border-top:0}.row .t{font-weight:500}.row .s{color:var(--text-2);margin-top:1px;font-size:12px}.row .r{text-align:right}.row .r .v{font-weight:500}.row .r .p{font-size:12px}.empty{color:var(--text-2);padding:18px 14px;font-size:14px}.empty b{color:var(--text);font-weight:500}.chip{background:var(--raised);color:var(--text-2);letter-spacing:.02em;border-radius:6px;padding:2px 7px;font-size:11px;font-weight:500;display:inline-block}.chip.up{background:var(--up-soft);color:var(--up)}.chip.down{background:var(--down-soft);color:var(--down)}.chip.acc{background:var(--accent-soft);color:var(--accent)}.lv{color:var(--text-2);gap:12px;font-size:12px;display:flex}.lv b{color:var(--text);font-weight:500}.screen-title{align-items:center;gap:10px;margin:8px 0 14px;font-size:20px;font-weight:600;display:flex}.search{position:relative}.search input{border:1px solid var(--line);background:var(--surface);border-radius:14px;width:100%;padding:13px 14px 13px 40px;font-size:16px}.search svg{width:18px;height:18px;stroke:var(--text-3);fill:none;stroke-width:2px;stroke-linecap:round;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.results{background:var(--surface);border:1px solid var(--line);border-radius:14px;margin-top:8px;overflow:hidden}.results button{text-align:left;border-top:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:12px;width:100%;padding:11px 14px;display:grid}.results button:first-child{border-top:0}.results .sym{min-width:58px;font-weight:500}.results .desc{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.results .ex{color:var(--text-3);font-size:11px}.quote{justify-content:space-between;align-items:flex-start;padding:16px 2px 6px;display:flex}.quote .sym{font-size:22px;font-weight:600}.quote .desc{color:var(--text-2);font-size:13px}.quote .px{text-align:right;font-size:22px;font-weight:600}.quote .px span{margin-left:4px;font-size:13px}.quote .ba{color:var(--text-3);text-align:right;font-size:12px}.amount{text-align:center;padding:18px 0 10px}.amount .in{letter-spacing:-.02em;align-items:baseline;gap:4px;font-size:44px;font-weight:600;display:inline-flex}.amount .in span{color:var(--text-2);font-size:26px}.amount input{letter-spacing:-.02em;font-variant-numeric:tabular-nums;background:0 0;border:0;width:5ch;min-width:3ch;max-width:8ch;padding:0;font-size:44px;font-weight:600}.amount .sub{color:var(--text-2);margin-top:4px;font-size:13px}.amount .sub button{color:var(--accent);margin-left:6px;font-weight:500}.quick{grid-template-columns:repeat(3,1fr);gap:8px;margin:8px 0 16px;display:grid}.quick button{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:11px 0;font-weight:500}.quick button.on{border-color:var(--text);color:var(--text)}.kv{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 0;display:flex}.kv:last-of-type{border-bottom:1px solid var(--line)}.kv .k{color:var(--text-2)}.kv .v{text-align:right;font-weight:500}.kv .v small{color:var(--text-3);font-size:12px;font-weight:400;display:block}.kv .ctl{align-items:center;gap:10px;display:flex}.seg{background:var(--raised);border-radius:10px;padding:3px;display:inline-flex}.seg button{color:var(--text-2);border-radius:8px;padding:5px 11px;font-size:13px;font-weight:500}.seg button.on{background:var(--surface);color:var(--text);box-shadow:0 1px 2px #0000001f}.stepper{align-items:center;gap:4px;display:inline-flex}.stepper button{border:1px solid var(--line);background:var(--surface);border-radius:9px;width:30px;height:30px;font-size:16px;line-height:1}.stepper output{text-align:center;min-width:5.5ch;font-weight:500}.toggle{background:var(--line-strong);border-radius:999px;flex:none;width:44px;height:26px;transition:background .2s;position:relative}.toggle:after{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #0000004d}.toggle[aria-checked=true]{background:var(--up)}.toggle[aria-checked=true]:after{transform:translate(18px)}.swipe{background:var(--primary);height:60px;color:var(--on-primary);-webkit-user-select:none;user-select:none;touch-action:pan-y;border-radius:999px;margin-top:18px;position:relative;overflow:hidden}.swipe .txt{pointer-events:none;justify-content:center;align-items:center;font-size:16px;font-weight:600;display:flex;position:absolute;inset:0}.swipe .knob{background:var(--accent);width:50px;height:50px;color:var(--accent-ink);touch-action:none;cursor:grab;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:5px;left:5px}.swipe .knob svg{stroke:currentColor;fill:none;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:22px;height:22px}.swipe.disabled{opacity:.45;pointer-events:none}.swipe.done{background:var(--up)}.swipe.done .knob{color:var(--up);background:#fff}.note{color:var(--text-3);text-align:center;margin-top:10px;font-size:12px;line-height:1.4}.sheet-wrap{z-index:30;background:#00000073;align-items:flex-end;display:flex;position:absolute;inset:0}@media (width<=599px){.sheet-wrap{position:fixed}}.sheet{background:var(--surface);width:100%;max-width:430px;padding:14px 18px calc(env(safe-area-inset-bottom,0px) + 22px);box-shadow:var(--shadow);border-radius:22px 22px 0 0;margin:0 auto}.sheet .grab{background:var(--line-strong);border-radius:2px;width:36px;height:4px;margin:0 auto 14px}.sheet h2{margin:0 0 6px;font-size:18px}.sheet p{color:var(--text-2);margin:0 0 12px;font-size:14px}.btn{text-align:center;border-radius:14px;justify-content:center;align-items:center;gap:8px;width:100%;padding:14px;font-size:15px;font-weight:600;text-decoration:none;display:flex}.btn.primary{background:var(--primary);color:var(--on-primary)}.btn.ghost{border:1px solid var(--line);color:var(--text);margin-top:8px;font-weight:500}.btn.acc{background:var(--accent);color:var(--accent-ink)}.chat{flex-direction:column;gap:10px;padding-top:4px;display:flex}.msg{white-space:pre-wrap;word-wrap:break-word;border-radius:16px;max-width:88%;padding:11px 14px;font-size:14.5px;line-height:1.45}.msg.user{background:var(--raised);border-bottom-right-radius:6px;align-self:flex-end}.msg.agent{background:var(--surface);border:1px solid var(--line);border-bottom-left-radius:6px;align-self:flex-start}.msg.agent.thinking{color:var(--text-3);font-style:italic}.drafts{flex-direction:column;gap:6px;margin:2px 0;display:flex}.draft{background:var(--surface);border:1px solid var(--line);border-radius:14px;grid-template-columns:1fr auto;align-items:center;gap:6px 12px;padding:10px 12px;display:grid}.draft .h{font-weight:500}.draft .h small{color:var(--text-2);margin-left:6px;font-weight:400}.draft .x{border:1px solid var(--line);width:28px;height:28px;color:var(--text-3);border-radius:50%;grid-row:1/span 2;justify-content:center;align-items:center;font-size:16px;line-height:1;display:flex}.risk{color:var(--text-2);padding:8px 2px 2px;font-size:13px}.risk b{color:var(--text);font-weight:500}.confirm{grid-template-columns:1fr 2fr;gap:8px;margin-top:4px;display:grid}.confirm button{border:1px solid var(--line);border-radius:14px;padding:13px 0;font-weight:600}.confirm button.go{background:var(--primary);color:var(--on-primary);border-color:var(--primary)}.suggest{scrollbar-width:none;gap:8px;padding:12px 0 4px;display:flex;overflow-x:auto}.suggest::-webkit-scrollbar{display:none}.suggest button{border:1px solid var(--line);background:var(--surface);color:var(--text-2);border-radius:999px;flex:none;padding:8px 12px;font-size:13px}.composer{left:0;right:0;bottom:calc(env(safe-area-inset-bottom,0px) + 74px);background:linear-gradient(to top, var(--bg) 70%, transparent);z-index:9;gap:8px;padding:8px 18px;display:flex;position:absolute}@media (width<=599px){.composer{position:fixed}}.composer input{border:1px solid var(--line);background:var(--surface);border-radius:999px;flex:1;padding:12px 14px;font-size:16px}.composer button{background:var(--accent);width:46px;height:46px;color:var(--accent-ink);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.composer button svg{stroke:currentColor;fill:none;stroke-width:2.4px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.composer button[disabled]{opacity:.5}.toast{left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 100px);background:var(--text);color:var(--bg);z-index:40;max-width:90%;box-shadow:var(--shadow);border-radius:12px;padding:10px 14px;font-size:13px;position:absolute;transform:translate(-50%)}@media (width<=599px){.toast{position:fixed}}
