@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/a1f87af3f44fadbb-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/86f65e8637cc94e3-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/39f449c8730c2295-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/9fabb9c65b63d798-s.woff2) format("woff2");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:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/f9e1dbe9676d9bb6-s.woff2) format("woff2");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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Manrope;font-style:normal;font-weight:200 800;font-display:swap;src:url(/_next/static/media/8760c4774489e4ba-s.p.woff2) format("woff2");unicode-range:u+00??,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:Manrope Fallback;src:local("Arial");ascent-override:103.31%;descent-override:29.07%;line-gap-override:0.00%;size-adjust:103.19%}.__className_855f89{font-family:Manrope,Manrope Fallback;font-style:normal}.__variable_855f89{--font-manrope:"Manrope","Manrope Fallback"}@font-face{font-family:Sora;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c5f10e9e72d35c52-s.woff2) format("woff2");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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Sora;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/3dc379dc9b5dec12-s.p.woff2) format("woff2");unicode-range:u+00??,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:Sora;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c5f10e9e72d35c52-s.woff2) format("woff2");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-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Sora;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/3dc379dc9b5dec12-s.p.woff2) format("woff2");unicode-range:u+00??,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:Sora Fallback;src:local("Arial");ascent-override:85.29%;descent-override:25.50%;line-gap-override:0.00%;size-adjust:113.73%}.__className_33eec2{font-family:Sora,Sora Fallback;font-style:normal}.__variable_33eec2{--font-sora:"Sora","Sora Fallback"}

