:root{--ink:#17231b;--muted:#788079;--lime:#d6edb1;--line:#e3e7de;--paper:#f6f7f3;--side:#141a17;--red:#b3493f;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft JhengHei",sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:var(--paper)}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}button,a,input,textarea,select{outline-offset:4px}button{transition:background .16s,transform .16s}button:active{transform:translateY(1px)}a{color:inherit}.workspace{display:flex;height:100dvh;min-height:450px}.sidebar{width:282px;flex-shrink:0;background:var(--side);color:#d8dfd7;padding:34px 24px 24px;display:flex;flex-direction:column}.brand{display:flex;gap:13px;align-items:center;text-decoration:none;font-size:25px;font-weight:600;letter-spacing:-1px}.brand strong{font-weight:400;color:#a1aea2}.brand small{display:block;font-size:11px;font-weight:400;letter-spacing:.5px;margin-top:4px;color:#8d9b8e}.brand-mark{background:var(--lime);color:#15211a;display:grid;place-items:center;width:43px;height:43px;border-radius:13px;font:38px Georgia,serif}.new-session{border:1px solid #3f4a41;background:#202b23;color:var(--lime);height:48px;border-radius:9px;display:flex;align-items:center;justify-content:center;gap:10px;margin:36px 0 31px;font-size:13px;font-weight:600}.new-session:hover{background:#2b3930}.new-session span{font-size:22px;font-weight:400}.section-label{font-size:10px;letter-spacing:1.5px;color:#93a092;margin-bottom:13px}.workspace-item{display:flex;align-items:center;gap:12px;background:#202823;border:1px solid #303c33;padding:14px 12px;border-radius:9px;font-size:13px}.workspace-item small{display:block;color:#8a998c;font-size:11px;margin-top:5px}.workspace-item .green-dot{margin-left:auto}.folder-symbol{font-size:25px;color:#b4c9a6}.model-label{margin-top:31px}.sidebar select{width:100%;border:1px solid #38443b;border-radius:8px;padding:12px 9px;background:#1b241e;color:#dee6dc;font-size:12px}.accounts{margin:15px 0 7px;display:flex;flex-direction:column;gap:9px}.account{display:flex;justify-content:space-between;gap:8px;font-size:11px;color:#9ca89d}.account .configured{color:#c5dda6}.text-button{padding:9px 0;border:0;background:none;color:#8e9b8e;text-align:left;font-size:11px}.text-button:hover{color:var(--lime)}.sidebar-bottom{margin-top:auto;padding-top:30px}.pair-button{width:100%;border:1px solid #44503f;background:#252f23;color:var(--lime);height:42px;border-radius:8px;font-size:12px;text-align:left;padding-left:14px;margin-bottom:20px}.machine-note{padding-top:20px;border-top:1px solid #2d3730;font-size:11px;color:#b0bcb0}.machine-note small{display:block;color:#758478;font-size:10px;margin:8px 0 0 12px}.green-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#b8d993;flex-shrink:0}.main{display:flex;flex-direction:column;flex:1;min-width:0}.topbar{height:87px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:0 45px;border-bottom:1px solid var(--line);background:#f9faf6}.topbar-left{display:flex;align-items:center;gap:16px}.page-name{font-size:14px;font-weight:600;letter-spacing:.4px}.tag{display:inline-block;font:9px monospace;letter-spacing:1px;background:#e9eddf;border:1px solid #dfe5d3;padding:3px 5px;margin-left:8px;border-radius:4px;color:#7c866e;vertical-align:2px}.model-caption{font-size:11px;color:var(--muted);margin-top:7px}.connection{display:flex;align-items:center;gap:7px;font-size:11px;color:#6b786b}.status-dot{width:6px;height:6px;border-radius:50%;background:#a2b38f}.connection.online .status-dot{background:#79a56a}.connection.busy .status-dot{background:#b69b50;animation:pulse 1.2s infinite}.connection.offline .status-dot{background:#ae6058}.conversation{overflow-y:auto;flex:1;padding:0 44px;scroll-behavior:smooth;overscroll-behavior:contain}.welcome{max-width:650px;margin:57px auto 30px}.welcome-mark{width:55px;height:55px;position:relative;font:64px Georgia,serif;line-height:.8;margin-bottom:24px;color:#2d4730}.welcome-mark span{position:absolute;font:22px sans-serif;top:-5px;right:-12px;color:#9caf84}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2.1px;color:#909c82;margin-bottom:16px}.welcome h1{font-size:43px;line-height:1.42;letter-spacing:-1px;font-weight:500;margin:0 0 19px}.welcome h1 span{color:#7b9168}.welcome p{font-size:13px;line-height:1.9;color:#7f887a;margin:0}.suggestions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:32px}.suggestions button{background:#fafbf8;border:1px solid #e0e6d9;border-radius:11px;position:relative;text-align:left;padding:18px 19px;min-height:111px}.suggestions button:hover{border-color:#b8cb9e;background:#f3f7ec}.suggestions button>span{display:block;color:#8a9f71;font-size:18px;margin-bottom:9px}.suggestions strong{font-size:12px;font-weight:500;display:block}.suggestions small{display:block;font-size:10px;color:#8c9486;margin-top:6px}.suggestions b{position:absolute;right:15px;top:19px;color:#9baa8c;font-size:15px;font-weight:400}.composer-wrap{padding:20px 44px 20px;background:linear-gradient(0deg,var(--paper) 85%,transparent);flex-shrink:0}.composer{max-width:760px;margin:auto;border:1px solid #dce3d3;border-radius:13px;background:#fdfefa;box-shadow:0 4px 19px #18390f05;overflow:hidden}.composer textarea{resize:none;border:0;width:100%;padding:20px 19px 6px;min-height:78px;max-height:160px;background:transparent;color:var(--ink);font-size:14px;line-height:1.6;outline:none}.composer textarea::placeholder{color:#9aa28f}.composer-footer{display:flex;justify-content:space-between;align-items:center;padding:8px 13px 12px;gap:10px}.composer-footer>span{font-size:10px;color:#93a087;display:flex;gap:7px;align-items:center;flex:1}.send-button{width:37px;height:37px;border:0;border-radius:9px;background:#253c27;color:#e6f3d5;font-size:23px}.send-button:hover{background:#385237}.stop-button{border:1px solid #e7d4ce;background:#f9ede9;border-radius:8px;color:#a05d4c;height:35px;padding:0 13px;font-size:12px}.composer-note{max-width:760px;margin:10px auto 0;font-size:9px;color:#9da48f;display:flex;justify-content:space-between;gap:10px}.messages{max-width:760px;margin:25px auto 0}.message{margin:0 0 22px;animation:appear .18s ease}.message-label{display:flex;align-items:center;gap:7px;font-size:10px;letter-spacing:.3px;color:#87937e;margin-bottom:9px}.message-label .avatar{width:22px;height:22px;border-radius:7px;display:grid;place-items:center;background:#e4ecd9;color:#576c45;font:20px Georgia,serif}.message.user{margin-left:auto;max-width:87%;background:#eaf0e1;padding:14px 17px;border-radius:13px 13px 3px 13px;border:1px solid #dde6d0}.message.user .message-label{color:#83916f}.message-text{font-size:13px;line-height:1.85;white-space:pre-wrap;overflow-wrap:anywhere}.message.assistant{padding:4px 0 10px}.message.tool-result{margin-bottom:12px}.tool-card{background:#edf0e8;border:1px solid #dfe5d7;border-radius:9px;margin:10px 0;color:#69775e;overflow:hidden}.tool-card summary{font-size:11px;padding:11px 13px;cursor:pointer}.tool-card pre{border-top:1px solid #dfe5d7;font:11px/1.7 Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;padding:13px;max-height:290px;overflow:auto;color:#59694c}.tool-card.error{border-color:#e2c4bd}.message-error{color:var(--red);font-size:12px;line-height:1.6;white-space:pre-wrap}.running{max-width:760px;margin:10px auto 0;display:flex;align-items:center;gap:8px;font-size:11px;color:#859773;padding:10px 0}.spinner{width:11px;height:11px;border:2px solid #dbe5cd;border-top-color:#839967;border-radius:50%;animation:spin 1s linear infinite}.notice{font-size:12px;color:#925540;background:#f7ece3;padding:12px 44px;border-bottom:1px solid #eedfd1;white-space:pre-wrap;overflow-wrap:anywhere}.icon-button{background:none;border:0;color:inherit;font-size:24px;line-height:1;padding:8px}.menu-button{display:none}.shade{display:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}dialog{border:1px solid #dfe6d7;background:#fdfefa;color:var(--ink);border-radius:18px;box-shadow:0 30px 90px #0003;padding:27px;width:min(460px,calc(100vw - 30px))}dialog::backdrop{background:#101b14a3;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between}dialog h2{font-size:23px;font-weight:500;margin:0}dialog p{font-size:12px;color:#7c8871;line-height:1.9}#phone-url{font-size:13px;color:#617b49;word-break:break-all;display:block;line-height:1.6}dialog .text-button{color:#73865e}dialog .section-label{margin-top:20px}.pair-display{background:#eaf2df;text-align:center;padding:19px 5px;border:1px solid #d7e4c9;border-radius:10px;font:28px/1.3 Consolas,monospace;letter-spacing:3px}.primary{width:100%;background:#263e27;border:0;border-radius:9px;color:#f0f9e7;padding:14px;font-size:13px;display:flex;align-items:center;justify-content:space-between}.primary:hover{background:#375438}.dialog-note{font-size:11px!important}.dialog-actions{display:flex;gap:10px;margin-top:20px}.dialog-actions button{flex:1;border:0;border-radius:8px;padding:12px}#extension-input{width:100%;border:1px solid var(--line);border-radius:8px;padding:12px;min-height:90px}#extension-options button{display:block;width:100%;margin-top:8px;padding:12px;border:1px solid var(--line);background:var(--paper);border-radius:8px;text-align:left}.login-screen{min-height:100dvh;display:grid;place-items:center;background:radial-gradient(ellipse at 15% 20%,#293a28,transparent 50%),#141a17;padding:30px}.login-card{width:min(370px,100%);color:#e4ecdd}.brand-mark.large{width:58px;height:58px;font-size:51px;border-radius:17px;margin-bottom:35px}.login-card h1{font-size:37px;letter-spacing:-1px;font-weight:500;margin:0 0 15px}.login-card p{font-size:13px;line-height:1.9;color:#93a28c;margin:0 0 27px}.login-card label{display:block;font-size:11px;color:#b6c3ab;margin-bottom:10px}.login-card input{width:100%;background:#202c22;border:1px solid #47533f;color:#eff5e8;border-radius:9px;padding:16px;font:20px Consolas,monospace;letter-spacing:2px;margin-bottom:13px}.login-card .primary{background:var(--lime);color:#293c24;font-weight:600}.login-card .error{color:#e8a990;font-size:12px;margin:15px 0}.login-note{font-size:10px;line-height:1.9;color:#74876d;margin-top:27px}.error{color:var(--red)}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.4}}@keyframes appear{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
@media(min-width:1500px){.welcome{margin-top:90px}.welcome h1{font-size:49px}.suggestions{margin-top:42px}}
@media(max-width:900px){.sidebar{width:244px;padding:26px 18px}.topbar{padding:0 25px}.conversation{padding:0 25px}.composer-wrap{padding:15px 25px}.welcome{margin-top:42px}.welcome h1{font-size:36px}.notice{padding:12px 25px}}
@media(max-width:650px){.sidebar{position:fixed;top:0;bottom:0;left:0;z-index:20;width:278px;transform:translateX(-100%);transition:transform .2s}.sidebar.open{transform:translateX(0)}.shade:not([hidden]){display:block;position:fixed;inset:0;z-index:19;border:0;background:#10201877;backdrop-filter:blur(2px)}.menu-button{display:block;font-size:20px;padding:7px 7px 7px 0}.topbar{height:72px;padding:0 19px}.page-name{font-size:13px}.topbar-left{gap:10px}.tag{font-size:8px}.model-caption{font-size:10px;max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.connection{font-size:10px;gap:5px}.conversation{padding:0 21px}.welcome{margin-top:38px;margin-bottom:15px}.welcome-mark{font-size:53px;width:45px;height:45px;margin-bottom:22px}.welcome-mark span{font-size:19px}.welcome h1{font-size:34px;line-height:1.4}.welcome p{font-size:12px}.eyebrow{font-size:8px;letter-spacing:1.7px}.suggestions{gap:9px;margin-top:25px}.suggestions button{padding:14px 13px;min-height:109px}.suggestions strong{font-size:11px}.suggestions small{font-size:9px}.suggestions b{right:10px;top:15px}.composer-wrap{padding:13px 14px max(13px,env(safe-area-inset-bottom))}.composer textarea{font-size:16px;padding:14px 14px 4px;min-height:70px}.composer-note{font-size:8px;line-height:1.5;margin:8px 6px 0}.composer-note>span{display:none}.composer-footer{padding:7px 10px 10px}.composer-footer>span{font-size:9px}.messages{margin-top:21px}.message-text{font-size:13px}.message.user{max-width:93%}.notice{padding:10px 20px;font-size:11px}.pair-display{font-size:25px}.workspace{min-height:0}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* Black theme: keep the existing layout and lime accents. */
:root{color-scheme:dark;--ink:#edf1eb;--muted:#a3aba0;--line:#2b3029;--paper:#050505;--side:#0a0a0a;--red:#efab9c}
button,input,textarea,select{color:inherit}
.topbar{background:#0c0c0c}
.tag{background:#1c2318;border-color:#39442e;color:#b9c7aa}
.connection{color:#adb8a4}
.welcome-mark{color:var(--lime)}
.welcome-mark span,.welcome h1 span{color:#b2ce94}
.eyebrow{color:#a5b793}
.welcome p{color:#abb2a5}
.suggestions button{background:#141614;border-color:#30352c;color:var(--ink)}
.suggestions button:hover{background:#20271b;border-color:#718858}
.suggestions button>span,.suggestions b{color:#b6cb9d}
.suggestions small{color:#a9b2a0}
.composer{background:#131513;border-color:#394032;box-shadow:0 4px 19px #0003}
.composer textarea::placeholder{color:#a1ab97}
.composer-footer>span,.composer-note{color:#a3b093}
.send-button{background:var(--lime);color:#17231b}
.send-button:hover{background:#e4f6c6}
.stop-button{background:#321f1b;border-color:#795145;color:#f0b5a1}
.message-label,.message.user .message-label{color:#b3c19f}
.message-label .avatar{background:#29351f;color:#d6edb1}
.message.user{background:#1c2517;border-color:#3a472e}
.tool-card{background:#141a12;border-color:#35412c;color:#c0cbb3}
.tool-card pre{border-color:#35412c;color:#c3cfb5}
.tool-card.error{border-color:#9b6052}
.running{color:#bccfa5}
.spinner{border-color:#38432c;border-top-color:var(--lime)}
.notice{background:#2a1c16;border-color:#684737;color:#f2bfa5}
dialog{background:#121512;border-color:#3b4532;box-shadow:0 30px 90px #0009}
dialog p{color:#b7c2a8}
#phone-url,dialog .text-button{color:#c5dfa6}
.pair-display{background:#202b18;border-color:#4e633b;color:#e6f5d5}
.primary{background:#d6edb1;color:#17231b}
.primary:hover{background:#e4f6c6}
.dialog-actions button:not(.primary){background:#272d23;color:#e0e9d6}
#extension-input{background:#191e16;color:var(--ink)}
#extension-options button{background:#1c2417;border-color:#465737}
.login-screen{background:#050505}
.login-card p,.login-card label{color:#b4c0a8}
.login-card input{background:#161b12;border-color:#52633e}
.login-note{color:#a3b192}
#pair-dialog,#qr-approval-dialog{max-height:90dvh;overflow-y:auto}#pair-dialog .primary{width:100%}
.device-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.device-row small{display:block;color:var(--muted);font-size:12px;margin-top:5px}.device-row button{flex-shrink:0}
.login-qr{display:block;width:280px;max-width:100%;height:auto;aspect-ratio:1;background:#fff;border:10px solid #fff;border-radius:14px;margin:22px auto 18px}
.login-card .qr-status{margin:0 0 16px;font-size:12px;color:#c8d8b7;text-align:center;min-height:23px}
.login-card .primary{justify-content:center}.login-card .error{overflow-wrap:anywhere}
.login-card .login-note{margin-top:20px}.login-card #return-workspace{font-size:13px;color:var(--lime)}
.approval-device{padding:16px;background:#202b18;border:1px solid #4e633b;border-radius:10px;font-size:15px;color:#e6f5d5;overflow-wrap:anywhere}
#approval-actions{display:flex;flex-direction:column;gap:10px}#approval-actions button{flex:none;width:100%;white-space:normal}
#approval-actions .approval-role-option{text-align:left;padding:15px 16px;background:#202b18;border:1px solid #52683e}
#approval-actions .approval-role-option:hover{background:#2a381f;border-color:#a0bc7c}
.approval-role-option strong{display:block;font-size:14px;color:#e9f3df;line-height:1.6}
.approval-role-option small{display:block;font-size:11px;color:#bdcdae;line-height:1.7;margin-top:4px}
#approval-deny{margin-top:2px}
#approval-actions button{min-height:46px}#approval-error{color:var(--red);overflow-wrap:anywhere}
.device-row .device-role{color:var(--lime)}.security-events{margin-top:22px}.security-events summary{font-size:12px;cursor:pointer;color:#c5dfa6}
#welcome-lead{color:var(--ink)}#welcome-description{white-space:pre-line}.family-workspace .model-label{margin-top:0}
.sidebar.with-history{overflow-y:auto}.chat-history{min-height:0;margin:0 0 25px}.chat-history .section-label{margin-bottom:7px}.history-note,.history-empty{font-size:10px;line-height:1.8;color:#a9b5a0;margin:0 0 11px}.conversation-list{display:flex;flex-direction:column;gap:6px;max-height:min(30dvh,280px);overflow-y:auto;overscroll-behavior:contain;padding-right:3px}.conversation-item{width:100%;flex-shrink:0;min-height:59px;text-align:left;padding:10px 11px;border:1px solid #30392b;border-radius:8px;background:#151a12;color:#dce6d2}.conversation-item:hover:not(:disabled){background:#202b18;border-color:#687e50}.conversation-item.active{background:#26351c;border-color:#8ba967;color:#edf6e1}.conversation-item.active:disabled{opacity:1;cursor:default}.conversation-title{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.6;overflow-wrap:anywhere;word-break:break-word}.conversation-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:5px;color:#a9ba9b;font-size:9px;line-height:1.5}.conversation-current{color:#d6edb1;font-weight:600}.history-empty{padding:10px 0;color:#91a081}
@media(max-width:650px){.composer-note>#composer-scope{display:inline}.approval-role-option strong{font-size:14px}.approval-role-option small{font-size:11px}}
@media(max-width:650px){.login-screen{padding:24px 25px}.login-card .brand-mark.large{width:46px;height:46px;font-size:40px;margin-bottom:24px}.login-card h1{font-size:32px}.login-card p{margin-bottom:18px}.login-qr{width:260px}.login-card .login-note{margin-top:16px}}

/* Keep history, account usage and device controls reachable on narrow screens. */
.sidebar{overflow-y:auto;overscroll-behavior:contain;padding-bottom:max(24px,env(safe-area-inset-bottom))}.sidebar>*{flex-shrink:0}.chat-history{min-height:auto}.conversation-row{display:flex;flex-shrink:0;align-items:stretch;min-width:0;border:1px solid #30392b;border-radius:8px;background:#151a12;overflow:hidden}.conversation-row.active{border-color:#8ba967;background:#26351c}.conversation-row .conversation-item{flex:1;width:auto;min-width:0;border:0;border-radius:0;background:transparent}.conversation-row .conversation-item.active{border:0;background:transparent}.conversation-rename{width:44px;min-width:44px;min-height:44px;border:0;border-left:1px solid #30392b;background:transparent;color:#c2d6aa;font-size:21px;flex-shrink:0}.conversation-rename:hover{background:#2d3c22;color:#e4f6c6}.conversation-row:focus-within{outline:2px solid #bfdca0;outline-offset:1px}.conversation-rename:focus-visible{outline-offset:-4px}.rename-label{display:block;margin:22px 0 10px;font-size:13px;color:#c9d4be}#rename-input{display:block;width:100%;padding:13px 12px;border:1px solid #52633e;border-radius:9px;background:#191e16;color:var(--ink);font-size:16px}#rename-dialog{max-height:90dvh;overflow-y:auto}#rename-error{white-space:pre-wrap;overflow-wrap:anywhere}#rename-save{justify-content:center}.weekly-usage{border-top:1px solid #2d3730;margin-top:16px;padding-top:16px}.usage-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}.usage-heading .section-label{margin:0}.usage-heading .text-button{padding:6px 0;min-height:32px;color:#bed6a6}.usage-list{display:flex;flex-direction:column;gap:9px}.usage-card{padding:11px 10px;border:1px solid #30392b;border-radius:8px;background:#141a12;min-width:0}.usage-card-heading{display:flex;justify-content:space-between;align-items:baseline;gap:8px;font-size:11px}.usage-card-heading strong{font-weight:500;color:#dce6d2;overflow-wrap:anywhere}.usage-value{font-size:10px;text-align:right;color:#d6edb1}.usage-bar{height:5px;border-radius:6px;background:#30392b;margin:10px 0 7px;overflow:hidden}.usage-bar span{height:100%;display:block;background:#bfdc9f;border-radius:6px}.usage-note{font-size:10px;line-height:1.7;color:#a5b299;margin:5px 0 0;overflow-wrap:anywhere}.usage-stale{color:#e4c18a}#usage-updated{margin-top:9px}.family-workspace .weekly-usage{display:none}
