:root{--bg:#212121;--bg-elevated:#2f2f2f;--bg-input:#303030;--border:#444;--border-subtle:rgba(255,255,255,0.08);--text:#ececec;--text-secondary:#b4b4b4;--text-tertiary:#8e8e8e;--accent:#10a37f;--user-bubble:#2f2f2f;--radius-lg:28px}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{background:var(--bg);color:var(--text);font-family:ui-sans-serif,-apple-system,Segoe UI,Helvetica,Arial,sans-serif;font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}.shell{display:flex;flex-direction:column;height:100dvh}.topbar{display:flex;align-items:center;justify-content:space-between;padding:10px 16px;flex-shrink:0}.brand{display:flex;align-items:baseline;gap:8px;font-weight:600;font-size:17px}.brand .version{color:var(--text-tertiary);font-weight:400;font-size:13px}.account{gap:10px;color:var(--text-secondary)}.account,.avatar{display:flex;align-items:center;font-size:13px}.avatar{width:30px;height:30px;border-radius:50%;background:var(--accent);color:#fff;justify-content:center;font-weight:600}.signout{background:none;border:1px solid var(--border-subtle);color:var(--text-secondary);border-radius:8px;padding:5px 10px;font-size:12px;cursor:pointer}.signout:hover{background:var(--bg-elevated);color:var(--text)}.scroll{flex:1 1;overflow-y:auto}.thread{max-width:48rem;margin:0 auto;padding:24px 20px 40px;display:flex;flex-direction:column;gap:28px}.msg-user{align-self:flex-end;max-width:80%;background:var(--user-bubble);border-radius:20px;padding:10px 18px;white-space:pre-wrap}.msg-assistant{white-space:pre-wrap;overflow-wrap:anywhere}.msg-assistant strong{font-weight:600}.cursor{display:inline-block;width:8px;height:17px;background:var(--text);vertical-align:text-bottom;animation:blink 1s steps(1) infinite}@keyframes blink{50%{opacity:0}}.error-note{color:#f2846c;font-size:14px}.hero{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:0 20px}.hero h1{font-size:28px;font-weight:600;text-align:center}.hero p.sub{color:var(--text-secondary);font-size:15px;text-align:center;max-width:34rem;margin-top:-16px}.samples{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:10px;gap:10px;width:100%;max-width:44rem}@media (max-width:640px){.samples{grid-template-columns:1fr}}.sample{text-align:left;background:none;border:1px solid var(--border-subtle);border-radius:14px;padding:12px 14px;color:var(--text-secondary);font-size:13.5px;line-height:1.45;cursor:pointer;transition:background .12s;font-family:inherit}.sample:hover{background:var(--bg-elevated);color:var(--text)}.sample .tag{display:block;color:var(--text);font-weight:600;margin-bottom:2px;font-size:13px}.composer-wrap{flex-shrink:0;padding:8px 20px 18px}.composer{max-width:48rem;margin:0 auto;display:flex;align-items:flex-end;gap:8px;background:var(--bg-input);border-radius:var(--radius-lg);padding:10px 10px 10px 20px;border:1px solid var(--border-subtle)}.composer textarea{flex:1 1;background:none;border:none;outline:none;resize:none;color:var(--text);font-family:inherit;font-size:16px;line-height:1.5;max-height:200px;padding:4px 0}.composer textarea::placeholder{color:var(--text-tertiary)}.send{width:36px;height:36px;border-radius:50%;border:none;background:var(--text);color:var(--bg);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:opacity .12s}.send:disabled{opacity:.25;cursor:default}.disclaimer{text-align:center;color:var(--text-tertiary);font-size:12px;margin-top:10px}.signin-page{height:100dvh;justify-content:center;gap:24px;padding:20px}.signin-card,.signin-page{display:flex;flex-direction:column;align-items:center}.signin-card{background:var(--bg-elevated);border:1px solid var(--border-subtle);border-radius:16px;padding:40px 44px;gap:18px;max-width:26rem;text-align:center}.signin-card h1{font-size:22px;font-weight:600}.signin-card p{color:var(--text-secondary);font-size:14px}.google-btn{display:flex;align-items:center;gap:10px;background:#fff;color:#1f1f1f;border:none;border-radius:24px;padding:11px 22px;font-size:15px;font-weight:500;cursor:pointer;font-family:inherit}.google-btn:hover{background:#f1f1f1}.domains{color:var(--text-tertiary);font-size:12px}