@font-face{font-family:'Instrument Sans';src:url('/assets/instrument-sans.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:'Geist Mono';src:url('/assets/geist-mono.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
:root{color-scheme:dark;--canvas:#151619;--sidebar:#111215;--surface:#1e2025;--raised:#24262c;--hover:#2c2e35;--text:#e7e8ec;--muted:#a0a3ad;--subtle:#878c98;--line:#30323a;--soft-line:#25272e;--accent:#c6bda9;--primary:#e4e2de;--primary-text:#1b1c20;--focus:#c6bda9;--error:#efa79d;--review:#27241f;--review-line:#6e6551;--code:#191b20;--selection:#4b4940;--radius:8px;font-family:'Instrument Sans',ui-sans-serif,system-ui,sans-serif;font-size:14px;font-weight:400;font-synthesis:none;color:var(--text);background:var(--canvas)}
:root[data-theme="light"]{color-scheme:light;--canvas:#fafafa;--sidebar:#f1f2f3;--surface:#fff;--raised:#f3f3f5;--hover:#e8e9ed;--text:#24262c;--muted:#646974;--subtle:#727784;--line:#d9dce2;--soft-line:#e7e8ed;--accent:#655b47;--primary:#282b32;--primary-text:#fafafa;--focus:#655b47;--error:#a93629;--review:#f5f2ec;--review-line:#9b8c70;--code:#f0f1f4;--selection:#e1dcd0}
*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{color:inherit;cursor:pointer;border:0;background:transparent;border-radius:var(--radius);padding:10px 14px;transition:background-color 160ms ease,color 160ms ease,transform 160ms ease;white-space:nowrap}button:hover{background:var(--hover)}button:active{transform:translateY(1px)}button:disabled{opacity:.5;cursor:not-allowed;transform:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--focus);outline-offset:4px}button:disabled:hover{background:inherit}input,textarea,select{color:var(--text)}input{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px;min-width:0}input::placeholder,textarea::placeholder{color:var(--muted);opacity:1}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:4px}::selection{background:var(--selection);color:var(--text)}:focus{caret-color:var(--accent)}*{scrollbar-width:thin;scrollbar-color:var(--line) transparent}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:var(--line);border-radius:3px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;left:16px;top:-70px;padding:12px;background:var(--primary);color:var(--primary-text);z-index:20;border-radius:6px}.skip-link:focus{top:16px}.glyph{width:20px;height:20px;fill:currentColor;flex-shrink:0;display:block}.primary{background:var(--primary);color:var(--primary-text);font-weight:550}.primary:hover{background:var(--text);color:var(--primary-text)}.icon-button{display:inline-flex;width:36px;height:36px;padding:8px;align-items:center;justify-content:center;color:var(--muted)}.muted{color:var(--muted);line-height:1.65}kbd{font:11px 'Geist Mono',monospace;font-weight:400;color:var(--subtle);line-height:1.5}h1,h2,h3,p{margin:0}h1,h2{text-wrap:balance}p{text-wrap:pretty}
/* The sign-in screen uses the same materials and type as the workspace. */
.login{min-height:100dvh;display:grid;grid-template-rows:auto 1fr auto;padding:32px 48px}.login-top{display:flex;justify-content:space-between;align-items:center}.wordmark{font-size:23px;font-weight:550;letter-spacing:-.035em}.wordmark-detail{color:var(--muted);font-size:14px;font-weight:400;letter-spacing:-.01em}.theme-toggle{color:var(--muted);font-size:12px;min-height:36px;text-align:left}.login-card{width:min(100%,420px);align-self:center;justify-self:center;padding:64px 0 86px}.login-card h1{font-size:42px;font-weight:450;line-height:1.13;letter-spacing:-.035em;margin-bottom:18px}.login-card .muted{font-size:14px}.login-card label{display:block;font-size:12px;font-weight:500;margin:42px 0 10px}.login-card input{display:block;width:100%;height:48px}.login-card .primary{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:14px;height:46px;padding:0 16px}.login-bottom{text-align:center;color:var(--subtle);font-size:11px;padding-bottom:4px}
/* Permanent navigation; the conversation remains the dominant surface. */
.shell{display:grid;grid-template-columns:244px minmax(0,1fr);height:100dvh}.sidebar{display:flex;flex-direction:column;min-height:0;background:var(--sidebar);border-right:1px solid var(--soft-line);padding:32px 16px 18px}.brand{padding:0 14px;color:var(--text);font-weight:550;font-size:26px;letter-spacing:-.045em;line-height:1.1;text-decoration:none}.brand span{display:block;color:var(--subtle);font-size:11px;letter-spacing:0;font-weight:400;margin-top:7px}.new-chat{display:flex;align-items:center;gap:10px;margin:36px 0 26px;padding:11px 12px;background:var(--surface);border:1px solid var(--line);font-size:12px}.new-chat .glyph{width:17px;height:17px;color:var(--muted)}.new-chat kbd{margin-left:auto}.nav-label{color:var(--subtle);font-size:11px;font-weight:450;margin:0 12px 12px}nav{min-height:0;overflow-y:auto;flex:1}nav button{display:flex;align-items:center;gap:8px;width:100%;text-align:left;min-height:38px;padding:9px 12px;margin:2px 0;font-size:12px;color:var(--muted)}nav button .chat-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}nav button.selected{background:var(--raised);color:var(--text)}nav button .chat-indicator{width:5px;height:5px;border-radius:50%;flex-shrink:0;background:var(--accent)}.empty-chats{color:var(--subtle);font-size:12px;line-height:1.6;padding:4px 12px}.sidebar-foot{padding-top:16px}.sidebar-foot>button{display:flex;align-items:center;gap:10px;padding:10px 12px;width:100%;font-size:12px;color:var(--muted);text-align:left}.sidebar-foot .glyph{width:17px;height:17px}.sidebar-foot .theme-toggle{padding-left:39px}.account-row{display:flex;align-items:center;gap:10px;padding:20px 6px 0;border-top:1px solid var(--soft-line);margin-top:16px}.avatar{width:30px;height:30px;border:1px solid var(--line);border-radius:8px;display:grid;place-items:center;font-size:13px;color:var(--muted)}.account-info{flex:1;min-width:0}.account-info strong{font-size:11px;font-weight:450;display:block}.account-info span{display:block;font-size:11px;color:var(--subtle);margin-top:4px}.account-row .icon-button{width:28px;padding:5px}.account-row .glyph{width:16px}.sidebar-backdrop{display:none}
main{display:flex;flex-direction:column;min-width:0;overflow-y:auto;overscroll-behavior:contain;position:relative}header{display:flex;gap:12px;align-items:center;min-height:76px;padding:0 38px;flex-shrink:0}.breadcrumb{display:flex;align-items:center;gap:12px;font-size:12px;min-width:0}.breadcrumb>span{color:var(--subtle)}.breadcrumb .glyph{width:12px;height:12px;color:var(--subtle)}.breadcrumb strong{font-weight:450;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}.header-note{margin-left:auto;font-size:11px;color:var(--subtle);white-space:nowrap}#menu{display:none}.welcome,#messages,#approvals,.compose-wrap,.starters{width:min(100% - 80px,760px);margin-inline:auto}.welcome{margin-top:clamp(56px,12vh,132px)}.welcome h1{font-size:38px;line-height:1.15;letter-spacing:-.035em;font-weight:450}.welcome p{font-size:14px;line-height:1.7;color:var(--muted);margin-top:14px}.compose-wrap{margin-top:28px;margin-bottom:0;flex-shrink:0}.has-chat .compose-wrap{position:sticky;bottom:0;margin-top:auto;padding-top:16px;padding-bottom:22px;background:var(--canvas)}#composer{border:1px solid var(--line);background:var(--surface);border-radius:16px;transition:border-color 180ms ease}#composer:focus-within{border-color:var(--subtle)}textarea{width:100%;resize:none;background:transparent;border:0;padding:22px 24px 12px;min-height:120px;max-height:300px;line-height:1.7;font-size:14px;display:block}textarea:focus{outline:none}#composer:has(textarea:focus-visible){outline:2px solid var(--focus);outline-offset:3px}.compose-bottom{display:flex;align-items:center;gap:9px;padding:6px 14px 14px}.toolbar{display:flex;align-items:center;gap:9px;min-width:0;flex:1}.toolbar label{min-width:0}.toolbar select{border:0;background:transparent;color:var(--muted);border-radius:6px;padding:8px 17px 8px 2px;font-size:11px;max-width:210px;cursor:pointer}.toolbar select:hover{color:var(--text)}.toolbar select:disabled{cursor:default}.toolbar option{background:var(--surface);color:var(--text)}.control-divider{width:1px;height:13px;background:var(--line)}#send{width:34px;height:34px;display:grid;place-items:center;padding:7px;border-radius:9px;flex-shrink:0}#send .glyph{width:18px;height:18px}.compose-note{display:flex;justify-content:space-between;gap:16px;font-size:11px;color:var(--subtle);line-height:1.6;margin-top:12px}.compose-note kbd{border:1px solid var(--line);border-radius:4px;padding:1px 4px;margin-right:4px}.starters{display:flex;flex-direction:column;align-items:stretch;margin-top:32px;max-width:760px;margin-bottom:64px}.starters button{display:flex;align-items:center;gap:12px;text-align:left;padding:13px 2px;border-radius:0;color:var(--muted);font-size:12px;border-bottom:1px solid var(--soft-line);transition:color 180ms ease}.starters button:hover{color:var(--text);background:transparent}.starters button>.glyph:first-child{width:17px;height:17px;color:var(--subtle)}.starters button>.glyph:last-child{margin-left:auto;width:14px;height:14px;color:var(--subtle)}
/* Reading and tool output. */
#messages{padding-bottom:28px}.message{padding:28px 0 14px;font-size:14px;line-height:1.8;overflow-wrap:anywhere}.speaker{font-size:11px;font-weight:500;color:var(--subtle);margin-bottom:12px;display:flex;align-items:center;gap:10px}.assistant .speaker{color:var(--text)}.user{margin-top:14px}.user .body{color:var(--text);background:var(--surface);border-radius:12px;padding:16px 20px;width:fit-content;max-width:100%}.body p{margin:0 0 14px}.body p:last-child{margin-bottom:0}.body h1,.body h2,.body h3,.body h4{font-size:18px;line-height:1.4;font-weight:550;letter-spacing:-.02em;margin:28px 0 12px}.body h1{font-size:24px}.body h2{font-size:21px}.body ul,.body ol{padding-left:22px;margin:12px 0 18px}.body li{padding-left:4px;margin:7px 0}.body blockquote{margin:18px 0;padding:2px 18px;border-left:1px solid var(--accent);color:var(--muted)}.body hr{border:0;border-top:1px solid var(--line);margin:24px 0}.body img{display:block;max-width:min(100%,360px);max-height:320px;object-fit:contain;border-radius:8px;margin:12px 0}.body table{display:block;overflow-x:auto;border-collapse:collapse;font-size:12px;margin:20px 0;max-width:100%}.body td,.body th{border-bottom:1px solid var(--line);padding:10px 14px;text-align:left;white-space:normal;min-width:100px}.body th{font-weight:550;color:var(--muted)}code,pre{font-family:'Geist Mono',ui-monospace,monospace;font-size:12px;font-variant-numeric:tabular-nums}.body :not(pre)>code{padding:2px 5px;background:var(--raised);border-radius:4px;color:var(--text);font-size:.88em}pre{background:var(--code);padding:18px;border-radius:8px;color:var(--muted);overflow:auto;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere;margin:14px 0}.body pre{white-space:pre;overflow-wrap:normal;border:1px solid var(--soft-line)}details{border-bottom:1px solid var(--soft-line);padding:11px 0;color:var(--muted);font-size:11px}summary{cursor:pointer;padding:4px 0;line-height:1.5}details pre{max-height:380px;font-size:11px}#working{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:11px;padding:0 0 12px}#working button{margin-left:auto;font-size:11px;padding:6px 10px;border:1px solid var(--line)}#error,#login-error{font-size:12px;color:var(--error);line-height:1.7;white-space:pre-wrap}#error{width:min(100% - 80px,760px);margin:10px auto}#error:empty,#login-error:empty{display:none}#login-error{margin-top:16px}#attachments{display:flex;flex-wrap:wrap;gap:8px;padding:0 20px}#attachments:not(:empty){padding-top:16px}#attachments button{font-size:11px;max-width:100%;overflow:hidden;text-overflow:ellipsis;padding:7px 10px;background:var(--raised);border-radius:6px}
/* Review requests remain distinct from messages, without warning chrome. */
.approval{border:1px solid var(--review-line);background:var(--review);border-radius:12px;padding:24px;margin:24px 0}.approval h3{font-size:16px;letter-spacing:-.02em;font-weight:550;margin-bottom:10px}.approval p{font-size:12px;line-height:1.7;white-space:pre-wrap}.approval details{margin:14px 0 20px}.approval .actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.approval .actions button{font-size:12px;border:1px solid var(--line);padding:9px 14px}.approval .actions .primary{border-color:transparent}.approval label{display:block;margin:18px 0 8px;font-size:12px}.approval input,.approval select{width:100%;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:10px 12px;margin:8px 0;font-size:13px}.approval textarea{padding:12px;min-height:90px;border:1px solid var(--line);border-radius:6px;background:var(--surface);margin-top:10px}
/* A searchable library. The existing outside-click and Escape behavior stays native. */
dialog{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:16px;width:min(740px,calc(100vw - 40px));max-height:80dvh;padding:0;overflow:hidden}dialog[open]{display:flex;flex-direction:column;animation:dialog-in 220ms cubic-bezier(.16,1,.3,1)}dialog::backdrop{background:rgb(8 9 12 / .7)}@keyframes dialog-in{from{opacity:.6;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;padding:28px 28px 20px;gap:20px}.dialog-head h2{font-size:22px;font-weight:500;letter-spacing:-.025em}.dialog-head .muted{font-size:12px;margin-top:8px}.dialog-head .icon-button{margin:-6px -6px 0 0}.tools-search{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:8px;margin:0 28px 22px;padding:0 12px}.tools-search .glyph{width:17px;height:17px;color:var(--subtle)}.tools-search input{border:0;padding:11px 0;flex:1;background:transparent;font-size:12px}.tools-search:focus-within{outline:2px solid var(--focus);outline-offset:3px}.tools-search input:focus{outline:0}#tools-content{overflow-y:auto;min-height:120px;padding:0 28px 24px}#tools-content h3{font-size:11px;font-weight:500;color:var(--subtle);margin:14px 0 6px}#tools-content h3:not(:first-child){margin-top:30px}.tool-card{display:flex;align-items:flex-start;gap:16px;padding:16px 0;border-bottom:1px solid var(--soft-line)}.tool-info{flex:1;min-width:0}.tool-card strong{font-size:13px;font-weight:450;overflow-wrap:anywhere}.tool-card small{display:block;font-size:11px;line-height:1.7;color:var(--muted);margin-top:6px;max-width:65ch}.tool-card .use-skill{font-size:11px;border:1px solid var(--line);padding:6px 10px;flex-shrink:0}.dialog-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:15px 28px;color:var(--subtle);font-size:11px}.dialog-foot kbd{border:1px solid var(--line);padding:2px 4px;border-radius:3px}.tool-empty{font-size:12px;color:var(--muted);padding:20px 0}.skeleton{height:46px;background:var(--raised);border-radius:6px;margin:12px 0;opacity:.65}
@media(min-width:1500px){.welcome{margin-top:15vh}.shell{grid-template-columns:260px minmax(0,1fr)}}
@media(max-width:1023px){.shell{grid-template-columns:216px minmax(0,1fr)}.sidebar{padding-inline:12px}header{padding-inline:28px}.header-note{display:none}.welcome,#messages,#approvals,.compose-wrap,.starters,#error{width:calc(100% - 56px)}.welcome h1{font-size:32px}.toolbar select{max-width:166px}.account-info strong{font-size:11px}}
@media(max-width:767px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:264px;z-index:5;transform:translateX(-100%);transition:transform 220ms cubic-bezier(.16,1,.3,1);padding:30px 18px 22px}.menu-open .sidebar{transform:translateX(0)}.menu-open .sidebar-backdrop{display:block;position:fixed;inset:0;z-index:4;background:rgb(8 9 12 / .65);border-radius:0}.menu-open .sidebar-backdrop:active{transform:none}#menu{display:inline-flex;margin-left:-8px}.brand{font-size:26px}.account-info strong{font-size:11px}header{min-height:66px;padding-inline:22px;gap:8px}.breadcrumb{gap:9px;font-size:11px}.breadcrumb>span{display:none}.breadcrumb>.glyph{display:none}.welcome,#messages,#approvals,.compose-wrap,.starters,#error{width:calc(100% - 40px)}.welcome{margin-top:48px}.welcome h1{font-size:29px;line-height:1.17;max-width:280px}.welcome p{font-size:13px;max-width:280px;margin-top:12px}.compose-wrap{margin-top:25px}.has-chat .compose-wrap{padding-bottom:max(15px,env(safe-area-inset-bottom))}.compose-bottom{gap:5px;padding:4px 9px 10px}.toolbar{gap:5px}.toolbar select{max-width:130px;font-size:11px;padding-right:10px}.toolbar label:last-child select{max-width:112px}textarea{padding:18px 18px 10px;min-height:120px;font-size:14px}.compose-bottom .icon-button{width:30px;height:32px;padding:6px}.compose-note{font-size:11px;margin-top:10px;gap:6px}.keyboard-hint{display:none}.starters{margin-top:24px;margin-bottom:32px}.starters button{font-size:12px;padding-block:14px}.message{font-size:14px;line-height:1.8;padding-top:20px}.user .body{padding:13px 16px}.approval{padding:18px}dialog{width:calc(100vw - 24px);max-height:84dvh;border-radius:14px}.dialog-head{padding:22px 20px 18px}.dialog-head h2{font-size:20px}.tools-search{margin:0 20px 16px}#tools-content{padding:0 20px 20px}.dialog-foot{padding:14px 20px;line-height:1.6}.dialog-foot>span:last-child{display:none}.tool-card{gap:12px}.tool-card small{font-size:11px}.login{padding:24px}.login-card{padding:60px 0;width:100%;max-width:390px}.login-card h1{font-size:35px}.login-card label{margin-top:34px}.wordmark{font-size:22px}.wordmark-detail{font-size:11px}.login-top .theme-toggle{font-size:11px;padding-right:0}.login-bottom{font-size:11px}}
@media(max-width:359px){.toolbar select{max-width:104px}.toolbar label:last-child select{max-width:95px}.control-divider{display:none}.welcome h1{font-size:27px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Final readability and viewport corrections from the bounded review. */
header{position:sticky;top:0;z-index:2;background:var(--canvas)}
#messages:empty,#approvals:empty{display:none}
nav button{font-size:13px}.new-chat{font-size:13px}.sidebar-foot>button{font-size:13px}
.toolbar select{font-size:12px}.compose-note{font-size:11px}
.has-chat textarea{min-height:88px;height:100px}
@media(max-width:767px){input,textarea,.approval input,.approval select,.approval textarea,.tools-search input{font-size:16px}.toolbar select{font-size:16px;max-width:120px;padding-right:3px}.toolbar label:last-child select{max-width:116px}.toolbar{gap:4px}.control-divider{display:none}.compose-bottom{gap:4px}.compose-note{font-size:11px}.has-chat textarea{min-height:88px}}
@media(max-width:359px){.toolbar select{max-width:104px}.toolbar label:last-child select{max-width:93px}}

/* Compact composer, following the supplied reference. */
.has-chat .compose-wrap{z-index:3}
#composer{position:relative;border-radius:28px;background:#282828;border-color:#363636}
[data-theme="light"] #composer{background:var(--surface);border-color:var(--line)}
#composer:focus-within{border-color:var(--subtle)}
#composer:has(textarea:focus-visible){outline:none}
#composer textarea,.has-chat #composer textarea{min-height:82px;height:82px;max-height:240px;padding:20px 22px 10px;font-size:16px;line-height:1.6}
#composer textarea::placeholder{color:var(--muted)}
#composer .compose-bottom{display:flex;align-items:center;gap:10px;padding:8px 12px 12px;min-height:60px}
#composer #attach-button{width:36px;height:40px;flex-shrink:0;padding:7px;color:var(--text)}
#attach-button .glyph{width:22px;height:22px}
#composer .conversation-controls{display:flex;align-items:center;gap:4px;min-width:0;margin:0;padding:0}
.mode-icon{color:var(--muted);width:18px;height:18px;flex-shrink:0}
#composer #interaction-mode{border:0;background:transparent;color:var(--muted);font:inherit;font-size:14px;min-height:40px;padding:5px 2px;max-width:180px;cursor:pointer;border-radius:8px}
#interaction-mode option{background:var(--surface);color:var(--text)}
#composer #interaction-mode:hover{color:var(--text)}
#model-picker{position:relative;margin-left:auto;border:0;padding:0;min-width:0;color:var(--text)}
#model-picker summary{display:flex;align-items:center;gap:5px;list-style:none;min-height:40px;padding:6px 4px;border-radius:8px;font-size:14px;white-space:nowrap}
#model-picker summary::-webkit-details-marker{display:none}
#model-picker summary:hover{background:var(--hover)}
#model-name{overflow:hidden;text-overflow:ellipsis;max-width:230px}
#effort-name{color:var(--muted)}
.picker-chevron{width:14px;height:14px;transform:rotate(90deg);color:var(--muted);margin-left:2px;flex-shrink:0}
.model-panel{position:absolute;bottom:calc(100% + 12px);right:0;width:300px;max-width:calc(100vw - 48px);padding:18px;background:var(--raised);border:1px solid var(--line);border-radius:16px;z-index:5;display:grid;gap:8px}
.model-panel label{font-size:12px;color:var(--muted)}
.model-panel select{width:100%;min-width:0;padding:10px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:14px;background:var(--surface);color:var(--text)}
.model-panel label:not(:first-child){margin-top:8px}
.model-panel p{font-size:12px;color:var(--muted);margin:4px 0 0;line-height:1.5}
#composer #send,#composer #stop{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;padding:9px;border-radius:50%;background:var(--primary);color:var(--primary-text)}
#composer #send .glyph,#composer #stop .glyph{width:22px;height:22px}
#working{padding:0 8px 8px;color:var(--muted);font-size:12px}
.composer-status{display:flex;align-items:center;gap:12px;padding:0 12px;font-size:12px;color:var(--muted);line-height:1.5}
.composer-status:has(#mode-timing:empty):has(#implement-plan[hidden]){display:none}
#mode-timing:empty{display:none}
#implement-plan{margin-left:auto;min-height:36px;font-size:12px;white-space:nowrap}
#composer.drag-over{outline:2px solid var(--focus);outline-offset:3px}
#drop-hint{position:absolute;inset:0;z-index:6;display:grid;place-items:center;padding:24px;background:var(--surface);border-radius:28px;color:var(--text);font-size:16px;pointer-events:none}
#attachments .attachment-preview{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:6px;max-width:240px;min-width:0}
.attachment-preview img{width:56px;height:56px;object-fit:cover;border-radius:8px}
.attachment-preview span{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
#attachments .attachment-preview button{flex-shrink:0;font-size:20px;padding:2px;width:28px;height:32px;background:transparent;color:var(--muted)}
#interaction-mode:focus-visible,#model-picker summary:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
@media(max-width:767px){
 #composer{border-radius:24px}
 #composer .compose-bottom{gap:4px;flex-wrap:wrap;padding:4px 10px 10px}
 #composer #interaction-mode{font-size:14px;max-width:170px}
 #model-picker{order:3;margin-left:40px;flex:1}
 #model-picker summary{font-size:14px;justify-content:flex-end}
 #model-name{max-width:180px}
 #composer #send,#composer #stop{order:4}
 #composer #attach-button{height:40px}
 .model-panel{right:0;max-width:calc(100vw - 60px)}
 .model-panel select{font-size:16px}
 #composer .conversation-controls{flex:1;min-width:calc(100% - 44px)}
}

/* Conversation management and active-response steering. */
.chat-row{display:flex;align-items:center;min-width:0;border-radius:8px}
.chat-row>button:first-child{flex:1;min-width:0}
#chat-list .chat-options{width:30px;flex:0 0 30px;justify-content:center;padding:6px 0;font-size:22px;color:var(--muted)}
.chat-row:has(.selected){background:var(--raised)}
#conversation-dialog{width:min(440px,calc(100vw - 32px));padding:24px}
#conversation-form{display:grid;gap:14px}
#conversation-dialog h2{font-size:20px;letter-spacing:-.02em}
#conversation-dialog label{font-size:13px;color:var(--muted)}
#conversation-title{width:100%;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--canvas);color:var(--text);font:inherit;font-size:16px}
#conversation-error{color:var(--error);font-size:13px;line-height:1.5}
#conversation-error:empty{display:none}
.conversation-dialog-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.conversation-dialog-actions button,#confirm-delete{min-height:40px;padding:8px 12px;font-size:13px}
#delete-chat{margin-right:auto}
.danger-button{color:var(--error)}
#delete-confirmation{border-top:1px solid var(--line);padding-top:16px;font-size:13px;line-height:1.6}
#confirm-delete{margin-top:12px;border:1px solid var(--error)}
#composer #steer{border:1px solid var(--line);background:var(--raised);color:var(--text);padding:8px 12px;min-height:40px;border-radius:20px;font-size:13px;flex-shrink:0}
.composer-status{flex-wrap:wrap}
.composer-status:has(#mode-timing:empty):has(#implement-plan[hidden]):has(#steer-status:not(:empty)){display:flex}
#steer-status:empty{display:none}
@media(max-width:767px){#composer #steer{order:4}#composer #stop{order:5}#composer:has(#steer:not([hidden])) #model-picker{margin-left:0}#composer:has(#steer:not([hidden])) #model-name{max-width:100px}}

#conversation-dialog:has(#delete-confirmation:not([hidden])) #save-title,#conversation-dialog:has(#delete-confirmation:not([hidden])) #delete-chat{display:none}
@media(max-width:767px){
 #composer .compose-bottom{display:grid;grid-template-columns:36px minmax(0,1fr) auto 40px;gap:4px}
 #composer #attach-button{grid-area:1 / 1}
 #composer .conversation-controls{grid-area:1 / 2 / 2 / 5;min-width:0}
 #composer #model-picker,#composer:has(#steer:not([hidden])) #model-picker{grid-area:2 / 1 / 3 / 3;margin:0;min-width:0}
 #model-picker summary{justify-content:flex-start}
 #composer #send,#composer #stop{grid-area:2 / 4}
 #composer #steer{grid-area:2 / 3}
 #model-name{max-width:160px}
}

/* Native work hierarchy and durable next-message queue. */
#work-panel{margin:0 0 12px;border:1px solid var(--line);border-radius:16px;padding:0;background:var(--sidebar);font-size:12px}
#work-panel>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;font-size:13px;color:var(--text)}
#work-summary{font-size:12px;color:var(--muted)}
#work-tree{max-height:240px;overflow:auto;padding:0 12px 10px}
.work-node{border:0;padding:0;font-size:12px}
.work-node>summary{display:flex;align-items:baseline;gap:10px;padding:10px 4px;font-size:12px}
.work-label{flex:1;min-width:0;overflow-wrap:anywhere;color:var(--text)}
.work-state{white-space:nowrap;font-size:12px;color:var(--muted)}
.work-state[data-status="running"],.work-state[data-status="inProgress"]{color:var(--text)}
.work-state[data-status="failed"]{color:var(--error)}
.work-node .work-node{margin-left:14px;border-left:1px solid var(--line);padding-left:10px}
.work-task,.work-meta,.work-result p{font-size:12px;line-height:1.6;margin:4px 4px 10px;color:var(--muted);overflow-wrap:anywhere}
.work-plan,.work-tools ul{list-style:none;padding:0 4px 8px;margin:0}
.work-plan li,.work-tools li{display:flex;justify-content:space-between;gap:12px;padding:5px 0;line-height:1.5}
.work-tools li>span:first-child{min-width:0;overflow-wrap:anywhere}
.work-tools,.work-result{border:0;padding:3px 4px}
.work-tools summary,.work-result summary{font-size:12px}
#message-queue{border-top:1px solid var(--line);padding:12px 4px;margin-bottom:8px;font-size:12px}
.queue-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted)}
.queue-heading strong{font-weight:500}
#queue-list{list-style:none;padding:0;margin:8px 0 0;max-height:150px;overflow:auto}
#queue-list li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--soft-line)}
#queue-list li>div{min-width:0;overflow-wrap:anywhere}
#queue-list small{display:block;font-size:12px;color:var(--muted);margin-top:4px}
#queue-list button,#resume-queue{font-size:12px;min-height:36px;flex-shrink:0}
#composer:has(#steer:not([hidden])) #send{background:var(--raised);color:var(--text)}
@media(max-width:767px){
 #composer:has(#steer:not([hidden])) .compose-bottom{grid-template-columns:36px minmax(0,1fr) auto 40px 40px}
 #composer:has(#steer:not([hidden])) .conversation-controls{grid-column:2 / 6}
 #composer:has(#steer:not([hidden])) #steer{grid-column:3}
 #composer:has(#steer:not([hidden])) #send{grid-column:4}
 #composer:has(#steer:not([hidden])) #stop{grid-column:5}
 #work-tree{max-height:180px}
 #work-summary{max-width:60%;text-align:right}
 #composer:has(#steer:not([hidden])) #effort-name{display:none}
}

/* A persistent right-hand workspace, separate from the conversation. */
#toggle-inspector{margin-left:auto;display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);padding:8px;flex-shrink:0}
#toggle-inspector .glyph{width:18px;height:18px;transform:scaleX(-1)}
.shell.inspector-open{grid-template-columns:220px minmax(340px,1fr) var(--inspector-width,460px)}
#inspector{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;border-left:1px solid var(--line);background:var(--sidebar);height:100dvh}
.inspector-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:76px;padding:0 16px;border-bottom:1px solid var(--soft-line)}
.inspector-head [role="tablist"]{display:flex;gap:6px}
.inspector-head [role="tab"]{font-size:13px;color:var(--muted);padding:8px 14px;border-radius:8px}
.inspector-head [aria-selected="true"]{color:var(--text);background:var(--raised)}
#work-view{overflow:auto;min-height:0;flex:1;padding:16px}
#inspector #work-panel{border:0;background:transparent;margin:0}
#inspector #work-panel>summary{padding:0 4px 16px}
#inspector #work-tree{max-height:none;overflow:visible;padding:0}
#work-empty{font-size:13px;color:var(--muted);line-height:1.7;padding:12px 4px}
#inspector .work-node>summary{align-items:flex-start}
#inspector .work-label{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
#browser-view{display:flex;flex-direction:column;flex:1;min-height:0}
.browser-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:10px 12px;font-size:12px;border-bottom:1px solid var(--soft-line);color:var(--muted)}
.browser-toolbar span{margin-right:auto}
.browser-toolbar button{font-size:12px;padding:7px}
.browser-toolbar a{color:var(--text)}
#browser-frame{width:100%;flex:1;min-height:300px;border:0;background:var(--canvas)}
.browser-note{font-size:12px;color:var(--muted);padding:10px 14px;border-top:1px solid var(--soft-line)}
#inspector-resizer{position:absolute;left:-4px;top:0;bottom:0;width:8px;cursor:col-resize;z-index:6;touch-action:none}
.resizing-panel{user-select:none}.resizing-panel iframe{pointer-events:none}
.inspector-open main header{padding-inline:20px}
.inspector-open .welcome,.inspector-open #messages,.inspector-open #approvals,.inspector-open .compose-wrap,.inspector-open .starters{width:calc(100% - 40px)}
.inspector-open #composer .compose-bottom{flex-wrap:wrap}
.inspector-open #model-name{max-width:150px}
@media(max-width:1100px){.shell.inspector-open{grid-template-columns:200px minmax(0,1fr)}#inspector{position:fixed;right:0;top:0;width:min(520px,calc(100vw - 220px));z-index:7}#inspector-resizer{display:none}}
@media(max-width:767px){.shell.inspector-open{grid-template-columns:minmax(0,1fr)}#inspector{width:100%;z-index:8}.inspector-head{min-height:66px}#toggle-inspector span{display:none}#work-view{padding:16px}#browser-frame{min-height:200px}}

/* Compact live activity above the composer. */
#working{padding:0 4px 10px;min-height:34px}
#working #working-details{display:flex;align-items:center;gap:8px;margin:0;padding:4px 6px;border:0;background:transparent;color:var(--muted);font-size:12px;text-align:left;max-width:100%;flex-wrap:wrap;border-radius:6px}
#working-details:hover{color:var(--text);background:var(--surface)}
.working-spark{width:18px;height:18px;flex:none;color:var(--accent);animation:working-turn 3s cubic-bezier(.65,0,.35,1) infinite;transform-origin:center}
#working[data-state="tools"] .working-spark{animation-duration:1.6s}
#working[data-state="waiting"] .working-spark{animation:none;opacity:.65}
#working-time{font-variant-numeric:tabular-nums}
.working-arrow{width:12px;height:12px;opacity:.55}
@keyframes working-turn{0%,15%{transform:rotate(0) scale(.85)}50%{transform:rotate(90deg) scale(1)}85%,100%{transform:rotate(180deg) scale(.85)}}
@media(prefers-reduced-motion:reduce){.working-spark{animation:none}}
.browser-tabbar{display:flex;align-items:center;min-width:0;border-bottom:1px solid var(--soft-line);padding:6px 8px 0;gap:4px}
#browser-tabs{display:flex;overflow-x:auto;min-width:0;flex:1;gap:3px;scrollbar-width:thin}
.browser-tab-item{display:flex;align-items:center;flex:0 0 156px;min-width:0;border-radius:7px 7px 0 0;color:var(--muted)}
.browser-tab-item.active{background:var(--surface);color:var(--text)}
.browser-tab-item>button[role=tab]{display:flex;align-items:center;gap:7px;min-width:0;flex:1;padding:9px 7px;font-size:12px;color:inherit;background:transparent;text-align:left}
.browser-tab-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.browser-tab-mark{position:relative;display:grid;place-items:center;width:16px;height:16px;flex:none;font-size:11px}
.browser-tab-mark img{position:absolute;inset:0;width:16px;height:16px;background:var(--surface)}
.browser-close-tab{padding:4px;color:inherit;margin-right:3px}.browser-close-tab .glyph{width:12px;height:12px}
#browser-new{flex:none;width:30px;height:30px}
.browser-toolbar{flex-wrap:nowrap;gap:3px;padding:7px 8px;position:relative}
.browser-toolbar .icon-button{width:28px;height:30px;flex:none;padding:5px}
#browser-address-form{flex:1;min-width:0;margin:0 3px}
#browser-address{width:100%;min-width:0;padding:7px 9px;font-size:12px;background:var(--surface);border:1px solid transparent;border-radius:6px;color:var(--text)}
#browser-handoff{white-space:nowrap;flex:none;padding:7px 8px;background:var(--surface);border-radius:6px;color:var(--text)}
#browser-more{padding:0;border:0;position:relative;flex:none}
#browser-more summary{display:flex;padding:6px;list-style:none}#browser-more summary::-webkit-details-marker{display:none}
.browser-more-menu{position:absolute;right:0;top:34px;min-width:140px;z-index:2;padding:5px;border:1px solid var(--line);border-radius:8px;background:var(--raised)}
.browser-more-menu button,.browser-more-menu a{display:block;width:100%;padding:9px;text-align:left;font-size:12px;border-radius:4px;text-decoration:none;color:var(--text)}
.browser-more-menu button:hover,.browser-more-menu a:hover{background:var(--hover)}
/* Conversation timeline: quiet ticks with an on-demand text preview. */
#conversation-rail{position:fixed;z-index:4;width:26px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;overflow-y:auto;scrollbar-width:none;padding:3px 0}
#conversation-rail button{display:flex;align-items:center;justify-content:flex-start;flex:0 0 13px;width:26px;min-height:10px;padding:3px 5px;border-radius:0;margin:0}
#conversation-rail button span{display:block;width:9px;height:2px;background:var(--subtle);opacity:.45;transition:width 150ms ease,opacity 150ms ease}
#conversation-rail button:hover{background:transparent}
#conversation-rail button:hover span,#conversation-rail button:focus-visible span{width:17px;opacity:1}
#conversation-rail button[aria-current] span{width:21px;opacity:1;background:var(--text)}
#conversation-rail button:focus-visible{outline-offset:-2px}
#conversation-preview{position:fixed;z-index:10;width:340px;padding:12px 14px;background:var(--raised);border:1px solid var(--line);border-radius:12px;pointer-events:none;font-size:13px;line-height:1.6}
#conversation-preview strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-weight:550}
#conversation-preview p{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--muted);margin-top:5px;overflow-wrap:anywhere}
#jump-latest{position:fixed;z-index:4;width:36px;height:36px;display:grid;place-items:center;padding:8px;background:var(--raised);border:1px solid var(--line);border-radius:50%;box-shadow:0 3px 12px rgb(0 0 0 / .12)}
#jump-latest:hover{background:var(--hover)}
@media(max-width:767px){#conversation-rail{width:17px}#conversation-rail button{width:17px;padding-left:2px}#conversation-rail button span{width:6px}#conversation-rail button[aria-current] span{width:12px}}

#conversation-rail button:first-child{margin-top:auto}

/* The timeline softly fans out around the pointer, without moving its hit targets. */
#conversation-rail button span{width:9px;transform-origin:left center;transform:scaleX(max(var(--tick-base,1),var(--tick-scale,1)));opacity:max(var(--tick-rest,.45),var(--tick-opacity,.45));transition:transform 220ms cubic-bezier(.16,1,.3,1),opacity 220ms ease}
#conversation-rail button:hover span,#conversation-rail button:focus-visible span{width:9px;--tick-base:1.9;--tick-rest:1}
#conversation-rail button[aria-current] span{width:9px;--tick-base:2.3;--tick-rest:1}
#conversation-preview{transition:top 160ms cubic-bezier(.16,1,.3,1)}
#conversation-preview:not([hidden]){animation:rail-preview-in 180ms cubic-bezier(.16,1,.3,1) both}
@keyframes rail-preview-in{from{opacity:0;transform:translateX(-6px)}to{opacity:1;transform:translateX(0)}}
@media(max-width:767px){#conversation-rail button span,#conversation-rail button:hover span,#conversation-rail button:focus-visible span,#conversation-rail button[aria-current] span{width:6px}}

/* Tools library: compact, searchable rows with progressive disclosure. */
#tools-dialog{width:min(800px,calc(100vw - 32px));height:min(760px,86dvh)}
#tools-dialog .tools-search{margin-bottom:16px}#tools-dialog .tools-search input{min-width:0;font-size:13px}
#tools-kinds{display:flex;gap:22px;margin:0 28px;border-bottom:1px solid var(--line);flex-shrink:0}
#tools-kinds button{border-radius:0;padding:10px 0 12px;color:var(--muted);border-bottom:2px solid transparent;font-size:13px}
#tools-kinds button[aria-pressed=true]{border-color:var(--text);color:var(--text)}
#tools-categories{display:flex;gap:6px;overflow-x:auto;padding:18px 28px 10px;flex-shrink:0}
#tools-categories button{white-space:nowrap;padding:6px 10px;font-size:12px;color:var(--muted)}
#tools-categories button[aria-pressed=true]{background:var(--raised);color:var(--text)}
.catalog-heading{display:flex;justify-content:space-between;align-items:center;padding:6px 28px 10px;font-size:12px;color:var(--muted);flex-shrink:0}
#tools-refresh{font-size:12px;padding:6px 0}#tools-content{flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
.catalog-row{display:flex;align-items:flex-start;border-bottom:1px solid var(--soft-line);gap:8px}
.catalog-details{flex:1;min-width:0;padding:0;border:0;color:var(--text)}.catalog-details summary{display:flex;gap:14px;cursor:pointer;list-style:none;padding:17px 0;border-radius:6px}.catalog-details summary::-webkit-details-marker{display:none}
.catalog-details summary>.glyph{width:20px;height:20px;flex-shrink:0;color:var(--muted);margin-top:2px}
.catalog-details summary:hover .catalog-info strong{color:var(--text);text-decoration:underline;text-underline-offset:4px}
.catalog-info{min-width:0;flex:1;display:flex;flex-direction:column;gap:5px}.catalog-info strong{font-size:14px;font-weight:500;overflow-wrap:anywhere}
.catalog-description{font-size:12px;color:var(--muted);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.catalog-meta{font-size:11px;color:var(--muted)}
.catalog-favorite{margin-top:14px;flex-shrink:0;color:var(--muted)}.catalog-favorite[aria-pressed=true]{color:var(--text)}.catalog-favorite[aria-pressed=true] path{fill:currentColor}
.catalog-body{padding:0 8px 20px 34px;font-size:13px;line-height:1.7;overflow-wrap:anywhere}.catalog-body>p{margin-bottom:10px}.catalog-source{color:var(--muted);font-size:12px}
.catalog-function{padding:12px 0;border-top:1px solid var(--soft-line)}.catalog-function strong{font-size:12px;font-weight:500}.catalog-function p{font-size:12px;white-space:pre-wrap;color:var(--muted);margin-top:4px}
.catalog-body .use-skill{margin-top:8px;padding:8px 14px;border:1px solid var(--line);font-size:12px}.tool-error{padding:12px 0;font-size:12px;color:var(--text)}
@media(max-width:767px){#tools-kinds{margin-inline:20px;gap:20px}#tools-categories{padding-inline:20px}.catalog-heading{padding-inline:20px}.catalog-details summary{gap:10px}.catalog-body{padding-left:30px}#tools-dialog{height:84dvh}.catalog-description{font-size:12px}}

.catalog-details summary::after{content:"";width:6px;height:6px;border-right:1px solid var(--muted);border-bottom:1px solid var(--muted);transform:rotate(-45deg);margin:7px 4px 0 0;flex-shrink:0;transition:transform 160ms ease}.catalog-details[open] summary::after{transform:rotate(45deg)}

/* Work prioritizes live tasks; history remains available on demand. */
.work-ended>.work-label,.work-ended>summary .work-label,.work-plan li.work-ended>span,.work-tools li.work-ended>span{color:var(--muted)}
.work-ended>summary .work-state:not([data-status="failed"]){color:var(--muted)}
.work-history{margin-top:12px;border:0;border-top:1px solid var(--soft-line);padding:12px 0 0}.work-history>summary{font-size:12px;color:var(--muted);padding:8px 4px}.work-idle{font-size:12px;color:var(--muted);padding:12px 4px;line-height:1.6}
/* Session media workspace. */
.inspector-head{gap:4px;padding-inline:10px}.inspector-head [role=tablist]{gap:2px;min-width:0;overflow-x:auto}.inspector-head [role=tab]{padding:8px 9px;font-size:12px}.inspector-head #close-inspector{flex-shrink:0}#assets-badge{font-size:10px;color:var(--muted)}
#comfy-view,#assets-view{display:flex;flex:1;min-height:0;flex-direction:column}.media-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:10px 14px;border-bottom:1px solid var(--soft-line);font-size:12px}.media-toolbar strong{flex:1;overflow-wrap:anywhere}.media-toolbar button{font-size:12px;padding:7px 8px}.media-toolbar select{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:7px;color:var(--text)}.media-note{font-size:12px;color:var(--muted);line-height:1.65;padding:12px 14px;overflow-wrap:anywhere}#comfy-frame{flex:1;width:100%;min-height:240px;border:0;background:var(--canvas)}.process-filter{display:flex;align-items:center;gap:6px}.process-filter input{accent-color:var(--accent)}
#assets-grid{overflow:auto;min-height:0;padding:0 14px 20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px;align-content:start}.asset-card{padding:0;text-align:left;min-width:0;white-space:normal;overflow:hidden;border-radius:8px;align-self:start}.asset-card img,.asset-file-type{display:block;width:100%;aspect-ratio:1.2;object-fit:contain;background:var(--surface);border-radius:8px}.asset-file-type{display:flex;align-items:center;justify-content:center;font-size:18px;color:var(--muted)}.asset-card strong,.asset-card small{display:block;padding:7px 4px 0;overflow-wrap:anywhere}.asset-card strong{font-size:12px;font-weight:500}.asset-card small{padding-top:3px;padding-bottom:6px;color:var(--muted);font-size:11px}.inline-assets{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-top:16px;max-width:650px}.inline-assets .asset-card img{max-height:360px}.asset-message{padding-top:12px}
#asset-preview{width:min(1000px,95vw);max-height:92dvh}#asset-content{overflow:auto;min-height:0;display:flex;justify-content:center;padding:0 20px}#asset-content img,#asset-content video{max-width:100%;max-height:65dvh;object-fit:contain}#asset-content audio{width:100%}#asset-meta{max-height:100px;overflow:auto}#asset-title{overflow-wrap:anywhere;font-size:18px}
#inspector.inspector-wide{position:fixed;inset:0 0 0 auto;width:min(1200px,100vw);z-index:8}.inspector-wide #inspector-resizer{display:none}

.image-context-menu{position:fixed;inset:auto;margin:0;padding:7px;width:220px;border:0;border-radius:12px;background:var(--surface);color:var(--text);box-shadow:0 10px 32px rgb(0 0 0 / .3)}.image-context-menu:popover-open{display:flex;flex-direction:column;animation:menu-appear 130ms ease-out}.image-context-menu button{text-align:left;padding:11px 13px;font-size:14px;border-radius:6px}.image-context-menu button:focus-visible{outline:0;background:var(--hover)}.image-context-menu button:disabled{opacity:.45}.image-context-menu button[data-action=download]{margin-top:4px;border-top:1px solid var(--soft-line);border-radius:0 0 6px 6px}.image-notice{position:fixed;inset:auto 20px 24px auto;margin:0;max-width:min(420px,calc(100vw - 40px));padding:13px 17px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);font-size:13px;line-height:1.6}.asset-location-dialog{width:min(620px,calc(100vw - 32px))}.asset-location-dialog h2{font-size:19px}.asset-location-path{padding:0 28px;font-size:13px;line-height:1.8;overflow-wrap:anywhere;user-select:text}.asset-location-dialog .media-note{padding-inline:28px}@keyframes menu-appear{from{opacity:.5;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}

#queue-list .queue-actions{display:flex;align-items:center;gap:4px;flex-shrink:0}#queue-list .queue-steer{color:var(--text);padding-inline:10px}#queue-list .queue-steer:disabled{color:var(--muted)}

/* ComfyUI focus: keep the live conversation alongside the full editor. */
.shell.workspace-focus{grid-template-columns:clamp(340px,29vw,440px) minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto}
.workspace-focus #navigation,.workspace-focus #sidebar-backdrop{display:none!important}
.workspace-focus #main-content{grid-column:1;grid-row:1;min-height:0;border-right:1px solid var(--line)}
.workspace-focus #focus-account{grid-column:1;grid-row:2;padding:0 16px 12px;background:var(--sidebar);border-right:1px solid var(--line)}
.workspace-focus #focus-account .account-row{margin-top:0;padding:12px 4px 0}
.workspace-focus #inspector{grid-column:2;grid-row:1 / 3;position:relative;inset:auto;width:auto;height:100%;border-left:0;z-index:auto}
.workspace-focus #inspector-resizer,.workspace-focus #menu,.workspace-focus #toggle-inspector,.workspace-focus #comfy-expand{display:none!important}
.workspace-focus main>header{min-height:60px;padding:0 18px}.workspace-focus .breadcrumb>span,.workspace-focus .breadcrumb>.glyph{display:none}
.workspace-focus #messages,.workspace-focus #approvals,.workspace-focus .compose-wrap,.workspace-focus #error,.workspace-focus .welcome,.workspace-focus .starters{width:calc(100% - 32px)}
.workspace-focus .message{font-size:13px;line-height:1.75}.workspace-focus .has-chat .compose-wrap{padding-bottom:12px}.workspace-focus #prompt{min-height:90px;padding:16px 16px 8px}
.workspace-focus #composer .compose-bottom{display:flex;flex-wrap:wrap;gap:5px;padding:6px 10px 10px}.workspace-focus #model-picker{margin-left:0;order:4;flex-basis:100%}.workspace-focus #model-picker summary{justify-content:flex-start;font-size:12px}.workspace-focus #model-name{max-width:210px}.workspace-focus #interaction-mode{max-width:175px;font-size:12px}.workspace-focus #send{margin-left:auto}.workspace-focus .keyboard-hint{display:none}.workspace-focus #queue-list li{gap:6px}.workspace-focus #queue-list small{font-size:10px}
@media(max-width:767px){.shell.workspace-focus{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(230px,52dvh) minmax(0,1fr) auto}.workspace-focus #inspector{grid-column:1;grid-row:1;position:relative;width:100%;height:100%;border-bottom:1px solid var(--line)}.workspace-focus #main-content{grid-column:1;grid-row:2;border:0}.workspace-focus #focus-account{grid-column:1;grid-row:3;padding-bottom:8px;border:0}.workspace-focus #main-content>header{min-height:40px}.workspace-focus #comfy-frame{min-height:80px}.workspace-focus .inspector-head{min-height:44px}.workspace-focus .media-toolbar{padding:6px 10px;gap:5px}.workspace-focus .media-note{padding:6px 10px}.workspace-focus #prompt{min-height:64px}.workspace-focus #composer .compose-bottom{padding-bottom:6px}.workspace-focus .compose-wrap{margin-top:8px}.workspace-focus #working{padding-bottom:2px}}
.workspace-focus #composer .conversation-controls{min-width:0;flex:1;order:1}.workspace-focus #composer #send{order:2}.workspace-focus #composer #stop{order:3}.workspace-focus #composer #attach-button{order:0}
/* Reserve a navigation gutter and keep the reading measure stable across panels. */
#main-content{--chat-start:48px;--chat-end:32px}
.shell #main-content :is(.welcome,#messages,#approvals,.compose-wrap,.starters,#error){width:min(760px,calc(100% - var(--chat-start) - var(--chat-end)));margin-left:max(var(--chat-start),calc((100% - 760px)/2));margin-right:auto}
.shell.workspace-focus #main-content{--chat-start:38px;--chat-end:16px}
@media(max-width:767px){.shell #main-content,.shell.workspace-focus #main-content{--chat-start:30px;--chat-end:18px}}

#browser-focus{white-space:nowrap;font-size:12px;padding:7px 8px}.workspace-focus #browser-frame{min-height:0}

#blender-view{display:flex;flex:1;min-height:0;flex-direction:column}#blender-frame{flex:1;width:100%;min-height:0;border:0;background:var(--canvas)}.inspector-head [role=tablist]{min-width:0;overflow-x:auto;white-space:nowrap}

.blender-results{overflow:auto;min-height:0;padding:0 14px 20px;display:grid;gap:16px;align-content:start}.blender-results .asset-card{width:100%}.blender-download{display:block;padding:10px 0;color:var(--text);text-decoration:underline}
/* One compact composer layout for phones and narrow focus columns. */
#main-content{container-type:inline-size}
#app #composer #prompt{height:52px;min-height:52px;max-height:180px;padding:14px 16px 8px;line-height:1.5;font-size:16px;overflow-y:auto}
#app #composer #stop{background:transparent;color:var(--text);border:1px solid var(--line)}
#app .compose-wrap{padding-bottom:max(12px,env(safe-area-inset-bottom))}
@container(max-width:540px){
 #app #composer{border-radius:20px}
 #app #composer .compose-bottom{display:grid;grid-template-columns:44px minmax(0,1fr) 44px 44px;grid-template-rows:36px 44px;gap:0 4px;padding:0 12px 10px}
 #app #composer #attach-button{grid-area:1 / 1;width:44px;height:44px;margin:0}
 #app #composer .conversation-controls{grid-area:1 / 2 / 2 / 5;min-width:0;width:100%;margin:0}
 #app #composer #interaction-mode{font-size:16px;min-height:44px;max-width:100%;min-width:0}
 #app #composer #model-picker{grid-area:2 / 1 / 3 / 3;min-width:0;max-width:100%;width:100%;margin:0;flex-basis:auto}
 #app #composer #model-picker summary{width:fit-content;max-width:100%;gap:6px;font-size:13px;min-height:44px;justify-content:flex-start;padding:4px 2px;overflow:hidden}
 #app #model-name{max-width:100%;min-width:0;flex:0 1 auto}#app #effort-name{font-size:12px;flex-shrink:0}
 #app #composer #send{grid-area:2 / 4;width:44px;height:44px;margin:0}
 #app #composer #stop{grid-area:2 / 3;width:44px;height:44px;margin:0}
 #app .composer-status{font-size:11px;padding:4px 8px 0}
 #app .compose-wrap{padding-top:8px}
}
.model-panel[popover]{position:fixed;inset:auto;margin:0;max-height:calc(100dvh - 24px);overflow-y:auto;color:var(--text)}
.model-panel[popover]:not(:popover-open){display:none}
.model-panel select{font-size:16px;min-height:44px}
@media(max-width:767px){
 .shell{height:var(--visual-height,100dvh)}
 .shell.workspace-focus{grid-template-rows:minmax(150px,42%) minmax(0,1fr) auto}
 .shell.workspace-focus.composer-editing{grid-template-rows:minmax(80px,22%) minmax(0,1fr) auto}
 .shell.workspace-focus.keyboard-open{grid-template-rows:minmax(72px,20%) minmax(0,1fr) 0}
 .workspace-focus.keyboard-open #focus-account{display:none}
 .workspace-focus #main-content>header{min-height:36px}
 .workspace-focus .message{font-size:14px}
 #app #composer #prompt{max-height:min(160px,24dvh)}
 .workspace-focus #composer #prompt{max-height:min(140px,22dvh)}
}
@media(max-width:767px){.workspace-focus.composer-editing #inspector{overflow:hidden}.keyboard-open #queue-list{max-height:72px;overflow:auto}.keyboard-open #attachments{max-height:64px;overflow:auto}}

@media(max-width:767px){.composer-editing #jump-latest{display:none!important}.workspace-focus.keyboard-open #inspector>section{visibility:hidden}}

/* Keep model and effort together rather than spreading them across the input. */
#app #model-picker summary{gap:6px}
#app #model-name{flex:0 1 auto}
@container(max-width:540px){
 #app #composer .conversation-controls{gap:0;padding-left:2px}
 #app #composer .mode-icon{display:none}
 #app #composer #interaction-mode{min-height:36px}
 #app #composer #attach-button{align-self:center}
 #app #composer #model-picker{align-self:center}
 #app #composer #effort-name{color:var(--subtle)}
 #app #composer #effort-name:not(:empty)::before{content:'·';margin-right:6px}
 #app #composer:not(:has(#stop:not([hidden]))) #model-picker{grid-column:1 / 4}
}

/* Input actions above; all configuration shares one toolbar below. */
#app #composer .compose-input{display:flex;align-items:flex-start;gap:8px;padding:12px 12px 0 16px}
#app #composer .compose-input #prompt{flex:1;min-width:0;width:0;padding:2px 0 8px;min-height:48px}
#app #composer .compose-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}
#app #composer .compose-actions #send,#app #composer .compose-actions #stop{width:40px;height:40px;grid-area:auto;margin:0;order:initial}
#app #composer .compose-bottom{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;min-height:44px;padding:0 12px 8px}
#app #composer .compose-bottom #attach-button{width:36px;height:40px;flex:0 0 36px;margin:0;order:0}
#app #composer .compose-bottom .conversation-controls{width:auto;flex:0 1 auto;min-width:0;padding:0;order:1}
#app #composer .mode-icon{display:none}
#app #composer #interaction-mode{font-size:14px;width:92px;min-height:40px}
#app #composer .compose-bottom #model-picker{flex:0 1 auto;min-width:0;width:auto;max-width:100%;margin:0 0 0 auto;order:2;align-self:center}
#app #composer #model-picker summary{font-size:13px;min-height:40px;gap:4px;justify-content:flex-start;max-width:100%;padding:4px 0}
#app #composer #model-name{min-width:0;flex:0 1 auto}
#app #composer #effort-name{font-size:12px;flex-shrink:0}
@container(max-width:540px){
 #app #composer .compose-bottom{gap:6px;padding-inline:10px}
 #app #composer #interaction-mode{font-size:16px;width:96px}
 #app #composer .compose-actions #send,#app #composer .compose-actions #stop{width:44px;height:44px}
 #app #composer .compose-bottom #attach-button{width:32px;flex-basis:32px}
}

#freecad-view{display:flex;flex:1;min-height:0;flex-direction:column}.cad-preview{height:min(60dvh,520px);width:100%;min-height:220px}.cad-preview canvas{display:block;touch-action:none}
/* Usage stays beside the conversation title and inside the account footer. */
#conversation-usage{display:flex;align-items:center;gap:5px;flex-shrink:0;padding:8px;color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;min-height:36px;border-radius:8px}
#conversation-usage:hover,#account-usage:hover{background:var(--raised);color:var(--text)}
#conversation-usage[hidden]{display:none}.usage-ring{font-size:19px;line-height:1;color:var(--subtle)}
#account-usage{display:block;padding:4px 0;color:var(--muted);font-size:11px;text-align:left;border-radius:4px}
.usage-panel{position:fixed;inset:auto;margin:0;width:min(340px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;padding:18px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:14px;box-shadow:0 12px 40px #0003;font-size:13px}
.usage-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.usage-heading h2{font-size:15px;font-weight:550}.usage-heading button{font-size:22px;width:32px;height:32px;color:var(--muted)}
.usage-panel h3{font-size:12px;color:var(--muted);font-weight:500;margin:20px 0 10px}.usage-row{display:flex;justify-content:space-between;gap:16px;padding:6px 0}.usage-row strong{font-weight:500;font-variant-numeric:tabular-nums}.usage-note{font-size:11px;line-height:1.65;color:var(--muted);margin:8px 0}.usage-panel progress{width:100%;height:4px;accent-color:var(--muted);display:block;margin:6px 0 10px}.usage-panel details summary{display:flex;justify-content:space-between;gap:12px;overflow-wrap:anywhere}.usage-panel details summary span{white-space:nowrap}.usage-panel details p{line-height:1.7;margin-top:8px}
@container(max-width:540px){#conversation-usage{font-size:11px;padding:5px;gap:4px}#main-content>header{gap:5px}.breadcrumb{min-width:0;flex:1}}
/* Authentication is unknown until checked; do not flash a sign-in form. */
.startup{min-height:100dvh;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;color:var(--muted);font-size:13px}.startup[hidden]{display:none}.startup-mark{font-size:26px;animation:startup-turn 1.6s linear infinite}.startup-failed .startup-mark{animation:none}#startup-retry{padding:9px 16px;border:1px solid var(--line);border-radius:8px}@keyframes startup-turn{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.startup-mark{animation:none}}
.account-identity{display:block;text-align:left;padding:0;max-width:100%;color:var(--text);border-radius:4px}.account-identity strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-identity:hover{color:var(--accent)}.account-settings{width:min(640px,calc(100vw - 24px))}.account-settings-body{overflow:auto;padding:0 28px 20px}.account-settings .dialog-head{padding-bottom:16px}.account-settings .muted{font-size:12px;line-height:1.65;overflow-wrap:anywhere}.connection-card{padding:20px 0;border-top:1px solid var(--line)}.connection-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.connection-card h3{font-size:16px;font-weight:550;margin-bottom:8px}.connection-card label{display:block;font-size:12px;color:var(--muted);margin-top:14px}.connection-card input:not([type=checkbox]){display:block;width:100%;border:1px solid var(--line);border-radius:8px;background:var(--canvas);padding:10px 12px;margin-top:7px;color:var(--text);font-size:14px}.connection-card .connection-enabled{display:flex;align-items:center;gap:8px}.connection-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.connection-card button{padding:8px 12px;border:1px solid var(--line);border-radius:8px;font-size:12px}.connection-actions button[type=submit]{background:var(--text);color:var(--canvas)}.settings-status{padding:0 28px 14px;font-size:12px;line-height:1.6}.settings-status:empty{display:none}#provider-help{font-size:11px;line-height:1.6}#interaction-mode[hidden]{display:none!important}@media(max-width:540px){.account-settings-body{padding-inline:20px}.connection-card input:not([type=checkbox]){font-size:16px}.connection-heading{align-items:flex-start}.settings-status{padding-inline:20px}}
/* Account is one generous target; frequently checked usage lives in the header. */
#app .account-row{display:block;padding:8px 0 0;margin-top:10px;border-top:1px solid var(--soft-line)}
#app #account-settings-button{display:flex;align-items:center;gap:12px;width:100%;max-width:none;min-height:64px;padding:12px;text-align:left;border-radius:12px;transition:background 160ms ease;color:var(--text)}
#app #account-settings-button:hover{background:var(--raised)}#app #account-settings-button:focus-visible{outline:2px solid var(--focus);outline-offset:2px}
#account-settings-button .avatar{width:36px;height:36px;flex-shrink:0;border-radius:50%;background:var(--surface);font-size:14px}
#account-settings-button .account-info{flex:1;min-width:0}#account-settings-button strong{font-size:14px;font-weight:500;line-height:1.5}#account-settings-button .account-hint{font-size:12px;line-height:1.5;color:var(--muted);margin-top:2px}#account-settings-button .account-chevron{font-size:23px;color:var(--subtle);flex-shrink:0}
#account-settings-button #connection{display:none}#app .account-row #logout[hidden]{display:none}#app .sidebar-foot>.theme-toggle{display:none}
#app #main-content>header{gap:10px}#main-content>header .breadcrumb{min-width:0;flex:1}#main-content>header .breadcrumb strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.header-usage{display:flex;align-items:center;gap:4px;flex-shrink:0}#app #conversation-usage,#app #account-usage{display:flex;align-items:center;gap:7px;min-height:44px;margin:0;padding:8px 10px;border-radius:9px;white-space:nowrap;font-size:12px;text-align:left;color:var(--muted)}
#app #conversation-usage[hidden]{display:none}#app .header-usage strong{font-size:13px;font-weight:550;color:var(--text);font-variant-numeric:tabular-nums}#app #account-usage:hover,#app #conversation-usage:hover{background:var(--raised)}#main-content>header #toggle-inspector{margin-left:0}
@container(max-width:540px){#app #main-content>header{gap:4px;padding-inline:12px}#app #conversation-usage,#app #account-usage{gap:4px;padding:6px;font-size:11px}#app .header-usage strong{font-size:12px}.header-usage{gap:0}#main-content>header #toggle-inspector{width:36px;min-width:36px;padding:8px}#main-content>header #inspector-toggle-label{display:none}#main-content>header .breadcrumb>span,#main-content>header .breadcrumb>.glyph{display:none}}
/* Session belongs beside its title; quota belongs directly above the account. */
#app .account-row{display:flex;flex-direction:column;gap:4px;align-items:stretch;padding-top:8px}
#app .account-row #account-usage{display:flex;justify-content:space-between;align-items:center;min-height:44px;padding:8px 12px;width:100%;margin:0;border-radius:8px;font-size:12px;color:var(--muted)}
#app .account-row #account-usage strong{font-size:14px;font-weight:550;color:var(--text);font-variant-numeric:tabular-nums}
#app #account-settings-button{min-height:48px;padding:8px 12px;gap:10px}#account-settings-button .avatar{width:30px;height:30px;font-size:13px}#account-settings-button .account-info strong{margin:0;line-height:24px;font-size:14px}#account-settings-button .account-hint{display:none}
#main-content>header .breadcrumb{flex:0 1 auto}#main-content>header #toggle-inspector{margin-left:auto}#app #conversation-usage{flex-shrink:0}#app #conversation-usage strong{font-size:13px;font-weight:550;color:var(--text)}
.profile-form{padding:8px 0 22px}.profile-form>label{display:block;font-size:13px;color:var(--muted);margin-bottom:8px}.profile-controls{display:flex;gap:8px;align-items:center}.profile-controls input{flex:1;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--canvas);color:var(--text);padding:10px 12px;font-size:16px;min-height:44px}.profile-controls button{flex-shrink:0;min-height:44px;padding:10px 14px;border:1px solid var(--line);border-radius:8px;font-size:13px}
/* Quota above; profile/settings and sign out alongside each other. */
#app .account-controls{display:flex;align-items:center;gap:4px;width:100%;min-width:0}
#app .account-controls #account-settings-button{flex:1;min-width:0;width:auto;min-height:48px;padding:8px;gap:8px}
#app .account-controls #logout{display:grid;place-items:center;flex:0 0 44px;width:44px;height:48px;padding:12px;border-radius:9px;color:var(--muted)}
#app .account-controls #logout:hover{background:var(--raised);color:var(--text)}#app .account-controls #logout .glyph{width:18px;height:18px}#app .account-controls .account-chevron{font-size:17px}

/* Results stay browsable; task evidence lives with the work. */
.asset-tile{min-width:0}.asset-tile>.asset-card{width:100%}
.asset-work-link{display:block;min-height:36px;font-size:12px;color:var(--muted);padding:6px 4px;text-decoration:underline;text-underline-offset:3px}
.asset-work-link:hover{color:var(--text)}
.work-assets{display:flex;flex-direction:column;margin:12px 0 4px;border-top:1px solid var(--soft-line)}
.work-asset{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:52px;padding:10px 4px;text-align:left;border-radius:0;border-bottom:1px solid var(--soft-line);white-space:normal}
.work-asset>span:first-child{min-width:0}.work-asset strong{display:block;font-size:12px;font-weight:500;overflow-wrap:anywhere}.work-asset small{display:block;color:var(--muted);font-size:11px;margin-top:4px}.work-asset>span:last-child{font-size:12px;color:var(--muted);flex-shrink:0}
.work-node:has(.work-assets).work-ended[open]{opacity:1}

.asset-report{width:100%;max-height:60dvh;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.7 "Geist Mono",monospace;color:var(--text);padding:16px;background:var(--surface);border-radius:8px}

.inline-assets .asset-file-type{aspect-ratio:auto;min-height:80px}.work-asset>img{width:48px;height:40px;object-fit:contain;border-radius:4px}.work-asset>span:not(:last-child){flex:1;min-width:0}.work-asset small{font-size:12px}

.assets-controls{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:1px solid var(--soft-line);flex-shrink:0}
.assets-controls select{flex:1;min-width:0;width:0;min-height:40px;padding:6px 2px;background:transparent;color:var(--text);border:0;border-radius:8px;font:inherit;font-size:12px;text-overflow:ellipsis}
.assets-controls select:first-of-type{flex:1.25}.assets-controls option{background:var(--surface);color:var(--text)}
.assets-controls button{flex:0 0 36px;min-height:40px;padding:8px}.assets-controls select:hover{background:var(--hover)}
#assets-grid.process-list{grid-template-columns:minmax(0,1fr);gap:20px}
.process-list .asset-tile{border-bottom:1px solid var(--soft-line);padding-bottom:12px}
.asset-order{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:8px;font-size:12px;color:var(--muted)}
.asset-order strong{font-weight:500;color:var(--text)}.asset-order time{font-variant-numeric:tabular-nums;text-align:right}
/* A chronological media feed, with captions below each preview. */
.process-list .asset-card{display:block;text-align:left}
.process-list .asset-card img,.process-list .asset-card video{display:block;width:100%;height:auto;max-height:520px;aspect-ratio:auto;object-fit:contain;background:var(--surface);border-radius:8px}
.process-list .asset-card video{aspect-ratio:16/9;pointer-events:none}
.process-list .asset-file-type{width:100%;height:80px;aspect-ratio:auto;font-size:14px}
.process-list .asset-card strong{padding:8px 2px 0;font-size:12px;font-weight:500}
.process-list .asset-card small{padding:3px 2px 0;font-size:12px}
.process-list .asset-work-link{margin-left:0;min-height:32px;padding:4px 2px}
.asset-video-label{display:block;padding:6px 2px 0;color:var(--muted);font-size:12px}

/* User bubbles align to the reading column's right edge on every layout. */
#messages .message.user{display:flex;flex-direction:column;align-items:flex-end}
#messages .message.user>.speaker{justify-content:flex-end;text-align:right}
#messages .message.user>.body{max-width:88%;text-align:start;min-width:0}
#messages .message.assistant>.speaker{flex-wrap:wrap;line-height:1.5}

/* Queue positions are separate from message text. */
#queue-list li{display:grid;grid-template-columns:24px minmax(0,1fr) auto;gap:10px;align-items:start;padding:10px 0}
.queue-number{display:grid;place-items:center;min-width:24px;height:24px;margin-top:2px;border-radius:6px;background:var(--surface);color:var(--muted);font-size:12px;font-variant-numeric:tabular-nums;line-height:1}
.queue-text{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;font-size:13px;line-height:1.6}
#queue-list .queue-actions{align-self:center}#queue-list .queue-actions button{min-height:40px;padding:6px 8px}
@media(max-width:600px){#queue-list li{grid-template-columns:24px minmax(0,1fr);gap:4px 10px}#queue-list .queue-actions{grid-column:2;justify-self:end}#queue-list small{font-size:12px}}

.usage-reset{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0}.usage-reset button{padding:8px 14px;min-height:40px;border:1px solid var(--line);border-radius:8px}.usage-reset button:disabled{opacity:.45;cursor:not-allowed}

.usage-panel .usage-resets{margin:14px 0 4px;padding:10px 0;border-top:1px solid var(--soft-line)}.usage-panel .usage-resets>summary{font-size:13px;color:var(--text);align-items:center}.usage-resets>summary strong{font-size:12px;font-weight:500;color:var(--muted);font-variant-numeric:tabular-nums}.usage-resets .usage-reset{margin:8px 0}.usage-resets .usage-reset:last-child{margin-bottom:0}.usage-resets .usage-note{font-size:12px}

.usage-panel .usage-recent{margin-top:14px;border-top:1px solid var(--soft-line);border-bottom:0}
.usage-panel .usage-recent>summary{font-size:13px;color:var(--text)}
.usage-panel .usage-turn>summary{align-items:center;gap:16px;font-size:12px;min-height:36px}
.usage-panel .usage-turn-title{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.usage-panel .usage-turn-value{flex-shrink:0;color:var(--text);font-variant-numeric:tabular-nums}
.usage-panel .usage-turn{padding:2px 0}.usage-more{min-height:40px;margin-top:8px;font-size:12px;color:var(--muted)}
