@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-vietnamese-wdth-normal-rJmnGBSt.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-ext-wdth-normal-7khWdh9v.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Archivo Variable;font-style:normal;font-display:swap;font-weight:100 900;font-stretch:62% 125%;src:url(/assets/archivo-latin-wdth-normal-DY7AcnAa.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-ext-wght-normal-DjL33-gN.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-cyrillic-wght-normal-BEAKL7Jp.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-vietnamese-wght-normal-6IgcOCM7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-ext-wght-normal-DC-KSUi6.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-latin-wght-normal-BgDaEnEv.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-ext-wght-normal-X_5orZeX.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-cyrillic-wght-normal-DiZS0aHC.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-symbols2-wght-normal-CO5SzqOn.woff2) format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-vietnamese-wght-normal-DadHysG0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-ext-wght-normal-Bwz-egvJ.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/assets/geist-mono-latin-wght-normal-XN7g48iV.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #000000;--surface: #0e0e0e;--surface-raised: #161616;--border: #262626;--border-strong: #3a3a3a;--text: #f2f2f0;--text-muted: #8e8e8c;--text-faint: #7c7c7a;--accent: #4c8dff;--on-accent: #000000;--primary: #f2f2f0;--on-primary: #000000;--danger: #ff6a55;--font-display: "Archivo Variable", "Archivo", "Helvetica Neue", Arial, sans-serif;--font-sans: "Geist Variable", "Geist", system-ui, sans-serif;--font-mono: "Geist Mono Variable", "Geist Mono", ui-monospace, monospace;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 20px;--radius-pill: 999px;color-scheme:dark}*{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}body{background:var(--bg);color:var(--text);font-family:var(--font-sans);font-size:15px;line-height:22px;font-feature-settings:"tnum";-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{color:var(--text)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}h1,h2,h3{margin:0;font-weight:600}h1{font-size:48px;line-height:52px;font-weight:300;letter-spacing:-.03em}h2{font-size:22px;line-height:28px;font-weight:400;letter-spacing:-.01em}h3{font-size:15px;font-weight:500}p{margin:0}.mono{font-family:var(--font-mono);font-size:13px}.muted{color:var(--text-muted)}.faint{color:var(--text-faint)}.label{font-family:var(--font-display);font-stretch:125%;font-size:11px;line-height:16px;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--text-muted)}.amount{text-align:right;white-space:nowrap}.in{color:var(--accent)}.danger{color:var(--danger)}.num-xl{font-size:40px;line-height:44px;font-weight:250;letter-spacing:-.02em}.num-hero{white-space:nowrap;font-size:clamp(48px,14vw,188px);line-height:.95;font-weight:150;letter-spacing:-.05em}.num-l{font-size:28px;line-height:32px;font-weight:250}.app{min-height:100vh;display:flex;flex-direction:column}.top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 24px;padding:18px 40px;border-bottom:1px solid var(--border)}.wordmark{font-family:var(--font-display);font-stretch:125%;font-weight:600;font-size:14px;letter-spacing:.42em;color:var(--text)}.wordmark:hover{color:var(--text)}.nav{display:flex;flex-wrap:wrap;gap:4px}.nav a{min-height:44px;display:inline-flex;align-items:center;gap:8px;padding:0 14px;color:var(--text-muted);font-size:14px;border-bottom:1px solid transparent}.nav a:hover{color:var(--text)}.nav a.active{color:var(--text);border-bottom-color:var(--text)}.nav .count{font-size:11px;font-weight:600;line-height:16px;padding:1px 7px;border-radius:var(--radius-pill);background:var(--accent);color:var(--on-accent)}.top-right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.top-right select{width:auto;min-height:36px;border-radius:var(--radius-pill)}.switch{display:flex;padding:3px;border-radius:var(--radius-pill);border:1px solid var(--border)}.switch a{padding:6px 14px;border-radius:var(--radius-pill);color:var(--text-muted);font-size:13px}.switch a.active{background:var(--surface-raised);color:var(--text)}.me{position:relative}.me>summary{list-style:none;width:44px;height:44px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--surface);display:grid;place-items:center;font-size:13px;cursor:pointer}.me>summary::-webkit-details-marker{display:none}.me .menu{position:absolute;right:0;top:52px;z-index:10;min-width:240px;padding:16px;display:flex;flex-direction:column;gap:10px;background:var(--surface-raised);border:1px solid var(--border-strong);border-radius:var(--radius-md)}.main{width:100%;max-width:1280px;margin:0 auto;padding:40px 40px 72px;display:flex;flex-direction:column;gap:28px}@media (max-width: 820px){.top{padding:14px 16px}.main{padding:28px 16px 56px}}.page-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px}.page-head .eyebrow{margin-bottom:6px}.row{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.grow{flex:1}.stack{display:flex;flex-direction:column;gap:12px}.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.split{display:flex;flex-wrap:wrap;gap:20px;align-items:flex-start}.split>.pane{flex:1 1 420px;min-width:0}.split>.pane.doc{flex:1 1 340px;position:sticky;top:20px}.split>.pane.work{flex:1.6 1 560px}.split>.pane.work td{padding-left:10px;padding-right:10px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:20px;display:flex;flex-direction:column;gap:12px}.card.raised{background:var(--surface-raised);border-color:var(--border-strong)}.card.attention{border-color:var(--accent)}.empty{padding:40px 20px;text-align:center;color:var(--text-muted);border:1px dashed var(--border-strong);border-radius:var(--radius-lg)}.notice{padding:12px 16px;border-radius:var(--radius-md);background:var(--surface-raised);border:1px solid var(--border);font-size:14px}.notice.warn{border-color:var(--accent)}.notice.error{border-color:var(--danger);color:var(--text)}.chip{display:inline-flex;align-items:center;gap:6px;font-size:12px;line-height:16px;padding:3px 8px;border-radius:var(--radius-sm);background:var(--surface-raised);color:var(--text-muted);white-space:nowrap}.chip.accent{background:transparent;border:1px solid var(--accent);color:var(--accent)}.chip.danger{background:transparent;border:1px solid var(--danger);color:var(--danger)}.chip.ok{color:var(--text)}.table-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}table{width:100%;border-collapse:collapse}th{text-align:left;font-family:var(--font-display);font-stretch:125%;font-size:10px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--text-muted);padding:14px 16px;white-space:nowrap}td{padding:14px 16px;border-top:1px solid var(--border);vertical-align:top}tr.click{cursor:pointer}tr.click:hover td{background:var(--surface-raised)}tfoot td{border-top:1px solid var(--border-strong);font-weight:500}button,.btn{font:inherit;font-size:14px;min-height:44px;padding:0 20px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:transparent;color:var(--text);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;white-space:nowrap}button:hover,.btn:hover{background:var(--surface-raised);color:var(--text)}button.primary,.btn.primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary);font-weight:500}button.primary:hover,.btn.primary:hover{background:var(--primary);color:var(--on-primary)}button.primary:hover{filter:brightness(1.08)}button.ghost{border-color:transparent;color:var(--text-muted)}button.small,.btn.small{min-height:34px;padding:0 14px;font-size:13px}button:disabled{opacity:.45;cursor:not-allowed}button.option{justify-content:flex-start;text-align:left;white-space:normal;min-height:40px;padding:8px 12px}button.option.chosen{border-color:var(--accent);color:var(--accent)}input,select,textarea{font:inherit;font-size:14px;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-sm);min-height:44px;padding:0 12px;width:100%}textarea{padding:8px 10px;min-height:72px}input.cell,select.cell{min-height:34px;background:transparent;border-color:var(--border)}select option,select optgroup{background:var(--surface-raised);color:var(--text)}select option:disabled,select option[value=""]{color:var(--text-muted)}input.num{text-align:right}label.field{display:flex;flex-direction:column;gap:8px;font-family:var(--font-display);font-stretch:125%;font-size:10px;font-weight:500;letter-spacing:.28em;text-transform:uppercase;color:var(--text-muted)}label.field>input,label.field>select,label.field>textarea{font-family:var(--font-sans);font-stretch:100%;letter-spacing:0;text-transform:none;font-weight:400}.form{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));align-items:end}.auth{min-height:100vh;display:grid;place-items:center;padding:24px 16px}.auth .box{width:100%;max-width:440px;display:flex;flex-direction:column;gap:20px}.auth .logo{display:flex;justify-content:center}.auth .logo{font-family:var(--font-display);font-stretch:125%;font-weight:600;font-size:18px;letter-spacing:.42em}.drop{border:1px dashed var(--border-strong);border-radius:var(--radius-lg);padding:56px 20px;text-align:center;display:flex;flex-direction:column;gap:12px;align-items:center;background:var(--surface)}.drop.over{border-color:var(--accent);background:var(--surface-raised)}.preview{width:100%;height:78vh;min-height:520px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface)}.preview img{max-width:100%}.question{border:1px solid var(--accent);border-radius:var(--radius-lg);padding:16px;display:flex;flex-direction:column;gap:10px;background:var(--surface)}.question.done{border-color:var(--border)}.suggest{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.suggest button{min-height:26px;font-size:12px;padding:0 8px;border-radius:var(--radius-sm)}.suggest button.on{border-color:var(--accent);color:var(--accent)}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--accent);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spinner{animation:none}}.tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);flex-wrap:wrap}.tabs a,.tabs button{border:0;border-bottom:2px solid transparent;border-radius:0;padding:8px 12px;min-height:40px;color:var(--text-muted);background:transparent}.tabs .active{color:var(--text);border-bottom-color:var(--accent)}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.stats>div{padding:22px 24px;display:flex;flex-direction:column;gap:6px;border-left:1px solid var(--border)}.stats>div:first-child{border-left:0;padding-left:0}@media (max-width: 820px){.stats>div{border-left:0;padding:18px 0;border-top:1px solid var(--border)}.stats>div:first-child{border-top:0}}.stats small{font-size:15px;color:var(--text-muted);letter-spacing:0}.needs{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:20px;padding:22px 26px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.lang select{width:auto;min-height:36px;border-radius:var(--radius-pill);padding:0 12px}.auth{position:relative}.line-row{display:flex;justify-content:space-between;gap:12px;border-bottom:1px solid var(--border);padding-bottom:12px}.num-big{font-size:clamp(48px,8vw,96px);line-height:1;font-weight:150;letter-spacing:-.04em}.drop{padding:72px 24px;gap:16px;border-radius:var(--radius-lg)}.drop svg{color:var(--text-muted)}.drop-title{font-size:clamp(28px,4vw,44px);line-height:1.1;font-weight:200;letter-spacing:-.03em}.rise{animation:rise .7s cubic-bezier(.2,.7,.2,1) both;animation-delay:calc(var(--i, 0) * 90ms)}@keyframes rise{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.draw{stroke-dasharray:1;stroke-dashoffset:1;animation:draw 1.6s cubic-bezier(.3,.6,.2,1) .25s forwards}@keyframes draw{to{stroke-dashoffset:0}}.fade-late{opacity:0;animation:fade .8s ease 1.6s forwards}@keyframes fade{to{opacity:1}}@media (prefers-reduced-motion: reduce){.rise,.fade-late{animation:none;opacity:1;transform:none}.draw{animation:none;stroke-dashoffset:0}}.empty-art{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:8px 16px 32px}.empty-art img{width:min(480px,100%);height:auto;-webkit-mask-image:radial-gradient(ellipse 48% 50% at 50% 50%,#000 30%,transparent 78%);mask-image:radial-gradient(ellipse 48% 50% at 50% 50%,#000 30%,transparent 78%)}.empty-art h2{font-size:28px;line-height:34px;font-weight:250;letter-spacing:-.02em}.drop{position:relative;overflow:hidden;background:#000;border-color:var(--border-strong);transition:border-color .3s,box-shadow .3s}.drop-art{width:min(420px,80%);height:auto;margin-bottom:-8px;opacity:.9;transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .4s;-webkit-mask-image:radial-gradient(ellipse 52% 55% at 50% 50%,#000 35%,transparent 80%);mask-image:radial-gradient(ellipse 52% 55% at 50% 50%,#000 35%,transparent 80%)}.drop.over{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 0 80px -10px color-mix(in srgb,var(--accent) 55%,transparent)}.drop.over .drop-art{transform:scale(1.04) translateY(-4px);filter:brightness(1.25)}.auth{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(360px,1fr);place-items:stretch;padding:0;min-height:100vh}.auth-hero{position:relative;overflow:hidden;background:#000;min-height:100vh}.auth-hero video,.auth-hero img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.auth-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 55%,#000 100%),linear-gradient(0deg,rgba(0,0,0,.85) 0%,transparent 45%)}.auth-copy{position:absolute;left:56px;bottom:56px;right:56px;z-index:1;display:flex;flex-direction:column;gap:14px;max-width:620px}.auth-copy .wordmark{font-size:15px}.auth-copy h2{font-size:clamp(36px,4.2vw,64px);line-height:1.02;font-weight:200;letter-spacing:-.04em}.auth-copy h2 span{display:block;color:var(--text-muted)}.auth-copy p{color:var(--text-muted);max-width:460px}.auth-panel{display:grid;place-items:center;padding:72px 24px 40px;position:relative}.auth .box{width:100%;max-width:400px}.auth .lang{position:absolute;top:18px;right:20px}@media (max-width: 900px){.auth{grid-template-columns:1fr}.auth-hero{min-height:44vh}.auth-copy{left:20px;right:20px;bottom:20px}.auth-copy p{display:none}}.page-head{animation:rise .6s cubic-bezier(.2,.7,.2,1) both}.top{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 72%,transparent);backdrop-filter:blur(18px) saturate(1.4);-webkit-backdrop-filter:blur(18px) saturate(1.4)}.needs{box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 22%,transparent),0 30px 80px -40px color-mix(in srgb,var(--accent) 60%,transparent)}@media (prefers-reduced-motion: reduce){.page-head{animation:none}}.nav a.ai{color:var(--accent)}.nav a.ai.active{color:var(--text);border-bottom-color:var(--accent)}.chat{position:relative;display:flex;flex-direction:column;gap:20px;min-height:calc(100vh - 180px);max-width:920px;width:100%;margin:0 auto}.thread{flex:1;display:flex;flex-direction:column;gap:18px;padding-bottom:8px}.chat-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:14px;padding:8px 0 24px}.chat-empty img{width:min(360px,80%);height:auto;-webkit-mask-image:radial-gradient(ellipse 48% 50% at 50% 50%,#000 30%,transparent 78%);mask-image:radial-gradient(ellipse 48% 50% at 50% 50%,#000 30%,transparent 78%)}.chat-empty p{max-width:560px}.chat-try{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:720px}.chat-try button{white-space:normal;text-align:left;min-height:40px}.bubble{display:flex;flex-direction:column;gap:8px;max-width:760px}.bubble .who{font-family:var(--font-display);font-stretch:125%;font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--text-muted)}.bubble.user{align-self:flex-end;align-items:flex-end}.bubble.user .md{background:var(--surface-raised);border:1px solid var(--border);border-radius:18px 18px 4px;padding:12px 16px;white-space:pre-wrap}.bubble.assistant{align-self:flex-start}.bubble.assistant .who{color:var(--accent)}.bubble.err .md{color:var(--text-muted)}.md{font-size:15px;line-height:1.6;display:flex;flex-direction:column;gap:10px}.md p,.md ul,.md ol{margin:0}.md ul,.md ol{padding-left:20px;display:flex;flex-direction:column;gap:4px}.md h3{font-size:16px}.md code{font-family:var(--font-mono);font-size:13px;background:var(--surface-raised);padding:1px 6px;border-radius:6px}.md-table table{font-size:14px}.md-table td,.md-table th{padding:10px 12px}.chips{display:flex;flex-wrap:wrap;gap:8px}.fchip{display:inline-flex;align-items:center;gap:8px;max-width:100%;min-height:40px;padding:6px 12px;border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border-strong);color:var(--text);font-size:13px;text-align:left;white-space:normal}.fchip.made{border-color:var(--accent);box-shadow:0 0 30px -12px var(--accent)}.fchip.bad{border-color:var(--danger)}.fchip .fname{font-family:var(--font-mono);font-size:12px;overflow-wrap:anywhere}.fchip .transcript{font-style:italic;max-width:520px}.fchip .x{min-height:28px;padding:0 8px;border:0;color:var(--text-muted)}.composer{position:sticky;bottom:16px;display:flex;flex-direction:column;gap:10px;padding:10px;background:color-mix(in srgb,var(--surface) 88%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid var(--border-strong);border-radius:24px;box-shadow:0 30px 80px -30px #000,0 0 0 1px color-mix(in srgb,var(--accent) 12%,transparent)}.composer-row{display:flex;align-items:flex-end;gap:6px}.composer textarea{flex:1;min-height:44px;max-height:200px;resize:none;border:0;background:transparent;padding:11px 8px;font-size:15px;line-height:22px}.composer textarea:focus-visible{outline:none}button.icon{width:44px;min-height:44px;padding:0;border-color:transparent;color:var(--text-muted)}button.icon:hover{color:var(--text)}button.icon.rec{width:auto;padding:0 12px;color:var(--text);border-color:var(--accent);gap:8px}.rec .dot{width:10px;height:10px;border-radius:99px;background:var(--accent);animation:pulse 1.2s ease-in-out infinite}@keyframes pulse{50%{opacity:.3;transform:scale(.8)}}button.send{width:44px;padding:0}.thinking{display:inline-flex;align-items:center;gap:4px;color:var(--text-muted)}.thinking i{width:6px;height:6px;border-radius:99px;background:var(--accent);animation:pulse 1s ease-in-out infinite}.thinking i:nth-child(2){animation-delay:.15s}.thinking i:nth-child(3){animation-delay:.3s;margin-right:6px}.drop-veil{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:grid;place-items:center;background:color-mix(in srgb,#000 70%,transparent);border:2px dashed var(--accent);font-size:22px;font-weight:300;pointer-events:none}@media (prefers-reduced-motion: reduce){.rec .dot,.thinking i{animation:none}}
