@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");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}:root{--neutral-50:#f8f8f9;--neutral-100:#efeff0;--neutral-200:#dddedf;--neutral-300:#c3c4c5;--neutral-400:#a3a4a5;--neutral-500:#8d8e8f;--neutral-600:#737475;--neutral-700:#5c5d5f;--neutral-800:#454647;--neutral-900:#303133;--neutral-950:#212223;--accent-50:#f5f9ff;--accent-100:#e7f0ff;--accent-200:#d0dff8;--accent-300:#acc5f1;--accent-400:#7aa4f2;--accent-500:#628ddd;--accent-600:#4972c0;--accent-700:#335ba7;--accent-800:#1d428c;--accent-900:#152f62;--accent-950:#12213e;--green-50:#eefcf1;--green-100:#dbf6e1;--green-200:#b9e9c5;--green-300:#88d59d;--green-400:#3eb96c;--green-500:#00a353;--green-600:#008643;--green-700:#156b38;--green-800:#1b4f2d;--green-900:#193722;--green-950:#142519;--red-50:#fff6f7;--red-100:#ffeaec;--red-200:#f9d5d8;--red-300:#f2b4ba;--red-400:#f48192;--red-500:#f65274;--red-600:#d6315b;--red-700:#b41b47;--red-800:#812137;--red-900:#571e28;--red-950:#38181c;--amber-50:#fff7f0;--amber-100:#ffecda;--amber-200:#f9d8ba;--amber-300:#f2b982;--amber-400:#e1923a;--amber-500:#cc7a00;--amber-600:#a86400;--amber-700:#855113;--amber-800:#613e18;--amber-900:#422d17;--amber-950:#2c1f13;--yellow-50:#fcf8ea;--yellow-100:#f7efd1;--yellow-200:#ecdea9;--yellow-300:#dac36d;--yellow-400:#bca239;--yellow-500:#a78c00;--yellow-600:#897200;--yellow-700:#6d5c12;--yellow-800:#504518;--yellow-900:#383117;--yellow-950:#252113;--blue-50:#f3f9ff;--blue-100:#e2f1ff;--blue-200:#c7e1f8;--blue-300:#9bc9f0;--blue-400:#4faaf2;--blue-500:#0094e7;--blue-600:#0079bf;--blue-700:#146196;--blue-800:#1a496d;--blue-900:#183349;--blue-950:#142330;--bg:#fff;--bg-raised:#fff;--bg-subtle:var(--neutral-50);--bg-canvas:var(--neutral-100);--bg-hover:#2122230d;--text:var(--neutral-900);--text-secondary:var(--neutral-600);--text-disabled:var(--neutral-400);--line:var(--neutral-200);--line-strong:var(--neutral-300);--primary:var(--neutral-900);--primary-hover:var(--neutral-800);--on-primary:#fff;--accent:var(--accent-600);--accent-hover:var(--accent-700);--accent-subtle:var(--accent-100);--on-accent:#fff;--red-fg:var(--red-700);--red-bg:var(--red-100);--t-micro:11px/14px;--t-caption:12px/16px;--t-small:13px/20px;--t-body:14px/20px;--t-lead:16px/24px;--t-title:18px/24px;--t-h2:22px/28px;--t-h1:28px/36px;--t-display:36px/44px;--font-sans:"Inter Variable", Inter, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace;--s-0_5:2px;--s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:20px;--s-6:24px;--s-8:32px;--s-10:40px;--s-12:48px;--s-16:64px;--r-xs:4px;--r-sm:8px;--r-md:12px;--r-lg:16px;--r-paper:2px;--ring:0 0 0 1px #21222314;--elev-1:var(--ring), 0 1px 2px #2122230f;--elev-2:var(--ring), 0 4px 12px #21222314, 0 1px 3px #2122230f;--elev-3:var(--ring), 0 16px 40px #2122231f, 0 2px 6px #2122230f;--focus:0 0 0 2px var(--bg), 0 0 0 4px var(--accent);--dur-1:.1s;--dur-2:.18s;--dur-3:.28s;--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-move:cubic-bezier(.4, 0, .2, 1);font:var(--t-body) var(--font-sans);font-feature-settings:"cv11";color:var(--text);background:var(--bg);--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0}:focus-visible{box-shadow:var(--focus);outline:none}button{font:inherit;height:32px;padding:0 var(--s-3);border-radius:var(--r-sm);cursor:pointer;background:var(--primary);color:var(--on-primary);align-items:center;gap:var(--s-2);transition:background var(--dur-1) var(--ease-out);border:0;font-weight:500;display:inline-flex}button:hover:not(:disabled){background:var(--primary-hover)}button:disabled{opacity:.5;cursor:default}button.secondary{background:var(--bg);color:var(--text);box-shadow:var(--elev-1)}button.secondary:hover:not(:disabled){background:var(--bg-subtle)}button.icon{color:var(--text-secondary);background:0 0;justify-content:center;width:32px;padding:0}button.icon:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}button.sm{gap:var(--s-1);height:20px;font:500 var(--t-caption) var(--font-sans);border-radius:var(--r-xs);padding:0 6px}input{font:inherit;height:32px;padding:0 var(--s-3);border-radius:var(--r-sm);border:1px solid var(--line-strong);color:inherit;background:0 0;flex:1}.spinner{border:2px solid;border-right-color:#0000;border-radius:50%;width:14px;height:14px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:2s}}.header{gap:var(--s-3);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--line);align-items:center;display:flex}.header .spacer{flex:1}.header .email,.thread-empty{color:var(--text-secondary)}.header nav{gap:var(--s-1);display:flex}.header nav a{color:var(--text-secondary);padding:var(--s-1) var(--s-2);border-radius:var(--r-sm);text-decoration:none}.header nav a:hover{background:var(--bg-hover);color:var(--text)}.header nav a[aria-current=page]{color:var(--text);font-weight:500}.stage{font:500 var(--t-caption) var(--font-sans);padding:var(--s-0_5) var(--s-1);border-radius:var(--r-xs);background:var(--accent-subtle)}.auth-landing{justify-content:center;align-items:center;gap:var(--s-4);min-height:100vh;padding:var(--s-4);text-align:center;flex-direction:column;display:flex}.auth-landing h1{font:600 var(--t-h2) var(--font-sans);margin:0}.auth-landing p{max-width:28rem;color:var(--text-secondary);margin:0}.sow-list{max-width:48rem;padding:var(--s-8) var(--s-4);gap:var(--s-4);flex-direction:column;margin:0 auto;display:flex}.sow-list-header{justify-content:space-between;align-items:center;gap:var(--s-4);flex-wrap:wrap;display:flex}.sow-list-header h1{font:600 var(--t-h2) var(--font-sans);margin:0}.sow-list-actions{gap:var(--s-2);display:flex}.sow-list ul{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.sow-list li{align-items:center;gap:var(--s-2);border-bottom:1px solid var(--line);display:flex}.sow-list li>button.icon{opacity:0}.sow-list li:is(:hover,:focus-within)>button.icon{opacity:1}button.sow-list-open{height:auto;padding:var(--s-3) var(--s-2);color:var(--text);justify-content:space-between;gap:var(--s-4);text-align:left;background:0 0;border-radius:0;flex:1;display:flex}button.sow-list-open:hover:not(:disabled){background:var(--bg-subtle)}.sow-list-title{font-weight:500}.sow-list-title.untitled{color:var(--text-secondary);font-style:italic}.sow-list-when{color:var(--text-secondary);font:var(--t-small) var(--font-sans);white-space:nowrap}.sow-list-empty{color:var(--text-secondary);margin:var(--s-8) 0;text-align:center}.sow-list-error{color:var(--red-fg);margin:0}.doc-loading{padding:var(--s-16) var(--s-4);text-align:center;color:var(--text-secondary)}.chat{max-width:48rem;padding:var(--s-4);gap:var(--s-4);flex-direction:column;margin:0 auto;display:flex}.doc-view{background:var(--bg-canvas);flex-direction:column;height:100vh;display:flex}.doc-body{flex:1;min-height:0;display:flex}.doc-desk{flex-direction:column;flex:1;min-width:0;display:flex;position:relative}.suggestions-bar{left:50%;bottom:var(--s-5);z-index:3;align-items:center;gap:var(--s-2);padding:var(--s-2) var(--s-2) var(--s-2) var(--s-3);background:var(--bg-raised);border-radius:var(--r-lg);box-shadow:var(--elev-3);font-size:var(--t-small);white-space:nowrap;animation:chrome-in var(--dur-2) var(--ease-out);display:flex;position:absolute;translate:-50%}.suggestions-bar-text{align-items:baseline;gap:var(--s-2);margin:0 var(--s-1) 0 0;font-weight:500;display:flex}.suggestions-bar-amount{color:var(--accent-700);font-variant-numeric:tabular-nums}.suggestions-bar-nav{padding:0 var(--s-1);border-left:1px solid var(--line);border-right:1px solid var(--line);align-items:center;display:flex}.suggestions-bar-nav button.icon{width:28px;height:28px}.suggestions-bar-pos{text-align:center;min-width:40px;color:var(--text-secondary);font-variant-numeric:tabular-nums}.suggestions-bar>button:not(.icon){height:30px}.doc-panel{background:var(--bg);border-left:1px solid var(--line);flex-direction:column;flex:none;width:clamp(300px,26vw,360px);min-height:0;display:flex}.doc-toolbar-wrap{padding:var(--s-1) var(--s-3) var(--s-2);background:var(--bg);border-bottom:1px solid var(--line);flex:none}.menubar{align-items:center;gap:var(--s-0_5);height:28px;margin-bottom:var(--s-1);display:flex;position:relative}.menubar>button{height:24px;padding:0 var(--s-2);border-radius:var(--r-xs);color:var(--text);font:var(--t-small) var(--font-sans);background:0 0}.menubar>button:hover:not(:disabled),.menubar>button[aria-expanded=true]{background:var(--bg-hover)}.menubar .spacer,.doc-toolbar .spacer{flex:1}.menubar .meta{margin-left:var(--s-3);font:var(--t-small) var(--font-sans);color:var(--text-secondary);white-space:nowrap}.menubar .meta.error{color:var(--red-fg)}.doc-toolbar{align-items:center;gap:var(--s-0_5);height:40px;padding:0 var(--s-1) 0 var(--s-2);background:var(--bg-subtle);box-shadow:inset 0 0 0 1px var(--line);border-radius:20px;display:flex}.doc-toolbar button.icon{border-radius:var(--r-sm);width:32px;height:32px}.doc-toolbar .divider{width:1px;height:20px;margin:0 var(--s-1);background:var(--line);flex:none}.theme-picker{align-items:center;gap:var(--s-1_5,6px);padding:0 var(--s-1);display:inline-flex}.theme-dot{cursor:pointer;background:var(--dot);border:0;border-radius:50%;flex:none;width:18px;height:18px;padding:0;position:relative;box-shadow:inset 0 0 0 1px #0000001f}.theme-dot.mono{background:linear-gradient(135deg,#141516 50%,#fff 50%)}.theme-dot.custom:not([data-checked]){background:conic-gradient(#f44,#fb3,#4d6,#3bf,#84f,#f4a,#f44)}.theme-dot[aria-checked=true],.theme-dot[data-checked]{box-shadow:inset 0 0 0 1px #0000001f, 0 0 0 2px var(--bg), 0 0 0 3.5px var(--text)}.theme-dot:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.theme-dot:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.theme-dot input{opacity:0;cursor:pointer;border:0;width:100%;height:100%;padding:0;position:absolute;inset:0}.doc-zoom{display:inline-flex;position:relative}.doc-zoom-button{height:32px;padding:0 var(--s-2);gap:var(--s-1);color:var(--text);font:500 var(--t-small) var(--font-sans);font-variant-numeric:tabular-nums;background:0 0}.doc-zoom-button:hover:not(:disabled),.doc-zoom-button[aria-expanded=true]{background:var(--bg-hover)}.doc-zoom-button svg{color:var(--text-secondary)}.doc-pages{align-items:center;gap:var(--s-0_5);display:flex}.doc-pages .meta{margin-left:var(--s-1);font:var(--t-small) var(--font-sans);color:var(--text-secondary);font-variant-numeric:tabular-nums;white-space:nowrap}.doc-export,.doc-feedback{height:32px;padding:0 var(--s-4) 0 var(--s-3);border-radius:16px;gap:6px}.doc-feedback{margin-right:var(--s-1)}.doc-toolbar-error{margin:var(--s-1) 0 0;padding:0 var(--s-2);font:var(--t-small) var(--font-sans);color:var(--red-fg);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.desk{scrollbar-gutter:stable;flex:1;position:relative;overflow:auto}.desk-status{text-align:center;color:var(--text-secondary);padding:var(--s-8);margin:0}.desk-status.error{color:var(--red-fg)}.desk-source{visibility:hidden;width:816px;position:absolute;top:0;left:-10000px}.desk-pages .pagedjs_pages{align-items:safe center;gap:var(--s-6);flex-direction:column;display:flex}.desk-pages .pagedjs_page{border-radius:var(--r-paper);box-shadow:var(--elev-3);background:#fff}.desk-skeleton{border-radius:var(--r-paper);width:816px;height:1056px;box-shadow:var(--elev-3);animation:breathe 1.6s var(--ease-move) infinite alternate;background:#fff;margin:0 auto}@keyframes breathe{0%{opacity:1}to{opacity:.6}}@media (prefers-reduced-motion:reduce){.desk-skeleton{animation:none}}.desk:has(.pagedjs_page) .desk-skeleton{display:none}.desk-pages [data-edit]{border-radius:var(--r-paper);outline-offset:1px;caret-color:var(--accent);cursor:text;transition:box-shadow var(--dur-1) var(--ease-out), outline-color var(--dur-1) var(--ease-out);outline:1px solid #0000}.desk-pages td[data-edit],.desk-pages th[data-edit]{outline-offset:-1px;border-radius:0}.desk-pages [data-edit]:hover{box-shadow:inset 0 0 0 100vmax color-mix(in srgb, var(--accent) 6%, transparent)}.desk-pages th[data-edit]:hover{box-shadow:inset 0 0 0 100vmax #ffffff24}.desk-pages [data-edit]:focus,.desk-pages [data-edit]:focus-visible{outline-color:var(--accent-300);box-shadow:none}.desk-pages th[data-edit]:focus{outline-color:#ffffffb3}.desk-pages [data-type=date]{cursor:pointer}.desk-pages tr:is(:hover,:focus-within) [data-off]:empty:before{content:attr(data-off);color:var(--text-disabled);opacity:.6;font-style:italic}.desk-pages [data-edit]::selection{background:var(--accent-200)}.desk-pages [data-edit] ::selection{background:var(--accent-200)}.desk-pages .sow-group tr[data-suggested] td{background:var(--accent-50);border-color:var(--accent-200);color:var(--accent-900);position:relative}.desk-pages .sow-group tr[data-suggested] td:is(.c-code,.c-unit,.c-op){color:var(--accent-600)}.desk-pages .sow-group tr[data-suggested] td:first-child:before,.desk-pages .sow-group tr[data-suggested] td:last-child:after{content:"";width:var(--bleed);background:inherit;border-bottom:inherit;position:absolute;top:0;bottom:0}.desk-pages .sow-group[data-suggested] th,.desk-pages .sow-group[data-suggested] tr.subtotal td{background:var(--accent-100);color:var(--accent-900)}.desk-pages .sow-group[data-suggested] th.c-amount:before{content:"Suggested";font:600 var(--t-caption) var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--accent-700)}.desk-pages .sow-group tr[data-suggested] td:first-child:before,.desk-pages .sow-group[data-suggested] th:first-child:before,.desk-pages .sow-group[data-suggested] tr.subtotal td:first-child:before{box-shadow:inset 3px 0 0 var(--accent-500)}.desk-pages .sow-group tr[data-suggested=remove] td,.desk-pages .sow-group[data-suggested=remove] :is(th,tr.subtotal td){background:var(--red-50);border-color:var(--red-200);color:var(--red-800)}.desk-pages .sow-group tr[data-suggested=remove] td:is(.c-code,.c-unit,.c-op){color:var(--red-600)}.desk-pages .sow-group tr[data-suggested=remove] td [data-edit]{text-decoration:line-through;-webkit-text-decoration-color:var(--red-600);text-decoration-color:var(--red-600)}.desk-pages .sow-group[data-suggested=remove] th.c-amount:before{content:"Remove";color:var(--red-700)}.desk-pages .sow-group tr[data-suggested=remove] td:first-child:before,.desk-pages .sow-group[data-suggested=remove] th:first-child:before,.desk-pages .sow-group[data-suggested=remove] tr.subtotal td:first-child:before{box-shadow:inset 3px 0 0 var(--red-500)}.desk-pages tr[data-mismatch]:not(:focus-within) td.c-amount,.desk-pages [data-edit=rehabBudget][data-mismatch]:not(:focus){box-shadow:inset 0 0 0 100vmax color-mix(in srgb, var(--amber-500) 14%, transparent);color:var(--amber-800)}.desk-pages [data-recalc]{animation:suggestion-flash .9s var(--ease-out)}@media (prefers-reduced-motion:reduce){.desk-pages [data-recalc]{animation:none}}.desk-pages [data-flash] :is(td,th){animation:suggestion-flash 1.2s var(--ease-out)}@keyframes suggestion-flash{0%{box-shadow:inset 0 0 0 100vmax color-mix(in srgb, var(--accent) 22%, transparent)}}.desk-overlay{z-index:2;width:0;height:0;position:absolute;top:0;left:0}.desk-overlay>*{position:absolute}@keyframes chrome-in{0%{opacity:0}}.paper-handle{gap:var(--s-0_5);animation:chrome-in var(--dur-1) var(--ease-out);display:flex;translate:-100% -50%}.paper-handle.block{translate:none}.paper-handle button{border-radius:var(--r-xs);width:20px;height:22px;color:var(--text-disabled);background:0 0;justify-content:center;padding:0;font-weight:400}.paper-handle button.grip{cursor:grab}.paper-handle.over{border-radius:var(--r-xs);gap:0;translate:0 -50%}.paper-handle.over button{color:var(--text-secondary)}.paper-handle.over button:hover:not(:disabled){color:var(--text)}.paper-handle button:hover:not(:disabled),.paper-handle[data-active] button.grip,.paper-handle.block[data-active] button,.paper-handle.suggested button{background:var(--bg-raised);color:var(--text-secondary);box-shadow:var(--elev-1)}.paper-handle.suggested button.accept{color:var(--accent)}.paper-handle.suggested button.accept:hover:not(:disabled){background:var(--accent);color:var(--on-accent)}.paper-handle.suggested button.reject:hover:not(:disabled){background:var(--red-bg);color:var(--red-fg)}.paper-remove{background:var(--bg-raised);width:16px;height:16px;color:var(--text-secondary);box-shadow:var(--elev-1);animation:chrome-in var(--dur-1) var(--ease-out);border-radius:50%;justify-content:center;padding:0;translate:-100% -50%}.paper-remove.line{width:18px;height:18px;box-shadow:none;color:var(--red-fg);background:0 0}.paper-remove:hover:not(:disabled){background:var(--red-bg);color:var(--red-fg)}.paper-remove.line.band{color:color-mix(in srgb, var(--ink,#fff) 80%, transparent)}.paper-ghost{height:24px;padding:0 var(--s-2);gap:var(--s-1);white-space:nowrap;border-radius:var(--r-xs);font:500 var(--t-caption) var(--font-sans);color:var(--text-secondary);background:color-mix(in srgb, var(--bg-raised) 85%, transparent);border:1px dashed var(--line-strong);animation:chrome-in var(--dur-2) var(--ease-out)}.paper-ghost:hover:not(:disabled){color:var(--text);border-color:var(--text-disabled);background:var(--bg-raised)}.paper-ghost.sm{height:16px;padding:0 var(--s-1);gap:var(--s-0_5);font:500 var(--t-micro) var(--font-sans)}.paper-ghost.lg{height:28px;padding:0 var(--s-3);font:500 var(--t-small) var(--font-sans)}.paper-drop{background:var(--accent);pointer-events:none;border-radius:1px;height:2px}.paper-drop:before{content:"";background:var(--accent);border-radius:50%;width:6px;height:6px;position:absolute;top:-2px;left:-3px}.paper-dragging{max-width:280px;padding:var(--s-1) var(--s-2);border-radius:var(--r-xs);pointer-events:none;font:var(--t-caption) var(--font-sans);color:var(--text);background:var(--bg-raised);box-shadow:var(--elev-2);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.paper-date{padding:0 var(--s-2);font:500 var(--t-caption) var(--font-sans);font-variant-numeric:tabular-nums;background:var(--bg-raised);box-shadow:var(--elev-2);border-radius:var(--r-sm);color:var(--text);border:0;flex:none}.tone-fair{--tone:var(--green-500);--tone-fg:var(--green-700);--tone-bg:var(--green-100)}.tone-check{--tone:var(--amber-500);--tone-fg:var(--amber-700);--tone-bg:var(--amber-100)}.tone-off{--tone:var(--red-500);--tone-fg:var(--red-700);--tone-bg:var(--red-100)}.tone-none{--tone:var(--neutral-400);--tone-fg:var(--neutral-700);--tone-bg:var(--neutral-100)}@keyframes estimate-in{0%{opacity:0;translate:-4px}}@keyframes estimate-card-in{0%{opacity:0;transform:translate(-4px)}}@media (prefers-reduced-motion:reduce){@keyframes estimate-in{0%{opacity:0}}@keyframes estimate-card-in{0%{opacity:0}}}.estimate-segment{--px:calc(1px * var(--scale,1));--dot:calc(10 * var(--px));--gap:calc(4 * var(--px));--pad:calc(8 * var(--px));--tooth:calc(5 * var(--px));--receipt:#fff;--cols:var(--figure) var(--dot);--tear-top:conic-gradient(from 135deg at top, #0000, #000 1deg 89deg, #0000 90deg) top / calc(2 * var(--tooth)) 51% repeat-x;--tear-bottom:conic-gradient(from -45deg at bottom, #0000, #000 1deg 89deg, #0000 90deg) bottom / calc(2 * var(--tooth)) 51% repeat-x;--whole-top:linear-gradient(#000 0 0) top / 100% 51% no-repeat;--whole-bottom:linear-gradient(#000 0 0) bottom / 100% 51% no-repeat;width:max(calc(var(--figure) + var(--gap) + var(--dot) + 2 * var(--pad)), calc(96 * var(--px)));font:400 calc(14 * var(--px)) / calc(20 * var(--px)) var(--font-sans);font-variant-numeric:tabular-nums;color:#141516;filter:drop-shadow(0 calc(3 * var(--px)) calc(5 * var(--px)) #2122231f) drop-shadow(0 0 1px #21222338);animation:estimate-in var(--dur-2) var(--ease-out)}.estimate-segment:before{content:"";inset:calc(-2 * var(--tooth)) 0;background:var(--receipt);-webkit-mask:var(--tear-top), var(--tear-bottom);mask:var(--tear-top), var(--tear-bottom);position:absolute}.estimate-segment[data-join-top]:before{-webkit-mask:var(--whole-top), var(--tear-bottom);mask:var(--whole-top), var(--tear-bottom);top:0}.estimate-segment[data-join-bottom]:before{-webkit-mask:var(--tear-top), var(--whole-bottom);mask:var(--tear-top), var(--whole-bottom);bottom:0}.estimate-segment[data-join-top][data-join-bottom]:before{-webkit-mask:none;mask:none}.estimate-segment>*{position:absolute;left:0;right:0}.estimate-cell,.estimate-pill{grid-template-columns:var(--cols);grid-auto-rows:calc(20 * var(--px));column-gap:var(--gap);padding:calc(6 * var(--px)) var(--pad) 0;font:inherit;white-space:nowrap;place-content:start end;place-items:center end;display:grid}.estimate-segment .figure{grid-column:1}.estimate-segment svg:not(.estimate-icon){grid-column:2}.estimate-cell.band{align-items:flex-start;gap:calc(4 * var(--px));padding-top:calc(8 * var(--px));background:var(--paper-band,#e6e6e8);color:var(--paper-band-ink,#141516);font-weight:600;display:flex}.estimate-help{width:calc(14 * var(--px));height:calc(14 * var(--px));margin:calc(3 * var(--px)) 0 0 auto;font:600 calc(10 * var(--px)) / 1 var(--font-sans);color:inherit;opacity:.7;cursor:help;pointer-events:auto;background:0 0;border-radius:50%;flex:none;justify-content:center;padding:0;box-shadow:inset 0 0 0 1px}.estimate-help:is(:hover,:focus-visible){opacity:1}.estimate-help-card{width:300px;padding:var(--s-3) var(--s-4) var(--s-4);border-radius:var(--r-md);background:var(--bg-raised);box-shadow:var(--elev-3);color:var(--text);font:400 var(--t-small) var(--font-sans);text-align:left;white-space:normal;border:0;margin:0;position:fixed;inset:auto;overflow:visible}.estimate-help-card:popover-open{animation:estimate-help-in var(--dur-2) var(--ease-out)}@keyframes estimate-help-in{0%{opacity:0;translate:0 -4px}}@media (prefers-reduced-motion:reduce){@keyframes estimate-help-in{0%{opacity:0}}}.estimate-help-card p{margin:var(--s-2) 0 0;color:var(--text-secondary)}.estimate-help-head{align-items:center;gap:var(--s-2);display:flex}.estimate-help-head strong{font:600 var(--t-body) var(--font-sans);flex:1}.estimate-help-icon{border-radius:var(--r-sm);background:var(--accent-subtle);width:24px;height:24px;color:var(--accent);flex:none;padding:5px}.estimate-help-badge{padding:0 var(--s-1_5,6px);border-radius:var(--r-xs);background:var(--bg-subtle);box-shadow:var(--ring);font:500 11px/18px var(--font-sans);color:var(--text-secondary);flex:none}.estimate-help-legend{margin:var(--s-3) 0 0;border-radius:var(--r-sm);box-shadow:var(--ring);background:var(--line);gap:1px;padding:0;list-style:none;display:grid;overflow:hidden}.estimate-help-legend li{align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-3);background:var(--bg);display:flex}.estimate-help-legend li>span:last-child{min-width:0;font:var(--t-caption) var(--font-sans);color:var(--text-secondary);flex-direction:column;display:flex}.estimate-help-legend strong{font:600 var(--t-caption) var(--font-sans);color:var(--tone-fg)}.estimate-help-sample{border-radius:var(--r-xs);background:var(--bg-subtle);box-shadow:var(--ring);font:400 var(--t-small) var(--font-sans);font-variant-numeric:tabular-nums;color:#141516;flex:none;grid-template-columns:6ch 10px;place-items:center end;gap:4px;padding:2px 6px;display:grid}.estimate-help-sample .arrow{width:10px;height:10px;color:var(--tone)}.estimate-help-tip{gap:var(--s-1);font-size:12px;line-height:16px;display:flex}.estimate-icon{width:calc(13 * var(--px));height:calc(13 * var(--px));margin-top:calc(3.5 * var(--px));color:var(--accent);flex:none}.estimate-cell.band>span,.pinned-band-estimate>span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.estimate-cell.line{transition:background-color var(--dur-1) var(--ease-out);border-bottom:1px solid #e8e8e9;padding:0;display:block}.estimate-cell.line[data-alt]{background:#f8f8f9}.estimate-cell.line[data-highlight]{background:color-mix(in srgb, var(--accent) 16%, transparent)}.estimate-cell.total{background:var(--paper-tint,#efeff0);color:var(--paper-tint-ink,#141516);font-weight:600}.estimate-pill{width:100%;height:100%;color:inherit;background:0 0;border-radius:0}.estimate-pill:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 16%, transparent)}.estimate-pill[data-active]{background:color-mix(in srgb, var(--accent) 20%, transparent)}.estimate-pill .arrow{width:var(--dot);height:var(--dot);color:var(--tone);grid-row:1;justify-self:center}.estimate-pill.tone-none .figure{color:var(--text-secondary)}.estimate-pill.stale :is(.figure,.arrow){opacity:.5}.estimate-pill.error{color:var(--red-fg)}.estimate-pill.error svg{grid-row:1;justify-self:center}.estimate-pill.pending{width:calc(var(--figure) * .8);height:calc(9 * var(--px));margin:calc(11 * var(--px)) calc(var(--pad) + var(--dot) + var(--gap)) 0 auto;border-radius:var(--r-xs);background:var(--line);animation:breathe 1.6s var(--ease-move) infinite alternate;padding:0;display:block}.estimate-pill.pending[data-compact]{width:var(--dot);margin-right:var(--pad)}@media (prefers-reduced-motion:reduce){.estimate-pill.pending{animation:none}}.estimate-outline{pointer-events:none;border-radius:var(--r-xs);box-shadow:0 0 0 1.5px var(--accent-300);background:color-mix(in srgb, var(--accent) 5%, transparent);animation:chrome-in var(--dur-1) var(--ease-out)}.pinned-band{z-index:2;pointer-events:none;--px:calc(1px * var(--scale,1));position:absolute;left:0;right:0;overflow:hidden}.pinned-band>*{position:absolute;top:0;box-shadow:0 1px #2122230f,0 2px 6px #21222314}.pinned-band-bar{pointer-events:auto;cursor:pointer;text-align:left;font:600 calc(14 * var(--px)) / calc(20 * var(--px)) "Inter Variable", Inter, var(--font-sans);border:0;border-radius:0;padding:0;display:block}.pinned-band-bar:hover:not(:disabled){filter:brightness(.97)}.pinned-band-bar:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.pinned-band-bar>span{top:calc(8 * var(--px));white-space:nowrap;text-overflow:ellipsis;position:absolute;overflow:hidden}.pinned-band-bar .code{padding-left:calc(8 * var(--px));font-variant-numeric:tabular-nums}.pinned-band-bar .name{padding:0 calc(8 * var(--px)) 0 calc(4 * var(--px))}.pinned-band-bar .name[data-empty]{opacity:.6;font-style:italic}.pinned-band-estimate{align-items:flex-start;gap:calc(4 * var(--px));padding:calc(8 * var(--px)) calc(8 * var(--px)) 0;color:#141516;font:600 calc(14 * var(--px)) / calc(20 * var(--px)) "Inter Variable", Inter, var(--font-sans);background:#e6e6e8;display:flex}.estimate-card{z-index:3;width:320px;max-height:60vh;padding:var(--s-3) var(--s-4) var(--s-4);background:var(--bg-raised);border-radius:var(--r-md);box-shadow:var(--elev-2);color:var(--text);animation:estimate-card-in var(--dur-2) var(--ease-out);overflow:auto}.estimate-card header{align-items:flex-start;gap:var(--s-2);align-items:center;display:flex}.estimate-card header .code{font:var(--t-caption) var(--font-mono);color:var(--text-secondary);flex:none}.estimate-card h2{min-width:0;font:600 var(--t-small) var(--font-sans);white-space:nowrap;text-overflow:ellipsis;flex:1;margin:0;overflow:hidden}.estimate-nav{align-items:center;gap:var(--s-0_5);flex:none;margin:-4px -8px 0 0;display:flex}.estimate-nav button.icon{width:24px;height:24px}.estimate-nav .count{font:var(--t-caption) var(--font-sans);font-variant-numeric:tabular-nums;color:var(--text-secondary);white-space:nowrap}.estimate-card .label{font:var(--t-caption) var(--font-sans);color:var(--text-secondary)}.estimate-compare{gap:var(--s-3);margin-top:var(--s-3);grid-template-columns:1fr 1fr;display:grid}.estimate-compare>div{align-items:flex-start;gap:var(--s-0_5);flex-direction:column;min-width:0;display:flex}.estimate-compare .figure{font:600 var(--t-title) var(--font-sans);font-variant-numeric:tabular-nums}.estimate-compare .each{font:var(--t-caption) var(--font-sans);font-variant-numeric:tabular-nums;color:var(--text-secondary)}.estimate-stale :is(.estimate-compare .figure,.estimate-bar){opacity:.5}.estimate-bar{margin-top:var(--s-3)}.estimate-bar .track{height:10px;position:relative}.estimate-bar .track:before{content:"";background:var(--line);border-radius:1px;position:absolute;inset:4px 0}.estimate-bar .track>*{position:absolute}.estimate-bar .band{background:var(--line-strong);border-radius:3px;width:60%;height:6px;top:2px;left:20%}.estimate-bar .gap{background:var(--tone);opacity:.5;height:2px;top:4px}.estimate-bar .tick{background:var(--text-secondary);border-radius:1px;width:2px;height:10px;top:0;translate:-50%}.estimate-bar .dot{background:var(--tone);width:10px;height:10px;box-shadow:0 0 0 2px var(--bg-raised);border-radius:50%;top:0;translate:-50%}.estimate-bar .ends{height:16px;margin-top:var(--s-1);font:var(--t-caption) var(--font-sans);font-variant-numeric:tabular-nums;color:var(--text-secondary);position:relative}.estimate-bar .ends span{position:absolute;left:20%;translate:-50%}.estimate-bar .ends span+span{left:80%}.estimate-badge{font:500 var(--t-caption) var(--font-sans);border-radius:var(--r-xs);color:var(--tone-fg);background:var(--tone-bg);white-space:nowrap;padding:1px 6px}.estimate-confidence{font:var(--t-caption) var(--font-sans);color:var(--text-secondary);white-space:nowrap;align-items:center;gap:6px;display:flex}.estimate-confidence .pips{gap:2px;display:flex}.estimate-confidence .pips span{background:var(--line);border-radius:50%;width:5px;height:5px}.estimate-confidence .pips span[data-on]{background:var(--text-secondary)}.estimate-actions{gap:var(--s-2);margin-top:var(--s-3);grid-template-columns:1fr auto;display:grid}.estimate-actions button{height:30px;padding:0 var(--s-3);white-space:nowrap;justify-content:center;font-size:13px}.estimate-error{margin-top:var(--s-3);font:var(--t-small) var(--font-sans);color:var(--red-fg)}.estimate-error p{margin:0 0 var(--s-2)}.estimate-skeleton{gap:var(--s-2);margin-top:var(--s-3);flex-direction:column;display:flex}.estimate-skeleton span{border-radius:var(--r-xs);background:var(--line);height:12px;animation:breathe 1.6s var(--ease-move) infinite alternate}@media (prefers-reduced-motion:reduce){.estimate-skeleton span{animation:none}}:root{--tone-red:var(--red-500);--tone-orange:var(--amber-500);--tone-yellow:var(--yellow-300);--tone-blue:var(--blue-500);--tone-green:var(--green-500);--tone-neutral:var(--neutral-500)}.tone-red{--tone:var(--tone-red);--tone-on:#fff;--tone-fg:var(--red-700);--tone-wash:color-mix(in srgb, var(--tone-red) 10%, transparent)}.tone-orange{--tone:var(--tone-orange);--tone-on:#fff;--tone-fg:var(--amber-700);--tone-wash:color-mix(in srgb, var(--tone-orange) 10%, transparent)}.tone-yellow{--tone:var(--tone-yellow);--tone-on:var(--yellow-900);--tone-fg:var(--yellow-700);--tone-wash:color-mix(in srgb, var(--tone-yellow) 22%, transparent)}.tone-blue{--tone:var(--tone-blue);--tone-on:#fff;--tone-fg:var(--blue-700);--tone-wash:color-mix(in srgb, var(--tone-blue) 9%, transparent)}.tone-green{--tone:var(--tone-green);--tone-on:#fff;--tone-fg:var(--green-700);--tone-wash:color-mix(in srgb, var(--tone-green) 9%, transparent)}.tone-neutral{--tone:var(--tone-neutral);--tone-on:#fff;--tone-fg:var(--neutral-700);--tone-wash:color-mix(in srgb, var(--tone-neutral) 10%, transparent)}.dot-line{height:18px;animation:estimate-in var(--dur-2) var(--ease-out);align-items:center;display:flex}.tone-dot{background:var(--tone);width:18px;height:18px;color:var(--tone-on);font:700 11px/1 var(--font-sans);transition:scale var(--dur-1) var(--ease-out), box-shadow var(--dur-1) var(--ease-out);border-radius:50%;flex:none;place-items:center;padding:0;display:grid}.tone-dot:hover:not(:disabled){background:var(--tone);scale:1.12}.tone-dot[data-active]{box-shadow:0 0 0 2px var(--bg-canvas), 0 0 0 3.5px var(--tone)}.tone-dot[data-small]{width:14px;height:14px;font-size:9px}.tone-dot .glyph{line-height:1}.dot-more{font:500 var(--t-caption) var(--font-sans);color:var(--neutral-700);margin-left:2px}.tone-wash{pointer-events:none;border-radius:var(--r-xs);background:var(--tone-wash);animation:chrome-in var(--dur-1) var(--ease-out)}::highlight(sow-red){text-underline-offset:3px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-line:underline;text-decoration-thickness:1.5px}::highlight(sow-orange){text-underline-offset:3px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-line:underline;text-decoration-thickness:1.5px}::highlight(sow-yellow){text-underline-offset:3px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-line:underline;text-decoration-thickness:1.5px}::highlight(sow-blue){text-underline-offset:3px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-line:underline;text-decoration-thickness:1.5px}::highlight(sow-green){text-underline-offset:3px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-line:underline;text-decoration-thickness:1.5px}::highlight(sow-neutral){text-underline-offset:3px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-line:underline;text-decoration-thickness:1.5px}::highlight(sow-red-note){text-underline-offset:3px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-line:underline;text-decoration-thickness:1.5px}::highlight(sow-orange-note){text-underline-offset:3px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-line:underline;text-decoration-thickness:1.5px}::highlight(sow-yellow-note){text-underline-offset:3px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-line:underline;text-decoration-thickness:1.5px}::highlight(sow-blue-note){text-underline-offset:3px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-line:underline;text-decoration-thickness:1.5px}::highlight(sow-green-note){text-underline-offset:3px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-line:underline;text-decoration-thickness:1.5px}::highlight(sow-neutral-note){text-underline-offset:3px;-webkit-text-decoration-skip-ink:none;text-decoration-skip-ink:none;text-decoration-line:underline;text-decoration-thickness:1.5px}::highlight(sow-red){-webkit-text-decoration-color:var(--tone-red);text-decoration-color:var(--tone-red)}::highlight(sow-red-note){-webkit-text-decoration-color:var(--tone-red);text-decoration-color:var(--tone-red)}::highlight(sow-orange){-webkit-text-decoration-color:var(--tone-orange);text-decoration-color:var(--tone-orange)}::highlight(sow-orange-note){-webkit-text-decoration-color:var(--tone-orange);text-decoration-color:var(--tone-orange)}::highlight(sow-yellow){-webkit-text-decoration-color:var(--yellow-400);text-decoration-color:var(--yellow-400)}::highlight(sow-yellow-note){-webkit-text-decoration-color:var(--yellow-400);text-decoration-color:var(--yellow-400)}::highlight(sow-blue){-webkit-text-decoration-color:var(--tone-blue);text-decoration-color:var(--tone-blue)}::highlight(sow-blue-note){-webkit-text-decoration-color:var(--tone-blue);text-decoration-color:var(--tone-blue)}::highlight(sow-green){-webkit-text-decoration-color:var(--tone-green);text-decoration-color:var(--tone-green)}::highlight(sow-green-note){-webkit-text-decoration-color:var(--tone-green);text-decoration-color:var(--tone-green)}::highlight(sow-neutral){-webkit-text-decoration-color:var(--tone-neutral);text-decoration-color:var(--tone-neutral)}::highlight(sow-neutral-note){-webkit-text-decoration-color:var(--tone-neutral);text-decoration-color:var(--tone-neutral)}::highlight(sow-red-note){text-decoration-style:dotted}::highlight(sow-orange-note){text-decoration-style:dotted}::highlight(sow-yellow-note){text-decoration-style:dotted}::highlight(sow-blue-note){text-decoration-style:dotted}::highlight(sow-green-note){text-decoration-style:dotted}::highlight(sow-neutral-note){text-decoration-style:dotted}::highlight(sow-active){background-color:color-mix(in srgb, var(--accent) 12%, transparent)}::highlight(sow-term){-webkit-text-decoration:underline dotted var(--neutral-500) 1px;text-decoration:underline dotted var(--neutral-500) 1px;text-underline-offset:3px}.suggestion-card{z-index:3;width:300px;padding:var(--s-3) var(--s-4) var(--s-4);background:var(--bg-raised);border-radius:var(--r-md);box-shadow:var(--elev-2);color:var(--text);animation:menu-in var(--dur-1) var(--ease-out)}.suggestion-card header{align-items:center;gap:var(--s-2);display:flex}.suggestion-type{min-width:0;font:500 var(--t-caption) var(--font-sans);color:var(--tone-fg);flex:1;align-items:center;gap:6px;display:flex}.suggestion-nav{align-items:center;gap:var(--s-0_5);flex:none;margin:-4px -8px -4px 0;display:flex}.suggestion-nav .count{margin-right:var(--s-1);font:var(--t-caption) var(--font-sans);font-variant-numeric:tabular-nums;color:var(--text-secondary)}.suggestion-nav button.icon{width:24px;height:24px}.suggestion-card h2{margin:var(--s-2) 0 0;font:600 var(--t-lead) var(--font-sans)}.suggestion-diff,.suggestion-message{margin:var(--s-1) 0 0;font:var(--t-small) var(--font-sans);white-space:pre-wrap;overflow-wrap:anywhere}.suggestion-message{color:var(--text-secondary)}.suggestion-diff del{color:var(--text-secondary);-webkit-text-decoration-color:var(--text-disabled);text-decoration-color:var(--text-disabled)}.suggestion-diff ins{color:var(--accent);margin-left:6px;font-weight:600;text-decoration:none}.suggestion-actions{align-items:center;gap:var(--s-2);margin-top:var(--s-3);flex-wrap:wrap;display:flex}.suggestion-actions button{height:30px;padding:0 var(--s-3);white-space:nowrap;font-size:13px}.suggestion-actions button.ghost{color:var(--text-secondary);background:0 0;font-weight:500}.suggestion-actions button.ghost:hover{background:var(--bg-hover);color:var(--text)}.suggestion-actions button.ghost:first-child{margin-left:calc(-1 * var(--s-3))}.hint-tip{z-index:3;gap:var(--s-2);width:max-content;max-width:280px;padding:var(--s-2) var(--s-3);background:var(--accent-50);border-radius:var(--r-sm);box-shadow:0 0 0 1px var(--accent-200);color:var(--accent-900);pointer-events:none;animation:tip-in var(--dur-2) var(--ease-out);display:flex}.hint-tip:before{content:"";top:-4px;left:var(--s-3);background:var(--accent-50);width:7px;height:7px;box-shadow:-1px -1px 0 0 var(--accent-200);position:absolute;rotate:45deg}.hint-tip .hint-icon{color:var(--accent-600);flex:none;margin-top:3px}.hint-tip p,.hint-term p{margin:0}.hint-tip .hint-message{font:var(--t-small) var(--font-sans);text-wrap:pretty}.hint-example{font:var(--t-caption) var(--font-sans);color:var(--accent-700);margin-top:2px!important}@keyframes tip-in{0%{opacity:0;translate:0 -2px}}@media (prefers-reduced-motion:reduce){@keyframes tip-in{0%{opacity:0}}}.hint-term{z-index:3;width:max-content;max-width:280px;padding:var(--s-2) var(--s-3);pointer-events:none;background:var(--bg-raised);border-radius:var(--r-md);box-shadow:var(--elev-2);color:var(--text);animation:menu-in var(--dur-1) var(--ease-out)}.hint-term-title{font:600 var(--t-caption) var(--font-sans);align-items:center;gap:6px;display:flex}.hint-q{width:14px;height:14px;box-shadow:inset 0 0 0 1px var(--text-secondary);color:var(--text-secondary);font:600 10px/1 var(--font-sans);border-radius:50%;flex:none;place-items:center;display:inline-grid}.hint-term .hint-message{font:var(--t-small) var(--font-sans);color:var(--text-secondary);text-wrap:pretty;margin-top:var(--s-1)!important}.chat-panel{flex-direction:column;flex:1;min-height:0;display:flex}.chat-panel-header{align-items:center;gap:var(--s-2);height:44px;padding:0 var(--s-2) 0 var(--s-4);border-bottom:1px solid var(--line);flex:none;display:flex}.chat-panel-header h2{font:600 var(--t-small) var(--font-sans);flex:1;margin:0}.chat-panel-scroll{gap:var(--s-4);min-height:0;padding:var(--s-4) var(--s-4) var(--s-2);flex-direction:column;flex:1;display:flex;overflow-y:auto}.chat-panel-body{flex-direction:column;flex:1;min-height:0;display:flex}.chat-panel-body>.composer{z-index:1;background:var(--bg);padding:var(--s-2) var(--s-3) var(--s-3);position:sticky;bottom:0}.thread{gap:var(--s-4);flex-direction:column;display:flex}.msg{gap:var(--s-2);flex-direction:column;min-width:0;display:flex}.msg-grouped{margin-top:calc(var(--s-1) - var(--s-4))}.msg-sender{align-items:center;gap:var(--s-2);font:600 var(--t-caption) var(--font-sans);margin:0;display:flex}.msg-avatar{background:var(--primary);width:20px;height:20px;color:var(--on-primary);font:600 11px/1 var(--font-sans);border-radius:50%;flex:none;place-items:center;display:grid}.msg-time{font:400 var(--t-caption) var(--font-sans);font-variant-numeric:tabular-nums;color:var(--neutral-700)}.msg-tool{align-items:flex-start;gap:var(--s-1_5,6px);color:var(--text-secondary);font:var(--t-small) var(--font-sans);margin:0;display:flex}.msg-tool svg{color:var(--accent);flex:none;margin-top:3px}.msg-bubble{max-width:100%;padding:var(--s-2) var(--s-3);border-radius:var(--r-lg);overflow-x:auto}.msg-user{align-self:flex-end;align-items:flex-end;max-width:85%}.msg-user .msg-bubble{background:var(--accent-subtle);border-bottom-right-radius:var(--r-xs)}.msg-assistant{align-items:flex-start}.msg-assistant .msg-bubble{background:var(--bg-subtle);box-shadow:var(--ring);border-bottom-left-radius:var(--r-xs)}.thread-day{text-align:center;font:500 var(--t-caption) var(--font-sans);color:var(--neutral-700);margin:0}.msg-text{overflow-wrap:anywhere}.msg-text.plain{white-space:pre-wrap;margin:0}.msg-text>:first-child{margin-top:0}.msg-text>:last-child{margin-bottom:0}.msg-text :is(p,ul,ol,pre,table){margin:0 0 var(--s-2)}.msg-text :is(ul,ol){padding-left:var(--s-5)}.msg-text li+li{margin-top:var(--s-0_5)}.msg-text :is(h1,h2,h3,h4){margin:var(--s-3) 0 var(--s-1);font:600 var(--t-body) var(--font-sans)}.msg-text a{color:var(--accent)}.msg-text code{font:.9em var(--font-mono);padding:0 var(--s-0_5);border-radius:var(--r-xs);background:var(--bg-subtle)}.msg-text pre{padding:var(--s-2) var(--s-3);border-radius:var(--r-sm);background:var(--bg-subtle);overflow-x:auto}.msg-text pre code{background:0 0;padding:0}.msg-text table{border-collapse:collapse;font:var(--t-small) var(--font-sans)}.msg-text :is(th,td){padding:var(--s-1) var(--s-2);border-bottom:1px solid var(--line);text-align:left}.msg-caret{vertical-align:-2px;background:var(--text);border-radius:1px;width:7px;height:14px;margin-left:2px;animation:1s step-end infinite caret;display:inline-block}@keyframes caret{50%{opacity:0}}@media (prefers-reduced-motion:reduce){.msg-caret{animation:none}}.msg-thinking{color:var(--text-secondary);animation:breathe 1.6s var(--ease-move) infinite alternate;margin:0}.msg-attachments{justify-content:flex-end;gap:var(--s-1);flex-wrap:wrap;display:flex}.answer-rating{margin-top:calc(-1 * var(--s-1));justify-content:flex-end;align-self:stretch;gap:0;height:22px;display:flex}.answer-rating button.icon{border-radius:var(--r-xs);width:22px;height:22px;color:var(--text-disabled);opacity:0;transition:opacity var(--dur-1) var(--ease-out)}.msg:hover .answer-rating button.icon,.answer-rating button.icon:focus-visible{opacity:1}.answer-rating button.icon:hover:not(:disabled){color:var(--text-secondary)}.answer-rating button.icon[aria-pressed=true]{opacity:1;color:var(--text-secondary)}.answer-rating[data-rated] button.icon[aria-pressed=false]{display:none}.msg:hover .answer-rating[data-rated] button.icon[aria-pressed=false]{display:inline-flex}@media (hover:none){.answer-rating button.icon{opacity:1}}.msg-thumb{object-fit:cover;border-radius:var(--r-sm);width:64px;height:64px;box-shadow:var(--ring)}.intake-bubble{gap:var(--s-2);flex-direction:column;display:flex}.intake-progress{font:500 var(--t-caption) var(--font-sans);color:var(--text-secondary);margin:0}.intake-list{gap:var(--s-0_5);font:var(--t-small) var(--font-sans);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.intake-list li{align-items:center;gap:var(--s-1);color:var(--text-secondary);display:flex}.intake-list li[data-state=filled],.intake-list li[data-state=open]{color:var(--text)}.intake-list li[aria-current]{color:var(--text);font-weight:500}.intake-dot{flex:none;place-items:center;width:14px;height:14px;display:inline-grid}.intake-dot:before{content:"";width:6px;height:6px;box-shadow:inset 0 0 0 1.5px var(--line-strong);border-radius:50%}.intake-check{color:var(--accent);flex:none}.intake-tag{font:var(--t-caption) var(--font-sans);color:var(--text-secondary);margin-left:auto}.intake-question{gap:var(--s-1);padding-top:var(--s-2);border-top:1px solid var(--line);flex-direction:column;display:flex}.intake-prompt{margin:0;font-weight:500}.intake-hint{font:var(--t-small) var(--font-sans);color:var(--text-secondary);margin:0}.intake-input{gap:var(--s-1);display:flex}.intake-input input{min-width:0;height:32px;padding:0 var(--s-2);border-radius:var(--r-sm);background:var(--bg-raised);box-shadow:var(--ring);font:var(--t-small) var(--font-sans);color:var(--text);border:0;flex:1}.intake-input input[aria-invalid]{box-shadow:0 0 0 1.5px var(--red-fg)}.intake-answers{gap:var(--s-1);flex-wrap:wrap;display:flex}.intake-answers button,.intake-input button{height:32px;padding:0 var(--s-3);font:500 var(--t-small) var(--font-sans);border-radius:16px}.intake-answers button.ghost{color:var(--text-secondary);box-shadow:none;background:0 0}.intake-answers button.ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.intake-drops{gap:var(--s-2);align-self:stretch;display:flex}.intake-drop{gap:var(--s-0_5);padding:var(--s-2) var(--s-3);border-radius:var(--r-md);box-shadow:inset 0 0 0 1px var(--line-strong);font:500 var(--t-small) var(--font-sans);color:var(--text);cursor:pointer;transition:background var(--dur-1) var(--ease-out);flex-direction:column;flex:1;display:flex}.intake-drop:hover,.intake-drop[data-over]{background:var(--accent-subtle)}.intake-drop:focus-within{box-shadow:inset 0 0 0 1.5px var(--accent)}.intake-drop[data-disabled]{opacity:.5;cursor:default}.intake-drop-hint{font:var(--t-caption) var(--font-sans);color:var(--text-secondary)}.intake-summary{align-items:center;gap:var(--s-1);font:var(--t-small) var(--font-sans);color:var(--text);margin:0;display:flex}.intake-open{color:var(--text-secondary)}.msg-quote{padding:var(--s-1) var(--s-2);border-left:2px solid var(--line-strong);border-radius:0 var(--r-xs) var(--r-xs) 0;background:var(--bg-subtle);font:var(--t-small) var(--font-sans);color:var(--text-secondary);min-width:0;max-width:100%;margin:0}.msg-quote p{text-overflow:ellipsis;margin:0;overflow:hidden}.msg-quote-head{align-items:center;gap:var(--s-1);font:500 var(--t-caption) var(--font-sans);white-space:nowrap;display:flex}.msg-quote-label{color:var(--text);flex:none}.msg-quote-line{text-overflow:ellipsis;min-width:0;overflow:hidden}.msg-quote-head button.icon{border-radius:var(--r-xs);flex:none;width:20px;height:20px;margin:-2px -4px -2px auto}.msg-quote-text{-webkit-line-clamp:2;color:var(--text);-webkit-box-orient:vertical;display:-webkit-box}.msg-user .msg-quote{align-self:flex-end}.composer-quote .msg-quote{border-radius:var(--r-xs)}.chat-tabs{align-items:stretch;gap:var(--s-3);flex:1;align-self:stretch;display:flex}.chat-tabs button[role=tab]{height:auto;font:500 var(--t-small) var(--font-sans);color:var(--text-secondary);background:0 0;border-radius:0;padding:0;box-shadow:inset 0 -2px #0000}.chat-tabs button[role=tab]:hover:not(:disabled){color:var(--text);background:0 0}.chat-tabs button[role=tab][aria-selected=true]{color:var(--text);box-shadow:inset 0 -2px 0 var(--text);font-weight:600}.question-card{gap:var(--s-1);margin:0 var(--s-3);padding:var(--s-2) var(--s-3);border-radius:var(--r-md);background:var(--bg-subtle);box-shadow:var(--ring);flex-direction:column;flex:none;max-height:40%;display:flex;overflow-y:auto}.question-card p{margin:0}.question-card-head{align-items:center;gap:var(--s-1);font:500 var(--t-caption) var(--font-sans);color:var(--text-secondary);display:flex}.question-card-mark{background:var(--yellow-300);width:14px;height:14px;color:var(--yellow-900);font:700 9px/1 var(--font-sans);border-radius:50%;place-items:center;display:grid}.question-card-text{font-weight:500}.question-card-meta{font:var(--t-caption) var(--font-sans);color:var(--text-secondary)}.question-card-answers{gap:var(--s-1);padding-top:var(--s-1);flex-wrap:wrap;display:flex}.question-card-answers button{height:28px;padding:0 var(--s-3);font:500 var(--t-small) var(--font-sans);border-radius:14px}.question-card-answers button.ghost{color:var(--text-secondary);box-shadow:none;padding:0 var(--s-2);background:0 0}.question-card-answers button.ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text)}.question-card-pending{margin:var(--s-1) 0 0;padding:var(--s-1) 0 0 var(--s-4);border-top:1px solid var(--line);font:var(--t-small) var(--font-sans);color:var(--text-secondary)}.question-card-pending li+li{margin-top:var(--s-0_5)}.project-panel{gap:var(--s-5);font:var(--t-small) var(--font-sans);flex-direction:column;display:flex}.project-section{gap:var(--s-2);flex-direction:column;display:flex}.project-section h3{font:600 var(--t-caption) var(--font-sans);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;margin:0}.project-section p{margin:0}.project-empty{color:var(--text-secondary)}.project-facts{align-items:center;gap:var(--s-0_5) var(--s-3);grid-template-columns:max-content 1fr;margin:0;display:grid}.project-facts dt{color:var(--text-secondary)}.project-facts dd{min-width:0;margin:0}button.project-fact{width:100%;height:28px;padding:0 var(--s-1);margin-left:calc(-1 * var(--s-1));border-radius:var(--r-xs);box-shadow:none;font:var(--t-small) var(--font-sans);color:var(--text);text-align:left;text-overflow:ellipsis;white-space:nowrap;background:0 0;justify-content:flex-start;overflow:hidden}button.project-fact:hover:not(:disabled){background:var(--bg-hover)}.project-fact-input{width:100%;height:28px;padding:0 var(--s-1);margin-left:calc(-1 * var(--s-1));border-radius:var(--r-xs);background:var(--bg-raised);box-shadow:0 0 0 1px var(--accent-300);font:var(--t-small) var(--font-sans);color:var(--text);border:0}.project-fact-input[aria-invalid]{box-shadow:0 0 0 1.5px var(--red-fg)}.project-list{gap:var(--s-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.project-list>li{align-items:flex-start;gap:var(--s-0_5);flex-direction:column;display:flex}.project-list>li.project-row{align-items:flex-start;gap:var(--s-2);flex-direction:row}.project-row{align-items:center;gap:var(--s-2);width:100%;display:flex}.project-row .project-text{flex:1;min-width:0}.project-row button.icon{border-radius:var(--r-xs);width:24px;height:24px;color:var(--text-secondary);flex:none;margin-top:-2px}.project-id{font:500 var(--t-caption) var(--font-mono);color:var(--text-secondary);flex:none}.project-name{flex:1;min-width:0;font-weight:500}.project-chip{border-radius:var(--r-xs);font:500 var(--t-caption) var(--font-sans);color:var(--tone-fg);flex:none;padding:1px 6px}.project-chip.tone-yellow{background:var(--yellow-100)}.project-chip.tone-blue{background:var(--blue-100)}.project-chip.tone-green{background:var(--green-100)}.project-chip.tone-neutral{background:var(--neutral-100)}.project-detail{color:var(--text)}.project-basis,.project-blocking{color:var(--text-secondary)}.project-evidence{width:100%}button.project-evidence-row{align-items:flex-start;gap:var(--s-2);width:100%;height:auto;padding:var(--s-1);margin:0 calc(-1 * var(--s-1));border-radius:var(--r-sm);box-shadow:none;font:var(--t-small) var(--font-sans);color:var(--text);text-align:left;background:0 0;display:flex}button.project-evidence-row:hover:not(:disabled){background:var(--bg-hover)}button.project-evidence-row:disabled{opacity:1;cursor:default}.project-evidence-thumb{border-radius:var(--r-xs);background:var(--bg-subtle);object-fit:cover;width:40px;height:40px;color:var(--red-fg);flex:none;justify-content:center;align-items:center;display:flex}.project-evidence-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.project-evidence-text .project-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-evidence-detail{gap:var(--s-1);padding:0 var(--s-1) var(--s-1) calc(40px + var(--s-3));flex-direction:column;display:flex}.project-evidence-list{padding-left:var(--s-4);color:var(--text);flex-direction:column;gap:2px;margin:0;display:flex}button.project-link{height:auto;box-shadow:none;font:var(--t-caption) var(--font-sans);color:var(--accent);text-align:left;background:0 0;padding:0}button.project-link:hover:not(:disabled){background:0 0;text-decoration:underline}.attachment-chip{align-items:center;gap:var(--s-1);max-width:220px;height:32px;padding:0 var(--s-1);border-radius:var(--r-sm);background:var(--bg-subtle);box-shadow:var(--ring);font:var(--t-caption) var(--font-sans);color:var(--text);display:inline-flex}.attachment-chip img{object-fit:cover;border-radius:var(--r-xs);flex:none;width:24px;height:24px}.attachment-chip svg{color:var(--red-fg);flex:none}.attachment-chip .name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.attachment-chip button.icon{border-radius:var(--r-xs);flex:none;width:20px;height:20px}.composer{gap:var(--s-1);flex-direction:column;display:flex}.composer-error{font:var(--t-small) var(--font-sans);color:var(--red-fg);margin:0}.composer-box{gap:var(--s-1);padding:var(--s-2);border-radius:var(--r-lg);background:var(--bg-raised);box-shadow:var(--elev-1);transition:box-shadow var(--dur-1) var(--ease-out), background var(--dur-1) var(--ease-out);flex-direction:column;display:flex}.composer-box:focus-within{box-shadow:0 0 0 1px var(--line-strong), 0 1px 2px #2122230f}.composer[data-dragging] .composer-box{background:var(--accent-subtle);box-shadow:0 0 0 2px var(--accent)}.composer-files{gap:var(--s-1);flex-wrap:wrap;display:flex}.composer textarea{font:inherit;min-height:28px;padding:var(--s-1) var(--s-1) 0;resize:none;color:inherit;background:0 0;border:0;outline:none}.composer textarea:focus-visible{box-shadow:none}.composer textarea::placeholder{color:var(--text-disabled)}.composer-actions{align-items:center;gap:var(--s-1);display:flex}.composer-actions .spacer{flex:1}.composer-actions button.icon{border-radius:50%}button.composer-send{border-radius:50%;justify-content:center;width:32px;padding:0}.chat-signin-form .composer-box{flex-direction:row;align-items:center}.chat-signin-form input{padding:0 var(--s-1);border:0}.chat-signin-form input:focus-visible{box-shadow:none}.chat-signin-form input::placeholder{color:var(--text-disabled)}.chat-signin-form button{border-radius:16px}.chat-signin-actions{gap:var(--s-2);flex-flow:wrap}.chat-signin-actions button{border-radius:16px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.feedback-dialog{width:min(560px, calc(100vw - 2 * var(--s-4)));border-radius:var(--r-lg);background:var(--bg-raised);box-shadow:var(--elev-3);color:var(--text);border:0;padding:0}.feedback-dialog[open]{animation:dialog-in var(--dur-2) var(--ease-out)}.feedback-dialog::backdrop{background:#21222333}@keyframes dialog-in{0%{opacity:0;scale:.98}}@media (prefers-reduced-motion:reduce){@keyframes dialog-in{0%{opacity:0}}}.feedback-body{gap:var(--s-4);padding:var(--s-5) var(--s-5) var(--s-4);flex-direction:column;display:flex}.feedback-header{align-items:center;gap:var(--s-2);margin-right:calc(-1 * var(--s-2));display:flex}.feedback-header h2{font:600 var(--t-title) var(--font-sans);flex:1;margin:0}.feedback-lead{font:var(--t-body) var(--font-sans);color:var(--text-secondary);text-wrap:pretty;margin:0}.feedback-email{color:var(--text);align-items:center;gap:2px;font-weight:500;text-decoration:none;display:inline-flex}.feedback-email:hover{text-decoration:underline}.feedback-body textarea{font:inherit;padding:var(--s-3);border-radius:var(--r-md);border:1px solid var(--line-strong);color:inherit;resize:vertical;background:0 0;min-height:140px}.feedback-body textarea::placeholder{color:var(--text-disabled)}.feedback-error{font:var(--t-small) var(--font-sans);color:var(--red-fg);margin:0}.feedback-actions{justify-content:flex-end;gap:var(--s-2);display:flex}.feedback-actions button{height:36px;padding:0 var(--s-5);border-radius:18px}.menu{z-index:10;min-width:200px;padding:var(--s-1);background:var(--bg-raised);border-radius:var(--r-md);box-shadow:var(--elev-2);animation:menu-in var(--dur-2) var(--ease-out);flex-direction:column;display:flex;position:absolute}@keyframes menu-in{0%{opacity:0;translate:0 -4px}}@media (prefers-reduced-motion:reduce){@keyframes menu-in{0%{opacity:0}}}.menu button{height:28px;padding:0 var(--s-2);gap:var(--s-2);border-radius:var(--r-xs);color:var(--text);font-weight:400;font:var(--t-small) var(--font-sans);white-space:nowrap;background:0 0;justify-content:flex-start}.menu button:hover:not(:disabled),.menu button:focus-visible{background:var(--bg-hover);box-shadow:none}.menu button.destructive{color:var(--red-fg)}.menu button.destructive:hover:not(:disabled),.menu button.destructive:focus-visible{background:var(--red-bg)}.menu .menu-check{width:12px;color:var(--accent);font-weight:600}.menu .menu-label{text-align:left;flex:1}.menu kbd{font:var(--t-caption) var(--font-sans);color:var(--text-secondary)}.menu-separator{height:1px;margin:var(--s-1) calc(-1 * var(--s-1));background:var(--line)}.address-suggestions{z-index:10;max-width:420px;padding:var(--s-1);background:var(--bg-raised);border-radius:var(--r-md);box-shadow:var(--elev-2);animation:menu-in var(--dur-2) var(--ease-out)}.address-suggestions ul{margin:0;padding:0;list-style:none}.address-suggestions li{align-items:baseline;gap:var(--s-2);padding:var(--s-1) var(--s-2);border-radius:var(--r-xs);font:var(--t-small) var(--font-sans);cursor:pointer;white-space:nowrap;display:flex}.address-suggestions li[aria-selected=true]{background:var(--bg-hover)}.address-street{color:var(--text)}.address-place{color:var(--text-secondary);text-overflow:ellipsis;overflow:hidden}.address-credit{margin:var(--s-1) var(--s-2) 0;font:var(--t-micro) var(--font-sans);color:var(--text-disabled)}.desk-overlay>:is(.suggestion-card[data-fixed],.estimate-card){position:fixed}