/*! tailwindcss v4.3.5 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial}}}@layer theme{:host,:root{--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,::backdrop,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}:host,html{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue","Noto Sans",Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}menu,ol,ul{list-style:none}audio,canvas,embed,iframe,img,object,svg,video{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,optgroup,select,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.block{display:block}.flex{display:flex}.hidden{display:none}.inline{display:inline}.border{border-style:var(--tw-border-style);border-width:1px}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal, ) var(--tw-slashed-zero, ) var(--tw-numeric-figure, ) var(--tw-numeric-spacing, ) var(--tw-numeric-fraction, )}}:root{--bg:#f3f4f6;--surface:#fff;--surface2:#ebedf0;--ink:#171b21;--muted:#5b6472;--line:#dde1e6;--accent:#0e6b5c;--accent-ink:#fff;--accent-soft:#e0f0ec;--heat:#b45309;--heat-soft:#fbeadb;--light-on:#b98a00;--light-soft:#faf0d7;--ok:#1a7f4b;--warn:#b45309;--crit:#b3261e;--demo:#6d28d9;--demo-soft:#ede6fb;--chart:#0e6b5c;--shadow:0 1px 2px #171b210f,0 4px 16px #171b210f}@media (prefers-color-scheme:dark){:root{--bg:#101318;--surface:#181d24;--surface2:#1f2630;--ink:#e9edf2;--muted:#9aa5b2;--line:#2a323d;--accent:#3fb79e;--accent-ink:#0c1512;--accent-soft:#16352e;--heat:#e8964a;--heat-soft:#3a2a18;--light-on:#e3b341;--light-soft:#3a3118;--ok:#4cc383;--warn:#e8964a;--crit:#f2766e;--demo:#b79bf0;--demo-soft:#2c2342;--chart:#3fb79e;--shadow:0 1px 2px #0000004d,0 4px 16px #00000040;color-scheme:dark}}*{box-sizing:border-box}body,html{height:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-manrope),system-ui,sans-serif;margin:0;font-size:15px;line-height:1.5}h1,h2,h3{font-family:var(--font-sora),var(--font-manrope),sans-serif;text-wrap:balance;margin:0}button{font:inherit;cursor:pointer;background:0 0;border:none;padding:0}a,button{color:inherit}a{text-decoration:none}.app{height:100dvh;min-height:0}.app,.rail{display:flex}.rail{border-right:1px solid var(--line);background:var(--surface);flex-direction:column;flex:none;gap:4px;width:232px;padding:20px 12px}.brand{align-items:center;gap:10px;padding:4px 10px 18px;display:flex}.brand .logo{background:var(--accent);width:34px;height:34px;color:var(--accent-ink);border-radius:10px;flex:none;place-items:center;display:grid}.brand b{font-family:var(--font-sora);font-size:16px}.brand small{letter-spacing:.08em;text-transform:uppercase;font-size:11px;display:block}.brand small,.nav-btn{color:var(--muted);font-weight:600}.nav-btn{text-align:left;border-radius:9px;align-items:center;gap:11px;padding:9px 12px;display:flex}.nav-btn svg{flex:none}.nav-btn:hover{background:var(--surface2);color:var(--ink)}.nav-btn.on{background:var(--accent-soft);color:var(--accent)}.rail .spacer{flex:1}.demo-chip{background:var(--demo-soft);color:var(--demo);letter-spacing:.05em;border-radius:999px;align-items:center;gap:7px;padding:6px 11px;font-size:12px;font-weight:700;display:inline-flex}.demo-chip .dot{background:var(--demo);border-radius:50%;width:7px;height:7px;animation:pulse 2s infinite}@keyframes pulse{50%{opacity:.5}}@media (prefers-reduced-motion:reduce){.demo-chip .dot{animation:none}}.main{flex:1;min-width:0;overflow-y:auto}.wrap{max-width:1020px;margin:0 auto;padding:22px 16px 110px}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px;display:flex}.topbar h1{font-size:24px}.topbar .sub{color:var(--muted);margin-top:2px;font-size:13px}.card{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px}.tiles{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.tile{padding:14px 16px}.tile .k{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:12px;font-weight:700}.tile .v{font-variant-numeric:tabular-nums;margin-top:2px;font-size:26px;font-weight:800}.tile .v small{color:var(--muted);font-size:13px;font-weight:600}.sec{margin-top:26px}.sec-head{justify-content:space-between;align-items:baseline;gap:10px;margin-bottom:12px;display:flex}.sec-head h2{font-size:17px}.sec-head a,.sec-head button{color:var(--accent);font-size:13px;font-weight:700}.grid2{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.grid2,.grid3{gap:12px;display:grid}.grid3{grid-template-columns:repeat(auto-fill,minmax(200px,1fr))}.room{text-align:left;flex-direction:column;gap:10px;padding:16px;display:flex}.room:hover{border-color:var(--accent)}.rh{justify-content:space-between;align-items:center;gap:8px;display:flex}.room h3{font-size:15px}.room .temp{font-variant-numeric:tabular-nums;font-weight:800}.meta{flex-wrap:wrap;gap:8px;font-size:13px;display:flex}.meta,.pill{color:var(--muted)}.pill{background:var(--surface2);border-radius:999px;align-items:center;gap:6px;padding:3px 9px;font-size:12px;font-weight:700;display:inline-flex}.pill.heat{background:var(--heat-soft);color:var(--heat)}.pill.on{background:var(--light-soft);color:var(--light-on)}.pill.ok{background:var(--accent-soft);color:var(--accent)}.pill.crit{background:var(--heat-soft);color:var(--crit)}.rad{flex-direction:column;gap:12px;padding:16px;display:flex}.rad h3{font-size:15px}.where{color:var(--muted);font-size:12px;font-weight:600}.temps{gap:18px;display:flex}.t .lab{letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:700}.t .val{font-variant-numeric:tabular-nums;font-size:22px;font-weight:800}.t .val.cons{color:var(--heat)}.t .val .u{color:var(--muted);font-size:13px;font-weight:600}.stepper{align-items:center;gap:6px;display:flex}.stepper button{border:1px solid var(--line);background:var(--surface2);border-radius:9px;place-items:center;width:34px;height:34px;font-size:17px;font-weight:700;display:grid}.stepper button:hover{border-color:var(--accent);color:var(--accent)}.modes{flex-wrap:wrap;gap:6px;display:flex}.mode{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:6px 11px;font-size:12px;font-weight:700}.mode.on{background:var(--heat);border-color:var(--heat);color:#fff}.mode:hover:not(.on){border-color:var(--heat);color:var(--heat)}.lum{flex-direction:column;gap:10px;padding:16px;display:flex}.lum h3{font-size:15px}.switch{background:var(--surface2);border:1px solid var(--line);border-radius:999px;flex:none;width:44px;height:26px;transition:background .15s;position:relative}.switch:after{content:"";background:var(--surface);border-radius:50%;width:20px;height:20px;transition:left .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000040}.switch[aria-pressed=true]{background:var(--light-on);border-color:var(--light-on)}.switch[aria-pressed=true]:after{left:20px}.switch.teal[aria-pressed=true]{background:var(--accent);border-color:var(--accent)}.switch:disabled{opacity:.45;cursor:not-allowed}input[type=range]{width:100%;accent-color:var(--light-on)}.swatches{gap:7px;display:flex}.sw{border:2px solid #0000;border-radius:50%;flex:none;width:24px;height:24px}.sw.sel{border-color:var(--ink)}.scn{text-align:left;flex-direction:column;gap:8px;padding:16px;display:flex}.scn .ic{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:10px;place-items:center;display:grid}.scn h3{font-size:15px}.scn p{color:var(--muted);margin:0;font-size:13px}.scn:hover{border-color:var(--accent)}.scn:disabled{opacity:.6}.btn{border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-size:14px;font-weight:700;display:inline-flex}.btn.pri{background:var(--accent);color:var(--accent-ink)}.btn.sec{border:1px solid var(--line);background:var(--surface)}.btn.sec:hover{border-color:var(--accent);color:var(--accent)}.btn:disabled{opacity:.55;cursor:wait}.chart-card{padding:18px}.chart-head{flex-wrap:wrap;justify-content:space-between;gap:10px;margin-bottom:6px;display:flex}.chart-head h3{font-size:15px}.legend{color:var(--muted);align-items:center;gap:14px;font-size:12px;font-weight:600;display:flex}.legend .key{vertical-align:-2px;border-radius:3px;width:12px;height:12px;margin-right:5px;display:inline-block}.hbar{border-top:1px solid var(--line);grid-template-columns:130px 1fr 64px;align-items:center;gap:10px;padding:7px 0;font-size:13px;display:grid}.hbar:first-of-type{border-top:none}.hbar .track{background:var(--surface2);border-radius:4px;height:14px;overflow:hidden}.hbar .fill{background:var(--chart);border-radius:0 4px 4px 0;height:100%;display:block}.hbar .num{text-align:right;font-variant-numeric:tabular-nums;font-weight:700}.note{background:var(--surface2);color:var(--muted);border-radius:10px;align-items:start;gap:9px;margin-top:14px;padding:11px 13px;font-size:13px}.conn,.note{display:flex}.conn{border-top:1px solid var(--line);align-items:center;gap:13px;padding:14px 16px}.conn:first-child{border-top:none}.conn .ic{background:var(--surface2);width:38px;height:38px;color:var(--muted);border-radius:10px;flex:none;place-items:center;display:grid}.conn .tx{flex:1;min-width:0}.conn b{font-size:14px;display:block}.conn small{color:var(--muted)}.status{border-radius:999px;flex:none;padding:4px 10px;font-size:12px;font-weight:700}.status.demo{background:var(--demo-soft);color:var(--demo)}.status.off{background:var(--surface2);color:var(--muted)}.status.ok{background:var(--accent-soft);color:var(--accent)}.status.crit{background:var(--heat-soft);color:var(--crit)}.banner{background:var(--demo-soft);color:var(--demo);border-radius:12px;align-items:center;gap:10px;margin-bottom:18px;padding:11px 15px;font-size:13px;font-weight:600;display:flex}.banner.crit{background:var(--heat-soft);color:var(--crit)}.tabs{display:none}.toast{background:var(--ink);color:var(--bg);opacity:0;pointer-events:none;z-index:30;border-radius:999px;max-width:88vw;padding:10px 18px;font-size:13px;font-weight:600;transition:all .25s;position:fixed;bottom:24px;left:50%;transform:translate(-50%)translateY(16px)}.toast.show{opacity:1;transform:translate(-50%)translateY(0)}.toast.err{background:var(--crit);color:#fff}.back{color:var(--accent);align-items:center;gap:6px;margin-bottom:10px;font-size:13px;font-weight:700;display:inline-flex}.login{place-items:center;min-height:100dvh;padding:16px;display:grid}.login-card{gap:16px;width:100%;max-width:360px;padding:28px}.field,.login-card{flex-direction:column;display:flex}.field{color:var(--muted);gap:6px;font-size:13px;font-weight:600}.field input{border:1px solid var(--line);background:var(--surface2);color:var(--ink);font:inherit;border-radius:10px;padding:10px 12px}.field input:focus{outline:2px solid var(--accent);outline-offset:1px}.err-msg{color:var(--crit);font-size:13px;font-weight:600}@media (max-width:860px){.rail{display:none}.wrap{padding:16px 16px 120px}.tabs{background:var(--surface);border-top:1px solid var(--line);padding:6px 10px calc(6px + env(safe-area-inset-bottom,0px));z-index:20;justify-content:space-around;position:fixed;bottom:0;left:0;right:0}.tab,.tabs{display:flex}.tab{color:var(--muted);border-radius:9px;flex-direction:column;align-items:center;gap:3px;padding:5px 8px;font-size:10px;font-weight:700}.tab.on{color:var(--accent)}.toast{bottom:calc(76px + env(safe-area-inset-bottom,0px))}}:where(button,a,input,.switch):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.chat-page{min-height:calc(100dvh - 44px)}.chat-page,.chat-scroll{flex-direction:column;display:flex}.chat-scroll{flex:1;gap:10px;padding-bottom:14px}.chat-empty{background:var(--surface);border:1px solid var(--line);color:var(--muted);border-radius:14px;align-items:start;gap:12px;max-width:560px;padding:16px;font-size:14px;display:flex}.chat-empty p{margin:0}.chat-hello{background:var(--accent-soft);width:40px;height:40px;color:var(--accent);border-radius:12px;flex:none;place-items:center;display:grid}.msg{display:flex}.msg.user{justify-content:flex-end}.msg .bubble{white-space:pre-wrap;overflow-wrap:break-word;border-radius:16px;max-width:min(560px,86%);padding:10px 14px;font-size:14.5px}.msg.user .bubble{background:var(--accent);color:var(--accent-ink);border-bottom-right-radius:5px}.msg.assistant .bubble{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-bottom-left-radius:5px}.acts{flex-direction:column;gap:6px;margin-top:9px}.act,.acts{display:flex}.act{background:var(--accent-soft);color:var(--accent);border-radius:9px;align-items:start;gap:8px;padding:7px 10px;font-size:13px;font-weight:600}.act.ko{background:var(--heat-soft);color:var(--crit)}.bubble.thinking{color:var(--muted);font-size:13.5px}.dots span{animation:blink 1.2s infinite}.dots span:nth-child(2){animation-delay:.2s}.dots span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,60%,to{opacity:.25}30%{opacity:1}}@media (prefers-reduced-motion:reduce){.dots span{animation:none}}.suggs{flex-wrap:wrap;gap:8px;margin-bottom:12px;display:flex}.sugg{border:1px solid var(--line);background:var(--surface);color:var(--muted);border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600}.sugg:hover{border-color:var(--accent);color:var(--accent)}.sugg:disabled{opacity:.5;cursor:not-allowed}.chat-input{background:var(--bg);gap:8px;padding:10px 0 4px;display:flex;position:sticky;bottom:0}.chat-input input{border:1px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;border-radius:12px;flex:1;min-width:0;padding:12px 15px}.chat-input input:focus{outline:2px solid var(--accent);outline-offset:1px}.chat-input .send{border-radius:12px;flex:none;width:46px;height:46px;padding:0}@media (max-width:860px){.chat-input{bottom:calc(64px + env(safe-area-inset-bottom,0px))}.chat-page{min-height:calc(100dvh - 190px)}}.chat-input .mic{border-radius:12px;flex:none;width:46px;height:46px;padding:0}.chat-input .mic.rec{background:var(--crit);border-color:var(--crit);color:#fff;animation:recpulse 1.6s infinite}@keyframes recpulse{0%,to{box-shadow:0 0 #b3261e66}50%{box-shadow:0 0 0 8px #b3261e00}}@media (prefers-reduced-motion:reduce){.chat-input .mic.rec{animation:none}}.voice-toggle.on{border-color:var(--accent);color:var(--accent)}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}