:root{--accent:#6d28d9;--baseline:#c2410c;--accent-text:var(--accent);--baseline-text:var(--baseline);--panel-mix:white;--panel-pct:3%;--bg:#f6f7f9;--surface:#fff;--border:#e3e6eb;--border-soft:#edeff2;--border-strong:#9ca3af;--amber:#b45309;--stage-bg:#f7f8fa;--text:#111827;--text2:#374151;--muted:#5b6472;--skel:#e6e8ec;--saved:#15803d;--saved-bg:#f0fdf4;--saved-border:#86efac;--saved-pill:#dcfce7;--shadow:0 12px 40px #11182714;--glow:.32;--font-sans:Montserrat, system-ui, sans-serif;--font-display:Montserrat, system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;font-family:var(--font-sans);color:var(--text);background:var(--bg)}:root[data-theme=dark]{--accent-text:color-mix(in srgb, var(--accent) 55%, white);--baseline-text:color-mix(in srgb, var(--baseline) 55%, white);--panel-mix:transparent;--panel-pct:5%;--bg:#0b0d12;--surface:#12151c;--border:#ffffff1a;--border-soft:#ffffff0f;--border-strong:#ffffff47;--amber:#fbbf24;--stage-bg:#ffffff08;--text:#eceff5;--text2:#c3c9d6;--muted:#9aa3b5;--skel:#ffffff14;--saved:#4ade80;--saved-bg:#4ade8012;--saved-border:#4ade8059;--saved-pill:#4ade8029;--shadow:0 12px 40px #00000073;--glow:.5}*{box-sizing:border-box}:root{--scroll-thumb:color-mix(in srgb, var(--muted) 35%, transparent);--scroll-thumb-hover:color-mix(in srgb, var(--muted) 60%, transparent)}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar-button{display:none}::-webkit-scrollbar-thumb{background:var(--scroll-thumb) padding-box;border:3px solid #0000;border-radius:999px}::-webkit-scrollbar-thumb:hover{background:var(--scroll-thumb-hover) padding-box}@supports not selector(::-webkit-scrollbar){*{scrollbar-width:thin;scrollbar-color:var(--scroll-thumb) transparent}}body{margin:0}button,input{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}.num{font-variant-numeric:tabular-nums}.mono{font-family:var(--font-mono)}.muted{color:var(--muted)}.sr-only{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}@keyframes pulse{0%,to{opacity:.45}50%{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes blink{50%{opacity:0}}.sk{background:var(--skel);animation:1.4s ease-in-out infinite pulse}.spin{animation:.9s linear infinite spin}.rise{animation:.35s ease-out both rise}@media (prefers-reduced-motion:reduce){.sk,.spin,.rise{animation:none}}.app{background:var(--bg);flex-direction:column;height:100vh;display:flex;overflow:hidden}.column{width:min(1040px,100%);margin:0 auto}.header{border-bottom:1px solid var(--border);background:var(--surface);flex:none;justify-content:space-between;align-items:center;gap:24px;height:76px;padding:0 56px;display:flex}.brand{align-items:center;gap:14px;display:flex}.brand-home{background:0 0;border:0;align-items:center;gap:12px;height:44px;padding:0;display:flex}.brand-name{font-family:var(--font-display);letter-spacing:-.03em;font-size:26px;font-weight:800}.brand-sub{color:var(--muted);font-size:16px}.logo{background:var(--accent);color:#fff;justify-content:center;align-items:center;display:flex}.header-right{align-items:center;gap:16px;display:flex}.user{position:relative}.user-btn{background:var(--bg);border:1px solid var(--border);width:40px;height:40px;color:var(--text2);border-radius:50%;justify-content:center;align-items:center;padding:0;display:flex}.user-btn:hover,.user-btn[aria-expanded=true]{border-color:color-mix(in srgb, var(--accent) 45%, transparent);color:var(--accent-text)}.user-menu{z-index:10;background:var(--surface);border:1px solid var(--border);min-width:240px;box-shadow:var(--shadow);border-radius:16px;flex-direction:column;gap:4px;padding:14px;display:flex;position:absolute;top:calc(100% + 8px);right:0}.user-menu[hidden]{display:none}.user-menu hr{border:0;border-top:1px solid var(--border);width:100%;margin:8px 0}.user-label{color:var(--muted);font-size:12px}.user-email{overflow-wrap:anywhere;font-size:15px;font-weight:600}.user-menu .theme-toggle,.user-signout{text-align:left;height:38px;color:var(--text2);background:0 0;border:0;border-radius:10px;padding:0 10px;font-size:15px}.user-menu .theme-toggle:hover,.user-signout:hover{background:var(--bg)}.login-theme{position:absolute;top:20px;right:24px}.login{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 78%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:min(400px,100%);box-shadow:var(--shadow);border-radius:24px;flex-direction:column;gap:16px;padding:36px 32px;display:flex}.login-brand{align-items:center;gap:12px;display:flex}.login h1{font-family:var(--font-display);letter-spacing:-.03em;margin:4px 0;font-size:30px;font-weight:800}.login label{color:var(--text2);flex-direction:column;gap:6px;font-size:14px;font-weight:500;display:flex}.login input{height:46px;font:inherit;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:12px;outline:none;padding:0 14px;font-size:16px}.login input:focus{border-color:color-mix(in srgb, var(--accent) 55%, transparent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 14%, transparent)}.login button{background:var(--accent);color:#fff;border:0;border-radius:999px;height:48px;margin-top:6px;font-size:16px;font-weight:600}.login button:not(:disabled):hover{filter:brightness(1.12)}.theme-toggle{height:36px;color:var(--muted);border:1px solid var(--border);background:0 0;border-radius:999px;padding:0 14px;font-size:14px}.home{isolation:isolate;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:36px;min-height:0;padding:0 56px;display:flex;position:relative;overflow:hidden}.home:before,.home:after{content:"";z-index:-1;pointer-events:none;position:absolute}.home:before{background:radial-gradient(closest-side at 30% 35%, color-mix(in srgb, var(--accent) 55%, transparent), transparent), radial-gradient(closest-side at 72% 62%, color-mix(in srgb, var(--baseline) 40%, transparent), transparent), radial-gradient(closest-side at 55% 20%, #db27774d, transparent);filter:blur(70px);opacity:var(--glow);animation:26s ease-in-out infinite alternate drift;inset:-25%}.home:after{background-image:radial-gradient(color-mix(in srgb, var(--muted) 45%, transparent) 1.2px, transparent 1.6px);opacity:.5;background-size:28px 28px;animation:40s linear infinite pan;inset:-40px;-webkit-mask-image:radial-gradient(70% 60%,#000,#0000);mask-image:radial-gradient(70% 60%,#000,#0000)}@keyframes drift{0%{transform:translate(-6%,-4%)rotate(0)scale(1)}50%{transform:translate(5%,3%)rotate(20deg)scale(1.1)}to{transform:translate(-3%,6%)rotate(-12deg)scale(.95)}}@keyframes pan{to{transform:translate(28px,28px)}}@media (prefers-reduced-motion:reduce){.home:before,.home:after{animation:none}}.hero{text-align:center;flex-direction:column;align-items:center;gap:16px;display:flex}.hero h1{font-family:var(--font-display);letter-spacing:-.04em;margin:0;font-size:64px;font-weight:800;line-height:1.05}.hero p{max-width:760px;color:var(--muted);margin:0;font-size:22px;line-height:1.45}.ask{border:2px solid color-mix(in srgb, var(--accent) 45%, transparent);align-items:center;gap:12px;display:flex}.ask select{min-width:0;font:inherit;color:var(--text);cursor:pointer;text-overflow:ellipsis;background:0 0;border:0;outline:none;flex:1}.ask select:disabled{cursor:default}.ask option,.ask optgroup{background:var(--surface);color:var(--text);font-size:16px}.ask-placeholder{color:var(--muted)!important}.ask button{background:var(--accent);color:#fff;border:0;justify-content:center;align-items:center;gap:10px;font-weight:700;display:flex}.ask-hero{border:1px solid var(--border);background:color-mix(in srgb, var(--surface) 78%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:min(860px,100%);box-shadow:var(--shadow);border-radius:999px;padding:7px 7px 7px 28px;transition:border-color .2s,box-shadow .2s}.ask-hero:focus-within{border-color:color-mix(in srgb, var(--accent) 55%, transparent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 14%, transparent), var(--shadow)}.ask-hero select{appearance:none;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%239aa3b5' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") right 8px center no-repeat;height:54px;padding-right:32px;font-size:20px;font-weight:500}.ask-hero button{border-radius:999px;height:54px;padding:0 26px;font-size:17px;font-weight:600;transition:filter .15s,transform .15s}.ask-hero button:not(:disabled):hover{filter:brightness(1.12);transform:translate(1px)}.ask-followup{background:var(--bg);border-width:1.5px;border-radius:18px;gap:10px;padding:6px 6px 6px 24px}.ask-followup select{height:48px;font-size:19px}.ask-followup button{border-radius:13px;width:48px;height:48px}.ask-error{color:var(--baseline-text);margin:0;font-size:15px}.chips{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.chip{background:var(--surface);border:1px solid var(--border);height:44px;color:var(--text2);border-radius:999px;padding:0 18px;font-size:16px}.chips-followup{scrollbar-width:none;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:8px;overflow-x:auto}.chips-followup .chip{background:var(--bg);white-space:nowrap;flex:none;height:32px;padding:0 12px;font-size:14px}.chips-label{color:var(--muted);flex:none;font-size:14px}.thread{scrollbar-gutter:stable both-edges;flex:1;min-height:0;padding:32px 56px 24px;overflow-y:auto}.turns{flex-direction:column;gap:28px;display:flex}.turn{flex-direction:column;gap:16px;display:flex}.bubble{background:var(--accent);color:#fff;border-radius:20px 20px 6px;align-self:flex-end;max-width:720px;padding:14px 20px;font-size:18px;line-height:1.45}.answer{background:var(--surface);border:1px solid var(--border);border-radius:22px;flex-direction:column;gap:18px;padding:24px 28px;display:flex}.answer-head{align-items:center;gap:10px;display:flex}.answer-name{font-size:16px;font-weight:700}.working{color:var(--accent-text);align-items:center;gap:8px;margin-left:4px;font-size:14px;display:flex}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:13px;height:13px}.answer-text{margin:0;font-size:18px;line-height:1.55}.answer-error{color:var(--baseline-text);margin:0;font-size:16px}.answer-skeleton{flex-direction:column;gap:10px;padding:4px 0;display:flex}.answer-skeleton span{border-radius:6px;height:12px}.caret{vertical-align:text-bottom;background:var(--text);width:2px;height:1.1em;margin-left:2px;animation:.8s step-end infinite blink;display:inline-block}.savings{border-top:1px solid var(--border);align-items:center;gap:32px;padding-top:20px;display:flex}.savings-pct{flex-direction:column;flex:none;gap:2px;width:210px;display:flex}.big{font-family:var(--font-display);letter-spacing:-.04em;font-size:64px;font-weight:800;line-height:.95}.good{color:var(--saved)}.bad{color:var(--baseline-text)}.savings-note{color:var(--muted);font-size:15px;line-height:1.35}.savings-usd{color:var(--muted);flex-direction:column;font-size:15px;display:flex}.savings-usd strong{color:var(--saved);font-size:26px;font-weight:800}.savings-bars{flex-direction:column;flex:1;gap:10px;min-width:0;display:flex}.bars-row{align-items:center;gap:14px;display:flex}.lane-base{--lane:var(--baseline);--lane-text:var(--baseline-text)}.lane-desp{--lane:var(--accent);--lane-text:var(--accent-text)}.bars-name{white-space:nowrap;width:200px;color:var(--lane-text);flex:none;font-size:15px;font-weight:600}.bars-track{flex:1;gap:3px;min-width:0;height:30px;display:flex}.seg{background:var(--lane);border-radius:8px}.seg-ghost{background:color-mix(in srgb, var(--lane) 18%, transparent);border-radius:8px}.seg-saved{border:2px dashed var(--saved);background:var(--saved-bg);min-width:84px;color:var(--saved);white-space:nowrap;border-radius:8px;flex:1;justify-content:center;align-items:center;padding:0 4px;font-weight:700;display:flex;overflow:hidden;container-type:inline-size}.seg-saved span{text-overflow:ellipsis;font-size:clamp(9px,13cqi,14px);overflow:hidden}.bars-total{text-align:right;width:70px;color:var(--lane-text);flex:none;font-size:17px;font-weight:700}.savings-side{border-left:1px solid var(--border);flex-direction:column;flex:none;gap:6px;width:200px;padding-left:28px;display:flex}.savings-time{font-size:26px;font-weight:800;line-height:1}.vs{color:var(--baseline-text);font-size:16px;font-weight:600}.savings-pending{padding-top:16px}.toggle-row{justify-content:flex-end;display:flex}.toggle{border:1px solid var(--border);background:var(--bg);height:44px;color:var(--text2);border-radius:999px;align-items:center;gap:10px;padding:0 6px 0 16px;font-size:15px;font-weight:600;display:inline-flex}.toggle-icon{background:var(--accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.breakdown{flex-direction:column;gap:10px;display:flex}.panels{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.panel{border:1px solid color-mix(in srgb, var(--lane) 35%, transparent);background:color-mix(in srgb, var(--lane) var(--panel-pct), var(--panel-mix));border-radius:16px;flex-direction:column;display:flex;overflow:hidden}.panel-head{justify-content:space-between;align-items:baseline;gap:12px;padding:12px 18px;display:flex}.panel-head h3{color:var(--lane-text);margin:0;font-size:17px;font-weight:700}.panel-sub{color:var(--muted);font-size:14px}.row{border-top:1px solid var(--border-soft);align-items:center;gap:12px;min-height:44px;padding:6px 18px;display:flex}.row-stage{background:var(--stage-bg)}.row-name{text-transform:capitalize;flex:none;width:92px;font-size:15px;font-weight:600}.row-stage .row-name{color:var(--text2)}.row-badge{flex:none;width:74px}.row-note{min-width:0;color:var(--muted);flex:1;font-size:14px;line-height:1.35}.row-tokens{text-align:right;flex:none;width:56px;font-size:15px;font-weight:600}.badge{font-family:var(--font-mono);letter-spacing:.06em;border-radius:6px;padding:2px 8px;font-size:12px;font-weight:500;display:inline-block}.badge-run{background:var(--lane);color:#fff;padding:3px 9px}.badge-skip{border:1.5px solid var(--border-strong);color:var(--text2)}.badge-shadow{border:1.5px dashed var(--amber);color:var(--amber)}.panel-total{border-top:1px solid var(--border);justify-content:space-between;align-items:center;padding:10px 18px;display:flex}.panel-total .mono{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px}.panel-total .num{color:var(--lane-text);font-size:18px;font-weight:800}.legend{color:var(--muted);margin:0;font-size:14px}.shadow-text{color:var(--amber);font-weight:500}.workspace{flex:1;min-height:0;display:flex}.chat{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.chat .thread{padding-bottom:220px}.composer{pointer-events:none;background:linear-gradient(transparent, var(--bg) 45%);padding:32px 40px 24px;position:absolute;bottom:0;left:0;right:0}.composer-card{pointer-events:auto;background:var(--surface);border:1px solid var(--border);width:min(920px,100%);box-shadow:var(--shadow);border-radius:24px;flex-direction:column;gap:10px;margin:0 auto;padding:12px 14px;display:flex}.stats{border-left:1px solid var(--border);background:var(--surface);flex-direction:column;flex:0 0 480px;gap:22px;padding:24px 28px;display:flex;overflow:hidden}.stats h2,.stats h3{margin:0}.stats-title{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:500}.stats-empty{color:var(--muted);margin:0;font-size:15px}.stats-hero{background:var(--saved-bg);border:1px solid var(--saved-border);border-radius:18px;flex-direction:column;gap:4px;padding:18px 20px;display:flex}.stats-pct{font-family:var(--font-display);letter-spacing:-.04em;font-size:72px;font-weight:800;line-height:.95}.stats-saved{margin-top:6px;font-size:22px;font-weight:800}.stats-note{color:var(--muted);font-size:15px;line-height:1.35}.stats-block{flex-direction:column;gap:12px;display:flex}.stats-block h3{font-size:16px;font-weight:700}.stats-foot{color:var(--muted);margin:0;font-size:13px;line-height:1.4}.stats>*{flex:none}.stats>.stats-grow{flex:1 1 0;min-height:200px}.stats-legend{color:var(--text2);flex-wrap:wrap;gap:14px;font-size:13px;display:flex}.stats-legend span{align-items:center;gap:6px;display:inline-flex}.swatch{background:var(--lane);border-radius:3px;width:12px;height:12px;display:inline-block}.chart-box{flex:1;min-height:0}.chart{display:block;overflow:visible}.chart-axis{stroke:var(--border-strong);stroke-width:1px}.chart-gap{fill:var(--saved);opacity:.14}.chart-line{fill:none;stroke:var(--lane);stroke-width:2px;stroke-linejoin:round}.chart-dot{fill:var(--lane);stroke:var(--surface);stroke-width:2px}.chart-tick{fill:var(--muted);font-size:11px}.chart-end{fill:var(--text2);font-size:13px;font-weight:700}.chart-saved{fill:var(--saved);font-size:13px;font-weight:800}.phases{flex-direction:column;gap:12px;display:flex}.phase{grid-template-columns:76px 1fr;align-items:center;gap:4px 12px;display:grid}.phase-name{color:var(--text2);grid-row:span 2;font-size:14px;font-weight:600}.phase-row{align-items:center;gap:10px;display:flex}.phase-track{flex:1;min-width:0;height:14px}.phase-bar{background:var(--lane);border-radius:0 4px 4px 0;min-width:2px;height:100%}.phase-value{text-align:right;width:52px;color:var(--text2);flex:none;font-size:13px;font-weight:600}@media (width<=1400px){.stats{flex-basis:400px;padding:22px}}@media (height<=900px){.stats{gap:16px;padding-top:18px;padding-bottom:18px}.stats-hero{padding:14px 18px}.stats-pct{font-size:56px}.stats-saved{margin-top:2px;font-size:19px}.phases{gap:8px}.phase-track{height:11px}}@media (width<=1600px){.bars-row{flex-wrap:wrap;row-gap:4px}.bars-name{width:100%}}
