/* Source Sans 3, Adobe Fonts (SIL Open Font License); served locally. */
@font-face{font-family:'Source Sans 3';src:url('/assets/fonts/source-sans-3-regular.woff2') format('woff2');font-weight:200 900;font-style:normal;font-display:swap}
@font-face{font-family:'Source Sans 3';src:url('/assets/fonts/source-sans-3-italic.woff2') format('woff2');font-weight:200 900;font-style:italic;font-display:swap}
:root{--agent-message-font:'Source Sans 3',system-ui,sans-serif;--console-inline-gutter:8px;--page:#eaf8fb;--surface:#ffffff;--tab-surface:#cceff4;--tab-selected:#b9e1ff;--user-surface:#fff0c7;--divider:#c8e0e5;--activity:#49bdd0;--footer-chrome:#cceff4;--footer-control:#f7fdff;--footer-ink:#163d49;--footer-line:#83abb5;--footer-selected:#b9e1ff;--ink:#102f3b;--muted:#4d6973;--line:#7fa4ad;--accent:#006d83;--danger:#9d3044;--progress-connector:color-mix(in srgb,var(--accent) 55%,var(--muted))}
/* @lat: [[session-live-state#Rules]] */
/* Decision: AGENTS.md Decisions > Session timer. Connection errors also show before a chat loads. */
:where(html[data-theme="dark"]){--danger:#ffb3be}

*{box-sizing:border-box}html[data-microphone-live]:not([data-engine=webkitgtk]),html[data-microphone-live]:not([data-engine=webkitgtk]) body{overscroll-behavior-y:none}html,body{margin:0;min-height:100%;background-color:var(--page);color:var(--ink);font:15px/1.5 system-ui,sans-serif}button,textarea{font:inherit}button{border:1px solid #123d2f;border-radius:7px;background:var(--accent);color:var(--button-ink,#fff);padding:8px 13px;cursor:pointer;border-color:var(--accent)}[hidden],body[data-execution="true"] #conversation > :not(#timeline){display:none!important}button:disabled{opacity:.55;cursor:default}
#workshop{width:calc(100% - 2 * var(--console-inline-gutter));margin:0 auto;padding:0 0 28px}.gate{display:grid;place-content:center;text-align:center}.gate>#inline-login>p{margin:0 0 10px;color:var(--muted);font-size:12px;line-height:1.4}#conversation{--conversation-gap:18px;--page-chrome:92px;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--conversation-gap);align-items:start;min-height:calc(100vh - var(--page-chrome));padding-top:var(--session-tabs-height);--sidebar-chrome-gap:12px;--session-tabs-height:44px;--session-rail-top-gap:4px}#slow-lane{min-width:0;display:flex;flex-direction:column;min-height:calc(100vh - var(--page-chrome) - var(--session-tabs-height) - var(--conversation-gap))}/* Decision: AGENTS.md Decisions > Child session rows */
#session-initial-task{min-width:0;max-width:min(900px,100%);box-sizing:border-box;width:min(640px,82%);margin-left:auto;margin-right:2%;border-color:#3a3c42;background:#2b2d31;color:#f2f3f5}
#session-initial-task>summary{color:#b5b8bf;font-size:12px;cursor:pointer}
#session-initial-task pre{white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%;min-width:0;margin:8px 0 0;font:inherit;color:inherit}
body{--message-base-ink:var(--ink);--message-base-muted:var(--muted);--message-base-accent:var(--accent);--message-base-line:var(--line);--message-base-surface:var(--surface);--message-base-page:var(--page);--message-base-selected:var(--tab-selected)}
/* Decision: AGENTS.md Decisions > Text. Nested surfaces use the page palette, not an outer own-message ink. */
.message{--ink:var(--message-base-ink);--muted:var(--message-base-muted);--accent:var(--message-base-accent);--line:var(--message-base-line);--surface:var(--message-base-surface);--page:var(--message-base-page);--tab-selected:var(--message-base-selected);color:var(--ink);margin:0 0 12px;padding:11px 13px;border:1px solid var(--line);border-radius:9px;background:var(--surface);white-space:pre-wrap;overflow-wrap:anywhere}.message.user{background:var(--user-surface)}
/* Your own prompts and their previews share one readable blue surface. */
/* Decision: AGENTS.md Decisions > Prompt preview */
.user-prompt,.message.user.own-message:is(:not([data-provenance="machine"]),.routed-user-request),body.conversation-visible .message.user.own-message:is(:not([data-provenance="machine"]),.routed-user-request),body.conversation-archived .message.user.own-message:is(:not([data-provenance="machine"]),.routed-user-request){--ink:#ffffff;--muted:#dcebff;--accent:#ffffff;--line:#80bcff;--surface:var(--own-raised);--page:var(--own-raised);--tab-selected:var(--own-raised);border-color:var(--own-bubble);background:var(--own-bubble);color:var(--ink)}
:is(.own-message,.user-prompt){--own-bubble:#0062cc;--own-raised:#075bb4}
html[data-theme="dark"] :is(.own-message,.user-prompt){--own-bubble:#0865cf;--own-raised:#0a5db8}
.message.user.own-message:is(:not([data-provenance="machine"]),.routed-user-request) a{color:#ffffff;text-decoration:underline}.message.assistant article{white-space:normal;font-family:var(--agent-message-font)}.message.assistant article>:first-child{margin-top:0}.message.assistant article>:last-child{margin-bottom:0}
.spinner{width:12px;height:12px;border:2px solid var(--line);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}#resume,#retry{align-self:flex-start;margin:0 8px 8px 0}#composer-dock{--footer-clearance:64px;--composer-gutter:12px;position:fixed;left:var(--console-inline-gutter);bottom:calc(max(var(--footer-clearance),var(--composer-viewport-inset,0px)) + var(--composer-gutter));z-index:6;width:calc(100% - 2 * var(--console-inline-gutter))}#composer-perch{position:relative;height:0}#composer-dock::after{content:'';position:absolute;top:100%;left:0;right:0;height:calc(var(--footer-clearance) + var(--composer-gutter));background:var(--page);pointer-events:none}#composer{position:relative;overflow:clip;padding:0;background:var(--surface);border:1px solid var(--line);border-radius:10px}#composer textarea{display:block;width:100%;min-width:0;resize:vertical;border:0;background:transparent;color:var(--ink);outline:0}.composer-actions{display:flex;justify-content:flex-end;gap:6px}#composer small{display:block;color:var(--muted);padding-top:12px}
.message.assistant a{color:var(--accent)}
.message.assistant.generated-image-message{display:inline-block;vertical-align:top;width:auto;max-width:calc(100% - 8px);margin:0 8px 8px 0;padding:8px;white-space:normal}.generated-image-link{max-width:100%;border-radius:8px;overflow:hidden;background:var(--page);cursor:zoom-in}.generated-image-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.generated-image-link img{display:block;width:auto;height:auto;max-width:min(192px,100%);max-height:192px;object-fit:contain}.generated-image-status{display:block;padding:6px 3px;color:var(--muted);font-size:12px}

#runtime-instructions{width:min(720px,calc(100% - 24px));max-height:min(760px,calc(100% - 24px));padding:0;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);box-shadow:0 18px 60px rgba(16,47,59,.28)}#runtime-instructions::backdrop{background:rgba(16,47,59,.42)}#runtime-instructions>header{position:sticky;top:0;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px;border-bottom:1px solid var(--line);background:var(--surface)}#runtime-instructions h2,#runtime-instructions h3{margin:0;color:var(--ink)}#runtime-instructions h2{font-size:16px}#runtime-instructions h3{font-size:13px}#runtime-instructions-close{display:grid;width:32px;height:32px;flex:none;place-content:center;padding:0;background:transparent;color:var(--ink);border-color:var(--line);font-size:20px}#runtime-instructions-state{margin:0;padding:16px;color:var(--muted)}#runtime-instructions-body{padding:14px}#runtime-instructions section{margin:0 0 14px}#runtime-instructions ul{margin:5px 0 0;padding-left:20px}#runtime-instructions details{border-top:1px solid var(--line);padding-top:10px}#runtime-instructions summary{color:var(--accent);font-weight:700;cursor:pointer}#runtime-instructions pre{max-height:42vh;overflow:auto;margin:8px 0 0;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--page);color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.45 ui-monospace,monospace;-webkit-user-select:text;user-select:text}.runtime-instructions-button{padding:1px 4px;border:0;border-radius:3px;background:transparent;color:var(--muted);font-size:11px;font-weight:400;line-height:1.4;cursor:pointer}.runtime-instructions-button:is(:hover,:focus-visible){background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink)}.runtime-instructions-button:focus-visible{outline:1px solid currentColor;outline-offset:2px}#runtime-instructions-sections details+details{margin-top:10px}#runtime-instructions-sections summary span{color:var(--muted);font-weight:400;font-size:12px}
.platform-footer [data-platform-nav]{flex:0 0 auto!important}

/* Microphone status shares the action bar so a status change never adds a row above or below the composer. */.voice-feed-control{display:flex;flex:1 1 auto;min-width:0;margin-right:auto;align-items:center;gap:inherit;color:var(--muted);font-size:12px}
#voice-feed{position:relative}#voice-feed[data-state="connecting"]{cursor:wait}#voice-feed .microphone-error{color:var(--danger)}#surface-state.error{border-color:var(--danger);color:var(--danger)}
#voice-feed .microphone-icon{width:20px;height:20px;overflow:visible}
#voice-feed .microphone-pin{display:none;position:absolute;top:1px;right:1px;width:14px;height:14px;padding:2px;box-sizing:border-box;border-radius:50%;background:var(--accent);color:var(--surface);stroke-width:3}
#voice-feed[data-state="on"][data-focus="here"][data-pinned="true"]{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}
#voice-feed[data-state="on"][data-focus="here"][data-pinned="true"] .microphone-pin{display:block}
#voice-feed-delivery,#voice-feed-delivery[hidden]{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.message.assistant article pre{max-width:100%;overflow:auto;overscroll-behavior-x:contain;margin:8px 0;padding:9px 11px;border:1px solid var(--line);border-radius:6px;background:var(--page);color:var(--ink);font:12px/1.45 ui-monospace,monospace}.message.assistant article code{border-radius:3px;padding:1px 4px;background:var(--page);color:var(--ink);font-family:ui-monospace,monospace}.message.assistant article pre code{padding:0;background:none}.message.assistant article .table-wrap{max-width:100%;overflow:auto;overscroll-behavior-x:contain}.message.assistant article table{margin:8px 0;border-collapse:collapse;font-size:.88em;line-height:1.45;font-variant-numeric:tabular-nums;color:var(--ink)}.message.assistant article :is(th,td){padding:5px 9px;border:1px solid var(--line);text-align:left;vertical-align:top;overflow-wrap:break-word}.message.assistant article th{background:var(--page);color:var(--ink);font-weight:650}
.message article :is(ul,ol){list-style:none}.message article li{position:relative}.message article li::before{position:absolute;-webkit-user-select:none;user-select:none}.message article ul>li::before{content:"";inset-inline-start:-.95em;top:calc(.5lh - .17em);width:.34em;height:.34em;border-radius:50%;background:currentColor}.message article ul ul>li::before{box-sizing:border-box;border:1.5px solid currentColor;background:transparent}.message article ol>li::before{content:counter(list-item) ".";inset-inline-end:100%;padding-inline-end:.45em;font-variant-numeric:tabular-nums}
.message-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:5px}.message-stamp{display:block;color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}#timeline-list details,.message-body {min-width:0}.message.user .message-body{max-height:min(620px,60vh);overflow-y:auto;scrollbar-gutter:stable}.message-agent-link,#session-account {cursor:pointer}.message-agent-link[data-state="running"]{color:var(--muted);cursor:wait}#timeline-list .terminal strong,#timeline-list .tool_error strong,#runtime-instructions-state.error,.message-agent-link[data-state="failed"] {color:var(--danger)}
/* Decision: AGENTS.md Decisions > Text. Metadata uses the message surface’s readable ink. */
.message.user .message-meta{justify-content:flex-start;flex-wrap:wrap;--muted:var(--ink)}
.message-repeat-count{display:inline-flex;align-items:center;justify-content:center;min-width:1.3em;padding:0 5px;border:1px solid var(--danger);border-radius:999px;background:var(--tab-surface,var(--surface));color:var(--ink);font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}
.message-controls{display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto;flex-wrap:wrap;gap:8px;margin-left:auto;max-width:100%}.message-controls .message-permalink{margin-left:0}
.message-permalink{display:inline-flex;margin-left:auto;padding:0;border:0;background:none;cursor:pointer;color:var(--muted);font:11px/1.4 ui-monospace,monospace;text-decoration:none}.message-permalink:hover,.message-permalink:focus-visible{color:var(--ink)}
.message.notification{margin-right:12%;border-style:dashed;background:#fff4c7;color:#24382f}
.message.notification.unread{border-color:var(--accent);box-shadow:inset 3px 0 0 var(--accent)}
.message.control{margin-right:12%;border-style:dashed;background:var(--page);color:var(--muted)}
.message-delivery-state{display:block;margin-top:7px;color:var(--danger);font-size:11px}.message-retry{display:block;margin-top:6px;padding:1px 9px;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--accent);font-size:11px;font-weight:700;cursor:pointer}.message-retry:is(:hover,:focus-visible){background:color-mix(in srgb,var(--accent) 12%,transparent)}.message.delivery-failed,#composer-header:has(#composer-status.error){border-color:var(--danger)}
.handoff-context-message .message-body{overflow-wrap:anywhere}.runtime-panel{display:grid;gap:8px;align-content:start;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--page)}.runtime-field{display:grid;gap:4px;font-size:12px;color:var(--muted)}.runtime-field select{padding:4px 6px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);font:inherit;font-size:12px}.runtime-field select:disabled{opacity:.55}
.session-runtime-popover{position:fixed;inset:auto;width:min(340px,calc(100vw - 16px));max-height:calc(100vh - 60px);margin:0;padding:0;overflow:auto;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);box-shadow:0 10px 28px rgba(18,48,37,.22)}.session-runtime-popover>header{display:flex;align-items:center;justify-content:space-between;padding:8px 10px;border-bottom:1px solid var(--line)}.session-runtime-popover h2{margin:0;font-size:13px}.session-runtime-popover>header button{padding:1px 6px;background:transparent;color:var(--ink)}.session-runtime-popover .runtime-panel{gap:7px;padding:9px}

#session-account:focus-visible,#composer-status:focus-visible,#background-work .background-work-watch:focus-visible {outline:2px solid var(--accent);outline-offset:2px}
@media(max-width:820px){:root{--console-inline-gutter:4.5px}#workshop{width:calc(100% - 2 * var(--console-inline-gutter))}#conversation{display:flex;min-height:calc(100vh - 144px);flex-direction:column}#slow-lane{min-height:0;width:100%}#composer-dock{--footer-clearance:112px;left:var(--console-inline-gutter);right:var(--console-inline-gutter);width:auto}
}
#current-app{display:flex;align-items:center;gap:5px;min-width:0;max-width:min(140px,35vw);color:var(--ink);text-decoration:none;cursor:pointer}#current-app:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}#current-app-tooltip{width:min(280px,calc(100vw - 16px))}.source-history-heading{display:flex;justify-content:space-between;gap:12px;font-weight:600}.current-app-identity{display:grid;grid-template-columns:16px minmax(0,1fr);flex:1;min-width:0;align-items:center;gap:6px}.current-app-identity img{width:16px;height:16px;flex:none;border-radius:3px;object-fit:contain}#current-app-name{grid-column:2;min-width:0;overflow:hidden;color:var(--ink);font:inherit;text-overflow:ellipsis;white-space:nowrap}
/* Workshop atmosphere: reuse the product's pixel-art world without sacrificing the console. */
body[data-excessivecode-shell="conversation"]{--page:#edf7f1;--surface:#fffdf5;--tab-surface:#dcebdc;--tab-selected:#fff3bf;--user-surface:#e3f0df;--divider:#c8d8c9;--footer-chrome:#183f37;--footer-control:#fffdf5;--footer-ink:#17372f;--footer-line:#8eb9a5;--footer-selected:#dcebdc;--ink:#17372f;--muted:#526b61;--line:#8ea99b;--accent:#176f60;background:#dcecdf;color:var(--ink)}
body.conversation-visible::before{position:fixed;inset:0;z-index:0;background:linear-gradient(180deg,rgba(238,248,241,.66) 0,rgba(238,248,241,.88) 48%,rgba(238,248,241,.88) 100%),url('/assets/excessivecode-treehouse-workshop-v3.webp') center top/cover no-repeat;content:"";pointer-events:none}
body.conversation-visible::after{position:fixed;inset:0;z-index:0;background:radial-gradient(circle at 12% 17%,rgba(255,235,124,.2) 0 2px,transparent 3px),radial-gradient(circle at 88% 30%,rgba(135,240,203,.18) 0 2px,transparent 3px);background-size:83px 83px,117px 117px;content:"";pointer-events:none}
body.conversation-visible #workshop{position:relative;z-index:1}
body.conversation-visible .message{border-color:rgba(73,111,91,.52);border-radius:12px;background:rgba(255,253,245,.94);box-shadow:0 5px 18px rgba(45,78,58,.1),inset 0 1px rgba(255,255,255,.8);backdrop-filter:blur(8px)}
body.conversation-visible .message.user{border-color:rgba(93,125,73,.52);background:rgba(227,240,223,.95)}
body.conversation-visible #composer-dock::after{background:linear-gradient(180deg,rgba(237,247,241,0),rgba(237,247,241,.94) 28%)}
body.conversation-visible #composer{border-color:var(--line);background:var(--surface);color:var(--ink)}
#composer textarea{margin:0;padding:4px 6px;font-size:16px;height:111px;border-radius:0}
#composer #input[data-compact-font]{font-size:12.6px}
.composer-actions{align-items:center;padding:6px;border-top:1px solid var(--divider);-webkit-user-select:none;user-select:none}.composer-actions button{margin-top:0}
body.conversation-visible .message.user[data-provenance="machine"]:not(.routed-user-request){border-color:#8ca0aa;background:rgba(233,239,242,.96);color:var(--message-base-ink);box-shadow:0 4px 14px rgba(54,76,86,.08)}
@media(max-width:820px){body.conversation-visible::before{background:linear-gradient(180deg,rgba(238,248,241,.76),rgba(238,248,241,.88) 43%,rgba(238,248,241,.88) 100%),url('/assets/excessivecode-treehouse-workshop-v3.webp') 42% top/cover no-repeat}body.conversation-visible .message{backdrop-filter:none}}
@media(prefers-contrast:more){body.conversation-visible::before{opacity:.28}body.conversation-visible .message,body.conversation-visible #composer{border-width:2px;background:#fffdf5;box-shadow:none}}
:where(html[data-theme="dark"]) body.conversation-visible{--page:#10251f;--danger:#ffb3be;--surface:#182f27;--tab-surface:#244239;--tab-selected:#4c492d;--user-surface:#243f34;--divider:#36544a;--footer-chrome:#0a1714;--footer-control:#1b352d;--footer-ink:#edf6ea;--footer-line:#608a7a;--footer-selected:#315f51;--ink:#edf6ea;--muted:#aec6bb;--line:#587c6e;--accent:#7bd4b8;--button-ink:#10251f;background:#10251f;color:var(--ink)}:where(html[data-theme="dark"]) body.conversation-visible::before{background:linear-gradient(180deg,rgba(11,28,23,.66),rgba(11,28,23,.9) 52%,rgba(11,28,23,.9) 100%),url('/assets/excessivecode-treehouse-workshop-v3.webp') center top/cover no-repeat}:where(html[data-theme="dark"]) body.conversation-visible .message{border-color:#587c6e;background:rgba(24,47,39,.95);color:var(--ink);box-shadow:0 10px 28px rgba(0,0,0,.28)}:where(html[data-theme="dark"]) body.conversation-visible .message.user{background:rgba(36,63,52,.96)}:where(html[data-theme="dark"]) body.conversation-visible #composer-dock::after{background:linear-gradient(180deg,rgba(16,37,31,0),rgba(16,37,31,.96) 28%)}
:where(html[data-theme="dark"]) body.conversation-visible .message.user[data-provenance="machine"]:not(.routed-user-request){border-color:#718a96;background:rgba(35,54,63,.97);color:var(--message-base-ink)}
/* Authentication changes page content, never the shared shell geometry. */
.gate{position:relative;width:calc(100% + 16px);min-height:calc(100dvh - var(--platform-footer-height));margin-left:-8px;overflow:hidden;background:#173a2b url('/assets/excessivecode-treehouse-workshop-v3.webp') center/cover no-repeat;isolation:isolate}
body.activation-visible #workshop{width:100%;margin:0;padding:0}
#access-gate[data-activation-visible="true"]{width:100%;margin-left:0;padding:64px 16px 32px}
.gate::before{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(13,38,27,.24),rgba(13,38,27,.05) 52%,rgba(13,38,27,.2)),linear-gradient(0deg,rgba(11,34,24,.22),transparent 45%);content:""}
.gate:not([data-activation-visible="true"]){background:transparent}
.gate:not([data-activation-visible="true"])>#access-message,#conversation[data-session-switch="held"] :is(#slow-lane,#composer-dock),#slow-lane:has(>#session-loading:not([hidden]))>#session-notes {visibility:hidden}
.gate>#access-message{position:relative;padding:8px 12px;border-radius:6px;background:var(--surface);color:var(--ink);box-shadow:0 8px 28px rgba(12,39,27,.25)}
.gate>#inline-login{position:relative;z-index:1;width:min(390px,calc(100vw - 32px));margin:auto;padding:28px 30px 30px;border:2px solid #9c8754;border-radius:38px 8px;background:rgba(255,253,241,.96);color:#173a2b;box-shadow:10px 12px 0 rgba(226,189,88,.82),0 24px 70px rgba(10,34,23,.45);text-align:left;backdrop-filter:blur(4px);--gate-ink:#173a2b;--gate-muted:#4f685c;--gate-label:#385443;--gate-input:#fffdf0;--gate-input-ink:#173a2b;--gate-line:#70826b;--gate-focus:#214d37;--gate-link:#214d37;--gate-button:#214d37;--gate-button-hover:#173a2b;--gate-button-ink:#fff;--gate-error:#9b2f1f}
.gate>#inline-login::after{position:absolute;right:16px;bottom:14px;width:34px;height:18px;background:radial-gradient(circle at 50% 50%,#f3d66b 0 2px,transparent 3px),radial-gradient(circle at 18% 30%,#79c99d 0 1px,transparent 2px),radial-gradient(circle at 82% 72%,#79c99d 0 1px,transparent 2px);content:"";opacity:.72;pointer-events:none}
.gate .activation-brand{display:flex;align-items:center;gap:8px;margin:0 0 22px;color:#52705e;font:800 12px/1 ui-monospace,monospace;letter-spacing:.14em;text-transform:uppercase}
.gate .activation-brand img{width:25px;height:25px;border-radius:7px;image-rendering:auto}
.gate #activation-intro{margin:0 0 22px;padding:0 0 18px;border-bottom:1px solid #cbbd91}
.gate #activation-intro .activation-kicker{margin:0 0 7px;color:#52705e;font:800 10px/1.2 ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase}
.gate #activation-intro h1{margin:0;color:#173a2b;font:700 34px/.98 Georgia,serif;letter-spacing:-.035em}
.gate #activation-intro p:not(.activation-kicker){margin:10px 0 0;color:#4f685c;font-size:14px;line-height:1.45}
.gate #activation-intro strong{color:#173a2b;font-weight:800;overflow-wrap:anywhere}
/* One palette for every AuthReturn element in the sign-in card; skins remap the variables. */
.gate #auth-inline :is(.auth-form,.auth-container,.auth-area,.auth-field-help,.auth-password-match,.auth-branding,.auth-buttons){background:transparent;color:var(--gate-ink)}
.gate #auth-inline :is(.auth-toggle,.auth-field-help,.auth-branding,.auth-branding *){color:var(--gate-muted)}
.gate #auth-inline :is(input,textarea,select){border:2px solid var(--gate-line);border-radius:7px;background:var(--gate-input);color:var(--gate-input-ink)}
.gate #auth-inline :is(input,textarea)::placeholder{color:var(--gate-muted);opacity:1}
.gate #auth-inline :is(input,textarea,select):focus{border-color:var(--gate-focus);box-shadow:0 0 0 3px color-mix(in srgb,var(--gate-focus) 30%,transparent)}
.gate #auth-inline :is(a,.auth-forgot-password,.auth-toggle a){color:var(--gate-link);font-weight:800}
@media(max-width:620px){.gate{width:calc(100% + 9px);margin-left:-4.5px;background-position:58% center}.gate>#inline-login{padding:24px 22px 26px;border-radius:28px 7px;box-shadow:7px 8px 0 rgba(226,189,88,.82),0 18px 48px rgba(10,34,23,.42)}}
:where(html[data-theme="dark"]) .gate>#inline-login{background:rgba(255,253,241,.96);color:#173a2b}
#conversation:where([data-surface]:not([data-surface="conversation"])){grid-template-columns:minmax(0,1fr)}
#conversation:where([data-surface]:not([data-surface="conversation"])) #slow-lane{min-height:calc(100vh - 54px)}
#surface-view:not([hidden]){display:block;width:min(1240px,calc(100% - 24px));margin:12px auto 24px;padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--page);color:var(--ink)}
#surface-view[data-surface="agent-config"]:not([hidden]){width:min(620px,calc(100% - 24px))}
#surface-state{margin:8px 0;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--muted)}
#surface-root .hidden{display:none!important}
#provider-activation,#provider-dialog{width:min(520px,calc(100vw - 32px));padding:24px;border:1px solid var(--line);border-radius:14px;background:var(--surface,#fff);color:var(--ink,#202020);text-align:left;box-shadow:0 12px 40px #10251f40}
#provider-dialog{max-height:90dvh;overflow-y:auto;scrollbar-gutter:stable;overscroll-behavior:contain}#provider-dialog::backdrop,#sign-in-dialog::backdrop{background:#10251f99}
#provider-access h1{margin:0 24px 16px 0;font-size:22px;line-height:1.25;outline:none}#provider-access p{margin:12px 0;font-size:15px;line-height:1.5;overflow-wrap:anywhere}
#provider-access .provider-card{padding:12px;margin:12px 0;border:1px solid var(--line);border-radius:10px;background:var(--surface,#fff);color:var(--ink,#202020)}
#provider-access .provider-card header{display:flex;align-items:center;gap:12px;margin-bottom:8px}#provider-access .provider-card h2{margin:0;font-size:16px;line-height:1.3}
#provider-access .provider-logo{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:7px;background:#fff;color:#181818}#provider-access .provider-logo img{display:block;width:30px;height:30px;object-fit:contain}
#provider-access .provider-account{display:block;width:100%;padding:6px 0;margin:0;border:0;border-bottom:1px solid var(--line);border-radius:0;box-shadow:none;background:transparent;color:var(--ink);text-align:left;font-size:13px;overflow-wrap:anywhere;white-space:normal}
#provider-access .provider-account:hover{background:var(--tab-selected,var(--page))}
#provider-access .provider-connect,#session-account-tooltip .provider-connect{display:inline-block;width:auto;max-width:100%;margin-top:12px;padding:7px 12px;border:1px solid #d76b26;border-radius:7px;background:#fff;color:#512b12;box-shadow:none;font-size:13px;font-weight:600;line-height:1.4;white-space:normal}
#provider-access .provider-connect:hover:not(:disabled),#session-account-tooltip .provider-connect:hover:not(:disabled){background:#fff3e9;color:#512b12}
:where(html[data-theme="dark"]) #provider-access .provider-connect,:where(html[data-theme="dark"]) #session-account-tooltip .provider-connect{background:var(--surface);color:var(--ink);border-color:#ea9d64}
#provider-access [data-next],#provider-continue{display:block;width:100%;margin-top:20px;padding:12px 16px;font-size:16px}#provider-access .provider-back{display:block;width:auto;background:transparent;color:var(--ink);border:0;box-shadow:none;padding:5px 0;margin:0 0 12px;font-size:14px;text-decoration:none}
#provider-access .provider-success-choice{display:block;width:100%;text-align:left;margin:16px 0 0;padding:12px 16px;font-size:16px;background:var(--surface);color:var(--ink);border:1px solid var(--line);box-shadow:none}
#provider-access [data-claude-consent] a{color:inherit;background:inherit;text-decoration:underline}
#provider-access [data-setup-help]{margin-top:24px}
#provider-access .provider-setup-image{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:9px;cursor:default}#provider-access [data-device-code]{padding:14px;border:1px solid var(--line);border-radius:9px;font:700 25px ui-monospace,monospace;letter-spacing:.07em;text-align:center;background:var(--surface);color:var(--ink)}
#provider-access form label{display:grid;gap:8px;font-size:14px}#provider-access form input{width:100%;padding:10px;border:1px solid var(--line);border-radius:7px;background:var(--surface,#fff);color:var(--ink,#202020);font-size:16px}
#composer-status{flex:1 1 12ch;min-width:0;overflow:hidden;text-overflow:ellipsis;margin:0;line-height:1.4;white-space:nowrap;-webkit-user-select:text;user-select:text;background:transparent;text-align:left;cursor:pointer;max-width:12ch;font-size:12px;color:inherit;border:1px solid transparent;border-radius:7px;padding:3px 7px;text-decoration:none}#composer-status.error {color:var(--danger)}
.gate:has(>#provider-activation:not([hidden])){place-content:start center;padding-top:48px}#provider-access button:focus-visible,#provider-access input:focus-visible{outline:3px solid #be9131;outline-offset:3px}@media(max-width:600px){.gate:has(>#provider-activation:not([hidden])){padding-top:24px}}
#prompt-trace{color:var(--ink);background:var(--surface);font-size:12px;line-height:1.25}
@keyframes trace-dot-live{50%{box-shadow:0 0 0 2px var(--surface),0 0 0 5px color-mix(in srgb,var(--accent) 35%,transparent)}}
.trace-dot-tooltip{position:fixed;inset:auto;margin:0;max-width:min(280px,calc(100vw - 16px));padding:5px 8px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font:12px/1.4 system-ui;box-shadow:0 4px 12px #102f5928;white-space:normal;-webkit-user-select:text;user-select:text}
.message-link-address{max-width:min(480px,calc(100vw - 16px));overflow-wrap:anywhere}
#prompt-trace p{margin:4px 0;color:var(--muted);overflow-wrap:anywhere}
#prompt-trace-panel{min-width:0;padding:3px 10px;border-bottom:1px solid var(--divider);color:var(--ink);background:var(--surface)}
#prompt-trace-empty{margin:3px 0;color:var(--muted)}
#composer-frame #composer{border:0;border-top:1px solid var(--divider);border-radius:0}
#provider-access [data-next],#provider-access [data-status]{overflow-wrap:anywhere;white-space:normal}
#composer-header{display:flex;align-items:center;flex-wrap:wrap;gap:3px 6px;min-width:0;margin:0;padding:4px 6px;border:1px solid var(--line);border-bottom:0;border-radius:10px 10px 0 0;background:var(--tab-selected);color:var(--ink);-webkit-user-select:none;user-select:none;min-height:34px}
#composer-header>#app-fps{position:static;inset:auto;z-index:auto;grid-column:1/-1;max-width:100%;background:var(--surface);color:var(--ink);border-color:var(--line)}
@media(max-width:620px){#composer-header{padding-inline:4px;gap:5px 6px}}
/* Decision: AGENTS.md Decisions > Microphone ask. Keep the ask and draft in separate flow rows. */
#composer-entry{display:grid;min-width:0}
#composer-entry>:is(#input,.composer-speech-wrap){grid-area:2/1;min-width:0}
#composer-entry>#microphone-ask{grid-area:1/1;min-width:0}
#composer-entry>#microphone-ask{position:relative;inset:auto;width:calc(100% - 24px);max-width:480px;margin:8px auto;padding:16px;box-shadow:none}
#microphone-ask p{margin:8px 0 12px}
#microphone-ask .account-switch-options{justify-content:flex-end}
@media(max-height:700px){#composer-entry>#microphone-ask{margin:4px auto;padding:8px}#composer-entry>#microphone-ask h2{margin:0 0 4px}#composer-entry>#microphone-ask p{margin:4px 0 8px;line-height:1.3}#composer-entry>#microphone-ask button{padding:6px 8px}}
#microphone-ask{width:min(480px,calc(100vw - 32px));box-sizing:border-box;padding:24px;border:1px solid #9c8754;border-radius:20px 7px;background:#fffdf1;color:#173a2b;box-shadow:0 12px 40px #10251f40;--surface:#fffdf1;--ink:#173a2b;--muted:#526548}
#microphone-ask h2{margin:0 32px 12px 0;font-size:1.1rem}
#microphone-ask p{line-height:1.5;overflow-wrap:anywhere}
#provider-dialog-close{float:right;padding:3px 9px}
.account-switch-options{display:flex;gap:8px;flex-wrap:wrap}
.account-switch-options button{border:1px solid #9c8754;border-radius:8px;padding:8px 12px;background:#eef0d9;color:#173a2b}
.account-switch-options button:disabled{background:#e6e5da;color:#62665a;cursor:default}
:where(html[data-theme="dark"]) #microphone-ask{background:#182f27;color:#edf6ea;border-color:#608a7a}:where(html[data-theme="dark"]) .account-switch-options button{background:#203b31;color:#edf6ea;border-color:#608a7a}:where(html[data-theme="dark"]) .account-switch-options button:disabled{background:#27372f;color:#a2b0a5}
:where(html[data-theme="dark"]) #microphone-ask{--surface:#182f27;--ink:#edf6ea;--muted:#b8cbbd}
.message.user:is([data-provenance="human"],.routed-user-request) .message-body{max-height:none;overflow:visible}
#session-account{color:var(--ink);font-size:12px;font-weight:600}.message.notification[data-origin="quota_handoff"],.message.notification[data-origin="account_switch"],body.conversation-archived .message{background:var(--surface);color:var(--ink);border-color:var(--line)}
/* Archive state is contextual; leave other conversations and surfaces unchanged. */
body.conversation-archived{--page:#e1e3e5;--surface:#f5f5f5;--user-surface:#eceeef;--ink:#292e33;--muted:#555e66;--line:#929ba3;--divider:#c2c7cc;background-color:var(--page);color:var(--ink)}
#archived-session-notice{display:block;width:fit-content;margin:8px 10px 0;padding:3px 8px;border:1px solid #929ba3;border-radius:7px;background:#d8dcdf;color:#292e33;font-size:12px;white-space:nowrap}
:where(html[data-theme="dark"]) body.conversation-archived{--page:#25282c;--surface:#303439;--user-surface:#383d42;--ink:#edf0f2;--muted:#bdc4cb;--line:#727d87;--divider:#525b64}:where(html[data-theme="dark"]) #archived-session-notice{background:#424a52;color:#edf0f2;border-color:#88939d}
body.conversation-archived::before,#background-work .background-work-watch:hover,body[data-execution="true"] #timeline-list li:nth-child(even){background:var(--page)}
body.conversation-archived .message.user{background:var(--user-surface);color:var(--ink)}
body.conversation-archived #composer-dock::after{background:linear-gradient(transparent,var(--page) 28%)}
.message-queue-times{display:flex;flex-wrap:wrap;gap:3px 12px;margin:0;color:var(--muted);background:transparent;font-size:11px;font-variant-numeric:tabular-nums}.message-queue-times time{white-space:normal}
.handoff-context {color: inherit;background: inherit;--context-bg:#f0e7f8;--context-ink:#392849;--context-line:#bba5ca}
.handoff-context summary,.message .markdown-disclosure > summary{ cursor: pointer; font-weight: 600; }
.handoff-context-text { white-space: pre-wrap; overflow-wrap: anywhere; margin-top: .5rem; }
.handoff-context-note { margin:.5rem 0; font-size:.85rem; }
body.conversation-visible .handoff-context .handoff-context-message { background:var(--context-bg); color:var(--context-ink); border:1px solid var(--context-line); border-radius:10px; padding:12px; margin-top:10px; margin-bottom:10px; min-width:0; }
.handoff-context-message .message-meta, .handoff-context-message small { color:var(--context-ink); }
.handoff-context-message a { color:#63368a; }
  :where(html[data-theme="dark"]) .handoff-context{ --context-bg:#382e46; --context-ink:#f0e5fb; --context-line:#806b94; }
  :where(html[data-theme="dark"]) .handoff-context-message a{ color:#dcc0f5; }
#composer-session-reference{position:relative;font-size:11px;color:var(--muted);white-space:nowrap}
#composer-session-id{color:var(--ink);font-size:11px;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;cursor:pointer}
.session-id-copied{user-select:none;position:absolute;left:50%;top:50%;z-index:1;padding:1px 6px;border-radius:4px;font-size:10px;line-height:15px;white-space:nowrap;pointer-events:none;opacity:0;transform:translate(-50%,-50%);background:var(--ink);color:var(--surface)}
.session-id-copied[data-state="failed"]{background:var(--danger);color:var(--surface)}
.session-id-copied.flash{animation:session-id-copied 1.4s ease-out forwards}
@keyframes session-id-copied{0%{opacity:0;transform:translate(-50%,-50%) scale(.85)}12%,55%{opacity:1;transform:translate(-50%,-50%) scale(1)}100%{opacity:0;transform:translate(-50%,-50%) scale(1)}}
@media(prefers-reduced-motion:reduce){.session-id-copied.flash{animation:session-id-copied-still 1.4s steps(1,end) forwards}@keyframes session-id-copied-still{0%{opacity:1}100%{opacity:0}}}
#composer-session-id:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:3px}
#composer-header #composer-session-link{display:inline-flex;align-items:center;justify-content:center;margin:0;padding:4px 6px;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--muted);cursor:pointer;-webkit-tap-highlight-color:transparent}
#composer-header #composer-session-link[hidden]{display:none}
#composer-header #composer-session-link:hover{color:var(--ink);border-color:var(--muted)}
#composer-session-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#composer-session-link svg{width:12px;height:12px}
#composer-session-link-tooltip{max-width:min(460px,calc(100vw - 16px));overflow-wrap:anywhere}
.message.user{width:min(640px,82%);margin-left:auto;margin-right:2%}
.message.user[data-provenance="machine"]:not(.routed-user-request){margin-left:2%;margin-right:auto}
.message.assistant{width:min(760px,86%);margin-left:2%;margin-right:auto}
/* Phone reading uses the available width; input stays 16px to avoid focus zoom. */
@media(max-width:620px){
  :root{--console-inline-gutter:3px}
  html,body{font-size:14px}
  .message{padding:8px;margin-bottom:9px}
  .message.assistant{width:100%;margin-inline:0}
  .message.user{width:96%;margin-left:auto;margin-right:0}
  .message.user[data-provenance="machine"]:not(.routed-user-request){margin-left:0;margin-right:auto}
  .message.assistant article :is(h1,h2){font-size:1.2em}
  .message.assistant article h3{font-size:1.1em}
  .message.assistant article :is(ul,ol){padding-inline-start:20px}
}
#slow-lane:has(>#messages:not([hidden])){padding-bottom:var(--conversation-scroll-tail,0px)}
#slow-lane:has(>#messages:not([hidden])):has(>#composer-dock:not([hidden])){padding-bottom:calc(var(--composer-clearance,390px) + var(--conversation-scroll-tail,0px))}
#timeline-list li:last-child,.message-progress .message:last-child{margin-bottom:0}

#app-session-spend{width:calc(100% - 20px);margin:0 10px 6px;border-collapse:collapse;color:var(--ink);font:11px/1.4 ui-monospace,monospace}
#app-session-spend th,#app-session-spend td{padding:2px 4px;border-bottom:1px solid var(--line);text-align:right;font-weight:400}
#app-session-spend :is(thead th,th[scope=row]){text-align:left}
#app-session-spend thead th{color:var(--muted);font-family:system-ui,sans-serif}
#app-session-spend tr[data-total=true] :is(th,td){font-weight:700}
#voice-feed:not([data-state="error"],[data-state="denied"]) .microphone-error,#voice-feed:is([data-state="error"],[data-state="denied"]) :is(.microphone-on,.microphone-off),#voice-feed:not([data-state="off"]) .microphone-off,#voice-feed[data-state="off"] .microphone-on,.gate:not([data-activation-visible="true"])::before,.gate>#access-message:empty,#composer-voice-details{display:none}
.message.user:is([data-provenance="human"],.routed-user-request) .message-meta{flex-wrap:wrap;gap:6px}
.message.system-member-message{border-style:solid;background:var(--surface);color:var(--ink);text-align:left;font-size:inherit}.message.system-member-message .message-meta{justify-content:flex-start;flex-wrap:wrap;gap:5px}.message.system-member-message .message-author,.message.user:is([data-provenance="human"],.routed-user-request) .message-stamp,.message.user .runtime-instructions-button,.message.user .message-permalink{flex-shrink:0}
.message-author{min-width:0;color:var(--ink);background:inherit;font-size:11px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;-webkit-user-select:text;user-select:text}
/* Clip rounded composer edges without introducing hidden scrolling ancestors
   between the textarea and its viewport-positioned dock. Native selection and
   the edit menu must share the textarea's scrolling coordinate space. */
#composer-frame{position:relative;border:1px solid var(--line);border-radius:10px;overflow:clip;background:var(--surface);color:var(--ink)}
#composer-frame #composer-header{border:0;border-radius:0}
#composer-model{display:inline-flex;align-items:center;flex:0 0 auto;white-space:nowrap;cursor:pointer}#session-runtime-body{padding:10px 10px 0}#session-runtime-state{margin:6px 10px 10px;color:var(--muted);font-size:11px}#session-runtime-state:empty{display:none}@media(max-width:620px){#session-runtime select{font-size:16px}}
#activity-status-detail{font-size:12px;overflow-wrap:anywhere;margin:0 0 10px}
#session-account-tooltip{white-space:normal;max-width:min(620px,calc(100vw - 24px));max-height:60vh;overflow:auto}
#session-account-tooltip table{width:100%;border-collapse:collapse;font-size:11px;font-variant-numeric:tabular-nums}
.provider-mark{width:11px;height:11px;flex:none;color:var(--muted)}
tr[data-selected="true"] .provider-mark{color:#0d8a6a}
tr[data-selected="true"] .provider-mark-claude{color:#c15f3c}
:where(html[data-theme="dark"]) tr[data-selected="true"] .provider-mark{color:#3fd0a6}:where(html[data-theme="dark"]) tr[data-selected="true"] .provider-mark-claude{color:#e0896a}
#session-account-tooltip caption{text-align:left;color:var(--muted);padding-bottom:5px;font-size:10px}
#session-account-tooltip th,#session-account-tooltip td{padding:4px 6px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
#session-account-tooltip thead th{color:var(--muted);font-weight:600}
#session-account-tooltip tbody th{white-space:nowrap;font-weight:500}
#session-account-tooltip tr[data-selected="true"]{background:var(--tab-selected);color:var(--ink)}
#session-account-tooltip .account-quota-note td{color:var(--muted);font-size:10px;overflow-wrap:anywhere}
#session-account-tooltip p{margin:0}
@media(max-width:520px){:is(#messages,.session-slide) .message.user:is([data-provenance="human"],.routed-user-request) .message-meta{gap:3px}:is(#messages,.session-slide) .message.user .message-stamp{font-size:10px}:is(#messages,.session-slide) .message.user .runtime-instructions-button{font-size:10px;padding:1px 4px;line-height:1.4}}
/* Phone controls stay within the reading width. */
@media(max-width:620px){
  #composer-header select{appearance:none;-webkit-appearance:none;font-size:16px;max-width:100%;padding-right:22px;background-color:var(--surface);color:var(--ink);background-image:linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position:calc(100% - 11px) 50%,calc(100% - 6px) 50%;background-size:5px 5px;background-repeat:no-repeat}
  #composer-status{flex:1 1 12ch;max-width:none}
  #composer .composer-actions{flex-wrap:nowrap;justify-content:flex-start;gap:6px;min-width:0;max-width:100%;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-width:thin}
  .voice-feed-control{flex:1 1 0;margin-right:0}
  #composer-frame{min-width:0;max-width:100%}
  #composer-voice-details{display:flex;flex:1 1 100%;flex-wrap:wrap;gap:8px;align-items:center;padding-top:8px;border-top:1px solid var(--line);background:var(--surface);color:var(--ink)}
}
/* The composer's … button opens the app menu (platform-footer, docked); wide bars carry the leading entries inline
   (platform-footer data-inline), phones add the session options to the menu. */
#composer .composer-actions>excessivecode-footer{flex:1 1 0;min-width:0;align-self:stretch}
#composer .composer-actions:has(>excessivecode-footer) .voice-feed-control{flex-grow:0}
/* The phone menu has one list; keep the live controls and their popovers. */
.composer-menu-label{display:none}
html:has(excessivecode-footer[data-menu-open]),body:has(excessivecode-footer[data-menu-open]){overflow:hidden}

:where(html[data-theme="dark"]) #composer-frame,:where(html[data-theme="dark"]) #session-error,:where(html[data-theme="dark"]) .background-job-result{--danger:#ffb3be}
.session-slide{position:fixed;z-index:10;overflow:hidden;pointer-events:none;contain:strict;background:transparent;color:var(--ink)}
.session-slide-pane{position:absolute;inset:0;overflow:hidden;background:transparent;color:var(--ink);will-change:transform}
.session-slide-heading{position:fixed;z-index:101;overflow:hidden;pointer-events:none;background:var(--page);color:var(--ink)}
.session-slide-heading>span{position:absolute;inset:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;will-change:transform}
/* Keep the actual backdrop painted; only one transcript may contribute pixels. */
body.session-sliding #slow-lane>:not(#composer-dock):not(#session-notes):not(.session-slide-live){opacity:0}
/* The phone's in-flow running summary slides as part of the outgoing copy. */
@media(max-width:1099px){body.session-sliding #slow-lane>#session-notes{opacity:0}}
/* The incoming live pane owns the settling motion; its composer stays fixed. */
.session-slide-live{will-change:transform}
body.session-sliding{overflow-x:clip}
body[data-execution="true"] #prompt-trace-panel{margin-block:18px}

#app-session-spend tr[data-paused=true] th,#composer-header #composer-status.error {color:var(--danger)}
.message .markdown-disclosure { margin: .6rem 0; padding: .45rem .65rem; border: 1px solid var(--line); border-radius: .5rem; background: var(--surface); color: var(--ink); }
.message .markdown-disclosure > summary:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
.message .json-fields { margin: .55rem 0; white-space: normal; } .message .json-fields > dt { margin-top: .45rem; color: var(--muted); font-size: 12px; font-weight: 600; } .message .json-fields > dd { margin: 0; }
.message .json-fields .json-fields, .message .json-items { margin: .2rem 0; padding-left: .7rem; border-left: 2px solid var(--line); list-style: none; white-space: normal; }
.message-secret-handoff{display:block;min-width:0;height:auto;max-height:none;margin-top:14px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface);color:var(--ink)}.message-secret-handoff>p,.message-secret-handoff>button{margin:12px}#session-account-tooltip .compact-account-status:empty{display:none}.message-secret-frame{display:block;width:100%;max-height:none;flex:none;border:0;background:var(--surface);color:var(--ink)}
#composer-status-tooltip{max-width:min(560px,calc(100vw - 16px));max-height:calc(100vh - 24px);overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere}
#background-work .background-work-heading h3{margin:0}
#session-error{flex:none;margin:6px 6px 12px;padding:11px 13px;border:1px solid var(--danger);border-radius:9px;background:var(--surface);color:var(--danger);white-space:pre-wrap;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;max-height:25vh;overflow:auto;position:relative;padding-right:46px}
.generated-image-status button{margin-left:4px}
:is(.generated-image-message:has(img[data-source-url*="/images/recap-"]),.message-inline-image:has(img[data-source-url*="/images/recap-"])) .generated-image-link{width:100%;height:auto;max-width:none;padding:0;background:var(--surface);color:var(--ink)}
:is(.generated-image-message:has(img[data-source-url*="/images/recap-"]),.message-inline-image:has(img[data-source-url*="/images/recap-"])) .generated-image-link img{display:block;width:100%;height:auto;max-width:none;max-height:none;object-fit:contain}
.session-task-list summary>span{color:var(--muted);background:var(--surface)}
/* Both representations contribute their natural height without moving the text nodes. */
.message-inline-image:has(img[data-source-url*="/images/recap-"]){display:block;width:100%;margin:8px 0}
button.generated-image-link{padding:0;border:0}
.generated-image-link{width:192px;height:192px;display:flex;align-items:center;justify-content:center}
.message.generated-image-message,#session-search-open{position:relative}
.message-inline-image{position:relative;display:inline-block;vertical-align:top;margin:4px 8px 4px 0;white-space:normal}.message-inline-image 
.background-job-result{white-space:normal;color:var(--ink);background:inherit}
.background-job-result .background-job-summary{margin:0;font-weight:600;overflow-wrap:anywhere}
.background-job-result .background-job-error {color:var(--danger)}
.background-job-result details{margin-top:4px}
.background-job-result summary{cursor:pointer;color:var(--muted);font-size:12px}
.background-job-result pre{margin:8px 0 0;max-height:320px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.5 ui-monospace,monospace;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:7px;padding:10px}
/* Unsupported popovers must not become permanently visible inline help. */
@supports not selector(:popover-open){[popover][role="tooltip"]{display:none}}
#composer-dock[data-keyboard="open"]{bottom:calc(var(--composer-viewport-inset,0px) + var(--composer-gutter))}
#background-work{width:min(760px,calc(100vw - 16px));max-width:calc(100vw - 16px);max-height:min(65vh,520px);overflow:auto;padding:12px;white-space:normal;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);pointer-events:auto;text-align:left;font-size:12px}#background-work h3{margin:0 0 8px;font-size:13px}#background-work table{width:100%;border-collapse:collapse;table-layout:fixed}#background-work th,#background-work td{padding:7px 6px;text-align:left;vertical-align:top;overflow-wrap:anywhere;border-bottom:1px solid var(--line)}#background-work th:first-child{width:40%}#background-work small{display:block;color:var(--muted)}#background-work summary{cursor:pointer;font-weight:600}#background-work td[data-state]{background:var(--surface);color:var(--ink);font-weight:600}#background-work td[data-state=succeeded]{background:#d9f4df;color:#195d31}#background-work td:is([data-state=failed],[data-state=lost]){background:#ffe3e6;color:#8b2234}#background-work td[data-state] small{color:inherit;font-weight:400}#background-work dl{margin:8px 0;color:var(--muted)}#background-work dd{margin:0 0 6px}#background-work pre{max-height:180px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;padding:6px;background:var(--page);color:var(--ink);font-size:11px}
/* Composer actions share the Send button's geometry; color expresses the action. */
/* One button shape for the whole action bar; individual buttons only change colour. */
/* One size and corner for every control in the composer bar, including the footer icons inside it (platform-footer.css reads these). */
.composer-actions{--bar-control-size:36px;--bar-control-radius:6px}
.composer-actions :where(button){display:inline-flex;flex:none;align-items:center;justify-content:center;gap:6px;box-sizing:border-box;min-height:var(--bar-control-size);margin:0;padding:5px 10px;border:1px solid var(--line);border-radius:var(--bar-control-radius);background:var(--surface);color:var(--ink);font-size:13px;font-weight:600;line-height:20px;white-space:nowrap;box-shadow:none;text-shadow:none;cursor:pointer}
.composer-actions :where(#voice-feed){width:var(--bar-control-size);padding:0}
.composer-actions :where(button):not(:disabled):is(:hover,:focus-visible){background:var(--page)}
.composer-actions :where(button):focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#composer .composer-actions :is(#clear-composer,#send):not(:disabled):is(:hover,:focus-visible){background-image:linear-gradient(#ffffff1f,#ffffff1f);cursor:pointer}
#composer .composer-actions #send{border-color:#105b4e;background:#176f60;color:#fff}
#composer .composer-actions #clear-composer{border-color:#668374;background:#f3f6f2;color:#2a493e}
#composer .composer-actions #send:disabled{border-color:#376c5f;background:#376c5f;color:#fff;opacity:1}
#composer .composer-actions #clear-composer:disabled{border-color:#819b8a;background:#e2e8e3;color:#4a6256;opacity:1}
:where(html[data-theme="dark"]) #composer .composer-actions #clear-composer{border-color:#789b8b;background:#233c32;color:#e0f2e5}
:where(html[data-theme="dark"]) #composer .composer-actions #clear-composer:disabled{border-color:#789b8b;background:#2f4138;color:#b7c9bb}
.composer-action-short{display:none}
.composer-action-icon{display:none;width:20px;height:20px;flex:none}
@media(max-width:620px){
  #composer-header :is(#background-work-trigger,#attach-photo){display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink)}
  #composer-header #composer-status{flex:1 1 auto;max-width:none}
  #composer-frame #composer-header,#composer .composer-action-label,#background-work th:last-child,#background-work td:last-child{display:none}
  #composer-header :is(#background-work-trigger,#attach-photo) .composer-action-icon,#composer .composer-action-icon{display:block}
  /* Decision: AGENTS.md Decisions > Viewed session badge */
  #composer .composer-speech-wrap{display:grid;grid-template-rows:100px 26px}
  #composer textarea{height:100%;min-height:100%;max-height:100%;resize:none;overflow-y:auto;overscroll-behavior-y:contain}
  body[data-composer-editing="true"] #composer-dock{--composer-gutter:4px}
  body[data-composer-editing="true"] #composer .composer-speech-wrap{grid-template-rows:70px 26px}
  body[data-composer-editing="true"] #composer .composer-actions{padding:3px 6px;gap:4px}
  body[data-composer-editing="true"] #conversation{--session-tabs-height:32px}
}
/* Reserve reading space while composing on a phone; drafts stay in the same node. */
#session-account-tooltip th button{display:inline-flex;align-items:center;gap:4px;appearance:none;font:inherit;border:0;border-radius:0;background:transparent;color:inherit;padding:0;margin:0;cursor:pointer;text-align:inherit;line-height:inherit}
#session-account-tooltip th button:disabled{cursor:default;opacity:1}
#session-account-tooltip .account-email-anchor{display:inline-flex}
#session-account-tooltip .training-light{display:inline-block;width:10px;height:10px;border-radius:50%;vertical-align:middle;box-shadow:0 0 0 1px var(--line)}#session-account-tooltip .training-light.off{background:#2e9d5b}#session-account-tooltip .training-light.on{background:#d0414f}#session-account-tooltip .training-light.unconfirmed{background:var(--muted)}#session-account-tooltip .training-light:focus-visible{outline:2px solid #447a59;outline-offset:2px}
#session-account-tooltip .account-email-anchor:focus-visible,#session-account-tooltip button:focus-visible{outline:2px solid #447a59;outline-offset:2px}
#background-work > button{margin-top:8px;padding:5px 9px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);font:inherit;cursor:pointer}#background-work > button:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
#background-work .background-work-watch{margin-left:8px;padding:1px 7px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font-weight:500;text-decoration:none}
#session-error-close{position:absolute;right:6px;top:6px;width:30px;height:30px;padding:0;border:1px solid transparent;border-radius:7px;background:var(--surface);color:var(--danger);font-size:22px;line-height:1;cursor:pointer}#session-error-close:hover,#session-error-close:focus-visible{border-color:currentColor}#session-error-text{white-space:pre-wrap;overflow-wrap:anywhere}
:where(html[data-theme="dark"]) #background-work td[data-state=succeeded]{background:#203f2c;color:#b5efc5}:where(html[data-theme="dark"]) #background-work td:is([data-state=failed],[data-state=lost]){background:#4c2530;color:#ffc2cc}
#background-work table{font-size:12px}
#background-work .background-work-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:4px 12px;margin-bottom:8px}#background-work .background-work-heading small{font-size:11px;color:var(--muted)}
/* Shared label typography; interactive labels retain a hover affordance. */
:is(#composer-session-id,#session-account,#current-app,#composer-model,#composer-status){
  font-family:inherit;font-size:12px;font-weight:400;line-height:1.4;
  color:var(--ink);background:transparent;border:0;border-radius:0;
  box-shadow:none;padding:2px 0;text-decoration:none;
}
#composer-header :is(#session-account,#current-app,#composer-model,#composer-status):hover{
  background:transparent;box-shadow:none;text-decoration:underline;text-underline-offset:3px;
}
#composer-model:focus-visible,#composer-header :is(#session-account,#current-app,#composer-status):focus-visible{outline:2px solid var(--accent);outline-offset:3px}
/* Each metadata item shares one visible boundary in both header layouts. */
#composer-header :is(#composer-session-reference,#session-account,#current-app,#composer-model,#composer-status){
  border:1px solid var(--line);border-radius:6px;padding:4px 8px;
  color:var(--ink);background:transparent;margin-inline-start:0;
}
#composer-header #current-app{max-width:min(140px,35vw)}
#composer-header #composer-status{flex:0 1 16ch;max-width:16ch}
#composer-status.safety-guard,#composer-header #composer-status.safety-guard{
  flex:0 1 auto;max-width:100%;white-space:normal;overflow-wrap:anywhere;
  padding:4px 8px;border:1px solid var(--skin-warn,var(--accent));border-radius:999px;
  background:var(--skin-warn-bg,var(--tab-selected));color:var(--skin-warn,var(--ink));font-weight:600;
}
@media(max-width:620px){#composer-frame>#composer-status.safety-guard{display:block;width:fit-content;max-width:calc(100% - 16px);margin:6px 8px}}
#composer-header>.composer-width-pending[hidden]{display:block!important;visibility:hidden;pointer-events:none}
/* Compact recorded tool count and elapsed timer. */

/* Read-only execution ledger and event inspector. */
/* Execution dedicates the viewport to evidence and persistent turn navigation. */
body[data-execution="true"] #workshop{width:100%;max-width:none;margin:0;padding:0}
body[data-execution="true"] #conversation{display:block;width:100%;height:100dvh;min-height:0;margin:0;padding:0;overflow:hidden}
body[data-execution="true"] :is(excessivecode-footer,#session-tabs,#prompt-trace-panel,#activity-status-detail){display:none!important}
body[data-execution="true"] #execution-turns{height:100%;min-height:0}
/* Every saved inspector field is a first-class ledger column. */
/* Fitted ledger: a selected cell has a separate, selectable full-value reader. */
.message.user .runtime-instructions-button,body[data-execution="true"] #timeline-list .timeline-summary {white-space:nowrap}
#timeline-list [data-column="Saved event JSON"] :is(pre,[role="status"]),#session-progress .message-progress>summary,#session-progress:has(.message-progress)>.session-progress-empty,#slow-lane:has(>#messages[hidden])>#session-notes,#conversation[data-session-switch="held"] #session-notes {display:none}
#background-work-trigger,#attach-photo,#session-account-tooltip tr[data-switchable="true"] {cursor:pointer}

#activity-columns{position:fixed;inset:36px 8px auto auto;margin:0;width:min(360px,calc(100vw - 16px));max-height:calc(100dvh - 48px);overflow:auto;padding:14px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);box-shadow:0 8px 28px #0003;font-size:12px}

@media(max-width:620px){#current-app-tooltip{padding:14px}}
/* Its own row under the message, never over the typed text. */
#voice-feed-incident{display:flex;min-width:0;padding:0 6px 4px;gap:6px;align-items:center;justify-content:flex-end}
#voice-feed-incident:not(:has(>:not([hidden]))){display:none}
.composer-speech-wrap{position:relative;min-width:0;overflow:hidden}
.composer-speech-field{position:relative;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}
.composer-speech-field>textarea{flex:1;min-height:0}
.composer-speech-field>.composer-speech-mirror{flex:none;max-height:28px;overflow:auto;white-space:nowrap;color:var(--ink);pointer-events:auto}
.composer-speech-mirror{position:relative;user-select:none}

.voice-clip-strip{display:inline;white-space:normal;color:var(--ink);--clip-saved:#5f6b70;--clip-sending:#2f6fd6;--clip-retrying:#a86d00;--clip-words:#22804a;--clip-word-ink:#fff}.voice-clip-strip[hidden]{display:none}
.voice-clip-strip>.voice-clip{margin-inline-start:4px;vertical-align:middle;pointer-events:auto}
:where(html[data-theme="dark"]) .voice-clip-strip{--clip-saved:#d3dcdf;--clip-sending:#7aa7f0;--clip-retrying:#f0c26b;--clip-words:#7fd6a5;--clip-word-ink:#102318}
.voice-clip{position:relative;flex:0 0 auto;height:18px;display:inline-flex;align-items:center;justify-content:center;font:600 11px/1 system-ui;font-variant-numeric:tabular-nums;color:var(--clip-word-ink);border-radius:2px;background:var(--clip-saved);outline:none;transition:opacity .9s ease}.voice-clip.is-fading{opacity:0}.voice-clip[data-stage="failed"]{cursor:pointer}.voice-clip[data-stage="sending"]{background:var(--clip-sending)}.voice-clip[data-stage="retrying"]{background:var(--clip-retrying);animation:voice-clip-pulse .5s ease-in-out infinite alternate}.voice-clip[data-stage="words"]{background:var(--clip-words)}.voice-clip[data-stage="failed"]{background:var(--danger)}
.voice-clip:is(:hover,:focus-visible)::after{content:attr(data-tip);position:absolute;bottom:24px;right:0;z-index:5;width:max-content;max-width:280px;padding:4px 7px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);font-size:12px;line-height:1.3;white-space:normal;pointer-events:none}
.voice-clip-strip[data-preview-only="true"]{border-color:transparent;background:transparent;padding:0;color:var(--muted)}
.voice-clip[data-preview="true"]{height:14px;border-radius:0;border-bottom:2px solid var(--line);background:transparent;color:var(--muted);font-size:10px;font-weight:400;animation:none;transition:none}
@keyframes voice-clip-pulse{from{opacity:1}to{opacity:.55}}@media(prefers-reduced-motion:reduce){.voice-clip{animation:none!important}}
#voice-feed-status:not([hidden]){display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;flex:0 1 auto;min-width:0;padding:3px 8px;border:1px solid var(--line);border-radius:6px;white-space:normal;overflow-wrap:anywhere;text-align:left;color:var(--danger);background:var(--surface);font-size:12px;line-height:1.3;-webkit-user-select:text;user-select:text;cursor:copy}#voice-feed-status[data-copied]::before{content:'Copied · ';color:var(--ink)}
@media(max-width:620px){#voice-feed-status:not([hidden]){-webkit-line-clamp:1}}

/* Capstones own the conversation; recorded commentary has a secondary lane. */
.message-progress{min-width:0;margin:0 0 12px;padding:0;border:1px solid var(--line);border-radius:0;background:var(--surface);color:var(--ink);white-space:normal;align-self:start}
.message-progress>summary{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;font-size:12px;line-height:1.5;list-style:none;color:var(--muted);background:var(--surface);border-radius:inherit}
.message-progress>summary::-webkit-details-marker{display:none}
.message-progress>summary::before{content:'▸';color:var(--accent)}
.message-progress[open]>summary::before{content:'▾'}
.message-progress-label{font-weight:650;color:var(--ink)}
.message-progress-count{margin-left:auto;font-variant-numeric:tabular-nums}
.message-progress-body{padding:0 10px 10px;max-height:min(420px,50vh);overflow:auto;overscroll-behavior:none;scrollbar-gutter:stable;color:var(--ink);background:var(--surface)}
.message-progress .message{width:100%;margin:0 0 10px;padding:10px;box-sizing:border-box;box-shadow:none;background:var(--surface);color:var(--ink);font-size:13px;line-height:1.6}
.message-progress .message-meta{align-items:flex-start;justify-content:flex-start;gap:5px 10px}
.message-progress .message-controls{justify-content:flex-start;gap:12px;margin-left:0}
.message-progress .runtime-instructions-button{padding:1px 0;border:0;border-radius:0;background:transparent;color:var(--accent);font-size:11px;font-weight:500;line-height:1.5}
.message-progress .runtime-instructions-button:is(:hover,:focus-visible){background:transparent;text-decoration:underline}
.message-progress .message-controls .message-permalink{color:var(--accent)!important;opacity:.75}
/* Inline previews keep one reading column; the live session owns a fixed split pane. */
/* Composer flight layer (6) clears notes (5), below navigation/dialog layers. */
body{--progress-expanded-width:clamp(360px,34.8vw,504px);--progress-handle-width:32px;--workspace-progress-width:var(--progress-handle-width)}
body.progress-open{--workspace-progress-width:var(--progress-expanded-width)}
#session-notes{box-sizing:border-box;position:fixed;z-index:5;top:52px;bottom:var(--composer-clearance,320px);right:var(--console-inline-gutter);width:var(--workspace-progress-width);min-height:0;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:0;overflow:hidden;-webkit-user-select:text;user-select:text}
#session-notes :is(a,button):focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.session-notes-split{box-sizing:border-box;position:absolute;top:0;bottom:0;right:0;width:var(--progress-expanded-width);padding-right:var(--progress-handle-width);min-height:0;display:flex;flex-direction:column;visibility:hidden}
body.progress-open .session-notes-split{visibility:visible}
#session-progress-toggle{position:absolute;right:0;top:0;bottom:0;display:flex;align-items:center;justify-content:flex-start;gap:10px;writing-mode:vertical-rl;width:var(--progress-handle-width);padding:12px 4px;border:0;border-left:1px solid var(--line);border-radius:0;background:var(--surface);color:var(--muted);box-shadow:none;font-size:12px}
#session-progress-toggle [data-progress-chevron]{writing-mode:horizontal-tb;font-size:20px;line-height:1}
#session-progress-toggle[aria-expanded="true"]{background:var(--tab-selected,var(--surface));color:var(--ink);box-shadow:inset -3px 0 var(--accent)}
#session-progress-toggle:hover{color:var(--ink);background:var(--tab-surface)}
/* No rubber-band: bottom-follow would snap a bounce mid-flight and flicker. */
#session-progress{min-height:0;overflow:auto;overscroll-behavior:none;scrollbar-gutter:stable;background:var(--surface);color:var(--ink);overflow-anchor:none}
.session-progress-region{flex:1 0 64px;min-height:0;display:flex;flex-direction:column;background:var(--surface);color:var(--ink)}
#session-progress{flex:1;padding:0 8px 8px}
/* Decision: AGENTS.md Decisions > Progress */
#session-progress .message{font-size:15px;line-height:1.5}
#session-progress :is(.message-body,.message-decoration,.artifact-text-panel>article){font-size:inherit;line-height:inherit}
#session-progress .message-progress{margin:0;border:0;border-top:1px solid var(--progress-connector);background:var(--surface);color:var(--ink)}
#session-progress .progress-conversation-link{padding:5px 2px 8px;color:var(--muted);background:var(--surface);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#session-progress .progress-conversation-link:hover {color:var(--ink)}
#progress-connectors{position:fixed;inset:0;width:100vw;height:100vh;z-index:6;pointer-events:none;overflow:visible;fill:var(--progress-connector);stroke:var(--progress-connector);stroke-width:1}
#progress-connectors path{fill:none}
#session-progress .message-progress-body{padding:0 2px 12px;max-height:none;overflow:visible;scrollbar-gutter:auto}
.session-progress-empty{padding:12px;margin:0;font-size:13px;color:var(--muted);background:var(--surface)}
.progress-conversation-link{display:block;padding:0 12px 10px;font-size:12px;line-height:1.5;color:var(--accent);background:var(--surface);overflow-wrap:anywhere}
@media(min-width:1100px){
 #slow-lane:has(>#session-notes)>:is(#messages,#messages-more,#session-initial-task){width:calc(100% - var(--workspace-progress-width) - 24px);margin-inline:0;box-sizing:border-box}
 #slow-lane:has(>#session-notes) #messages>.message.assistant{width:100%;max-width:900px;margin-inline:0;box-sizing:border-box}
}
@media(max-width:1099px){
 #session-notes,#messages>.message-progress .progress-conversation-link{display:none}
 #messages>.message-progress .message-progress-body{max-height:none;overflow:visible;overscroll-behavior:auto;scrollbar-gutter:auto}
}

/* File attachments reuse the composer controls on desktop and mobile. */
.message-attachment .generated-image-status{display:block;font-size:12px;line-height:1.4;color:var(--muted);background:var(--surface)}
.message-progress>summary:focus-visible,.message-attachment .generated-image-link:focus-visible,#session-search :is(input,button):focus-visible,#session-search-open:focus-visible,#session-replies :focus-visible,.background-active-job :is(a,button):focus-visible,.background-work-actions :is(a,button):focus-visible{outline:2px solid var(--accent);outline-offset:2px}

/* Find stays compact above the conversation, with touch equivalents to Return. */
#session-search-open,#session-replies-open{display:grid;place-items:center;flex:none;width:32px;height:32px;margin:0 0 5px 4px;padding:6px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--accent)}
#session-tabs .session-toolbar-icon,#super-navigation .session-toolbar-icon{display:block;flex:none;width:20px;height:20px}
@media(max-width:620px){
  excessivecode-footer > #session-replies-open{display:flex;grid-column:1 / -1;align-items:center;justify-content:flex-start;gap:12px;width:100%;height:auto;min-height:44px;margin:0;padding:10px 12px;border:0;border-radius:10px;background:var(--menu-bg,var(--surface));color:var(--menu-ink,var(--ink));text-align:left}
  excessivecode-footer .session-menu-label{display:block;font-size:15px;font-weight:500;line-height:1.3}
  excessivecode-footer .session-toolbar-icon{display:block;width:18px;height:18px;margin-inline:2px;color:var(--menu-muted,currentColor)}
  excessivecode-footer #session-replies-open > span{position:static;order:1;margin-left:auto}
}
#new-session[aria-busy="true"]::after{content:"…"}
#session-search{position:fixed;inset:52px 12px auto auto;z-index:70;margin:0;width:min(620px,calc(100vw - 24px));max-height:calc(100dvh - 70px);box-sizing:border-box;overflow:auto;overscroll-behavior:contain;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);box-shadow:0 8px 32px #0003}
#session-search .session-search-input,#session-search .session-search-navigation{display:flex;align-items:center;gap:6px}
#session-search input{width:100%;min-width:0;min-height:42px;padding:8px 10px;border:1px solid var(--line);border-radius:7px;background:var(--page);color:var(--ink);font:16px/1.3 system-ui}
#session-search input::placeholder,#session-library input::placeholder{color:var(--muted);opacity:1}
#session-search button{flex:none;min-width:40px;min-height:40px;padding:4px;border:1px solid var(--line);border-radius:7px;background:var(--page);color:var(--ink);font-size:20px}
#session-search button:disabled{background:var(--surface);color:var(--muted);opacity:1;cursor:default}
#session-search [role="status"]{flex:1;margin-block:8px;font-size:12px;color:var(--muted);background:var(--surface)}
#session-search [data-preview]{border-top:1px solid var(--line);padding-top:8px;font-size:13px;line-height:1.45;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text}
::highlight(session-search){background:#ffe27a;color:#302300}
.session-search-target{outline:2px solid var(--accent);outline-offset:3px;scroll-margin-top:230px}
html[data-theme="dark"] ::highlight(session-search){background:#ba8a25;color:#090704}
@media(max-width:700px){#session-search{inset:49px 8px auto;width:calc(100vw - 16px)}}

/* Personal session replies: shared transcript, private unread state. */
#session-replies-open{position:relative;cursor:pointer}
body[data-execution="true"] #timeline-activity-panel{padding:0}
#session-replies-open span{position:absolute;top:1px;right:1px;border-radius:12px;min-width:17px;padding:1px 4px;font:700 11px system-ui;background:var(--accent);color:var(--surface)}
#session-replies{width:min(460px,calc(100vw - 24px));max-height:75dvh;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--ink)}
#session-replies::backdrop{background:rgba(0,0,0,.4)}
#session-replies header{display:flex;align-items:center;justify-content:space-between;gap:12px}
#session-replies button{min-width:32px;min-height:32px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--ink);cursor:pointer}
#session-replies [role=status]{font-size:13px;color:var(--muted);background:var(--surface)}
#session-replies [data-replies-list]{display:grid;gap:8px}
#session-replies [data-replies-list]>:is(a,div){display:grid;gap:5px;padding:12px;border:1px solid var(--line);border-radius:10px;text-decoration:none;background:var(--surface);color:var(--ink);overflow-wrap:anywhere}
#session-replies [data-unread=true]{border-left:4px solid var(--accent)!important;background:var(--tab-selected)!important;color:var(--ink)}
#session-replies small{color:var(--muted)}
.session-menu-label,#new-session[aria-busy="true"] .session-toolbar-icon,#background-work-active:empty{display:none}
.background-active-list{border-top:1px solid var(--line);background:var(--surface);color:var(--ink)}
.background-active-summary{display:flex;align-items:center;gap:8px;min-height:32px;padding:0 10px;font-size:12px;cursor:pointer;list-style:none}
.background-active-summary::-webkit-details-marker{display:none}
.background-active-summary::before{content:'›';flex:none;font-size:16px;line-height:1}
.background-active-list[open]>.background-active-summary::before{transform:rotate(90deg)}
.background-active-count{flex:none;font-weight:600}
.background-active-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);background:var(--surface)}
.background-job-elapsed{flex:none;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--muted);background:var(--surface)}
.background-active-error{flex:none;color:var(--ink);background:var(--surface);font-weight:600}
.background-active-summary:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.background-active-details{padding:0 10px 6px;max-height:26vh;overflow:auto}
.background-active-job{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;padding:5px 0;font-size:12px}
.background-active-description{flex:1 1 220px;min-width:0;overflow-wrap:anywhere}
.background-active-description strong{font-weight:600}.background-active-description small{display:block;color:var(--muted);background:var(--surface)}
.background-active-job a,.background-work-actions a{color:var(--ink);background:var(--surface);text-decoration:underline;text-underline-offset:3px}
.background-active-job button,.background-work-actions button{font:inherit;padding:5px 10px;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink);cursor:pointer}
.background-active-job button:disabled,.background-work-actions button:disabled{background:var(--page);color:var(--muted);cursor:wait}
.background-work-actions{display:flex;align-items:center;gap:12px;margin:8px 0}
.background-stop-error{flex-basis:100%;background:var(--surface);color:var(--ink)}
@media(max-width:620px){.background-active-description{flex-basis:100%}.background-active-job :is(a,button){min-height:32px;display:inline-flex;align-items:center}}

#session-library :is(button,input,select,textarea,a):focus-visible{outline:2px solid var(--accent);outline-offset:2px}
#voice-feed-dismiss{flex:none;min-height:24px;padding:3px 8px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:6px;font-size:12px;cursor:pointer}#voice-feed-dismiss:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
#voice-feed-status[data-tone="info"]{color:var(--ink);background:var(--surface)}#voice-feed-status[data-tone="muted"]{color:var(--muted);background:var(--surface)}
/* Search owns the catalog and transcript matches; a whole row opens its session. */
#session-library{padding:4px 14px 14px;color:var(--ink);background:var(--surface)}
#session-library button{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:7px 10px;cursor:pointer}
#session-library button:hover{background:var(--tab-selected);color:var(--ink)}
#session-library button:disabled{background:var(--page);color:var(--muted);cursor:default}
#session-library [data-history-list]{list-style:none;padding:0;margin:8px 0}
#session-library [data-history-list]>li{border-top:1px solid var(--line)}
#session-library [data-history-open]{display:grid;gap:6px;width:100%;text-align:left;border:0;border-radius:0;padding:12px 4px}
#session-library [data-history-open] p{margin:0;color:var(--ink)}
#session-library .history-session-name{font-weight:600;font-size:14px;color:inherit;overflow-wrap:anywhere}
#session-library small{font-size:12px;line-height:1.5;color:var(--muted)}
#session-library [data-history-status]{font-size:13px;color:var(--ink)}

/* One selectable headline; operational detail stays in the session API. */
#session-search #session-library button{font-size:13px;min-width:0;padding:6px 9px}
#session-search [data-preview] p{margin:6px 0;white-space:pre-wrap}

#session-search .session-search-controls{position:sticky;top:-10px;z-index:1;margin:-10px -10px 0;padding:10px;background:var(--surface);color:var(--ink);border-bottom:1px solid var(--line)}
#session-search:not(:has(.session-search-navigation:not([hidden]))) .session-search-controls{border-bottom:0}
@media(max-width:520px){#session-library{padding:4px 10px 10px}}
.message-stream-error{display:block;margin-top:7px;background:var(--surface);color:var(--danger);font-size:12px}
.message[data-stream-state="streaming"] .message-body>article::after{content:"";display:inline-block;width:2px;height:1em;margin-left:3px;vertical-align:-.1em;background:var(--ink);animation:message-writing 1s steps(2,end) infinite}
.message-progress:has([data-stream-state="streaming"])>summary::after{content:" · Writing…";color:var(--muted);background:var(--surface);font-weight:400}
@keyframes message-writing{50%{opacity:0}}
@media(prefers-reduced-motion:reduce){.message[data-stream-state="streaming"] .message-body>article::after,#session-loading .spinner {animation:none}}
/* Jobs started by this session's background agents sit under their agent. */
#background-work tr:is([data-depth="1"],[data-depth="2"]) td:first-child{border-left:2px solid var(--line)}#background-work tr[data-depth="1"] td:first-child{padding-left:20px}#background-work tr[data-depth="2"] td:first-child{padding-left:38px}.background-active-job[data-depth="1"]{margin-left:16px}.background-active-job[data-depth="2"]{margin-left:32px}
/* Desktop docks the session sidebar (Lanes tree) on the left; the console shifts right of it. */
body{--session-sidebar:0px;padding-left:var(--session-sidebar)}
@media(min-width:621px){
 html:not([data-focused-surface]) body:not([data-execution="true"]).conversation-visible{--session-sidebar:260px}
 #conversation{--session-tabs-height:12px}
 #session-notes{top:12px}
 #composer-dock{left:calc(var(--session-sidebar) + var(--console-inline-gutter));width:calc(100% - var(--session-sidebar) - 2 * var(--console-inline-gutter))}
}

/* Task outcomes share the existing session work view and poll owner. */
.session-task-list{color:var(--ink);background:var(--surface);-webkit-user-select:text;user-select:text}
.session-task-list>details{margin:10px 0;border-top:1px solid var(--line);padding-top:8px}
.session-task-list summary{display:flex;justify-content:space-between;gap:12px}
.session-task-list ul{list-style:none;padding:0;margin:8px 0}
.session-task-list li{display:flex;align-items:flex-start;gap:8px;padding:7px 0;color:var(--ink);background:var(--surface)}
.session-task-content{flex:1;min-width:0}
.session-task-close{flex:none;min-width:32px;min-height:32px;border:1px solid var(--line);border-radius:6px;color:var(--ink);background:var(--surface);font-size:20px;cursor:pointer}
.session-task-close:is(:hover,:focus-visible){color:var(--ink);background:var(--page)}
.session-task-close:disabled{color:var(--muted);background:var(--surface);cursor:wait}
.session-task-mark{flex:none;font-size:16px;line-height:1.2;color:var(--muted);background:var(--surface)}
.session-task-list [data-task-state=completed]>.session-task-mark{color:#195d31;background:#d9f4df}
.session-task-list [data-task-state=active]>.session-task-mark{color:var(--accent);background:var(--surface)}
.session-task-list .session-task-status{color:var(--ink);background:var(--surface)}
.session-task-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:3px}
.session-task-links a{color:var(--ink);background:var(--surface);text-underline-offset:3px}
.session-job-history{border-top:1px solid var(--line);padding-top:10px;margin-top:12px}
.session-job-history>.background-work-heading{margin-top:12px}
:where(html[data-theme=dark]) .session-task-list [data-task-state=completed]>.session-task-mark{color:#b5efc5;background:#203f2c}

/* Session outcomes stay directly reachable without opening session options. */
@media(max-width:620px){
  #composer .composer-actions button{display:flex;flex-direction:column;gap:2px;align-items:center;justify-content:center;flex:0 0 44px;width:44px;min-width:44px;height:44px;min-height:44px;box-sizing:border-box;margin-top:0;padding:0;border-radius:6px}
  #composer .composer-actions .composer-action-label,#composer .composer-actions #current-app-name{display:none}
  #composer .composer-actions .composer-action-short{display:block;font-size:10px;line-height:10px;font-weight:600;letter-spacing:.02em;color:inherit;background:transparent}
  #composer .composer-actions .voice-feed-control{flex:0 0 auto;min-width:44px}
  #composer .composer-actions #current-app{display:flex;flex:0 0 44px;width:44px;min-width:44px;max-width:44px;height:44px;box-sizing:border-box;flex-direction:column;justify-content:center;gap:2px;padding:0;border:1px solid var(--line);border-radius:6px;background:var(--surface);color:var(--ink)}
  #composer .composer-actions #current-app .current-app-identity{display:block;flex:none;height:20px}
  #composer .composer-actions #current-app-icon{width:20px;height:20px}
  #composer .composer-actions #current-app[aria-disabled="true"]{color:var(--muted);cursor:default}
}

#sign-in-dialog:not([open]){display:none}
#session-loading{display:flex;align-items:center;justify-content:center;gap:12px;min-height:min(36vh,260px);margin:0;padding:24px;color:var(--ink);background:var(--page);border-radius:12px;text-align:center;font-size:15px}
#session-loading .spinner{flex:none;width:22px;height:22px;border-width:3px;will-change:transform}
#session-loading[data-state="failed"] .spinner{visibility:hidden;animation-play-state:paused}
#session-loading[data-state="failed"]{color:var(--danger);background:var(--page)}
#composer-delivery-status{margin:0;padding:7px 12px;background:var(--surface);color:var(--ink);border-bottom:1px solid var(--line);font-size:13px;line-height:1.4;white-space:normal;overflow-wrap:anywhere;-webkit-user-select:text;user-select:text}

#composer-model .composer-model-effort:not(:empty)::before{content:" · "}
@media(max-width:620px){
  #composer .composer-actions #composer-model{display:flex;flex-direction:column;justify-content:center;align-items:center;flex:0 1 auto;min-width:0;max-width:110px;gap:1px;font-size:11px;line-height:1.2;color:var(--ink);background:var(--surface);-webkit-user-select:text;user-select:text}
  #composer .composer-actions #composer-model>span{max-width:100%;overflow:hidden;text-overflow:ellipsis}
  #composer-model .composer-model-effort{font-size:10px;color:inherit}
  #composer-model .composer-model-effort:not(:empty)::before{content:none}
}

html #sign-in-dialog.gate[open]{width:fit-content;min-height:0;max-height:calc(100dvh - 32px - env(safe-area-inset-top) - env(safe-area-inset-bottom));margin:auto;padding:0;border:0;outline:0;overflow:auto;place-content:start;background:transparent;box-shadow:none}
#sign-in-dialog>[data-close]{position:sticky;top:0;z-index:1;justify-self:end;min-height:40px;margin:0 0 6px;padding:8px 12px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:8px}

.artifact-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;justify-content:space-between;margin:8px 0;color:var(--ink);background:var(--surface)}

.artifact-tabs{display:flex;align-items:center;gap:4px;flex-wrap:wrap;color:var(--ink);background:var(--surface);font:12px/1.4 var(--agent-message-font)}
.artifact-tabs button,.artifact-panel>button{min-height:30px;padding:4px 9px;border:1px solid var(--line);border-radius:5px;color:var(--ink);background:var(--surface);font:inherit;cursor:pointer}
.artifact-tabs button[aria-selected=true]{color:var(--ink);background:rgb(from var(--tab-selected) r g b / 1);border-color:var(--accent);font-weight:700}
.artifact-tab{display:flex}

.artifact-panel{margin:0;color:var(--ink);background:var(--surface)}.artifact-panel .generated-image-link{width:100%;height:auto;max-width:none;padding:0;color:var(--ink);background:var(--surface)}.artifact-panel img{display:block;width:100%;height:auto;max-width:none;max-height:none;object-fit:contain}
.message>.message-body[hidden],.artifact-panel[hidden]{display:none}
.message-chart{color:var(--ink);background:var(--surface);white-space:normal}
.message-inline-chart{margin:14px 0 0}
.message-chart figcaption{margin:0 0 6px;font-weight:650}
.message-chart-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:12px}
.message-chart-legend>span{display:inline-flex;align-items:center;gap:5px}
.message-chart-legend i{width:12px;height:3px;display:inline-block}
.message-chart-scroll{overflow-x:auto;max-width:100%}
.message-chart svg{display:block;width:100%;height:auto;max-width:none;color:var(--ink);background:var(--surface);font:12px var(--agent-message-font);-webkit-user-select:text;user-select:text}
.message-chart svg text{fill:var(--ink)}
.message-chart-grid{stroke:var(--line);stroke-opacity:.4}
.message-chart-zero{stroke:var(--muted)}
.message-chart-reference{stroke:var(--danger);stroke-width:1.5;stroke-dasharray:5 4}
.message-chart-point{cursor:help;outline:none}
.message-chart-point:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.message-chart-status{display:block;color:var(--danger);background:var(--surface);font-size:12px}

:root .message.assistant .message-body .artifact-text-panel :is(article,p,li,blockquote){font-size:inherit;font-weight:inherit;line-height:inherit}
:root .message.assistant .message-body .artifact-text-panel:not(.artifact-summary-panel)>article{font-size:clamp(28px,3vw,36px);font-weight:700;line-height:1.35}
.artifact-text-panel[hidden],.artifact-bar[hidden]{display:none!important}
.artifact-text-panel+.artifact-summary-panel{margin-top:12px}
[data-info-tooltip-portal]{--info-tooltip-bg:var(--surface);--info-tooltip-text:var(--ink);--info-tooltip-border:var(--line)}
[data-info-tooltip-portal] a{color:var(--accent);background:var(--surface)}

.message-link-access{display:table;margin-bottom:5px;padding:2px 7px;border:1px solid var(--line);border-radius:5px;background:var(--tab-surface);color:var(--ink);font-weight:700;font-size:11px}.message-link-access[data-access="agent"]{background:var(--accent);color:var(--button-ink,#fff);border-color:var(--accent)}.message-link-url{display:block}

/* Journal project pills follow the containing conversation's semantic palette. */
.conversation-projects{display:flex;flex-wrap:wrap;gap:5px;white-space:normal;margin-top:8px;font:12px/1.4 system-ui,sans-serif}
#linked-projects{margin:0 0 9px}

.conversation-interval{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;margin:0 0 6px;padding:3px 8px;border:0;border-radius:var(--skin-radius,7px);color:var(--muted);background:var(--surface);font:12px/1.4 system-ui,sans-serif}
.conversation-interval .conversation-projects{margin:0}

#composer-session-tooltip{-webkit-user-select:text;user-select:text}
.opening-summary{margin:0}.opening-prompt-toggle{display:block;margin-top:6px;padding:1px 9px;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--accent);font-size:11px;font-weight:700;cursor:pointer}.opening-prompt-toggle:is(:hover,:focus-visible){background:color-mix(in srgb,var(--accent) 12%,transparent)}.opening-prompt-full{max-height:60vh;overflow:auto;margin-top:8px;padding-top:8px;border-top:1px solid var(--line);color:var(--muted);font-size:12px}
#agent-read{width:min(720px,calc(100% - 24px));max-height:calc(100% - 48px);overflow:auto;padding:0 14px 14px;color:var(--ink)}#agent-read::backdrop{background:rgba(16,47,59,.42)}#agent-read>header{position:sticky;top:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;background:var(--surface);white-space:normal}#agent-read>header>span{min-width:0;color:var(--muted);font-size:12px;overflow-wrap:anywhere}
html body.conversation-visible .message.user.bot-prompt-message.bot-prompt-message[data-provenance="machine"]{white-space:normal;box-shadow:none;background:color-mix(in srgb,var(--skin-accent,var(--accent)) 14%,var(--skin-raised,var(--surface)));color:var(--skin-ink,var(--ink))}.bot-prompt-label{margin:0 0 4px;font-size:12px;font-weight:600;letter-spacing:.02em;color:var(--skin-ink,var(--ink));opacity:.75}.bot-prompt p{margin:0}.bot-prompt ol{margin:0;padding-left:20px}.bot-prompt li+li{margin-top:2px}

/* Multi reply draft and message actions. */



.message-route-source{font-size:11px;color:inherit;white-space:nowrap}
/* The Mac's small Super window uses the same draft, mic and Send owners. */
body[data-super-voice="true"] #session-tab-bar,
body[data-super-voice="true"] #session-tabs,
body[data-super-voice="true"] #slow-lane > :not(#composer-dock),
body[data-super-voice="true"] #composer-perch,
body[data-super-voice="true"] #background-work-active {display:none!important}
body[data-super-voice="true"] :is(#workshop,#conversation,#slow-lane){display:block;min-height:0;height:auto;width:100%;max-width:none;margin:0;padding:0}
body[data-super-voice="true"] #composer-dock{position:fixed;inset:34px 8px 8px;width:auto;visibility:visible;--footer-clearance:0px}
body[data-super-voice="true"] #composer-dock::after{display:none}
body[data-super-voice="true"] #composer-frame{display:flex;flex-direction:column;height:100%;background:var(--surface);color:var(--ink)}
body[data-super-voice="true"] #composer{display:flex;flex:1;flex-direction:column;min-height:0}
body[data-super-voice="true"] #composer .composer-speech-wrap{display:flex;flex-direction:column;flex:1;min-height:60px}
body[data-super-voice="true"] #composer .composer-speech-field{flex:1;min-height:60px}
body[data-super-voice="true"] #composer #input{height:100%!important;min-height:60px;max-height:none;resize:none;padding:10px;font-size:16px}
body[data-super-voice="true"] #composer .composer-actions{flex:none}
body[data-super-voice="true"] #composer :is(#current-app,#composer-model){display:none!important}
body[data-super-voice="true"] #composer-delivery-status{flex:none}
body[data-super-voice="true"] #composer .voice-feed-control{flex:1}


/* @lat: [[super-prompt-preview#Latest message]] */
/* iPhone Super keeps one compact line above the composer; the list takes the rest. */
body[data-super-view="overview"]{overflow:hidden}
body[data-super-view="overview"] :is(#messages-more,#session-diagram-pane,#session-notes,#progress-connectors,#session-initial-task){display:none!important}
body[data-super-view="overview"] #slow-lane:has(>#messages:not([hidden])):has(>#composer-dock:not([hidden])){position:fixed;top:var(--super-phone-top,44px);bottom:var(--composer-clearance,390px);left:var(--console-inline-gutter);right:var(--console-inline-gutter);width:auto;min-height:0;padding:0;gap:8px}
body[data-super-view="overview"] :is(#super-session-routes,#messages){flex:1 1 0;min-height:0;overflow:auto;overscroll-behavior:contain;max-width:none;background:var(--page);color:var(--ink)}
body[data-super-view="overview"] #super-session-routes{flex:1 1 0;display:flex;flex-direction:column;flex-wrap:nowrap;gap:8px;width:100%;margin:0}
body[data-super-view="overview"] #super-session-routes>*{flex-shrink:0}
body[data-super-view="overview"] #messages{flex:0 0 auto;overflow:visible;border-top:1px solid var(--line);padding-top:4px}
body[data-super-view="overview"] #messages:empty{display:none}
.super-latest-message{display:flex;align-items:center;gap:6px;min-width:0;background:var(--page);color:var(--ink)}
.super-latest-message>.super-monitor-message{flex:1;min-width:0;margin:0}
.super-latest-message .compact-message-art,.super-latest-message .compact-message-art .text-art-picture{width:18px;height:18px}
.super-latest-status{flex:0 1 auto;max-width:45%;color:var(--muted);font-size:11px;overflow-wrap:anywhere}
.super-latest-message.is-failed .super-latest-status{color:var(--ink)}
.super-latest-retry{flex:none;padding:4px 8px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--ink);font:600 12px system-ui;cursor:pointer}
.super-overview-row{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:8px;min-width:0}
/* Decision: AGENTS.md Decisions > Super swipe close. The Close mark trails the row as it slides left. */
.super-overview-row[data-swipe-close]{position:relative;touch-action:pan-y}
.super-overview-row[data-swipe-close]::after{content:'Close';position:absolute;top:-1px;bottom:-1px;left:calc(100% + 8px);width:100vw;display:flex;align-items:center;padding-left:16px;border-radius:8px;background:#6b6f76;color:#fff;font-weight:600;font-size:14px}
.super-overview-row[data-swipe-close=armed]::after,.super-overview-row[data-swipe-close=closing]::after{background:#c62828;color:#fff}
#super-session-routes:has(.super-overview-row[data-swipe-close]){overflow-x:hidden}
.super-overview-row>header{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:8px;font-size:12px}
.super-overview-row>header a{border:0!important;padding:0!important;min-width:0;flex:1;background:var(--surface);color:var(--ink)}
.super-overview-state{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--muted);background:var(--surface)}
.super-overview-messages{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:6px;padding:6px;align-items:start}
.super-overview-messages .message{margin:0!important;padding:7px!important;min-width:0;max-width:100%;font-size:12px}
.super-overview-messages .message.user{grid-column:1;grid-row:1;max-height:180px;overflow:auto}
.super-overview-messages .message.assistant{grid-column:2;grid-row:1}
.super-overview-messages .message-body{overflow-wrap:anywhere;min-width:0}

:root .super-overview-messages .message.assistant .message-body .artifact-text-panel:not(.artifact-summary-panel)>article{font-size:16px;line-height:1.35}
.super-overview-messages .artifact-tabs{gap:3px;flex-wrap:wrap}
.super-overview-messages .artifact-tabs button{font-size:10px;padding:5px}

.super-overview-time{font-size:10px;color:var(--muted);background:var(--surface)}
.super-overview-state{margin-left:auto}
.super-overview-messages .message-meta{display:flex;font-size:9px;line-height:1.3;margin-bottom:4px}


#composer-speech-context { display:block; position:static; white-space:normal; padding:0 8px 4px; }
.message > .viewed-session-context:not([hidden]) { display:block; margin-top:6px; }
#composer-speech-context[hidden], .viewed-session-context[hidden] { display:none; }
@media(max-width:620px){
  #composer-speech-context{display:flex;align-items:flex-start;white-space:nowrap;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain}
  #composer-speech-context a{flex:none}
}
.viewed-session-context a, #super-session-routes .viewed-session-context a { display:inline-block; vertical-align:baseline; margin-inline-start:4px; pointer-events:auto; user-select:text; -webkit-user-select:text; font:11px/1.2 var(--font-mono,monospace); color:var(--muted); background:var(--surface); border:1px solid var(--line); border-radius:4px; padding:2px 5px; text-decoration:none; }

/* Decision: AGENTS.md Decisions > Super session panels */
.super-server-status{display:flex;align-items:center;flex-wrap:wrap;gap:6px;flex:none;color:var(--ink);background:var(--surface);padding:4px 0}
.super-server-status button{font:inherit;font-size:12px;color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:5px;padding:5px 8px;max-width:100%}
.super-server-status [role=status]{font-size:12px;overflow-wrap:anywhere}
/* @lat: [[session-visuals#Server groups]] */
.super-server-heading{flex:none;cursor:pointer;user-select:text;margin:12px 0 0;padding:6px 8px;font-size:14px;font-weight:650;line-height:1.4;color:var(--ink);background:var(--surface);border-bottom:2px solid var(--line);overflow-wrap:anywhere}
.super-session-monitor{display:flex;flex-direction:column;gap:8px;width:100%;align-items:stretch;container-type:inline-size}
/* @lat: [[session-visuals#Correspondence]] */
/* Decision: AGENTS.md Decisions > Super session panels */
.super-monitor-session{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:8px;padding:8px;min-width:0;width:100%;max-width:100%;box-sizing:border-box;flex:none;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:4px 12px;align-items:start}
.super-monitor-session>header{grid-column:1;grid-row:1}
.super-monitor-session>.super-monitor-meta{grid-column:1;grid-row:2}
.super-monitor-session>.super-monitor-messages{grid-column:2;grid-row:1}
.super-monitor-session>.super-monitor-body{grid-column:2;grid-row:2;max-height:160px}
@container (max-width:580px){.super-monitor-session{grid-template-columns:minmax(0,1fr)}.super-monitor-session>.super-monitor-messages{grid-column:1;grid-row:3}.super-monitor-session>.super-monitor-body{grid-column:1;grid-row:4}}
.super-monitor-session header{display:flex;justify-content:space-between;gap:6px;align-items:baseline}
.super-monitor-session>header,.super-monitor-session>.super-monitor-meta{flex-shrink:0}
.super-monitor-session header a{color:var(--ink)}
.super-monitor-heading{flex:1;min-width:0;cursor:pointer}
.super-monitor-session header a,.super-monitor-session header img{-webkit-user-drag:none}
.super-monitor-session header a,.super-monitor-session header a span{-webkit-user-select:text;user-select:text;cursor:pointer}
.super-monitor-session{-webkit-user-select:text;user-select:text}
.super-monitor-topic{display:block;font-weight:650}
.super-monitor-title{display:block;font-size:12px;color:var(--muted);font-weight:400;margin-top:1px}
.super-monitor-title[hidden],.super-monitor-app[hidden]{display:none}
.super-monitor-app{display:inline-flex;align-items:center;gap:5px;padding:2px 6px;border:1px solid var(--accent);border-radius:5px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--ink);font-weight:650}
.super-monitor-session header>.session-tab-favicon{flex:none;align-self:center}
.super-monitor-meta{display:flex;align-items:center;gap:6px;min-width:0;margin-top:4px;font-size:11px;color:var(--muted);white-space:nowrap}
.super-monitor-meta .super-monitor-app{flex:0 1 auto;min-width:0;max-width:45%}
.super-monitor-meta .super-monitor-app>span{min-width:0;overflow:hidden;text-overflow:ellipsis}
.super-monitor-config{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis}
.super-monitor-id{flex:none;font-family:var(--font-mono,monospace)}
.super-monitor-elapsed{font-size:11px;font-variant-numeric:tabular-nums;white-space:nowrap}
/* Decision: AGENTS.md Decisions > Super toolbar */
#super-navigation{order:-1;flex:1 0 100%;display:flex;align-items:center;justify-content:flex-start;gap:6px;min-width:0;max-width:100%;overflow-x:auto}
#super-navigation[hidden]{display:none}
#super-navigation #session-sidebar-head{display:contents}
#session-diagram #super-navigation button{box-sizing:border-box;height:32px;min-height:32px;padding:0 8px;line-height:20px}
#super-navigation .server-identity{display:flex;align-items:center;gap:6px;flex:none;min-width:max-content;height:32px}
#session-diagram #super-navigation .server-identity>button{flex:none;max-width:none;font-size:12px;overflow:visible}
#session-diagram #super-navigation .server-account{margin:0;border:0;background:transparent}
#session-diagram #super-navigation :is(#session-search-open,#session-replies-open){padding:0}
#super-navigation #new-session{display:none}
.super-monitor-session header>span:not(.super-monitor-heading){display:flex;gap:6px;align-items:center;color:var(--muted);flex-shrink:0}
.super-monitor-body{min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain}
.super-monitor-children{font-size:12px;margin-top:4px}
.super-monitor-children-nested{margin-left:10px;border-left:1px solid var(--line);padding-left:6px}
.super-monitor-children-nested:empty{display:none}
.super-monitor-child-link{display:flex;align-items:center;gap:5px;min-width:0;padding:2px 0;color:var(--ink);text-decoration:none;-webkit-user-drag:none}
.super-monitor-child-link:hover{background:var(--page);color:var(--ink)}
.super-monitor-child-link:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}
.super-monitor-child-link .spinner{flex:none;width:10px;height:10px}
.super-monitor-child-link code{flex:none;font-size:10px;color:var(--muted)}
.super-monitor-child-title{flex:1;min-width:0}
/* One line per label: live text changes must not change a Super row's height. */
:is(.super-monitor-topic,.super-monitor-title,.super-monitor-child-title,.super-overview-row>header>a){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.super-monitor-session{background:color-mix(in srgb,var(--work-tint) 14%,var(--surface));border-color:color-mix(in srgb,var(--work-tint) 45%,var(--line))}
:where(.super-monitor-session){--work-tint:var(--muted)}
.super-session-monitor :is([data-state="running"],[data-state="active"]){--work-tint:#3989e8}
.super-session-monitor :is([data-state="queued"],[data-state="requested"]){--work-tint:#c79416}
.super-session-monitor [data-state="completed"]{--work-tint:#29975a}
.super-session-monitor :is([data-state="failed"],[data-state="errored"],[data-state="blocked"],[data-state="lost"]){--work-tint:var(--danger)}
.super-session-monitor :is([data-state="interrupted"],[data-state="stopped"],[data-state="cancelled"]){--work-tint:#9763bd}


body.ios-controls #new-session{display:none}
@media(max-width:620px){body.ios-controls #composer .composer-actions button{flex-shrink:1;min-width:36px}body.ios-controls #composer .composer-actions{gap:4px}}

.super-overview-facts{padding:0 8px 8px;display:flex;align-items:center;min-width:0;white-space:nowrap;gap:6px 10px;color:var(--muted);font-size:11px}.super-overview-row>header{align-items:flex-start}.super-overview-facts .super-monitor-app{min-width:0;overflow:hidden;text-overflow:ellipsis;display:block}.super-overview-facts code,.super-overview-facts time{flex:none}.super-overview-row .super-overview-state{flex:none}.super-overview-facts time{margin-left:auto}

.super-monitor-session,.super-overview-row{cursor:pointer}

/* Decision: AGENTS.md Decisions > Agent sessions. Full width must not become full height in the phone column. */
.super-agent-group{flex:0 0 auto;width:100%;margin:12px 0 0;padding:6px 0;border:0;text-align:left;font-size:13px;color:var(--muted);background:transparent;cursor:pointer}
/* Long-press view of a part's AGENTS.md Decisions entry. */
[data-decision]{-webkit-touch-callout:none}

.message-chart-axis-label{font-size:12px;line-height:1.4;text-align:center;overflow-wrap:anywhere;color:var(--ink);background:var(--surface)}

.message.side-agent-message{padding:6px 10px}
.side-agent-note{min-width:0;color:inherit;background:transparent}
.side-agent-note-summary{cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85em;color:var(--muted);background:transparent;max-width:100%}
.side-agent-note-summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.side-agent-note[open]>.side-agent-note-summary{margin-bottom:8px}

/* Both app hovers keep a white source line on black in every theme. */
#session-loc,.app-source-history{display:block;min-width:0}
#session-loc svg,.app-source-history svg{display:block;width:100%;height:34px;background:#000;color:#fff}
#session-loc svg path,.app-source-history svg path{fill:none;stroke:#fff;stroke-width:1.5;vector-effect:non-scaling-stroke}

.source-history-time{display:block;margin-top:5px;color:var(--ink);background:transparent;font-size:11px;line-height:1.4;font-variant-numeric:tabular-nums}.app-source-history:focus-visible,#session-loc:focus-visible{outline:2px solid var(--accent);outline-offset:2px}

.source-history-axis{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;font-variant-numeric:tabular-nums}.source-history-axis span{border-top:1px solid var(--line);padding-top:2px}



html[data-native-mac],html[data-native-mac] *{scrollbar-width:none!important}html[data-native-mac]::-webkit-scrollbar,html[data-native-mac] *::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}

/* Decision: AGENTS.md Decisions > Text */
#composer-frame{-webkit-user-select:none;user-select:none}
#composer-frame :is(textarea,input,[contenteditable="true"],[role="status"],[role="tooltip"],[role="dialog"],#session-error-text,#background-work-active,[data-reply-label]){-webkit-user-select:text;user-select:text}
/* @lat: [[factory-ideas#Design]] */
.factory-ideas{width:100%;max-width:720px;margin:auto;padding:24px 16px;color:var(--ink);background:var(--page);user-select:text;-webkit-user-select:text}
.factory-ideas h2{font-size:22px;line-height:1.25;margin:0 0 8px;font-weight:600;letter-spacing:-.02em}
.factory-ideas>p{margin:0 0 18px;color:var(--muted);background:var(--page);font-size:14px}
.factory-idea-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.factory-idea{display:flex;flex-direction:column;gap:7px;align-items:flex-start;justify-content:center;min-height:100px;padding:16px;border:1px solid var(--line);border-radius:12px;text-align:left;white-space:normal;color:var(--ink);background:var(--surface);cursor:pointer;font:inherit}
.factory-idea strong{font-size:15px;font-weight:600;line-height:1.3}
.factory-idea span{font-size:13px;line-height:1.4;color:var(--muted);background:transparent}
.factory-idea:hover,.factory-idea:focus-visible{border-color:var(--accent);outline:2px solid var(--accent);outline-offset:2px}
.factory-idea-card{display:flex;flex-direction:column;min-width:0}
.factory-idea-card>.factory-idea{width:100%;height:100%}
.factory-idea:disabled{cursor:wait}
.factory-idea:disabled[data-started="true"]{cursor:default;border-color:var(--accent)}
.factory-idea:disabled:hover{outline:none}
.factory-idea-state{display:flex;flex-wrap:wrap;gap:8px;padding:8px 2px;color:var(--muted);background:var(--page);font-size:13px}
.factory-idea-state:empty{display:none}
.factory-idea-state a{color:var(--accent);background:var(--page)}
.factory-ideas .factory-idea-expiry{font-size:12px;margin:16px 0 0}
.factory-idea-expiry:empty{display:none}
.factory-ideas .factory-idea-status{margin:12px 0 0;color:var(--ink);background:var(--page)}
.factory-idea-status:empty{display:none}
@media(max-width:540px){.factory-ideas{padding:44px 10px 16px}.factory-ideas h2{font-size:19px}.factory-idea-list{grid-template-columns:1fr;gap:8px}.factory-idea{min-height:76px;padding:12px;gap:4px}}
/* @lat: [[super-prompt-preview#Rules]] */
.super-monitor-messages{display:grid;gap:4px;min-width:0}
.super-monitor-messages:empty{display:none}
/* @lat: [[super-prompt-preview#iPhone]] */
.super-overview-row>.super-monitor-messages:not(:empty){padding:0 8px 8px}
.super-overview-row .super-monitor-message .compact-message-art,.super-overview-row .super-monitor-message .compact-message-art .text-art-picture{width:18px;height:18px}
.super-monitor-message{display:block;min-width:0;padding:6px 8px;border-radius:9px;font-size:13px;line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-decoration:none}
a.super-monitor-message:hover{text-decoration:underline}
.super-monitor-message:focus-visible{outline:2px solid var(--ink);outline-offset:-3px}

.super-monitor-session[data-selected]{outline:2px solid var(--accent);outline-offset:-1px}
.super-monitor-body:empty{display:none}

.super-monitor-reply{background:var(--surface);color:var(--ink);border:1px solid var(--line)}

/* @lat: [[super-prompt-preview#Expressive previews]] */
.super-monitor-text{flex:none;min-height:26px;padding:2px 7px;border:1px solid var(--line);border-radius:5px;background:var(--surface);color:var(--ink);font:600 12px/1.4 system-ui;cursor:pointer}
.super-monitor-text:focus-visible,.super-monitor-heading:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.super-monitor-message{display:flex;align-items:center;gap:6px}
.message-preview-text{display:block;min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.super-monitor-message .message-preview-text{font:inherit;line-height:inherit}
.super-monitor-message .message-preview-text.message-decoration .text-run{display:inline;font-size:inherit;line-height:inherit;white-space:inherit;margin:0;padding:0;transform:none;letter-spacing:normal}
.super-monitor-message .message-preview-text .compact-frame{display:inline;width:auto;max-width:none;margin:0;padding:0 3px;border-radius:3px;font:inherit}
.super-monitor-message .compact-message-art{float:none;flex:none;width:28px;height:28px;margin:0}
.super-monitor-message .compact-message-art .text-art-picture{width:28px;height:28px;margin:0}

.super-monitor-heading{text-decoration:none}

/* Decision: AGENTS.md Decisions > Phone swipes. @lat: [[phone-swipes#Design]] */
.session-slide-neighbor .session-preview-messages{display:flow-root;min-width:0}
#swipe-review{width:min(560px,calc(100vw - 24px));max-height:75dvh;overflow:auto;padding:12px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink)}
#swipe-review header{display:flex;justify-content:space-between;align-items:center;gap:8px}
#swipe-review ol{list-style:none;margin:0;padding:0}
#swipe-review li{display:flex;flex-wrap:wrap;gap:8px;padding:10px 0;border-top:1px solid var(--line)}
#swipe-review li span{flex-basis:100%;overflow-wrap:anywhere}
#swipe-review button{background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:6px;padding:8px}
#swipe-review button:disabled{background:var(--page);color:var(--muted)}

/* @lat: [[page-suggestions#Rules]] */
#page-suggestions{display:flex;flex-wrap:nowrap;align-items:center;gap:6px;height:44px;min-height:44px;flex-shrink:0;padding:6px 0;overflow-x:auto;overflow-y:hidden;background:var(--surface);color:var(--ink)}
#page-suggestions button{flex:0 0 auto;white-space:nowrap;height:30px;padding:4px 9px;background:var(--footer-control);color:var(--footer-ink);border:1px solid var(--footer-line);font-size:13px;text-align:left}
#page-suggestions button:is(:hover,:focus-visible){background:var(--footer-selected);outline:2px solid var(--accent);outline-offset:1px}

/* @lat: [[super-chart#Design]] */
/* Decision: AGENTS.md Decisions > Session mix */
.super-session-mix{color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:10px;min-width:0;flex:none;box-sizing:border-box}
.super-session-mix figure{margin:0;display:flex;flex-wrap:wrap;align-items:center;gap:0 12px}
.super-session-mix figcaption{margin:0;font-size:14px}
.super-session-mix .message-chart-legend{margin-left:auto}
.super-session-mix :is(.message-chart-scroll,.message-chart-status){flex:0 0 100%;min-width:0}
.super-session-mix .message-chart-scroll svg{height:75px}
.super-session-mix .session-mix-scope{font-size:11px;color:var(--muted);background:var(--surface);margin:6px 0 0}
.super-session-mix>[role=status]{font-size:12px}
.super-session-mix button{color:var(--ink);background:var(--surface);border:1px solid var(--line);border-radius:5px;padding:4px 8px;font:inherit;margin-left:8px}
.super-session-mix [hidden]{display:none}

/* Decision: AGENTS.md Decisions > Session view errors */
#session-error-text[data-markdown]{display:block;white-space:normal}#session-error-text article>:first-child{margin-top:0}#session-error-text article>:last-child{margin-bottom:0}#session-error-text a{color:inherit;text-decoration:underline}#session-error-text pre{white-space:pre-wrap}
/* Decision: AGENTS.md Decisions > Navigation hints — no layout shift or flashing. */
:is(.super-monitor-session,.super-overview-row)[data-navigation-hint]{outline:3px solid var(--accent);outline-offset:-3px;box-shadow:inset 6px 0 0 var(--accent)}

.gate #private-demo-link{margin-top:16px;color:var(--gate-link,var(--accent));background:transparent;text-underline-offset:3px}

/* Decision: AGENTS.md Decisions > Composer footer */
excessivecode-footer[hidden]{display:contents!important}
#composer .composer-actions{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:4px 6px;overflow:visible;flex-wrap:wrap}
#composer-links{display:flex;flex:1 1 80px;min-width:0;align-items:center;gap:6px;overflow:hidden}
#composer-links #page-suggestions{height:auto;min-height:0;padding:0;min-width:0;flex:1;gap:4px;overflow:auto}
#composer-header #composer-session-reference{flex:none;cursor:pointer}
#composer-links #page-suggestions button{height:28px;min-height:28px;padding:2px 6px;font-size:12px}
#composer-buttons{display:flex;flex:none;align-items:center;justify-content:flex-end;gap:5px;max-width:100%;margin-left:auto}
#composer-buttons .voice-feed-control{flex:none;margin:0}
#composer-buttons #voice-feed-delivery{display:none}
#composer textarea{height:76px;min-height:54px}
#composer-header{min-height:0;padding:3px 6px;gap:6px}
@media(max-width:620px){#composer-buttons{gap:4px}#composer-buttons button{padding:4px 6px}#composer-buttons #voice-feed{padding:0}#composer-links{flex-basis:48px}}
@media(max-width:620px){
  #composer #composer-buttons :is(#composer-super-open,#attach-photo,#background-work-trigger,#clear-composer,#voice-feed,#send){width:32px;min-width:32px;min-height:36px;padding:2px}
  /* Hints get their own scrolling row so they never slide under the buttons. */
  #composer .composer-actions{flex-wrap:wrap}
  #composer-links:has(#page-suggestions:not(:empty)){flex:1 0 100%}
}

#composer #composer-links #page-suggestions button{width:max-content;min-width:max-content;flex:0 0 auto;justify-content:flex-start}

#session-error[data-repair] #session-error-text p{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 6px}

.quota-chart-controls,.quota-chart-legend{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:10px}
.quota-chart-controls strong{margin-right:auto}.quota-chart-controls button{font:inherit;padding:2px 6px;border:1px solid var(--line);border-radius:4px;background:var(--surface);color:var(--ink);cursor:pointer}
.quota-chart-controls button[aria-pressed="true"]{background:var(--tab-selected)}
.quota-chart-legend span{display:inline-flex;gap:4px;align-items:center}.quota-chart-legend i{display:inline-block;width:8px;height:8px;border-radius:50%}

.message-meta{position:relative}

/* Decision: AGENTS.md Decisions > Private server request */
#server-request-open{flex:none;padding:2px 8px;border:1px solid var(--accent);border-radius:999px;background:var(--surface);color:var(--ink);font-size:12px;line-height:1.4;white-space:nowrap;cursor:pointer}
#sign-in-reason{margin:0 0 12px;color:var(--gate-ink,#173a2b);font-weight:700;font-size:14px;line-height:1.4}
.gate>#server-request{position:relative;z-index:1;width:min(390px,calc(100vw - 32px));margin:auto;padding:28px 30px 30px;border:2px solid #9c8754;border-radius:38px 8px;background:rgba(255,253,241,.96);color:#173a2b;box-shadow:10px 12px 0 rgba(226,189,88,.82),0 24px 70px rgba(10,34,23,.45);text-align:left}
#server-request h1{margin:0 0 6px;color:#173a2b;font:700 28px/1.05 Georgia,serif;letter-spacing:-.03em}
#server-request-terms{margin:0 0 16px;color:#385443;font-size:14px;font-weight:700}
#server-request form{display:grid;gap:8px}
#server-request label{color:#385443;font-size:13px;font-weight:700}
#server-request input{padding:9px 10px;border:2px solid #70826b;border-radius:7px;background:#fffdf0;color:#173a2b;font:inherit}
.gate>#server-request form button{padding:10px 14px;border:0;border-radius:7px;background:#214d37;color:#fff;font-weight:700;cursor:pointer}
.gate>#server-request form button:disabled{opacity:.6}
#server-request [role=status]{margin:12px 0 0;color:#173a2b;font-size:15px;line-height:1.45}
.gate>#server-request #server-request-back{margin-top:16px;padding:0;border:0;background:transparent;color:#214d37;text-decoration:underline;cursor:pointer;font-size:13px}

/* App-wide Super faults float outside the session and its composer. */
#super-recovery-notice{position:fixed;z-index:1500;top:calc(env(safe-area-inset-top,0px) + 24px);left:50%;transform:translateX(-50%);box-sizing:border-box;width:min(420px,calc(100vw - 32px));padding:20px 46px 20px 22px;border:1px solid var(--danger);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:0 18px 65px #0005,0 3px 12px #0003}
#super-recovery-notice[hidden]{display:none}
#super-recovery-notice strong{color:var(--danger)}
#super-recovery-notice p{margin:10px 0;line-height:1.5}
#super-recovery-notice a{color:inherit;text-decoration:underline}
#super-recovery-notice button{position:absolute;right:10px;top:10px;border:0;background:transparent;color:inherit;font-size:24px;cursor:pointer}

/* Decision: AGENTS.md Decisions > Session metrics */
.message[data-origin="utility_scorer"]{background:var(--surface);color:var(--ink);border:1px dashed var(--line);text-align:left}.message[data-origin="utility_scorer"] .message-body{white-space:normal}
