:root{color:#102033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--background:#eef5ff;--surface:#ffffffeb;--surface-strong:#fff;--text:#102033;--muted:#5b6b82;--border:#3f608a2e;--accent:#1769e0;--accent-strong:#0d4ea6;--accent-soft:#dbeafe;--danger:#ba1a1a;--success:#0f7a4d;--warning:#a35b00;--shadow:0 24px 70px #0f2a4d2e;background:#eef5ff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{color:#e7eefb;--background:#071523;--surface:#0d1d32f0;--surface-strong:#102033;--text:#e7eefb;--muted:#aab8cc;--border:#a7c2e72e;--accent:#79b5ff;--accent-strong:#a8cffd;--accent-soft:#4780d638;--danger:#ffb4ab;--success:#9bd8b7;--warning:#ffd19a;--shadow:0 24px 80px #00000073;background:#071523}body{background:radial-gradient(circle at top left, #1769e033, transparent 34rem), linear-gradient(135deg, var(--background), var(--surface-strong));min-width:320px;min-height:100vh;margin:0}button{background:var(--accent);color:#fff;cursor:pointer;border:0;border-radius:999px;font-weight:700;transition:background .14s,box-shadow .14s,transform .14s}button:hover:not(:disabled){background:var(--accent-strong);transform:translateY(-1px);box-shadow:0 12px 28px #1769e03d}.login-shell{align-content:start;gap:48px;display:grid}.chat-shell{grid-template-rows:auto 1fr;gap:20px;display:grid}.app-header{justify-content:space-between;align-items:center;gap:16px;padding:12px 4px;display:flex}.pill-selector{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;align-items:center;gap:8px;padding:7px 10px 7px 14px;font-size:.88rem;font-weight:700;display:inline-flex}.pill-selector select{color:var(--text);background:0 0;border:0;font-weight:700}.login-card,.chat-card{border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:28px}.login-card{gap:24px;width:min(560px,100%);margin:36px auto 0;padding:32px;display:grid}.login-card h1,.chat-card h1{color:var(--text);margin:8px 0;line-height:1.05}.login-card p,.chat-card p{color:var(--muted)}.login-card-copy p:last-child,.chat-card-header p:last-child{margin-bottom:0}.login-form,.chat-form{gap:14px;display:grid}.login-form input,.chat-form textarea{border:1px solid var(--border);background:var(--surface-strong);width:100%;color:var(--text);border-radius:16px;padding:12px 14px}.login-form button,.chat-form button{padding:12px 18px}.chat-card{min-height:min(760px,100vh - 128px);padding:22px;display:grid}.chat-card-header{justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:18px;display:flex}.status-pill{border-radius:999px;width:fit-content;margin:0;padding:5px 10px;font-size:.76rem;font-weight:850;display:inline-flex}.notice{border:1px solid var(--border);background:var(--surface-strong);color:var(--muted);border-radius:18px;padding:12px 14px;font-weight:650}.message-list{border:1px solid var(--border);background:#ffffff6b;border-radius:22px;align-content:start;gap:12px;min-width:0;min-height:320px;margin:18px 0;padding:16px;display:grid;overflow:hidden auto}.empty-chat{text-align:center;place-self:center;gap:12px;width:min(760px,100%);display:grid}.empty-chat p{margin:0}.sample-chip{border:1px solid var(--border);background:var(--accent-soft);color:var(--accent-strong);text-align:left;white-space:normal;align-items:center;gap:8px;padding:10px 13px;display:inline-flex}.sample-chip:hover:not(:disabled){color:#fff}.message-bubble{border:1px solid var(--border);background:var(--surface-strong);border-radius:20px;width:fit-content;min-width:0;max-width:min(76ch,92%);padding:12px 14px}.message-bubble-user{background:var(--accent);color:#fff;justify-self:end}.message-bubble-assistant{justify-self:start}.message-role{letter-spacing:.04em;text-transform:uppercase;margin:0 0 6px;font-size:.74rem;font-weight:850}.message-bubble-user .message-role,.message-bubble-user .message-content{color:#fff}.message-content{color:var(--text);overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word;margin:0}.composer-hint{color:var(--muted);margin:0;font-size:.9rem}.secondary{border:1px solid var(--border);background:var(--surface-strong);color:var(--accent-strong)}.secondary:hover:not(:disabled){background:var(--accent-soft);color:var(--accent-strong)}.compact{padding:8px 12px}@media (width<=760px){.app-header,.chat-card-header,.composer-row{flex-direction:column;grid-template-columns:1fr;align-items:stretch}.header-controls{justify-content:flex-start}.chat-card,.login-card{padding:20px}.composer-row{display:grid}}:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--app-bg:#eef4ff;--card-bg:#fffffff0;--card-border:#32507d29;--text:#172033;--muted:#5e6d84;--accent:#1d4ed8;--accent-strong:#0f2e66;--accent-soft:#dbeafe;--assistant-bg:#f4f7fb;--user-bg:#123a75;--danger:#b42318;--success:#067647;--warning:#b54708;--shadow:0 24px 70px #0f2e6624;background:#eef4ff;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{color:#e8eefb;--app-bg:#071121;--card-bg:#0c192df0;--card-border:#94a3b838;--text:#e8eefb;--muted:#a7b3c7;--accent:#60a5fa;--accent-strong:#dbeafe;--accent-soft:#60a5fa29;--assistant-bg:#94a3b81f;--user-bg:#1d4ed8;--danger:#f97066;--success:#32d583;--warning:#fdb022;--shadow:0 24px 70px #0000005c;background:#071121}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--text);background:radial-gradient(circle at top left, #1d4ed838, transparent 32rem), linear-gradient(145deg, var(--app-bg), #f8fbff 70%);margin:0}:root[data-theme=dark] body{background:radial-gradient(circle at 0 0,#60a5fa2e,#0000 30rem),linear-gradient(145deg,#071121,#101826 70%)}button,input,select,textarea{font:inherit}button{color:#fff;background:linear-gradient(135deg, var(--accent-strong), var(--accent));cursor:pointer;border:0;border-radius:999px;min-height:2.6rem;padding:.78rem 1.1rem;font-weight:700;transition:transform .16s,box-shadow .16s,opacity .16s;box-shadow:0 12px 28px #1d4ed838}button:hover:not(:disabled),button:focus-visible:not(:disabled){transform:translateY(-1px);box-shadow:0 16px 34px #1d4ed842}:root[data-theme=dark] button:not(.secondary){background:linear-gradient(135deg,#1d4ed8,#2563eb)}:root[data-theme=dark] button:not(.secondary):hover:not(:disabled),:root[data-theme=dark] button:not(.secondary):focus-visible:not(:disabled){background:linear-gradient(135deg,#0f2e66,#1d4ed8)}button:disabled{cursor:not-allowed;opacity:.62}button.secondary{color:var(--accent-strong);background:var(--accent-soft);box-shadow:none}:root[data-theme=dark] button.secondary{color:#dbeafe}button.compact{min-height:2.2rem;padding:.58rem .9rem}.app-shell{width:min(1120px,100% - 2rem);min-height:100vh;margin:0 auto;padding:1.25rem 0 2rem}.login-shell{width:min(900px,100% - 2rem)}.app-header,.chat-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.app-header{margin-bottom:1.25rem;padding:.85rem .25rem}.eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.88rem;font-weight:800;line-height:1.2}.message-role{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:800}.app-title{color:var(--accent-strong);margin:.15rem 0 0;font-size:clamp(1.45rem,2vw,2rem);font-weight:800}:root[data-theme=dark] .app-title{color:#f8fbff}.header-controls{flex-wrap:wrap;justify-content:flex-end;gap:.6rem;display:flex}.pill-selector{border:1px solid var(--card-border);min-height:2.2rem;color:var(--muted);background:var(--card-bg);border-radius:999px;align-items:center;gap:.45rem;padding:.32rem .42rem .32rem .78rem;font-size:.88rem;font-weight:700;display:inline-flex}.pill-selector select{color:var(--text);background:0 0;border:0;border-radius:999px;padding:.3rem .5rem}.login-card,.chat-card{border:1px solid var(--card-border);background:var(--card-bg);box-shadow:var(--shadow);border-radius:28px}.login-card{gap:1.2rem;max-width:620px;margin:10vh auto 0;padding:clamp(1.4rem,4vw,2.4rem);display:grid}.login-card h1,.chat-card h1{color:var(--accent-strong);margin:.35rem 0 .45rem;font-size:clamp(1.75rem,3vw,2.5rem);line-height:1.1}:root[data-theme=dark] .login-card h1,:root[data-theme=dark] .chat-card h1{color:#f8fbff}.login-card p,.chat-card-header p,.empty-chat p,.composer-hint{color:var(--muted);margin:0}.status-pill{border-radius:999px;width:fit-content;padding:.3rem .65rem;font-size:.78rem;font-weight:800;display:inline-flex}.status-pill-authenticated{color:var(--success);background:#0676471a}.status-pill-unauthenticated{color:var(--warning);background:#b547081a}.notice{border:1px solid var(--card-border);color:var(--muted);background:var(--assistant-bg);border-radius:18px;padding:.85rem 1rem}.notice-success{color:var(--success)}.notice-warning{color:var(--warning)}.notice-error{color:var(--danger)}.confirm-overlay{z-index:20;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0715237a;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.confirm-dialog{border:1px solid var(--card-border);background:var(--card-bg);width:min(30rem,100%);box-shadow:var(--shadow);border-radius:24px;gap:1rem;padding:clamp(1.25rem,4vw,1.75rem);display:grid}.confirm-dialog h2,.confirm-dialog p{margin:0}.confirm-dialog h2{color:var(--accent-strong);font-size:clamp(1.35rem,3vw,1.75rem);line-height:1.15}:root[data-theme=dark] .confirm-dialog h2{color:#f8fbff}.confirm-dialog p{color:var(--muted);line-height:1.45}.confirm-actions{flex-wrap:wrap;justify-content:flex-end;gap:.75rem;display:flex}.login-form{gap:.9rem;display:grid}.login-form label,.chat-form label{color:var(--accent-strong);gap:.4rem;font-weight:800;display:grid}:root[data-theme=dark] .login-form label,:root[data-theme=dark] .chat-form label{color:#dbeafe}.login-form input,.chat-form textarea{border:1px solid var(--card-border);width:100%;color:var(--text);background:#ffffffdb;border-radius:16px;outline:none;padding:.82rem .95rem}:root[data-theme=dark] .login-form input,:root[data-theme=dark] .chat-form textarea{background:#0f172abd}.login-form input:focus,.chat-form textarea:focus,.pill-selector select:focus-visible,button:focus-visible{outline-offset:2px;outline:3px solid #60a5fa7a}.chat-card{align-content:start;gap:.7rem;min-width:0;min-height:auto;padding:clamp(1rem,3vw,1.45rem);display:grid}.chat-card-header{align-items:center}.message-list{resize:vertical;scrollbar-gutter:stable;border:1px solid var(--card-border);background:#ffffff75;border-radius:22px;gap:.75rem;min-width:0;min-height:15rem;max-height:min(52vh,36rem);margin:0;padding:.9rem;display:grid;overflow:hidden auto}.message-list-empty{min-height:9rem;padding-block:.75rem}.message-list-end{block-size:1px}:root[data-theme=dark] .message-list{background:#0206173d}.empty-chat{text-align:center;justify-self:center;gap:.6rem;width:min(760px,100%);padding:clamp(.25rem,1.5vw,.65rem);display:grid}.empty-chat h2{color:var(--accent-strong);margin:0}:root[data-theme=dark] .empty-chat h2{color:#f8fbff}.sample-chip-list{flex-wrap:wrap;justify-content:center;gap:.65rem;display:flex}.sample-chip{border:1px solid var(--card-border);max-width:28rem;min-height:2.4rem;color:var(--accent-strong);background:var(--assistant-bg);box-shadow:none;text-align:left;align-items:center;gap:.5rem;padding:.6rem .85rem;display:inline-flex}.message-bubble{border:1px solid var(--card-border);border-radius:22px;width:fit-content;min-width:0;max-width:min(44rem,92%);padding:.8rem .95rem}.message-bubble-user{color:#fff;background:var(--user-bg);justify-self:end}.message-bubble-user .message-role{color:#ffffffb8}.message-bubble-assistant{background:var(--assistant-bg);justify-self:start}.message-bubble-pending{opacity:.76}.assistant-thinking-bubble{min-width:10rem}.assistant-thinking{min-height:1.35em;color:var(--muted);align-items:center;gap:.15rem;margin:.25rem 0 0;font-size:.95rem;font-style:italic;display:flex}.assistant-thinking-text{-webkit-user-select:none;user-select:none}.assistant-thinking-dots{align-items:flex-end;gap:2px;height:1em;padding-bottom:.15em;display:inline-flex}.assistant-thinking-dot{background-color:var(--muted);opacity:.35;border-radius:50%;width:4px;height:4px;animation:1.2s ease-in-out infinite assistant-thinking-dot-pulse;display:inline-block}.assistant-thinking-dot:nth-child(2){animation-delay:.2s}.assistant-thinking-dot:nth-child(3){animation-delay:.4s}@keyframes assistant-thinking-dot-pulse{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:1;transform:translateY(-2px)}}.assistant-thinking-tool-activity{color:var(--muted);opacity:.85;align-items:center;gap:.5rem;margin:.3rem 0 0;font-size:.8rem;font-style:normal;animation:.3s ease-out assistant-thinking-tool-fade-in;display:flex}@keyframes assistant-thinking-tool-fade-in{0%{opacity:0;transform:translateY(2px)}to{opacity:.85;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.assistant-thinking-dot,.assistant-thinking-dot:nth-child(2),.assistant-thinking-dot:nth-child(3){opacity:.65;animation:none}.assistant-thinking-tool-activity{opacity:.85;animation:none}}.message-content{overflow-wrap:anywhere;white-space:pre-wrap;word-break:break-word;margin:.25rem 0 0}.error-text{color:var(--danger);margin:0;font-weight:700}.chat-form{gap:.4rem;display:grid}.composer-row{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.65rem;display:grid}.chat-form .composer-field{gap:.25rem;min-width:0}.chat-form textarea{resize:vertical;min-height:5rem}.composer-hint{font-size:.88rem}.account-menu-root{position:relative}.account-trigger{max-width:min(24rem,72vw);min-height:2.5rem;color:var(--text);background:var(--card-bg);border:1px solid var(--card-border);box-shadow:none;text-align:left;align-items:center;gap:.55rem;padding:.32rem .75rem .32rem .35rem;display:inline-flex}.account-trigger:hover:not(:disabled),.account-trigger:focus-visible:not(:disabled){color:var(--accent-strong);background:var(--accent-soft);box-shadow:none}.account-avatar{color:#fff;background:linear-gradient(135deg, var(--accent-strong), var(--accent));letter-spacing:.03em;border-radius:999px;flex:none;place-items:center;width:1.9rem;height:1.9rem;font-size:.78rem;font-weight:850;display:inline-grid}.account-avatar-large{width:2.5rem;height:2.5rem;font-size:.95rem}.account-trigger-copy{min-width:0;line-height:1.15;display:grid}.account-trigger-username,.account-trigger-group{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.account-trigger-username{color:var(--text);font-size:.88rem}.account-trigger-group{color:var(--muted);font-size:.76rem;font-weight:650}.account-trigger-chevron{color:var(--muted);font-size:.75rem}.account-menu-panel{z-index:30;border:1px solid var(--card-border);width:min(24rem,100vw - 2rem);color:var(--text);background:var(--card-bg);box-shadow:var(--shadow);border-radius:24px;gap:1rem;padding:1rem;display:grid;position:absolute;top:calc(100% + .55rem);right:0}.account-menu-header{align-items:center;gap:.75rem;display:flex}.account-menu-header h2,.account-menu-header p,.account-section-label,.account-readonly-group,.account-rate-limit{margin:0}.account-menu-header h2{color:var(--accent-strong);font-size:1.05rem}.account-menu-header p,.account-section-label,.account-rate-limit{color:var(--muted)}.account-menu-section,.account-group-selector{gap:.4rem;display:grid}.account-section-label,.account-group-selector span{letter-spacing:.04em;text-transform:uppercase;font-size:.78rem;font-weight:800}.account-group-selector select{border:1px solid var(--card-border);width:100%;color:var(--text);background:#ffffffdb;border-radius:14px;padding:.65rem .75rem}:root[data-theme=dark] .account-group-selector select{background:#0f172abd}.account-readonly-group{color:var(--text);font-weight:750}.account-usage-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.55rem;margin:0;display:grid}.account-usage-grid div{border:1px solid var(--card-border);background:var(--assistant-bg);border-radius:16px;gap:.2rem;padding:.7rem;display:grid}.account-usage-grid dt{color:var(--muted);font-size:.72rem;font-weight:800}.account-usage-grid dd{color:var(--accent-strong);margin:0;font-size:1.2rem;font-weight:850}.account-rate-limit{font-size:.84rem;line-height:1.4}.account-sign-out{justify-self:start}.account-loading{border:1px solid var(--card-border);min-height:2.2rem;color:var(--muted);background:var(--card-bg);border-radius:999px;align-items:center;padding:.32rem .78rem;font-size:.88rem;font-weight:750;display:inline-flex}.account-loading-error{color:var(--danger)}@media (width<=760px){.app-shell{width:min(100% - 1rem,1120px);padding-top:.5rem}.app-header,.chat-card-header,.composer-row{grid-template-columns:1fr;display:grid}.header-controls{justify-content:flex-start}.composer-row button{width:100%}.confirm-actions{grid-template-columns:1fr;display:grid}.account-menu-panel{width:auto;position:fixed;top:4.25rem;left:.5rem;right:.5rem}.account-trigger{max-width:100%}}
