:root{--font-sans: "Google Sans Flex", "Google Sans", system-ui, sans-serif;--background: 220 30% 98%;--foreground: 240 14% 32%;--card: 0 0% 100%;--primary: 243 75% 59%;--secondary: 220 20% 94%;--muted: 220 20% 95%;--muted-foreground: 240 10% 45%;--border: 220 20% 90%;--ring: 243 75% 59%;--shadow-float: 0 8px 28px hsl(220 16% 12% / .08);color-scheme:light;font-family:var(--font-sans);color:hsl(var(--foreground));background:hsl(var(--background))}html.dark{color-scheme:dark;--background: 240 35% 7%;--foreground: 220 10% 78%;--card: 240 30% 10%;--primary: 243 80% 68%;--secondary: 240 25% 14%;--muted: 240 25% 13%;--muted-foreground: 220 10% 60%;--border: 240 25% 18%;--ring: 243 80% 68%;--shadow-float: 0 10px 32px hsl(0 0% 0% / .38)}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;background:hsl(var(--background))}button,textarea{font:inherit;color:inherit}.gate{min-height:100%;display:grid;place-content:center;text-align:center;padding:24px;gap:8px}.gate h1{margin:0;font-size:28px;font-weight:500;letter-spacing:-.04em}.gate p{margin:0;color:hsl(var(--muted-foreground))}.public-chat{height:100%;min-height:0;position:relative;overflow:hidden;display:flex;flex-direction:column}.public-chat.centered .chat-hero{flex:1;display:grid;grid-template-rows:1fr auto 1fr;justify-items:center;min-height:0;padding:12px 16px 24px}.public-chat.centered .chat-hero-stage{grid-row:1;align-self:end;display:flex;width:min(768px,calc(100% - 32px));flex-direction:column}.llm-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:0 16px 28px}.llm-empty h2{margin:0;font-size:28px;font-weight:500;letter-spacing:-.04em}.public-chat.centered .composer-dock{width:100%;margin:0;padding:6px}.chat-stage{position:absolute;inset:0}.chat-stage:before{content:"";position:absolute;top:0;left:0;right:0;height:72px;z-index:2;pointer-events:none;background:linear-gradient(to bottom,hsl(var(--background)),hsl(var(--background) / 0))}.chat-thread{height:100%;overflow-x:hidden;overflow-y:auto;padding-top:64px;padding-bottom:140px}.llm-col{max-width:768px;width:100%;margin:0 auto;padding:12px 16px 28px}.llm-msg{display:flex;gap:16px;padding:18px 0;min-width:0}.llm-msg.user{justify-content:flex-end}.llm-msg.bot+.llm-msg.user{margin-top:96px}.llm-avatar{width:32px;height:32px;border-radius:8px;background:hsl(var(--primary) / .12);color:hsl(var(--primary));display:grid;place-items:center;flex:0 0 32px;font-size:12px;font-weight:700}.llm-msg.user .llm-bubble{background:hsl(var(--secondary));border-radius:18px;padding:10px 16px;max-width:min(80%,100%);line-height:1.6;overflow-wrap:anywhere}.llm-msg.bot .llm-bubble{flex:1;min-width:0;line-height:1.7;font-size:15px;white-space:pre-wrap;overflow-wrap:anywhere}.llm-bubble.thinking{color:hsl(var(--muted-foreground))}.composer-dock{position:absolute;bottom:0;left:0;right:0;padding:36px 16px 20px;background:linear-gradient(to top,hsl(var(--background)) 0% 42%,hsl(var(--background) / 0))}.public-chat.centered .composer-dock{position:static;background:none;padding:6px}.status-note{max-width:768px;margin:0 auto 8px;text-align:center;color:hsl(var(--muted-foreground));font-size:13px}.composer{max-width:768px;width:100%;margin:0 auto;display:grid;grid-template-columns:44px minmax(0,1fr) 40px 44px;align-items:center;column-gap:8px;background:hsl(var(--card));border:1px solid hsl(var(--border));border-radius:28px;padding:8px 10px;min-height:60px;box-shadow:var(--shadow-float)}.composer-attach{grid-column:1;grid-row:1}.composer-attach:disabled{opacity:.45;cursor:default}.composer textarea{grid-column:2;grid-row:1;width:100%;border:0;background:transparent;height:44px;min-height:44px;max-height:44px;padding:10px 6px;outline:none;resize:none;line-height:24px;font-size:16px;overflow:hidden}.composer textarea:disabled{opacity:.6}.composer.expanded{grid-template-rows:auto 44px;align-items:end;padding:12px 12px 8px;row-gap:4px}.composer.expanded textarea{grid-column:1 / -1;grid-row:1;height:auto;min-height:44px;max-height:208px;overflow-y:auto}.composer.expanded .composer-attach{grid-column:1;grid-row:2}.composer.expanded .composer-mic-slot{grid-column:3;grid-row:2}.composer.expanded .composer-send-slot{grid-column:4;grid-row:2}.composer.listening .composer-attach{grid-column:1;grid-row:1}.composer:focus-within{border-color:hsl(var(--primary) / .45);box-shadow:var(--shadow-float),0 0 0 3px hsl(var(--ring) / .14)}.composer-mic-slot{grid-column:3;grid-row:1}.composer-send-slot{grid-column:4;grid-row:1}.composer-mic{cursor:pointer;color:hsl(var(--foreground))}.composer-mic:disabled{opacity:.45;cursor:default}.composer-mic.is-stop{width:40px;height:40px;border-radius:50%;background:hsl(var(--foreground) / .08);color:hsl(var(--foreground))}.tip-host{position:relative;display:grid;place-items:center}.tip-host button:disabled{pointer-events:none}.tip-host[data-tip]:hover:after,.tip-host[data-tip]:focus-within:after{content:attr(data-tip);position:absolute;z-index:6;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);padding:6px 8px;border-radius:8px;background:hsl(var(--foreground));color:hsl(var(--background));font-size:12px;font-weight:600;line-height:1.2;white-space:nowrap;pointer-events:none}.voice-field{grid-column:2;grid-row:1;position:relative;height:44px;min-width:0}.voice-bars{position:absolute;inset:6px 0;width:100%;height:32px;color:hsl(var(--foreground));caret-color:hsl(var(--muted-foreground))}.voice-cancel{cursor:pointer;color:hsl(var(--foreground))}.chat-app{height:100%;min-height:0;position:relative}.chat-top{position:absolute;top:16px;left:22px;z-index:5}.brand{display:flex;align-items:center}.brand-lg .brand-mark{font-size:30px}.brand-mark{font-size:20px;font-weight:500;letter-spacing:-.04em}.brand-mark span{color:hsl(var(--primary))}.theme-slot{position:fixed;right:16px;bottom:16px;z-index:8}.theme-launcher{display:none}.theme-switch{display:inline-flex;padding:2px;border-radius:999px;border:1px solid hsl(var(--border));background:hsl(var(--card) / .88);box-shadow:var(--shadow-float);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media(max-width:860px){.chat-top{display:none}.public-chat.centered .chat-hero{grid-template-rows:1fr;padding-bottom:96px}.public-chat.centered .chat-hero-stage{align-self:center}.public-chat.centered .composer-dock{position:absolute;bottom:0;left:0;right:0;width:auto;margin:0;padding:28px 16px 20px;background:linear-gradient(to top,hsl(var(--background)) 0% 42%,hsl(var(--background) / 0))}.theme-slot{top:12px;right:12px;bottom:auto}.theme-launcher{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid hsl(var(--border));border-radius:50%;background:hsl(var(--card));color:hsl(var(--foreground));box-shadow:var(--shadow-float);cursor:pointer}.theme-switch{display:none;position:absolute;top:calc(100% + 8px);right:0}.theme-slot.open .theme-switch{display:inline-flex}}.theme-switch button{display:inline-flex;align-items:center;justify-content:center;width:36px;height:26px;padding:0;border:0;border-radius:999px;background:transparent;color:hsl(var(--muted-foreground));cursor:pointer}.theme-switch button.active{background:hsl(var(--card));color:hsl(var(--foreground));box-shadow:0 1px 2px #12122114}html.dark .theme-switch button.active{background:#1f1f33}.icon-btn{width:40px;height:40px;border:0;border-radius:12px;background:transparent;display:grid;place-items:center}.icon-btn.send{background:hsl(var(--primary));color:#fff;border-radius:50%;cursor:pointer}.icon-btn.send:disabled{opacity:.35;cursor:default}
