:root{color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#f7f7f4;color:#1f2428;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--sidebar: #111314;--sidebar-soft: #1c2022;--surface: #ffffff;--surface-soft: #f0f1ee;--line: #d7dad3;--text-soft: #68706a;--accent: #0f7c6c;--accent-dark: #095f53;--focus: rgba(15, 124, 108, .24);--shadow: 0 18px 60px rgba(30, 35, 32, .12);--app-bg: #f7f7f4;--app-glow: rgba(15, 124, 108, .11);--topbar-bg: rgba(247, 247, 244, .86);--topbar-line: rgba(215, 218, 211, .78);--text: #1f2428;--button-text: #343a35;--bubble-user: #e7efeb;--composer-border: #cdd3cc;--textarea-text: #1f2428;--placeholder: #737c75;--error: #9b2c2c}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;color:var(--text);background:var(--app-bg)}button,textarea,input{font:inherit}button{border:0;cursor:pointer}.app-shell{display:grid;grid-template-columns:288px minmax(0,1fr);height:100vh;overflow:hidden;background:radial-gradient(circle at top right,var(--app-glow),transparent 28rem),var(--app-bg);transition:grid-template-columns .18s ease}.app-shell.is-sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}.app-shell.is-sidebar-collapsed .sidebar{padding-inline:0;overflow:hidden;border-right:0}.app-shell[data-theme=dark]{color-scheme:dark;--sidebar: #080b0d;--sidebar-soft: #151a1d;--surface: #161c1f;--surface-soft: #222b2f;--line: #3a474b;--text-soft: #b6c3bd;--accent: #26a98f;--accent-dark: #1d8f79;--focus: rgba(38, 169, 143, .25);--shadow: 0 18px 60px rgba(0, 0, 0, .35);--app-bg: #0b1011;--app-glow: rgba(38, 169, 143, .14);--topbar-bg: rgba(13, 17, 19, .86);--topbar-line: rgba(42, 52, 55, .88);--text: #f3f8f5;--button-text: #dce6e0;--bubble-user: #1b433b;--composer-border: #465457;--textarea-text: #f4faf7;--placeholder: #aebbb5;--error: #ff9d9d}.sidebar{display:flex;flex-direction:column;min-height:100vh;padding:16px;color:#eef4ee;background:var(--sidebar);border-right:1px solid rgba(255,255,255,.08);transition:padding .18s ease,border-color .18s ease}.sidebar-header,.topbar{display:flex;align-items:center}.sidebar-header{gap:10px;min-height:42px;margin-bottom:16px;font-weight:700}.brand-mark{display:grid;place-items:center;width:34px;height:34px;border-radius:8px;color:#fff;background:linear-gradient(135deg,#0f7c6c,#2c9a7e)}.new-chat-button,.conversation,.search-box,.user-chip,.model-selector,.composer{border-radius:8px}.new-chat-button{display:flex;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 13px;color:#fff;background:var(--sidebar-soft);text-align:left;transition:background .16s ease,transform .16s ease}.new-chat-button:hover{background:#272d30}.new-chat-button:active{transform:translateY(1px)}.search-box{display:flex;align-items:center;gap:9px;height:40px;margin:14px 0 16px;padding:0 12px;color:#a9b4ae;background:#ffffff12}.search-box input{width:100%;min-width:0;border:0;outline:0;color:#f7fbf8;background:transparent}.search-box input::placeholder{color:#a9b4ae}.conversation-list{display:grid;gap:4px;overflow:auto;padding-right:2px}.conversation{width:100%;min-height:38px;padding:0 12px;color:#dfe8e2;background:transparent;text-align:left}.conversation span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation:hover,.conversation.is-active{background:#ffffff17}.empty-history{margin:8px 10px;color:#aeb8b2;font-size:14px;line-height:1.4}.clear-history-button{width:100%;min-height:38px;margin-top:12px;padding:0 12px;border-radius:8px;color:#dfe8e2;background:transparent;text-align:left}.clear-history-button:hover{background:#ffffff17}.sidebar-footer{margin-top:auto;padding-top:16px}.user-chip{display:flex;align-items:center;gap:10px;padding:10px;background:#ffffff12}.user-chip strong,.user-chip small{display:block}.user-chip small{margin-top:2px;color:#aeb8b2}.chat-panel{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-width:0;height:100vh}.topbar{justify-content:space-between;gap:12px;min-height:64px;padding:10px 20px;border-bottom:1px solid var(--topbar-line);background:var(--topbar-bg);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.topbar-actions{display:flex;align-items:center;gap:4px}.icon-button{display:grid;place-items:center;flex:0 0 auto;width:40px;height:40px;border-radius:8px;color:var(--button-text);background:transparent}.icon-button:hover{background:var(--surface-soft)}.model-selector{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0;max-width:min(520px,56vw);min-height:40px;padding:0 13px;color:var(--text);background:transparent}.model-selector:hover{background:var(--surface-soft)}.model-selector span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:650}.messages-area{overflow:auto;padding:28px 18px 18px}.messages-stack{display:grid;gap:22px;width:100%;max-width:840px;margin:0 auto}.message-row{display:grid;grid-template-columns:38px minmax(0,1fr);gap:14px;align-items:start}.message-row.user{grid-template-columns:minmax(0,1fr) 38px}.message-row.user .avatar{grid-column:2;grid-row:1}.message-row.user .message-bubble{justify-self:end;background:var(--bubble-user)}.avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:8px;color:#fff;background:#202627}.avatar.small{width:34px;height:34px;font-weight:800;background:#0f7c6c}.message-bubble{width:fit-content;max-width:min(100%,720px);padding:14px 16px;color:var(--text);border:1px solid var(--line);background:var(--surface);box-shadow:0 8px 28px #1e23200f}.message-bubble p{margin:0;line-height:1.62}.composer-zone{width:100%;max-width:900px;margin:0 auto;padding:12px 18px 18px}.composer{display:grid;grid-template-columns:minmax(0,1fr) 42px;align-items:end;gap:10px;padding:10px;background:var(--surface);border:1px solid var(--composer-border);box-shadow:var(--shadow)}.app-shell[data-theme=dark] .message-bubble,.app-shell[data-theme=dark] .composer{box-shadow:none}.composer:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px var(--focus),var(--shadow)}.composer textarea{width:100%;max-height:180px;min-height:42px;padding:10px 4px 8px 8px;resize:none;border:0;outline:0;color:var(--textarea-text);background:transparent;line-height:1.45}.composer textarea::placeholder{color:var(--placeholder)}.send-button{display:grid;place-items:center;width:42px;height:42px;border-radius:8px;color:#fff;background:var(--accent)}.send-button:hover{background:var(--accent-dark)}.send-button:disabled{cursor:not-allowed;color:#7e8882;background:#e1e5df}.disclaimer{margin:10px 0 0;color:var(--text-soft);font-size:12px;text-align:center}.error-text{margin:10px 0 0;color:var(--error);font-size:13px;text-align:center}.overlay,.mobile-only{display:none}@media(max-width:920px){.app-shell,.app-shell.is-sidebar-collapsed{grid-template-columns:1fr}.sidebar{position:fixed;inset:0 auto 0 0;z-index:20;width:min(86vw,310px);padding:16px;transform:translate(-100%);border-right:1px solid rgba(255,255,255,.08);transition:transform .18s ease}.app-shell.is-sidebar-collapsed .sidebar{padding:16px;border-right:1px solid rgba(255,255,255,.08)}.sidebar.is-open{transform:translate(0)}.overlay{position:fixed;inset:0;z-index:10;display:block;pointer-events:none;background:#12161400;transition:background .18s ease}.overlay.is-visible{pointer-events:auto;background:#1216146b}.mobile-only{display:grid;margin-left:auto;color:#f7fbf8}.desktop-only{display:none}}@media(max-width:620px){.topbar{min-height:58px;padding:8px 10px}.model-selector{max-width:58vw}.messages-area{padding:18px 12px 12px}.messages-stack{gap:18px}.message-row,.message-row.user{grid-template-columns:32px minmax(0,1fr);gap:10px}.message-row.user .avatar{grid-column:1}.message-row.user .message-bubble{justify-self:start}.avatar{width:32px;height:32px}.message-bubble{padding:12px 13px}.composer-zone{max-width:calc(100vw - 20px);padding:10px 10px 12px}.composer{grid-template-columns:minmax(0,1fr) 40px;gap:6px;padding:8px}.send-button{width:40px;height:40px}}
