:root{color-scheme:dark;--bg:#181818;--side:#151515;--raised:#222;--hover:#252525;--selected:#303030;--line:#2d2d2d;--text:#eee;--muted:#939393;--faint:#656565;--input:#202020;--bubble:#2a2a2a;--accent:#c3b0ff;--danger:#f38e8e;--button:#eee;--button-text:#181818;font:14px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
:root[data-theme=light]{color-scheme:light;--bg:#fcfcfc;--side:#f5f5f5;--raised:#fff;--hover:#ededed;--selected:#e5e5e5;--line:#e4e4e4;--text:#202020;--muted:#757575;--faint:#a0a0a0;--input:#f3f3f3;--bubble:#eaeaea;--accent:#7865c1;--danger:#b33333;--button:#242424;--button-text:#fff}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);overflow:hidden}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;border:0;background:none}button:disabled{cursor:default;opacity:.4}input,textarea,select{background:var(--input);border:1px solid var(--line);border-radius:9px;outline:none}input:focus,textarea:focus,select:focus{border-color:var(--muted)}button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}input,textarea{user-select:text}input{padding:11px 12px}textarea{resize:vertical;padding:12px}svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.svg-library{position:absolute;width:0;height:0;overflow:hidden}[hidden]{display:none!important}.muted{color:var(--muted)}.error{color:var(--danger);font-size:13px;min-height:18px;white-space:pre-wrap}h1,h2,h3,p{margin:0}h2{font-size:15px;font-weight:600}strong{font-weight:600}small{font-size:12px}.icon-button{width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;color:var(--muted);flex-shrink:0}.icon-button:hover,.icon-button.active{background:var(--hover);color:var(--text)}.primary{background:var(--button);color:var(--button-text);border-radius:9px;padding:10px 18px;font-weight:600;display:flex;gap:30px;justify-content:center;align-items:center}.primary:hover{opacity:.85}.subtle-button{background:var(--hover);padding:8px 13px;border-radius:8px;font-size:13px}.subtle-button:hover{background:var(--selected)}.text-button{color:var(--muted);font-size:12px;padding:7px}.text-button:hover{color:var(--text)}
.app{height:100dvh;display:flex;min-width:700px}.sidebar{width:280px;flex:0 0 280px;display:flex;flex-direction:column;background:var(--side);border-right:1px solid var(--line)}.sidebar-head{height:66px;display:flex;align-items:center;justify-content:space-between;padding:0 18px 0 24px}.brand{font-size:23px;font-weight:650;letter-spacing:-1px;display:flex;align-items:center;gap:5px;padding:0}.search-field{display:flex;align-items:center;gap:8px;margin:0 14px 18px;padding:0 9px;height:34px;color:var(--faint);border:1px solid var(--line);border-radius:7px;background:var(--input)}.search-field svg{width:15px;height:15px}.search-field input{padding:0;background:none;border:0;min-width:0;width:100%;font-size:12px}.shortcut{font-size:10px;white-space:nowrap;opacity:.65}.roster{flex:1;overflow:auto;padding:0 9px 15px;scrollbar-gutter:stable}.section-label{display:flex;width:100%;align-items:center;text-align:left;color:var(--muted);font-size:11px;font-weight:550;letter-spacing:.2px;padding:14px 10px 7px;gap:5px}.section-label svg{width:11px;height:11px;transform:rotate(90deg)}.section-label.collapsed svg{transform:rotate(0)}.section-label span:last-child{margin-left:auto;color:var(--faint);font-size:10px}.bot-row{position:relative;width:100%;display:flex;align-items:center;text-align:left;gap:12px;padding:11px 10px;border-radius:8px;min-height:65px;margin:2px 0}.bot-row:hover{background:var(--hover)}.bot-row.selected{background:var(--selected)}.bot-copy{min-width:0;flex:1}.bot-copy strong{display:block;font-size:13px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;margin-bottom:3px}.bot-preview{display:block;font-size:11px;line-height:1.35;color:var(--muted);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.bot-row.selected .bot-preview{color:var(--muted)}.bot-row .dot{position:absolute;left:36px;top:40px;width:9px;height:9px;background:#b6a0f4;border:2px solid var(--side);border-radius:50%}.sidebar-foot{padding:12px;border-top:1px solid var(--line)}.account{width:100%;display:flex;align-items:center;text-align:left;gap:11px;padding:8px;border-radius:8px}.account:hover{background:var(--hover)}.account span:nth-child(2){flex:1}.account strong{display:block;font-size:12px}.account small{display:block;font-size:11px;color:var(--muted)}.account>svg{width:17px;height:17px;color:var(--muted)}.account-avatar{background:var(--selected);border:1px solid var(--line);width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:500}.bot-avatar{display:block;width:34px;height:34px;flex-shrink:0;overflow:visible;stroke:none}.bot-avatar .eye{fill:#1a1a1a}.bot-avatar.working{animation:bob 1.8s ease-in-out infinite;filter:drop-shadow(0 0 7px #b6a0f422)}@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}
.conversation{min-width:0;flex:1;display:flex;flex-direction:column;background:var(--bg)}.chat-header{height:66px;flex-shrink:0;border-bottom:1px solid var(--line);padding:0 22px;display:flex;align-items:center;gap:9px}.bot-heading{display:flex;align-items:center;gap:11px;text-align:left;padding:0;min-width:0}.bot-heading strong{font-size:14px;display:block;max-width:240px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bot-heading small{font-size:11px;color:var(--muted);display:block}.header-actions{margin-left:auto;display:flex;gap:8px}.chat-header>#sidebar-toggle{display:none}.timeline{overflow:auto;flex:1;overscroll-behavior:contain;scrollbar-gutter:stable}.timeline-inner{max-width:810px;margin:auto;padding:24px 38px 20px;min-height:100%}.date-divider{display:flex;justify-content:center;gap:15px;align-items:center;color:var(--faint);font-size:10px;margin:16px 0 28px}.date-divider:before,.date-divider:after{content:"";height:1px;background:var(--line);width:48px}.message{position:relative;display:flex;gap:12px;margin:0 0 25px;animation:appear .15s ease-out}.message .bot-avatar{width:26px;height:26px;margin-top:3px}.message-main{min-width:0;max-width:100%;flex:1}.message-meta{color:var(--muted);font-size:10px;display:flex;gap:8px;align-items:baseline;margin-bottom:7px}.message-meta strong{font-size:12px;color:var(--text)}.message-body{font-size:14px;line-height:1.75;overflow-wrap:anywhere;user-select:text}.message-body p{margin:0 0 13px;white-space:pre-wrap}.message-body p:last-child{margin:0}.message-body h1,.message-body h2,.message-body h3{margin:18px 0 9px;font-weight:600;font-size:16px}.message-body ul,.message-body ol{padding-left:21px;margin:10px 0 16px}.message-body li{margin:5px 0}.message-body a{color:var(--accent);text-decoration:underline}.message-body code{font-family:Consolas,"SFMono-Regular",monospace;background:var(--selected);padding:2px 5px;border-radius:4px;font-size:12px}.message-body blockquote{margin:12px 0;padding-left:15px;border-left:2px solid var(--muted);color:var(--muted)}.code-block{margin:14px 0;border:1px solid var(--line);border-radius:9px;overflow:hidden;background:var(--side)}.code-head{height:34px;padding:0 12px;display:flex;align-items:center;justify-content:space-between;background:var(--raised);border-bottom:1px solid var(--line);font:10px/1.5 Consolas,monospace;color:var(--muted)}.code-head button{font:11px "Segoe UI",sans-serif;color:var(--muted)}.code-block pre{margin:0;padding:14px 15px;overflow:auto;white-space:pre;font:12px/1.65 Consolas,monospace;user-select:text}.message.user{justify-content:flex-end;margin-top:15px}.message.user .message-main{flex:initial;max-width:83%;display:flex;align-items:flex-end;flex-direction:column}.message.user .message-body{border:1px solid var(--line);background:var(--bubble);border-radius:17px 17px 4px 17px;padding:12px 17px;white-space:pre-wrap;line-height:1.65}.message.user .message-meta{margin:7px 3px 0;order:2}.message.user .message-meta strong{display:none}.copy-message{opacity:0;font-size:10px;color:var(--muted);margin-top:6px;padding:0}.message:hover .copy-message,.copy-message:focus-visible{opacity:1}.copy-message svg{width:12px;height:12px;vertical-align:middle;margin-right:5px}.older{display:block;margin:0 auto 26px;color:var(--muted);font-size:11px;padding:8px 14px;border:1px solid var(--line);border-radius:20px}.older:hover{background:var(--hover)}.welcome{min-height:310px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:40px 0;gap:13px;text-align:center}.welcome .bot-avatar{width:64px;height:64px}.welcome h1{font-size:24px;font-weight:550;letter-spacing:-.6px}.welcome p{max-width:350px;font-size:13px;color:var(--muted);line-height:1.7}.work-status{display:flex;align-items:center;gap:11px;color:var(--muted);padding:0 0 8px}.work-status .bot-avatar{width:26px;height:26px}.work-status button{display:flex;align-items:center;gap:10px;font-size:12px;padding:0}.work-status svg:not(.bot-avatar){width:12px;height:12px}.shimmer{animation:dim 1.6s ease-in-out infinite}@keyframes dim{50%{opacity:.5}}@keyframes appear{from{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}
.compose-wrap{position:relative;width:100%;max-width:810px;margin:0 auto;padding:8px 34px 13px;flex-shrink:0}.composer{border:1px solid #3b3b3b;background:var(--input);border-radius:18px;padding:13px 14px 10px;transition:border-color .15s;box-shadow:0 6px 24px #00000009}.composer:focus-within{border-color:var(--faint)}.composer textarea{display:block;border:0!important;border-radius:0;resize:none;background:transparent;width:100%;padding:1px 4px 7px;min-height:42px;max-height:180px;line-height:1.6;font-size:14px}.composer textarea::placeholder{color:var(--faint)}.composer-bottom{display:flex;align-items:center;justify-content:space-between;padding-left:4px;gap:12px}.composer-bottom>span{color:var(--faint);font-size:10px}.send-button,.stop-button{height:30px;width:30px;background:var(--button);color:var(--button-text);border-radius:50%;display:grid;place-items:center;flex-shrink:0}.send-button svg{width:17px;height:17px;stroke-width:2}.stop-button svg{width:18px;height:18px}.notice{min-height:19px;font-size:10px;text-align:center;color:var(--muted);padding-top:6px}.notice.error{color:var(--danger)}.running-banner{background:var(--raised);border-bottom:1px solid var(--line);color:var(--accent);padding:8px 20px;text-align:left;font-size:12px}.jump-latest{position:absolute;bottom:calc(100% + 12px);left:50%;transform:translateX(-50%);padding:7px 13px;background:var(--raised);border:1px solid var(--line);box-shadow:0 3px 15px #0002;border-radius:20px;font-size:11px;color:var(--muted)}.conversation-search{display:flex;align-items:center;gap:10px;padding:8px 25px;border-bottom:1px solid var(--line)}.conversation-search>svg{color:var(--muted);width:17px}.conversation-search input{flex:1;min-width:0;padding:6px 8px;background:none;border:0;font-size:12px}
.drawer{width:330px;flex:0 0 330px;border-left:1px solid var(--line);background:var(--side);display:flex;flex-direction:column}.drawer>header{height:66px;padding:0 18px 0 22px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.drawer h2{font-size:13px}.drawer-body{overflow:auto;padding:23px}.profile-hero{text-align:center;padding:8px 0 25px}.profile-hero .bot-avatar{width:72px;height:72px;margin:0 auto 15px}.profile-hero h2{font-size:20px;font-weight:550;margin-bottom:4px}.profile-hero p{color:var(--muted);font-size:12px}.detail-section{border-top:1px solid var(--line);padding:20px 0}.detail-section h3{font-size:11px;color:var(--muted);font-weight:550;margin:0 0 12px}.detail-section p,.detail-text{font-size:12px;white-space:pre-wrap;line-height:1.75;overflow-wrap:anywhere;user-select:text}.detail-actions{display:flex;gap:8px;justify-content:center;margin:4px 0 21px}.detail-actions button{font-size:11px;padding:7px 11px;border:1px solid var(--line);border-radius:7px}.detail-actions button:hover{background:var(--hover)}.field-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 0;font-size:12px;color:var(--muted)}.field-row span:last-child{color:var(--text);text-align:right}.empty-panel{color:var(--muted);font-size:12px;line-height:1.8;text-align:center;padding:55px 5px}.empty-panel svg{display:block;width:28px;height:28px;margin:0 auto 15px;opacity:.5}
.login-view{height:100dvh;display:flex;justify-content:center;align-items:center;background:radial-gradient(ellipse at 50% 25%,#25232366,transparent 60%),var(--bg)}.login-card{width:360px;display:flex;flex-direction:column}.login-mark{margin:0 auto 25px}.login-mark .bot-avatar{width:70px;height:70px}.login-card h1{text-align:center;font-size:26px;font-weight:550;letter-spacing:-.9px}.login-card>p.muted{text-align:center;font-size:13px;margin:10px 0 30px}.login-card>label:not(.checkbox){font-size:12px;margin:14px 0 7px}.login-card>.checkbox{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted);margin:20px 0}.checkbox input{accent-color:var(--muted)}.login-card .primary{width:100%;justify-content:space-between}.login-card .error{margin-top:10px}.login-foot{text-align:center;color:var(--faint);font-size:11px;margin-top:35px}dialog{background:var(--bg);color:var(--text);padding:25px;width:460px;max-width:90vw;border:1px solid var(--line);border-radius:15px;box-shadow:0 25px 100px #0006}dialog::backdrop{background:#0009;backdrop-filter:blur(3px)}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.modal-header h2{font-size:18px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:22px}.modal-actions .primary{font-size:13px;padding:8px 16px}#modal-body>label{display:block;font-size:12px;color:var(--muted);margin:15px 0 7px}#modal-body>input,#modal-body>textarea,#modal-body>select{display:block;width:100%}#modal-body>textarea{min-height:120px}#modal-body p{color:var(--muted);font-size:12px;line-height:1.8;margin-bottom:12px}.settings-action{display:flex;align-items:center;justify-content:space-between;width:100%;padding:14px 0;border-bottom:1px solid var(--line);font-size:13px}.settings-action:hover{color:var(--accent)}.settings-action svg{width:16px;color:var(--muted)}.empty-roster{padding:25px 10px;font-size:12px;color:var(--muted);text-align:center}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:transparent;border-radius:10px}*:hover::-webkit-scrollbar-thumb{background:var(--line)}
@media(max-width:1100px){.drawer{position:absolute;right:0;top:66px;bottom:0;width:330px;z-index:5;box-shadow:-12px 0 30px #0003}.drawer>header{height:52px}.timeline-inner{padding-left:26px;padding-right:26px}.compose-wrap{padding-left:22px;padding-right:22px}.header-actions{gap:1px}}
@media(max-width:850px){.sidebar{width:235px;flex-basis:235px}.shortcut{display:none}.chat-header{padding:0 13px}.chat-header>#sidebar-toggle{display:inline-flex}.bot-heading strong{max-width:130px}.bot-heading small{font-size:10px}.composer-bottom>span{font-size:9px}.app.sidebar-hidden .sidebar{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

.update-button{display:flex;align-items:center;gap:9px;width:100%;padding:8px 10px;margin-bottom:7px;color:var(--muted);border-radius:7px;font-size:11px;text-align:left}.update-button svg{width:14px;height:14px}.update-button:hover{background:var(--hover);color:var(--text)}.update-button.available{color:var(--accent);background:var(--hover)}.update-progress{width:100%;height:5px;border:0;border-radius:5px;accent-color:var(--accent);margin:12px 0 8px}.update-progress::-webkit-progress-bar{background:var(--line);border-radius:5px}.update-progress::-webkit-progress-value{background:var(--accent);border-radius:5px}.update-status{font-size:12px;color:var(--muted)}

.brand{gap:9px}.brand .app-robot{width:30px;height:30px;flex:none;stroke:none}.login-mark>svg{width:64px;height:64px;stroke:none}

.life-card{padding:13px 0;border-bottom:1px solid var(--line)}.life-card>strong,.life-card>small{display:block}.life-card p{font-size:12px;line-height:1.5;overflow-wrap:anywhere}.life-actions{display:grid;gap:3px}.life-tabs,.workspace-links{display:flex;gap:13px;flex-wrap:wrap;margin-bottom:14px}.workspace-links{margin:0 7px 8px}.life-tabs .active{color:var(--text)}.proposal-text{font:11px/1.6 Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;max-height:240px;overflow:auto}.danger{color:#db9d9d}.unread-dot{position:absolute;right:8px;top:18px;width:6px;height:6px;background:#a6e3cc;border-radius:50%}.needs-attention .bot-copy strong{color:#e9c48a}.group-row>svg{width:29px;height:29px;color:var(--muted)}.group-row strong{font-size:12px}.group-recipient{max-width:185px;font-size:10px;padding:3px 5px;background:var(--input);border:1px solid var(--line);border-radius:4px;color:var(--text)}#header-avatar>svg{width:34px;height:34px}#attach-file{width:26px;height:25px;padding:3px;margin-right:2px}.compose-wrap .composer-bottom{gap:8px}#composer-hint{flex:1;min-width:0}.modal-body .checkbox{margin:8px 0}.drawer .detail-actions{flex-wrap:wrap}.stop-button:not([hidden]){flex:none}

/* Measured from the installed Grok Bot interface; assets drawn for oNyX. */
:root{--bg:#070707;--side:#111111;--raised:#191919;--hover:#242424;--selected:#303030;--line:#2b2b2b;--text:#f5f5f5;--muted:#999;--faint:#717171;--input:#303030;--bubble:#5a5a5a;--accent:#eee;font-family:Arial,"Segoe UI",sans-serif}
:root[data-theme=light]{--bg:#fff;--side:#f5f5f5;--raised:#fff;--hover:#ececec;--selected:#e2e2e2;--line:#ddd;--text:#171717;--muted:#707070;--faint:#909090;--input:#f0f0f0;--bubble:#dedede;--accent:#333}
.sidebar{width:280px;flex-basis:280px}.sidebar-head{height:52px;min-height:52px;padding:0 12px 0 20px}.brand{font-size:19px;letter-spacing:-.6px}.brand .app-robot{width:25px;height:25px}.search-field{height:32px;margin:4px 12px 10px;padding:0 8px;background:#232323;border-color:#2d2d2d;border-radius:8px}.search-field input{font-size:14px}.shortcut{display:none}.roster{padding:0 12px 12px;scrollbar-gutter:auto}.section-label{padding:18px 8px 8px;font-size:12px;font-weight:400;letter-spacing:0}.section-label span:last-child{margin:0;color:var(--muted);font-size:12px}.section-label.collapsed{opacity:.6}.section-label.collapsed:after{content:'›';margin-left:auto}.bot-row{gap:8px;min-height:54px;padding:7px 8px;border-radius:10px;margin:2px 0}.bot-row .bot-avatar{width:36px;height:36px}.bot-row-heading{display:flex;align-items:center;gap:5px;min-width:0}.bot-copy strong{font-size:14px;line-height:20px;font-weight:400;margin:0;flex-shrink:1}.bot-tag{display:inline-block;max-width:74px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;background:#252525;border:1px solid #333;border-radius:4px;padding:0 4px;color:#aaa;font-size:11px;line-height:18px;flex-shrink:0}.selected .bot-tag{background:#3b3b3b;border-color:#464646}.bot-preview{font-size:13px;line-height:18px}.bot-time{font-size:11px;color:var(--muted);margin-left:auto;flex:none}.bot-row .dot{left:34px;top:34px;background:#e0e0e0}.unread-dot{right:6px;top:10px;background:#f5f5f5}.pinned-grid{display:grid;grid-template-columns:repeat(2,88px);justify-content:center;gap:14px 0;padding:14px 0 10px}.pinned-bot{width:88px;min-height:110px;align-items:center;justify-content:flex-start;flex-direction:column;gap:6px;padding:4px 2px 8px;margin:0}.pinned-bot .bot-avatar{width:64px;height:64px}.pinned-bot .bot-copy{flex:none;width:100%;text-align:center}.pinned-bot .bot-row-heading{display:flex;flex-direction:column;gap:3px}.pinned-bot .bot-copy strong{font-size:11px;max-width:84px;line-height:17px}.pinned-bot .bot-tag{max-width:74px;font-size:11px;line-height:17px}.pinned-bot.selected{background:transparent}.pinned-bot.selected .bot-avatar{filter:drop-shadow(0 0 3px #ffffff1c)}.pinned-bot:hover{background:var(--hover)}.pinned-bot .dot{left:auto;right:14px;top:53px}.pinned-bot .unread-dot{top:8px;right:8px}.bot-avatar .eye{fill:#050505}.sidebar-foot{padding:7px 12px 10px;border-top:0}.account{padding:6px 8px}.account-avatar{width:28px;height:28px}.account strong{font-size:12px;font-weight:400}.account small{font-size:10px}.update-button{font-size:11px;padding:6px 8px;margin-bottom:2px}
.chat-header{height:52px;padding:0 14px;gap:8px}.bot-heading{gap:5px}.bot-heading strong{font-size:12px;font-weight:400}.bot-heading small{font-size:10px}.bot-heading #header-avatar>svg{width:24px;height:24px}.header-actions{gap:2px}.header-actions .icon-button{width:30px;height:30px}.header-actions svg{width:17px;height:17px}.timeline-inner{max-width:960px;padding:8px 16px 16px}.message{margin:0 0 16px;gap:0}.message>.bot-avatar{display:none}.message.assistant .message-main{background:#262626;border-radius:20px;padding:10px 12px;flex:initial;max-width:88%}.message-meta{font-size:10px;margin:0 2px 3px;color:var(--muted)}.message.assistant .message-meta strong{display:none}.message-body{font-size:14px;line-height:1.48}.message-body p{margin-bottom:12px}.message-body code{color:#ff5269;background:#363636;border:1px solid #484848;padding:0 4px;font-size:13px;white-space:pre-wrap}.message-body li{margin:7px 0}.message.user{margin:14px 0}.message.user .message-main{max-width:84%}.message.user .message-body{border:0;border-radius:20px;padding:8px 12px;line-height:1.5}.message.user .message-meta{margin:4px 5px 0;font-size:10px}.copy-message{margin-top:5px;font-size:10px}.date-divider{margin:10px 0 18px}.date-divider:before,.date-divider:after{display:none}.welcome{min-height:380px}.welcome .bot-avatar{width:104px;height:104px}.welcome h1{font-size:25px}.welcome p{font-size:13px}.compose-wrap{max-width:960px;padding:8px 16px 8px}.composer{border-radius:24px;padding:6px 7px;display:flex;align-items:flex-end;gap:6px;background:var(--input);border:1px solid #5b5b5b;box-shadow:0 1px 3px #0005}.composer textarea{order:1;width:auto;min-width:0;flex:1;min-height:30px;padding:5px 1px 3px;font-size:14px;line-height:20px}.composer-bottom{display:contents}.composer-bottom>#composer-hint{display:none}.composer-bottom>#attach-file{order:0;width:29px;height:29px;border-radius:50%;background:#444;color:#bbb;margin:0 0 1px;padding:5px}.send-button,.stop-button{order:3;height:29px;width:29px;align-self:flex-end;margin-bottom:1px}.composer-bottom>.group-recipient{order:2;max-width:135px;align-self:center}.notice{min-height:8px;padding-top:3px}.notice:empty{display:none}#work-details{font-size:12px}.drawer{background:var(--bg);width:320px;flex-basis:320px}.drawer>header{height:52px;min-height:52px}.drawer-body{padding:20px 16px}.profile-hero .bot-avatar{width:80px;height:80px}.profile-hero h2{font-weight:400}.drawer .detail-section{padding:16px 0}
.bot-context-menu{position:fixed;z-index:1000;width:205px;max-height:calc(100dvh - 16px);overflow:auto;padding:5px 6px;background:#191919;border:1px solid #303030;border-radius:9px;box-shadow:0 8px 32px #0006;user-select:none}.bot-context-menu button{display:flex;align-items:center;gap:9px;width:100%;padding:8px 9px;text-align:left;border-radius:5px;font-size:13px;line-height:17px;color:#f2f2f2}.bot-context-menu button:hover,.bot-context-menu button:focus{outline:0;background:#303030}.bot-context-menu button svg{width:15px;height:15px;stroke-width:1.5}.bot-context-menu button.danger{color:#ff4055}.context-divider{height:1px;background:#383838;margin:6px 8px}.context-heading{font-size:11px;padding:7px 9px;color:#aaa}.hidden-bot{display:flex;align-items:center;gap:8px;padding:8px 0}.hidden-bot .bot-avatar{width:32px;height:32px}.hidden-bot .text-button{margin-left:auto}.avatar-editor{display:flex;align-items:center;flex-direction:column;margin:2px 0 15px}.avatar-preview{padding:3px;border-radius:50%}.avatar-preview:hover{background:var(--hover)}.avatar-preview .bot-avatar{width:80px;height:80px}.avatar-choices{width:260px;background:var(--raised);border:1px solid var(--line);border-radius:16px;padding:15px;margin-top:10px}.shape-choices{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.shape-choices button{padding:5px;border:2px solid transparent;border-radius:10px}.shape-choices .bot-avatar{width:38px;height:38px}.shape-choices .chosen{border-color:var(--muted)}.color-choices{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:20px}.color-swatch{width:25px;height:25px;border-radius:50%;border:2px solid transparent;box-shadow:inset 0 -5px 8px #0002}.color-swatch.chosen{outline:2px solid var(--muted);outline-offset:3px}
:root[data-theme=light] .search-field,:root[data-theme=light] .message.assistant .message-main{background:#ededed;border-color:#ddd}:root[data-theme=light] .bot-tag{background:#e4e4e4;border-color:#ccc;color:#666}:root[data-theme=light] .bot-context-menu{background:#fff;border-color:#ddd}:root[data-theme=light] .bot-context-menu button{color:#222}:root[data-theme=light] .bot-context-menu button:hover,:root[data-theme=light] .bot-context-menu button:focus{background:#eee}:root[data-theme=light] .bot-context-menu button.danger{color:#c62535}:root[data-theme=light] .context-divider{background:#ddd}:root[data-theme=light] .message-body code{background:#ddd;border-color:#ccc;color:#b82437}
@media(max-width:1100px){.drawer{top:52px}.timeline-inner{padding-left:16px;padding-right:16px}.compose-wrap{padding-left:16px;padding-right:16px}}
@media(max-width:850px){.sidebar{width:250px;flex-basis:250px}.chat-header{padding:0 10px}.bot-heading strong{max-width:140px}.pinned-grid{grid-template-columns:repeat(2,88px)}}

/* Responsive workspace: the conversation never depends on a fixed viewport. */
.app{min-width:0;min-height:0;overflow:hidden}.conversation{min-width:0;min-height:0;overflow:hidden}.timeline{min-height:0}.sidebar{min-height:0}.roster{min-height:0;overscroll-behavior:contain}.pinned-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 0;padding:14px 0 12px}.pinned-bot{width:100%;min-width:0;min-height:108px}.pinned-bot .bot-avatar{width:60px;height:64px}.pinned-bot .bot-copy strong{max-width:100%;font-size:11px}.pinned-bot .bot-tag{max-width:72px}.pinned-bot .bot-row-heading{min-width:0}.sidebar-head{height:70px;min-height:70px}.chat-header{height:70px;min-height:70px;padding:6px 12px;gap:8px}.chat-header>#sidebar-toggle{display:inline-flex}.bot-heading{min-width:0;flex:1;gap:8px}.bot-heading>span:last-child{min-width:0}.bot-heading strong{max-width:none;line-height:17px;font-size:13px}.bot-heading small{line-height:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.bot-heading .bot-model{color:var(--text);font-size:10px;line-height:15px}.header-actions{flex-shrink:0;margin-left:0}.header-actions .icon-button{width:28px;height:30px}.sidebar-backdrop{display:none}.app.sidebar-hidden .sidebar{display:none}.drawer{min-width:0;min-height:0}.drawer>header{height:70px;min-height:70px}.drawer-body{min-height:0;overflow:auto}.timeline-inner,.compose-wrap{width:100%;min-width:0}.message-main{min-width:0}.message-body{overflow-wrap:anywhere}.message-body table{max-width:100%;overflow:auto}.composer{min-width:0}.composer textarea{max-height:min(180px,30dvh)}.login-card{width:min(360px,calc(100vw - 40px));max-height:calc(100dvh - 30px);overflow:auto}.login-view{min-height:0;padding:15px 0}dialog{max-height:calc(100dvh - 24px);max-width:calc(100vw - 24px);overflow:auto;overscroll-behavior:contain}#modal-body{min-width:0}#modal-body input,#modal-body textarea,#modal-body select{max-width:100%}.avatar-choices{max-width:100%}.shape-choices .bot-avatar{max-width:100%}.group-recipient{min-width:0}.bot-time{max-width:55px;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1180px){.drawer{position:absolute;right:0;top:70px;bottom:0;width:min(340px,100%);max-width:100%;z-index:15;box-shadow:-12px 0 30px #0004}.drawer>header{height:52px;min-height:52px}}
@media(max-width:900px){.sidebar{position:absolute;left:0;top:0;bottom:0;z-index:30;width:min(280px,calc(100vw - 48px));flex-basis:auto;border-right:1px solid var(--line);box-shadow:12px 0 40px #0005}.app:not(.sidebar-open) .sidebar{display:none}.app.sidebar-open .sidebar{display:flex}.app.sidebar-open .sidebar-backdrop{display:block;position:absolute;inset:0;z-index:25;background:#0008;width:100%;height:100%;border:0}.pinned-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.timeline-inner{padding:8px 12px 12px}.compose-wrap{padding:7px 12px max(8px,env(safe-area-inset-bottom))}.chat-header{padding:6px 8px}.bot-heading strong{max-width:none}.bot-heading small{font-size:10px}.bot-heading .bot-model{font-size:10px}.app.sidebar-hidden .sidebar{display:none}.message.assistant .message-main{max-width:94%}.message.user .message-main{max-width:92%}.welcome{min-height:min(380px,55dvh);padding:22px 0}.welcome .bot-avatar{width:84px;height:84px}}
@media(max-width:480px){.header-actions{gap:0}.header-actions .icon-button{width:25px}.bot-heading{gap:5px}.chat-header{gap:4px}.chat-header>#sidebar-toggle{width:28px}.bot-heading #header-avatar>svg{width:20px;height:20px}.bot-heading .bot-model{font-size:9px}.group-recipient{max-width:95px}.message-body{font-size:13px}.drawer{width:100%}.avatar-choices{width:250px}dialog{padding:18px}.login-mark{margin-bottom:12px}.login-card>p.muted{margin-bottom:12px}.login-foot{margin-top:16px}}
@media(max-height:580px){.welcome{min-height:180px;padding:16px 0;gap:8px}.welcome .bot-avatar{width:64px;height:64px}.login-mark{margin-bottom:10px}.login-card>p.muted{margin-bottom:10px}.login-foot{margin-top:15px}.compose-wrap{padding-top:4px;padding-bottom:6px}}

/* Model control stays directly beside Send; narrow windows use a separate input row. */
.model-settings{order:2;display:flex;align-items:center;gap:4px;flex:0 1 auto;min-width:0;max-width:260px;height:32px;padding:0 7px;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:11px;cursor:pointer}
.model-settings:hover{background:var(--hover);color:var(--text)}
.model-settings span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.model-settings svg{width:12px;height:12px;flex-shrink:0}
.model-settings:disabled{opacity:.6;cursor:default}
.model-help{font-size:12px;color:var(--muted)}
@media(max-width:1100px){.composer{flex-wrap:wrap}.composer textarea{flex:1 0 calc(100% - 52px);width:calc(100% - 52px)}.model-settings{margin-left:auto;max-width:calc(100% - 96px)}.group-recipient{max-width:130px}.composer #send,.composer #stop{flex-shrink:0}}
