:root{color-scheme:dark;--bg:#0d0d0e;--fg:#f2f2f4;--muted:#a3a3ad;--line:rgba(255,255,255,.085);--glass:rgba(44,44,49,.83);--blue:#5177f1;--subtle:#1d1d20;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-tap-highlight-color:transparent}
*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--bg);color:var(--fg);overflow:hidden;font-size:15px}button,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.56}button:focus-visible,textarea:focus-visible{outline:2px solid #9ab0ff;outline-offset:2px}button{color:inherit}svg{width:21px;height:21px;display:block} [hidden]{display:none!important}
.shell{height:100%;height:100dvh;max-width:850px;margin:0 auto;display:flex;flex-direction:column;min-height:0;position:relative}.topbar{height:calc(58px + env(safe-area-inset-top));min-height:calc(58px + env(safe-area-inset-top));padding:calc(6px + env(safe-area-inset-top)) 17px 5px;display:flex;justify-content:space-between;align-items:center;gap:12px;background:linear-gradient(180deg,rgba(13,13,14,.98),rgba(13,13,14,.91));border-bottom:1px solid rgba(255,255,255,.035);z-index:2}.icon-button{display:grid;place-items:center;width:43px;height:43px;flex:0 0 43px;border:1px solid transparent;border-radius:50%;background:transparent}.glass{-webkit-backdrop-filter:blur(14px) saturate(145%);backdrop-filter:blur(14px) saturate(145%)}.icon-button.glass{background:linear-gradient(160deg,rgba(72,72,77,.66),rgba(35,35,39,.72));border:1px solid rgba(255,255,255,.17);box-shadow:inset 0 1px rgba(255,255,255,.17),0 5px 17px rgba(0,0,0,.22)}.icon-button:active,.tool-button:active{transform:scale(.94)}.model-title{min-width:0;display:flex;align-items:center;justify-content:center;background:transparent;border:none;padding:3px 4px;color:var(--fg);flex:1}.title-stack{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0}.title-stack strong{font-size:17px;letter-spacing:-.35px;display:flex;align-items:center;gap:4px}.title-stack strong .chevron{width:16px;height:16px;color:#acacb3}.title-stack>span{font-size:11px;color:#9e9ea9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px}
.activity{background:rgba(28,28,31,.93);border:1px solid rgba(255,255,255,.08);border-radius:17px;margin:11px 15px 0;padding:11px 13px;flex:0 0 auto;box-shadow:0 2px 12px rgba(0,0,0,.1)}.activity[data-state="ready"]{background:rgba(20,38,32,.5);border-color:rgba(105,201,144,.23)}.activity[data-state="failed"]{border-color:rgba(244,117,117,.36)}.activity-content{display:flex;align-items:center;gap:10px;min-height:34px}.activity-icon{width:17px;flex:0 0 17px;display:grid;place-items:center}.pulse-dot{width:9px;height:9px;border-radius:50%;background:#c3a369;box-shadow:0 0 0 3px rgba(195,163,105,.12)}.activity[data-state="ready"] .pulse-dot{background:#63c48d;box-shadow:0 0 0 3px rgba(99,196,141,.12)}.activity[data-state="loading"] .pulse-dot{background:#7b9cf9;animation:pulse 1.15s infinite}.activity[data-state="failed"] .pulse-dot{background:#f07171}.activity-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.activity-text strong{font-size:12px;font-weight:650}.activity-text span{font-size:11px;color:#a6a6af;line-height:1.4;overflow-wrap:anywhere}.activity-action{border:1px solid rgba(255,255,255,.16);background:#eeeef3;color:#17171b;border-radius:100px;font-weight:730;font-size:12px;padding:9px 13px;white-space:nowrap;flex:0 0 auto}.activity-action:active{transform:scale(.97)}.progress-wrap{padding:11px 0 0 27px}.progress-track{height:4px;background:#34343b;border-radius:20px;overflow:hidden}.progress-track span{display:block;height:100%;background:#7897fb;width:0%;transition:width .2s}.progress-detail{display:flex;justify-content:space-between;gap:9px;margin-top:8px;font-size:10px;color:#a5a5b1}.progress-detail span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:70%}.diagnostics{margin:10px 0 0 27px;font-size:11px;color:#f3a1a1}.diagnostics summary{cursor:pointer}.diagnostics pre{white-space:pre-wrap;word-break:break-word;max-height:135px;overflow:auto;font:11px/1.4 ui-monospace,monospace;color:#bdbdc5}.tiny-button{border:1px solid #555;background:#2b2b30;border-radius:8px;padding:6px 10px;font-size:11px}
.messages{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:14px 18px 15px}.welcome{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:12px 5px 30px}.welcome-mark{height:50px;width:50px;display:grid;place-items:center;font-size:35px;margin-bottom:21px;color:#e3e5ef}.welcome h1{font-size:25px;line-height:1.19;letter-spacing:-.8px;font-weight:660;margin:0 0 11px}.welcome p{color:#9e9eaa;font-size:13px;line-height:1.6;max-width:290px;margin:0}.suggestions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;width:100%;max-width:420px;margin-top:27px}.suggestion{background:#19191c;border:1px solid var(--line);border-radius:15px;text-align:left;padding:13px;color:#d9d9e0;font-size:12px;line-height:1.4;min-height:62px}.suggestion:hover{background:#25252a}.message{max-width:620px;margin:0 auto 20px;display:flex;flex-direction:column;gap:7px}.message.user{align-items:flex-end;margin-bottom:25px}.message.assistant{align-items:stretch}.message-bubble{font-size:15px;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere}.message.user .message-bubble{background:#29292d;max-width:min(90%,480px);padding:11px 15px;border-radius:21px 21px 7px 21px}.message.assistant .message-bubble{padding:4px 3px 0}.assistant-label{display:flex;gap:8px;align-items:center;color:#b9b9c4;font-size:11px;font-weight:700}.assistant-icon{width:22px;height:22px;border:1px solid #55545d;background:linear-gradient(135deg,#33333b,#131316);border-radius:7px;display:grid;place-items:center;font-size:14px;color:#f0f0f3}.answer-tools{display:flex;gap:5px;margin-top:5px}.small-action{background:transparent;border:none;color:#898994;font-size:11px;padding:6px;border-radius:7px}.small-action:hover{background:#212125}.thinking-dots{display:flex;gap:4px;align-items:center;height:20px}.thinking-dots i{width:6px;height:6px;background:#b0b0b9;border-radius:50%;animation:pulse 1.1s infinite}.thinking-dots i:nth-child(2){animation-delay:.15s}.thinking-dots i:nth-child(3){animation-delay:.3s}@keyframes pulse{0%,100%{opacity:.45}50%{opacity:1}}
.composer-zone{flex:0 0 auto;padding:8px 15px calc(8px + env(safe-area-inset-bottom));background:linear-gradient(180deg,rgba(13,13,14,0),#0d0d0e 17%)}.composer{border:1px solid rgba(255,255,255,.145);border-radius:27px;background:linear-gradient(140deg,rgba(44,44,47,.95),rgba(34,34,37,.95));box-shadow:inset 0 1px rgba(255,255,255,.09),0 9px 26px rgba(0,0,0,.2);display:flex;flex-direction:column;padding:12px 12px 10px;max-width:780px;margin:auto}.composer textarea{display:block;width:100%;background:transparent;border:none;outline:none!important;resize:none;color:#fafafa;font-size:16px;line-height:1.45;min-height:26px;max-height:130px;overflow-y:auto;padding:0 4px;margin:0}.composer textarea::placeholder{color:#aaaaaf}.composer-controls{display:flex;align-items:center;margin-top:7px;min-height:37px;gap:8px}.tool-button{width:33px;height:33px;display:grid;place-items:center;border:none;background:none;color:#dcdce1;border-radius:100%}.tool-button svg{width:22px;height:22px}.composer-spacer{flex:1}.typing-state{color:#a0a0ac;font-size:11px}.send-button{width:37px;height:37px;border:none;border-radius:50%;background:#567bf2;color:white;display:grid;place-items:center;box-shadow:0 3px 12px #314d9533;transition:transform .13s,background .13s}.send-button svg{width:22px;height:22px}.send-button:active{transform:scale(.94)}.send-button:disabled{background:#55545f;color:#d1d1d5;opacity:.7}.footnote{text-align:center;font-size:10px;color:#676772;margin:9px 0 0;letter-spacing:.15px}
.overlay{position:fixed;inset:0;background:rgba(0,0,0,.62);z-index:9;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px)}.sidebar{position:fixed;z-index:10;inset:0 auto 0 0;width:min(84vw,340px);background:#171719;border-right:1px solid #333338;transform:translateX(-105%);transition:transform .23s ease;display:flex;flex-direction:column;padding:calc(16px + env(safe-area-inset-top)) 15px calc(15px + env(safe-area-inset-bottom));box-shadow:13px 0 28px #0006}.sidebar.open{transform:translateX(0)}.sidebar-header,.brand{display:flex;align-items:center}.sidebar-header{justify-content:space-between;margin-bottom:24px}.brand{gap:10px;font-size:17px}.brand-mark{height:30px;width:30px;border-radius:9px;display:grid;place-items:center;background:#34343a}.sidebar .icon-button{width:37px;height:37px;flex-basis:37px;color:#aaa}.sidebar-new{border:1px solid #38383e;background:#29292e;text-align:left;border-radius:11px;padding:12px 13px;font-size:14px;font-weight:640}.sidebar-new span{font-size:20px;margin-right:7px}.side-label{margin:27px 9px 9px;font-size:10px;color:#83838d;letter-spacing:1.3px;font-weight:700}.chat-list{min-height:0;overflow:auto;flex:1}.chat-entry{display:flex;gap:3px;align-items:center;border-radius:10px;padding:2px}.chat-entry.selected{background:#29292f}.chat-open{flex:1;min-width:0;border:none;background:none;text-align:left;padding:11px;color:#d7d7df;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.chat-delete{background:none;border:none;color:#8a8a95;font-size:20px;padding:5px 8px}.chat-delete:active{color:#ed8b8b}.side-empty{font-size:13px;color:#898995;padding:17px 10px}.sidebar-footer{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding-top:15px;border-top:1px solid #303035;color:#85858f;font-size:11px}.text-button{border:0;background:none;padding:4px 0;font-size:12px;color:#e1a2a2}
.model-dialog{position:fixed;z-index:11;top:50%;left:50%;transform:translate(-50%,-47%) scale(.97);width:min(calc(100% - 30px),430px);max-height:calc(100dvh - 70px);overflow:auto;background:rgba(33,33,38,.97);border:1px solid rgba(255,255,255,.18);border-radius:25px;padding:22px;opacity:0;pointer-events:none;transition:opacity .18s,transform .18s;box-shadow:0 20px 70px #0008}.model-dialog.open{transform:translate(-50%,-50%) scale(1);opacity:1;pointer-events:auto}.dialog-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.dialog-header .icon-button{width:34px;height:34px;flex-basis:34px;color:#a6a6b0}.eyebrow{font-size:10px;letter-spacing:1.2px;color:#9191a1;font-weight:700}.dialog-header h2{font-size:23px;letter-spacing:-.65px;margin:5px 0 20px}.model-choices{display:flex;flex-direction:column;gap:10px}.model-option{display:flex;width:100%;align-items:center;gap:11px;background:#29292f;border:1px solid #44444d;border-radius:15px;padding:12px;text-align:left}.model-option[aria-checked="true"]{border-color:#8198fa;background:#2c3040}.choice-icon{display:grid;place-items:center;border-radius:10px;height:38px;min-width:38px;background:#393942;font-size:18px}.choice-copy{display:flex;flex-direction:column;gap:5px;min-width:0;flex:1}.choice-copy strong{font-size:13px}.choice-copy small{font-size:11px;color:#a3a3af;line-height:1.4}.choice-copy em{font-style:normal;font-size:9px;background:#434354;color:#c8c8d3;border-radius:5px;padding:2px 4px;font-weight:600;margin-left:3px}.model-option .check{color:#a8b8ff;visibility:hidden}.model-option[aria-checked="true"] .check{visibility:visible}.dialog-note{font-size:12px;color:#b4b4bf;line-height:1.55;margin:18px 0}.modal-primary{width:100%;padding:13px;border:none;border-radius:13px;background:#567af4;font-size:14px;font-weight:680}.dialog-bottom{margin:13px 0 0;text-align:center;font-size:10px;color:#878791}.toast{position:fixed;z-index:20;left:50%;bottom:calc(110px + env(safe-area-inset-bottom));transform:translateX(-50%) translateY(10px);padding:10px 15px;background:#34343a;border:1px solid #55555d;border-radius:100px;color:white;white-space:nowrap;font-size:12px;opacity:0;pointer-events:none;transition:opacity .2s,transform .2s}.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@media(min-width:700px){.messages{padding:23px 35px}.activity{margin-left:32px;margin-right:32px}.topbar{padding-left:26px;padding-right:26px}.composer-zone{padding-left:30px;padding-right:30px}.message{margin-bottom:26px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:0.01ms!important;transition-duration:0.01ms!important}}
