:root{--ink:#0e1a2b;--ink-2:#3d4a5c;--ink-3:#5f6b7c;--porcelain:#eef2f6;--sheet:#fff;--line:#d5dce5;--line-2:#b8c2cf;--cobalt:#1d4ed8;--cobalt-2:#173ea8;--cobalt-soft:#e6edfc;--citrus:#d4e157;--review:#7a4a00;--review-bg:#fff5dc;--review-line:#e5bf63;--fail:#a1281a;--fail-bg:#fdecea;--r:6px;--serif:Georgia,Cambria,"Times New Roman",serif;--mono:Consolas,"Cascadia Mono",monospace;font-family:"Segoe UI Variable Text","Segoe UI",system-ui,sans-serif;font-size:15px;color:var(--ink);background:var(--porcelain);font-variant-numeric:tabular-nums}
*{box-sizing:border-box}
html,body{height:100%}
body{margin:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto;height:100vh;overflow:hidden}
:focus-visible{outline:3px solid var(--cobalt);outline-offset:2px}
button,.file-button{font:inherit;color:inherit;cursor:pointer;border:1px solid var(--line-2);border-radius:var(--r);background:var(--sheet);padding:8px 14px;min-height:38px;text-align:left;transition:background .15s,border-color .15s}
button:hover,.file-button:hover{border-color:var(--cobalt);background:var(--cobalt-soft)}
button:disabled{opacity:.5;cursor:not-allowed}
a{color:var(--cobalt)}
.muted{color:var(--ink-3);font-size:13px}

/* Masthead */
.mast{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:var(--ink);color:#e8edf4;padding:10px clamp(16px,3vw,36px)}
.brand{display:flex;align-items:center;gap:10px;font-weight:600;font-size:15px}
.brand em{font-family:var(--serif);font-weight:400;color:#9fb0c6;font-size:14px}
.mark{width:14px;height:14px;background:var(--cobalt);box-shadow:5px 5px 0 var(--citrus)}
.mast-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.mast button{background:transparent;border-color:#33455e;color:#e8edf4;font-size:13px;min-height:34px;padding:6px 12px}
.mast button:hover{background:#1c2c44;border-color:#6b84a6}
.mast #new{background:var(--cobalt);border-color:var(--cobalt);font-weight:600}
.mast #new:hover{background:#2b5ee8}
.mast :focus-visible{outline-color:var(--citrus)}
.badge{font-size:12px;color:#c7d2e0;padding:6px 10px 6px 22px;position:relative;max-width:320px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.badge::before{content:"";position:absolute;left:8px;top:50%;width:7px;height:7px;margin-top:-3.5px;border-radius:50%;background:var(--citrus)}

/* Studio: stage + right dock */
.studio{display:grid;grid-template-columns:minmax(0,1fr) 300px;min-height:0}
.stage{display:flex;flex-direction:column;min-height:0;min-width:0;padding:0 clamp(16px,5vw,72px)}
.work{flex:1;overflow:auto;padding:28px 0 8px;scroll-behavior:smooth}
.work>*,#composer,.starters{max-width:900px;width:100%}

/* Empty state: headline + composer centred */
body:not(:has(#conversation:not(:empty))) .stage{justify-content:center}
body:not(:has(#conversation:not(:empty))) .work{flex:none;overflow:visible;padding-top:0}
body:not(:has(#conversation:not(:empty))) #progress{display:none}
body:has(#conversation:not(:empty)) #welcome,body:has(#conversation:not(:empty)) .starters{display:none}
.kicker{font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--cobalt);margin:0 0 10px;display:flex;align-items:center;gap:10px}
.kicker::before{content:"";width:28px;height:3px;background:var(--citrus)}
h1{font-family:var(--serif);font-weight:400;font-size:clamp(34px,5.2vw,64px);line-height:1.04;letter-spacing:-.02em;margin:0 0 14px;max-width:14ch}
.lede{font-size:17px;line-height:1.55;color:var(--ink-2);max-width:56ch;margin:0 0 24px}
.starters{display:flex;gap:4px 14px;align-items:center;flex-wrap:wrap;margin:12px 0 0;font-size:13px;color:var(--ink-3)}
.starters button{border:0;background:none;padding:6px 2px;min-height:32px;color:var(--cobalt);font-weight:600;text-decoration:underline;text-underline-offset:4px;text-decoration-color:var(--line-2)}
.starters button:hover{background:none;text-decoration-color:var(--cobalt)}

/* Messages */
.message{margin:22px 0;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65}
.message .role{display:block;font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--ink-3);margin-bottom:4px}
.message.user{font-family:var(--serif);font-size:20px;line-height:1.45;color:var(--ink);padding-bottom:16px;border-bottom:1px solid var(--line)}
.message.user .role{font-family:"Segoe UI",sans-serif}
.message.assistant{background:var(--sheet);border:1px solid var(--line);border-top:3px solid var(--cobalt);border-radius:var(--r);padding:16px 22px}
.message.assistant .role{color:var(--cobalt)}
.message.error{background:var(--fail-bg);border:1px solid #efc0b8;border-left:4px solid var(--fail);color:var(--fail);border-radius:var(--r);padding:12px 18px}
.message.error .role{color:var(--fail)}

/* Files */
#artifacts{display:flex;flex-wrap:wrap;gap:8px}
#artifacts:not(:empty){margin:4px 0 18px}
#artifacts a{display:inline-flex;align-items:center;padding:10px 16px;background:var(--ink);color:#fff;border-radius:var(--r);font-weight:600;font-size:14px;text-decoration:none;overflow-wrap:anywhere;border-bottom:3px solid var(--citrus)}
#artifacts a:hover{background:var(--cobalt)}
#artifacts p{flex-basis:100%;margin:4px 0 0}

/* Approvals */
#approvals article{background:var(--review-bg);border:1px solid var(--review-line);border-left:5px solid var(--review);border-radius:var(--r);padding:16px 20px;margin:16px 0}
#approvals strong{display:block;color:var(--review);font-size:16px;margin-bottom:10px}
#approvals strong::before{content:"Needs your decision";display:block;font-size:11px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:4px}
#approvals pre{font-family:var(--mono);font-size:13px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--sheet);border:1px solid var(--review-line);border-radius:var(--r);padding:12px;margin:0 0 12px;max-height:320px;overflow:auto;color:var(--ink)}
#approvals button{margin-right:8px;font-weight:600}
#approvals button:first-of-type{background:var(--cobalt);border-color:var(--cobalt);color:#fff}
#approvals button:first-of-type:hover{background:var(--cobalt-2)}
#approvals button+button:hover{border-color:var(--fail);background:var(--fail-bg);color:var(--fail)}

/* Activity */
#progress{margin:16px 0;border-top:1px solid var(--line);padding-top:10px}
summary{cursor:pointer;font-size:13px;color:var(--ink-3);padding:4px 0}
#status{font-weight:600;color:var(--cobalt)}
#events{font-family:var(--mono);font-size:12px;color:var(--ink-2);max-height:240px;overflow:auto;margin-top:8px;padding-left:12px;border-left:2px solid var(--line)}
#events div{padding:3px 0;border-bottom:1px dotted var(--line);overflow-wrap:anywhere}

/* Composer */
#composer{position:relative;flex:none;background:var(--sheet);border:2px solid var(--ink);border-radius:var(--r);padding:14px 18px 12px;margin:8px 0 16px;overflow:hidden;box-shadow:8px 8px 0 var(--cobalt-soft)}
#composer:focus-within{border-color:var(--cobalt);box-shadow:8px 8px 0 #c9d7f8}
#composer>label{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
textarea{display:block;width:100%;resize:vertical;min-height:56px;max-height:40vh;border:0;outline:0;padding:8px 0;background:none;font:inherit;line-height:1.5;color:var(--ink)}
body:not(:has(#conversation:not(:empty))) textarea{font-size:20px;min-height:110px}
textarea::placeholder{color:var(--ink-3)}
.compose-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px}
.file-button{position:relative;font-size:13px}
.file-button:focus-within{outline:3px solid var(--cobalt);outline-offset:2px}
input[type=file]{position:absolute;width:1px;height:1px;opacity:0}
#attachment{font-family:var(--mono);font-size:12px;color:var(--ink-2);overflow-wrap:anywhere;max-width:45%}
#cancel{border-color:var(--fail);color:var(--fail)}
#cancel:hover{background:var(--fail-bg)}
#send{margin-left:auto;background:var(--cobalt);border-color:var(--cobalt);color:#fff;font-weight:600;padding:9px 20px}
#send:hover{background:var(--cobalt-2)}
.pulse{position:absolute;inset:0 0 auto;height:3px}
body:has(#cancel:not([hidden])) .pulse{background:linear-gradient(90deg,transparent,var(--cobalt),var(--citrus),transparent) no-repeat;background-size:40% 100%;animation:run 1.6s linear infinite}
body:has(#approvals article) .pulse{background:var(--review);animation:none}
@keyframes run{from{background-position:-40% 0}to{background-position:140% 0}}

/* Right dock */
.dock{display:flex;flex-direction:column;min-height:0;background:var(--sheet);border-left:1px solid var(--line);padding:22px 16px 14px}
.dock h2{font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin:0 4px 10px}
#history{flex:1;min-height:0;overflow-y:auto;display:flex;flex-direction:column;gap:2px;margin:0 -4px;padding:0 4px}
#history button{flex-shrink:0;border:0;border-left:3px solid transparent;border-radius:0 var(--r) var(--r) 0;background:none;padding:8px 10px;font-size:13px;line-height:1.4;color:var(--ink-2);overflow-wrap:anywhere}
#history button:hover{background:var(--porcelain);border-left-color:var(--cobalt);color:var(--ink)}
#history:empty::after{content:"Tasks you start will be listed here.";font-size:13px;color:var(--ink-3);padding:8px 10px}
.utility{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}
#demo{width:100%;background:none;border-style:dashed;font-size:13px;color:var(--ink-2)}
#demo span{display:block;font-family:var(--mono);font-size:11px;color:var(--ink-3);margin-top:2px}
footer{font-size:12px;color:var(--ink-3);text-align:center;padding:6px 16px 8px;border-top:1px solid var(--line);background:var(--porcelain)}

/* Panel */
dialog{width:min(860px,92vw);max-height:86vh;border:0;border-top:4px solid var(--cobalt);border-radius:var(--r);padding:24px 28px;background:var(--sheet);color:var(--ink);box-shadow:0 24px 64px #0e1a2b55}
dialog::backdrop{background:#0e1a2b8c}
#close-panel{float:right;margin:0 0 8px 12px}
#panel-content{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;font-size:14px}
#panel-content h2{font-family:var(--serif);font-weight:400;font-size:26px;margin:0 0 12px}
#panel-content h3{font-size:16px;margin:0 0 10px}
#panel-content label{display:block;font-size:13px;font-weight:600;color:var(--ink-2);margin-top:8px}
#panel-content br{display:none}
#panel-content input:not([type=checkbox]):not([type=radio]),#panel-content select{display:block;width:100%;margin:6px 0 4px;padding:9px 12px;border:1px solid var(--line-2);border-radius:var(--r);background:#fff;font:inherit;font-weight:400;color:var(--ink)}
#panel-content input[type=checkbox]{width:18px;height:18px;margin:0 0 0 10px;vertical-align:middle;accent-color:var(--cobalt)}
#panel-content button{margin:10px 8px 6px 0}
#panel-content p button{margin:0 0 0 10px;padding:4px 10px;min-height:30px;font-size:12px}
#panel-content hr{border:0;border-top:1px solid var(--line);margin:20px 0}
#panel-content pre{font-family:var(--mono);font-size:12px;background:var(--porcelain);border:1px solid var(--line);border-radius:var(--r);padding:12px;max-height:260px;overflow:auto}
.account-settings{margin:20px 0;padding:16px 18px;background:var(--porcelain);border:1px solid var(--line);border-left:4px solid var(--cobalt);border-radius:var(--r)}
.account-settings p{margin:8px 0;color:var(--ink-2)}
.account-settings a{display:inline-block;margin-top:8px;font-weight:600}

/* Responsive */
@media(max-width:1100px){.studio{grid-template-columns:minmax(0,1fr) 250px}}
@media(max-width:860px){
 body{display:block;height:auto;overflow:auto}
 .studio{display:flex;flex-direction:column}
 .stage{padding:0 16px;min-height:auto}
 .work{overflow:visible;padding-top:20px}
 body:not(:has(#conversation:not(:empty))) .stage{padding-top:28px}
 #composer{position:sticky;bottom:0;z-index:2;margin:8px 0 12px;box-shadow:0 -6px 20px -10px #0e1a2b55}
 .dock{border-left:0;border-top:1px solid var(--line)}
 #history{max-height:45vh}
 #attachment{max-width:100%;flex-basis:100%;order:3}
 .badge{max-width:100%}
}
@media(max-width:520px){.mast-tools{width:100%}.mast-tools button{flex:1;text-align:center}.badge{flex-basis:100%}#send,#cancel{flex:1;text-align:center}.file-button{flex:1 0 100%;text-align:center}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}body:has(#cancel:not([hidden])) .pulse{background:var(--cobalt)}}
@media(forced-colors:active){.message,#approvals article,#composer{border:1px solid CanvasText}.pulse,.mark{display:none}}

/* Product navigation shares the cobalt/ink command studio palette. */
[hidden]{display:none!important}
body{grid-template-rows:auto auto minmax(0,1fr) auto}
.workspace-nav{display:flex;gap:4px;padding:7px clamp(16px,3vw,36px);background:var(--sheet);border-bottom:1px solid var(--line);overflow-x:auto;min-width:0}
.workspace-nav button{flex:none;border-color:transparent;background:transparent;font-size:13px;font-weight:600;min-height:36px;padding:7px 12px}
.workspace-nav button[aria-current=page]{background:var(--cobalt-soft);border-color:#cad7f6;color:var(--cobalt);box-shadow:inset 0 -3px var(--cobalt)}
.nav-count{display:inline-block;min-width:19px;margin-left:7px;padding:0 5px;background:var(--review-bg);border:1px solid var(--review-line);border-radius:10px;color:var(--review);font-size:11px;line-height:17px;text-align:center}
.workspace-note{max-width:60ch;color:var(--ink-3);font-size:13px;line-height:1.5;margin:0 0 18px}
.section-note{max-width:80ch;color:var(--ink-2);border-left:3px solid var(--cobalt);padding:8px 14px;background:var(--cobalt-soft)}
.state-tag{display:inline-block;padding:3px 9px;border:1px solid var(--line);border-radius:var(--r);font-size:12px;font-weight:600}
.state-tag.enabled{background:var(--cobalt-soft);border-color:#cad7f6;color:var(--cobalt)}
.state-tag.disabled{background:var(--porcelain);color:var(--ink-2)}
.state-tag.pending{background:var(--review-bg);border-color:var(--review-line);color:var(--review)}
.state-tag.accepted{background:#e9f5ee;border-color:#c6dfce;color:#24633d}
.state-tag.dismissed{background:var(--porcelain);color:var(--ink-3)}
.proposal-provenance{font-size:12px;line-height:1.5;margin:12px 0}
.proposal-provenance>div{display:grid;grid-template-columns:105px minmax(0,1fr);gap:12px;margin:9px 0}
.proposal-provenance dt{color:var(--ink-3)}
.proposal-provenance dd{margin:0;overflow-wrap:anywhere;font-family:var(--mono);font-size:11px}
.proposal-audit{font-size:11px;color:var(--ink-2);padding-left:18px;overflow-wrap:anywhere}
#view-learning .record-card h4{font-size:12px;margin:15px 0 5px;color:var(--ink-2)}
#view-learning .form-actions button:first-child{background:var(--cobalt);border-color:var(--cobalt);color:#fff}
.inbox-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 22px}
.inbox-summary>div{background:var(--sheet);border:1px solid var(--line);border-radius:var(--r);padding:14px 18px;min-width:0}
.inbox-summary dt{color:var(--ink-3);font-size:13px}
.inbox-summary dd{font-family:var(--serif);font-size:30px;color:var(--ink);margin:5px 0 0}
.inbox-group .record-card[data-status=awaiting_approval]{border-left:4px solid var(--review)}
.inbox-group .record-card[data-status=failed],.inbox-group .record-card[data-status=interrupted]{border-left:4px solid var(--fail)}
.inbox-group .record-card>button{font-weight:600}
.studio.section-open{grid-template-columns:minmax(0,1fr)}
.section-view{min-width:0;min-height:0;overflow:auto;padding:28px clamp(16px,5vw,72px) 48px}
.section-heading,.view-content{max-width:1200px;margin-inline:auto}
.section-heading{display:flex;align-items:start;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);margin-bottom:22px}
.section-heading h1{font-size:clamp(36px,4vw,54px);max-width:none}
.section-heading .lede{font-size:15px;margin-bottom:18px}
.section-heading>button{flex:none}
.view-content{line-height:1.6;overflow-wrap:anywhere}
.view-content h2{font-family:var(--serif);font-weight:400;font-size:27px;margin:24px 0 12px}
.view-content h3,.record-form h3{font-size:16px;margin:0 0 10px}
.record-card{border:1px solid var(--line);border-left:3px solid var(--cobalt);border-radius:var(--r);background:var(--sheet);padding:18px 20px;margin:14px 0}
.record-card h3{overflow-wrap:anywhere}
.record-card p{margin:6px 0 12px}
.record-text{white-space:pre-wrap;overflow-wrap:anywhere}
.record-card>button,.record-card>.download-link{margin:6px 8px 0 0}
.record-editor{border:1px solid var(--line);border-radius:var(--r);background:var(--sheet);margin:12px 0;padding:10px 14px}
.record-editor>summary{color:var(--cobalt);font-weight:600;font-size:14px}
.record-editor .record-form{border:0;padding:14px 0 0;margin:0}
.record-form{background:var(--sheet);border:1px solid var(--line);border-radius:var(--r);padding:18px 20px;margin:14px 0 20px}
.record-form label,.context-selectors label,#view-connections label{display:block;font-size:13px;font-weight:600;color:var(--ink-2);margin:12px 0}
.record-form input:not([type=checkbox]),.record-form select,.context-selectors select,#view-connections input:not([type=checkbox]),#view-connections select{display:block;width:100%;min-width:0;font:inherit;font-weight:400;color:var(--ink);background:var(--sheet);border:1px solid var(--line-2);border-radius:var(--r);padding:9px 12px;margin-top:6px}
body #section-view .record-form textarea,body #panel .record-form textarea{min-height:100px;max-height:300px;font:inherit;font-weight:400;background:var(--sheet);border:1px solid var(--line-2);border-radius:var(--r);padding:9px 12px;margin-top:6px}
.record-form textarea:focus-visible{outline:3px solid var(--cobalt);outline-offset:2px}
.record-form input[type=checkbox],#view-connections input[type=checkbox]{accent-color:var(--cobalt);margin-left:10px;vertical-align:middle}
.form-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.form-actions button[type=submit]{background:var(--cobalt);border-color:var(--cobalt);color:white;font-weight:600}
.form-actions button[type=submit]:hover{background:var(--cobalt-2)}
.empty-state{border:1px dashed var(--line-2);border-radius:var(--r);padding:20px;color:var(--ink-3);background:var(--sheet)}
.request-error{background:var(--fail-bg);color:var(--fail);border:1px solid #efc0b8;border-left:4px solid var(--fail);border-radius:var(--r);padding:10px 14px;margin:12px 0;overflow-wrap:anywhere;font-size:14px}
.request-error p{margin:0 0 8px}
.request-error p:last-child{margin:0}
.download-link{display:inline-block;text-decoration:none;background:var(--ink);border-bottom:3px solid var(--citrus);border-radius:var(--r);color:white;font-weight:600;padding:8px 14px;overflow-wrap:anywhere}
.download-link:hover{background:var(--cobalt)}
.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 16px}
.metric-grid>div{padding:18px;background:var(--sheet);border:1px solid var(--line);border-top:3px solid var(--cobalt);border-radius:var(--r);min-width:0}
.metric-grid dt{font-size:13px;color:var(--ink-3)}
.metric-grid dd{font-family:var(--serif);font-size:32px;margin:6px 0 0;overflow-wrap:anywhere}
.table-scroll{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:var(--r);background:var(--sheet)}
table{width:100%;border-collapse:collapse;font-size:13px;text-align:left}
caption{padding:10px 14px;font-weight:600;text-align:left;color:var(--ink-3)}
th,td{padding:10px 14px;border-top:1px solid var(--line);vertical-align:top;min-width:110px;max-width:440px;overflow-wrap:anywhere}
th{background:var(--cobalt-soft);color:var(--ink-2);text-transform:capitalize}
td button{font-size:12px;max-width:100%;overflow-wrap:anywhere}
#task-context{margin:0 0 8px;border-top:1px solid var(--line)}
#task-context>summary{font-size:12px;padding-top:7px}
#task-context .muted{margin:6px 0 10px;font-size:12px}
.context-selectors{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.context-selectors label{margin:6px 0}
.context-selectors select{padding:6px 8px;font-size:13px}
#overview{border-bottom:1px solid var(--line);padding:0 4px 12px;margin:0 0 16px;max-height:35%;overflow:auto;flex-shrink:0}
#overview>summary{font-size:12px;color:var(--cobalt);font-weight:600}
#overview h3{font-size:12px;margin:14px 0 6px}
#overview-content>button{display:block;width:100%;font-size:12px;margin:4px 0;overflow-wrap:anywhere}
.overview-counts{display:flex;flex-wrap:wrap;gap:10px 20px;margin:12px 0;font-size:12px}
.overview-counts dd{font-weight:600;margin:2px 0;color:var(--cobalt)}
.connection-state{border-left:3px solid var(--cobalt);padding:10px 14px;background:var(--cobalt-soft);font-size:14px}
#view-connections>br{display:none}
#view-connections>button{margin:8px 8px 8px 0}
#view-connections hr{border:0;border-top:1px solid var(--line);margin:20px 0}
#view-connections pre{font-family:var(--mono);font-size:12px;white-space:pre-wrap;background:var(--sheet);border:1px solid var(--line);padding:14px;border-radius:var(--r);max-height:260px;overflow:auto}
@media(max-width:860px){
 .workspace-nav{padding-inline:12px;position:relative}
 .section-view{overflow:visible;padding-top:24px}
 #overview{max-height:300px}
 .metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 body:not(:has(#conversation:not(:empty))) .stage{padding-top:20px}
}
@media(max-width:520px){
 .workspace-nav{gap:0;padding-block:4px}
 .workspace-nav button{padding:7px 10px;min-height:34px}
 .section-heading{gap:10px}
 .section-heading>button{padding:7px 10px;font-size:13px}
 .record-form,.record-card{padding:14px}
 .inbox-summary{gap:6px}
 .inbox-summary>div{padding:10px 8px}
 .inbox-summary dt{font-size:12px}
 .inbox-summary dd{font-size:25px}
 .workspace-note{font-size:12px;margin-bottom:12px}
 .metric-grid>div{padding:12px}
 .metric-grid dd{font-size:27px}
 .context-selectors{grid-template-columns:1fr;gap:0}
 body:not(:has(#conversation:not(:empty))) #prompt{font-size:18px;min-height:80px}
 #welcome .lede{font-size:15px;line-height:1.45;margin-bottom:14px}
 #welcome h1{font-size:34px}
 #composer{padding:12px 14px}
}

/* Arjun workspace shell: a persistent rail, focused thread and contextual drawer.
   Previous local design is preserved in design/arjun-workbench-v1/. */
:root{--ink:#242428;--ink-2:#55555e;--ink-3:#6e6e79;--porcelain:#fafafa;--sheet:#fff;--line:#e6e6eb;--line-2:#d4d4dc;--cobalt:#4f46e5;--cobalt-2:#4338ca;--cobalt-soft:#eeedff;--citrus:#b8b6ff;--r:9px;--serif:"Segoe UI Variable Text","Segoe UI",system-ui,sans-serif;--rail:#19191d;--rail-text:#d9d9e1;font-size:14px;background:var(--porcelain)}
.sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
body.rail-shell{display:grid;grid-template-columns:246px minmax(0,1fr);grid-template-rows:58px minmax(0,1fr) 30px;height:100dvh;overflow:hidden;background:var(--porcelain)}
.app-rail{grid-column:1;grid-row:1/-1;display:flex;flex-direction:column;gap:0;min-height:0;overflow-y:auto;background:var(--rail);color:var(--rail-text);border-right:1px solid #303036;padding:18px 12px 10px;scrollbar-width:thin;scrollbar-color:#50505a var(--rail)}
.rail-brand{display:flex;gap:10px;align-items:center;padding:0 6px 20px;font-size:13px;font-weight:650;line-height:1.5;letter-spacing:-.01em}
.rail-mark{display:grid;place-items:center;flex:none;width:30px;height:30px;background:#f0f0f4;color:#27272f;border-radius:9px;font-size:17px;font-weight:700}
.arjun-logo{display:block;flex:none;object-fit:contain}
.app-rail button{color:var(--rail-text);border-color:transparent;background:transparent;border-radius:7px;min-height:34px;padding:7px 10px;font-size:13px}
.app-rail button:hover{background:#2c2c33;color:#fff;border-color:transparent}
.app-rail :focus-visible{outline-color:#b8b6ff}
.app-rail .new-thread{flex:none;text-align:left;border:1px solid #484851;background:#2d2d35;color:#fff;font-weight:600;margin-bottom:12px;width:100%;padding:9px 12px}
.app-rail .new-thread:hover{border-color:#7b78ab;background:#363641}
.rail-search{margin:0 0 10px;flex:none}
.rail-search input{display:block;width:100%;min-width:0;border:1px solid #37373f;background:#202026;color:#ededf3;border-radius:7px;font:inherit;font-size:12px;padding:9px 11px}
.rail-search input::placeholder{color:#aaaab7}
.rail-heading{color:#aaaab7;font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:600;margin:15px 10px 6px}
.app-rail .workspace-nav{display:block;flex:none;overflow:visible;border:0;background:transparent;padding:0;margin:0}
.workspace-nav .nav-group{display:flex;flex-direction:column;gap:2px}
.app-rail .workspace-nav button{position:relative;display:block;width:100%;text-align:left;font-weight:400;padding-left:32px}
.app-rail .workspace-nav button::before{content:"";position:absolute;left:12px;top:12px;width:10px;height:10px;border:1.3px solid #a4a4b3;border-radius:3px;opacity:.8}
.app-rail .workspace-nav button[data-view=inbox]::before{border-radius:2px;border-top-width:3px}
.app-rail .workspace-nav button[data-view=threads]::before{border-radius:50% 50% 50% 0}
.app-rail .workspace-nav button[data-view=agents]::before{border-radius:50%}
.app-rail .workspace-nav button[aria-current=page]{background:#32313f;color:#f3f1ff;border-color:transparent;box-shadow:none;font-weight:600}
.app-rail .workspace-nav button[aria-current=page]::before{border-color:#c0bcff;opacity:1}
.nav-count{background:#4b4030;border-color:#6a5737;color:#f1d99a;float:right}
.rail-recents{flex:none;min-height:0}
#recent-threads{display:flex;flex-direction:column;gap:1px;max-height:150px;overflow-y:auto;scrollbar-width:thin}
#recent-threads button{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;flex:none;font-size:12px}
#recent-threads button[aria-current=page]{background:#2e2d3b;color:#dedbff}
.rail-empty{font-size:12px;color:#a3a3b0;margin:8px 10px}
.app-rail .dock{display:block;background:transparent;border:0;padding:0;margin:8px 0 0;flex:none}
#task-history>summary,#overview>summary{font-size:11px;color:#b8b8c5;font-weight:500;padding:7px 10px}
#task-history{border-top:1px solid #32323a}
.app-rail #history{display:flex;max-height:145px;flex:none;margin:0;padding:0;gap:0;overflow:auto;scrollbar-width:thin}
.app-rail #history button{font-size:11px;line-height:1.45;border:0;border-radius:6px;padding:7px 10px;color:#bcbcc9;white-space:normal;flex-shrink:0}
.app-rail #history:empty::after{color:#a3a3b0;font-size:11px}
.app-rail #overview{max-height:260px;margin:4px 0 0;padding:0;border:0;overflow:auto}
.app-rail #overview-content{padding:0 8px}
.app-rail #overview-content .overview-counts{color:#bcbcc9}
.app-rail #overview-content dd{color:#d4d0ff}
.app-rail .request-error{background:#33262a;border-color:#6d4348;color:#f2c4c9;font-size:11px;padding:8px}
.rail-bottom{margin-top:auto;padding-top:14px;flex:none}
.app-rail #demo{border:1px solid #383841;font-size:11px;color:#c5c5d0;width:100%;padding:8px 10px}
.app-rail #demo span{font-size:10px;color:#9f9fad;font-family:inherit}
.rail-shell .mast{grid-column:2;grid-row:1;background:var(--porcelain);color:var(--ink);border-bottom:1px solid var(--line);padding:10px 24px;gap:10px;flex-wrap:nowrap;min-width:0}
.workspace-heading{display:flex;align-items:center;gap:12px;font-size:13px;font-weight:600;min-width:0}
.workspace-title{display:flex;flex-direction:column;gap:1px;min-width:0}
.app-name{font-size:16px;font-weight:750;line-height:1.25;letter-spacing:-.02em;white-space:nowrap;color:var(--ink)}
.workspace-title #workspace-label{font-size:11px;line-height:1.2;font-weight:500;color:var(--ink-2)}
.mast .mast-tools{min-width:0;flex-wrap:nowrap}
.mast button{background:transparent;color:var(--ink-2);border-color:var(--line);font-size:11px;min-height:30px;padding:6px 9px}
.mast button:hover{background:var(--cobalt-soft);border-color:#c8c5f8;color:var(--cobalt)}
.mast :focus-visible{outline-color:var(--cobalt)}
.mast .badge{color:var(--ink-3);font-size:11px;max-width:250px;padding-block:3px}
.badge::before{background:#7f81c4;width:6px;height:6px}
#sidebar-toggle{display:none;font-size:17px;padding:2px 8px}
.rail-shell .studio,.rail-shell .studio.section-open{grid-column:2;grid-row:2;display:flex;min-height:0;min-width:0;overflow:hidden}
.rail-shell .stage{width:100%;margin:0 auto;min-width:0;padding:0 clamp(20px,5vw,80px);align-items:center;flex:1}
.work{width:100%;max-width:800px;padding-top:30px}
.work>*,#composer,.starters{max-width:800px}
.rail-shell h1{font-family:var(--serif);font-size:clamp(28px,3.2vw,38px);font-weight:550;line-height:1.2;max-width:none;letter-spacing:-.035em}
#welcome{max-width:740px;text-align:center;margin:0 auto 8px}
#welcome .kicker{display:none}
#welcome .lede{font-size:15px;line-height:1.6;max-width:56ch;margin:0 auto 12px;color:var(--ink-3)}
.workspace-note{font-size:12px;max-width:60ch;margin:0 auto 16px;color:var(--ink-3)}
.rail-shell #composer{border:1px solid #d5d5df;border-radius:17px;box-shadow:0 4px 24px #24243306;padding:14px 18px;margin:10px auto 12px;background:#fff;overflow:visible}
.rail-shell #composer:focus-within{border-color:#aaa6ec;box-shadow:0 0 0 3px #eeedff}
#composer>label{font-size:11px;letter-spacing:0;text-transform:none;font-weight:500;color:var(--ink-3)}
body.rail-shell:not(:has(#conversation:not(:empty))) #prompt{font-size:16px;min-height:92px;max-height:25vh}
.compose-actions{font-size:12px}
.file-button{font-size:12px;padding:6px 10px;min-height:32px;background:var(--porcelain);border-color:var(--line)}
#send{padding:7px 15px;font-size:12px;min-height:34px;border-radius:8px}
#task-context{margin-top:4px;border-color:#efeff3}
#task-context summary{font-size:11px}
.starters{justify-content:center;font-size:12px;gap:8px 14px;margin-bottom:20px}
.starters button{font-size:12px;font-weight:500;background:#fff;border:1px solid var(--line);border-radius:8px;text-decoration:none;padding:7px 12px}
.starters button:hover{background:var(--cobalt-soft);border-color:#cdc9ff}
.message.user{font:inherit;border:0;padding:14px 18px;background:#ededf3;border-radius:14px;max-width:90%;margin-left:auto}
.message.assistant{border:0;border-radius:0;background:transparent;padding:10px 0;box-shadow:none;line-height:1.8}
.message .role{font-size:10px;letter-spacing:.08em}
#artifacts a{background:#fff;color:var(--ink);border:1px solid var(--line);border-radius:9px;font-size:12px;padding:10px 13px}
#artifacts a:hover{background:var(--cobalt-soft);border-color:#c5c1f5}
.rail-shell .section-view{width:100%;padding:30px clamp(20px,4vw,60px) 50px;background:#fafafa}
.section-heading,.view-content{max-width:1280px}
.section-heading h1{font-size:30px;margin-bottom:9px}
.section-heading .kicker{display:none}
.section-heading .lede{font-size:13px;max-width:75ch}
.section-heading>button{font-size:12px;min-height:32px}
.record-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:16px;margin:18px 0 24px;align-items:start}
.record-grid>.record-card{min-width:0;margin:0;padding:20px;border:1px solid #e3e3eb;border-radius:12px;background:#fff;box-shadow:0 2px 6px #24243303}
.record-grid>.record-card:has(.record-editor[open]){grid-column:1/-1}
.record-card h3{font-size:15px;font-weight:600;line-height:1.5;margin-bottom:8px}
.record-card .record-text{font-size:13px;line-height:1.65;color:var(--ink-2)}
.record-card>button{font-size:12px;min-height:32px;padding:6px 10px}
.record-editor{border-radius:8px;background:transparent}
.record-editor>summary{font-size:12px;font-weight:500}
.view-content h2{font-size:21px;font-weight:550}
.section-note{background:transparent;border:0;padding:0;max-width:90ch;color:var(--ink-2);font-size:13px}
.empty-state{border:1px dashed var(--line-2);padding:28px;text-align:center;font-size:13px;border-radius:12px}
.thread-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:end;background:white;border:1px solid var(--line);padding:16px;border-radius:12px;margin-bottom:20px}
.thread-toolbar label{display:block;font-size:12px;font-weight:500;color:var(--ink-2)}
.thread-toolbar label:first-child{flex:1;min-width:min(100%,210px)}
.thread-toolbar input,.thread-toolbar select{display:block;width:100%;min-width:0;margin-top:7px;padding:8px 10px;background:var(--porcelain);border:1px solid var(--line-2);border-radius:7px;color:var(--ink);font:inherit;min-height:35px}
.thread-toolbar button{font-size:12px;min-height:35px}
.rail-shell footer{grid-column:2;grid-row:3;font-size:10px;line-height:1.4;padding:6px 16px;border-top:0;color:#8b8b97;background:var(--porcelain)}
dialog#panel{position:fixed;inset:0 0 0 auto;margin:0;width:min(460px,46vw);height:100dvh;max-height:100dvh;border:0;border-left:1px solid var(--line);border-radius:0;background:#fff;padding:22px;box-shadow:-12px 0 48px #18182318;overflow:auto}
dialog#panel::backdrop{background:#16162322}
#panel-content{font-size:13px}
#panel-content h2{font-size:23px}
#close-panel{position:sticky;top:0;z-index:1;background:#fff;font-size:12px}
#rail-backdrop{display:none}
@media(min-width:861px){body:has(#panel[open]) .studio{padding-right:min(30vw,360px)}.app-rail{scrollbar-gutter:stable}}
@media(max-width:1100px){.rail-shell .mast{padding-inline:18px}.mast .badge{max-width:170px}.mast #capabilities{display:none}}
@media(max-width:860px){
 body.rail-shell{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:54px minmax(0,1fr) auto;height:100dvh;overflow:hidden}
 .rail-shell .mast{grid-column:1;grid-row:1;padding:8px 12px}
 .rail-shell .studio,.rail-shell .studio.section-open{grid-column:1;grid-row:2}
 .rail-shell footer{grid-column:1;grid-row:3;font-size:9px;padding:5px 8px}
 .app-rail{position:fixed;z-index:20;inset:0 auto 0 0;width:min(290px,86vw);transform:translateX(-100%);transition:transform .18s ease;box-shadow:8px 0 30px #0002}
 .rail-open .app-rail{transform:translateX(0)}
 #sidebar-toggle{display:inline-block}
 #rail-backdrop:not([hidden]){display:block;position:fixed;z-index:19;inset:0;border:0;border-radius:0;background:#11111866;width:100%;height:100%}
 .rail-shell .stage{padding:0 18px;min-height:0}
 .rail-shell .work{min-height:0;overflow:auto;flex:1;padding-top:20px}
 body.rail-shell:not(:has(#conversation:not(:empty))) .stage{padding-top:10px;justify-content:center}
 body.rail-shell:not(:has(#conversation:not(:empty))) .work{flex:none;overflow:visible}
 .rail-shell #composer{position:relative;bottom:auto;flex:none;margin-bottom:12px;box-shadow:0 3px 14px #24243305}
 .rail-shell .section-view{padding:24px 20px 40px;min-height:0;overflow:auto}
 .mast .badge{max-width:200px;font-size:10px}
 .mast #settings{font-size:10px;max-width:122px;padding:5px 8px}
 dialog#panel{width:min(520px,100vw);padding:18px}
 .record-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px}
}
@media(max-width:520px){
 .mast .mast-tools{width:auto;gap:5px}.mast .mast-tools button{flex:none;width:auto}
 .mast .badge{display:none}.workspace-heading{font-size:12px;gap:8px}
 .rail-shell .stage{padding:0 14px}
 .rail-shell h1,#welcome h1{font-size:28px}
 #welcome .lede{font-size:13px;line-height:1.55;margin-bottom:10px}
 .workspace-note{font-size:11px;line-height:1.45}
 .rail-shell #composer{padding:12px 14px;border-radius:14px}
 body.rail-shell:not(:has(#conversation:not(:empty))) #prompt{font-size:15px;min-height:76px}
 .compose-actions{gap:6px}.compose-actions .file-button{flex:0 0 auto;text-align:left;padding:6px 8px;font-size:11px}
 .compose-actions #send{margin-left:auto;flex:0 0 auto;text-align:center;padding:7px 11px}
 .compose-actions #cancel{flex:none;font-size:11px;padding:6px 8px}
 .starters{gap:5px;flex-wrap:wrap;margin:5px 0 12px;font-size:11px}.starters>span{display:none}.starters button{font-size:10px;padding:6px 8px;min-height:30px}
 .rail-shell .section-view{padding-inline:14px}
 .section-heading .lede{font-size:12px}.section-heading h1{font-size:27px}
 .record-grid{grid-template-columns:minmax(0,1fr)}
 .thread-toolbar{padding:12px;gap:10px}.thread-toolbar label:first-child{flex-basis:100%}.thread-toolbar label:nth-child(2){flex:1}
 dialog#panel{width:100vw}
}
@media(prefers-reduced-motion:reduce){.app-rail{transition:none}}

/* Theme preference is a local visual setting; it carries no account data. */
html[data-theme=light]{color-scheme:light}
html[data-theme=dark]{color-scheme:dark;--ink:#eeeef4;--ink-2:#bbbbc8;--ink-3:#a0a0af;--porcelain:#131315;--sheet:#1d1d22;--line:#33333c;--line-2:#484852;--cobalt:#b8aeff;--cobalt-2:#d4ccff;--cobalt-soft:#2a263e;--citrus:#c2baff;--rail:#18181b;--rail-text:#d5d5df;--review:#f1d393;--review-bg:#30291c;--review-line:#78613a;--fail:#ffb8bf;--fail-bg:#342027;background:#131315;color:var(--ink)}
html[data-theme=dark] body.rail-shell,html[data-theme=dark] .rail-shell .section-view{background:var(--porcelain)}
html[data-theme=dark] .rail-shell .mast{background:#131315;border-bottom-color:#2b2b32}
html[data-theme=dark] .mast button{background:#1c1c21;border-color:#383840;color:#c5c5d1}
html[data-theme=dark] .mast button:hover{color:#e0d9ff;background:#29253a;border-color:#655d87}
html[data-theme=dark] .rail-shell #composer{background:#1d1d22;border-color:#43434e;box-shadow:0 8px 32px #0002}
html[data-theme=dark] .rail-shell #composer:focus-within{border-color:#9a8ded;box-shadow:0 0 0 3px #332c4b}
html[data-theme=dark] #prompt::placeholder{color:#a0a0af}
html[data-theme=dark] #send,html[data-theme=dark] .form-actions button[type=submit],html[data-theme=dark] #view-learning .form-actions button:first-child,html[data-theme=dark] #approvals button:first-of-type{background:#6659dc;border-color:#8275f0;color:#fff}
html[data-theme=dark] #send:hover,html[data-theme=dark] .form-actions button[type=submit]:hover,html[data-theme=dark] #view-learning .form-actions button:first-child:hover,html[data-theme=dark] #approvals button:first-of-type:hover{background:#6f60d5;border-color:#a093ff;color:#fff}
html[data-theme=dark] .file-button{background:#26262e;border-color:#44444f;color:#ddddE7}
html[data-theme=dark] .starters button{background:#1d1d22;border-color:#3d3d48;color:#c5bcff}
html[data-theme=dark] .starters button:hover{background:#302a43;border-color:#71658f}
html[data-theme=dark] .message.user{background:#292930;color:#ededf4}
html[data-theme=dark] .message.error,html[data-theme=dark] .request-error{background:#342027;border-color:#78404a;color:#ffb8bf}
html[data-theme=dark] .request-error button{background:#402730;border-color:#925662;color:#ffd6dc}
html[data-theme=dark] #artifacts a{background:#222229;border-color:#41414e;color:#e1e1eb}
html[data-theme=dark] #artifacts a:hover{background:#302a43;border-color:#8b7ab8}
html[data-theme=dark] #approvals article{background:#30291c;border-color:#78613a;border-left-color:#dfb76e;color:#eee4cf}
html[data-theme=dark] #approvals pre{background:#211e1a;border-color:#705d39;color:#f3e8d3}
html[data-theme=dark] #approvals button+button{background:#332b20;border-color:#8b7146;color:#f0d5aa}
html[data-theme=dark] .record-grid>.record-card,html[data-theme=dark] .thread-toolbar{background:#1d1d22;border-color:#383842;box-shadow:0 2px 10px #0001}
html[data-theme=dark] .record-form{background:#1d1d22;border-color:#3c3c47}
html[data-theme=dark] .record-editor{border-color:#3f3f49;background:transparent}
html[data-theme=dark] .record-editor .record-form{background:transparent}
html[data-theme=dark] .record-form input:not([type=checkbox]),html[data-theme=dark] .record-form select,html[data-theme=dark] .context-selectors select,html[data-theme=dark] #view-connections input:not([type=checkbox]),html[data-theme=dark] #view-connections select,html[data-theme=dark] #panel-content input:not([type=checkbox]):not([type=radio]),html[data-theme=dark] #panel-content select,html[data-theme=dark] .thread-toolbar input,html[data-theme=dark] .thread-toolbar select{background:#24242b;color:#ededf4;border-color:#4a4a56}
html[data-theme=dark] .record-form textarea,html[data-theme=dark] body #section-view .record-form textarea,html[data-theme=dark] body #panel .record-form textarea{background:#24242b;color:#ededf4;border-color:#4a4a56}
html[data-theme=dark] input::placeholder,html[data-theme=dark] textarea::placeholder{color:#a0a0af}
html[data-theme=dark] input[type=checkbox]{accent-color:#b8aeff}
html[data-theme=dark] .state-tag.enabled{background:#302a46;border-color:#6c5b9c;color:#e0d6ff}
html[data-theme=dark] .state-tag.disabled,html[data-theme=dark] .state-tag.dismissed{background:#28282e;border-color:#4a4a54;color:#bcbcc9}
html[data-theme=dark] .state-tag.pending{background:#3b3020;border-color:#8e7041;color:#ffdfa5}
html[data-theme=dark] .state-tag.accepted{background:#22382b;border-color:#477755;color:#b8e9c8}
html[data-theme=dark] .inbox-summary>div,html[data-theme=dark] .metric-grid>div{background:#1d1d22;border-color:#3d3d48}
html[data-theme=dark] .metric-grid>div{border-top-color:#a393e7}
html[data-theme=dark] .empty-state{background:#1a1a1f;border-color:#484854;color:#b7b7c6}
html[data-theme=dark] .download-link{background:#342d4b;border-bottom-color:#9b89da;color:#eee6ff}
html[data-theme=dark] .download-link:hover{background:#483960}
html[data-theme=dark] .table-scroll{background:#1d1d22;border-color:#41414c}
html[data-theme=dark] th{background:#2d273f;color:#d2c9ef}
html[data-theme=dark] td{color:#d2d2df}
html[data-theme=dark] dialog#panel{background:#1b1b20;border-left-color:#42424c;box-shadow:-12px 0 48px #0005}
html[data-theme=dark] dialog#panel::backdrop{background:#0005}
html[data-theme=dark] #close-panel{background:#26262e;color:#dedee8;border-color:#484854}
html[data-theme=dark] #panel-content pre,html[data-theme=dark] #view-connections pre{background:#23232a;color:#cecedc;border-color:#474752}
html[data-theme=dark] .account-settings{background:#232129;border-color:#48414f;border-left-color:#b8aeff}
html[data-theme=dark] .connection-state{background:#2a263e;color:#dfd7fa}
html[data-theme=dark] .mast .badge{color:#aaaab9}
html[data-theme=dark] :focus-visible{outline-color:#c5baff}
html[data-theme=dark] .rail-shell footer{background:#131315;color:#a0a0af}
/* Keep editable boundaries distinguishable against dark control surfaces. */
html[data-theme=dark]{--line-2:#727282}
html[data-theme=dark] .mast button,html[data-theme=dark] #close-panel{border-color:#727282}
html[data-theme=dark] .rail-shell #composer{border-color:#666676}
html[data-theme=dark] .record-form input:not([type=checkbox]),html[data-theme=dark] .record-form select,html[data-theme=dark] .context-selectors select,html[data-theme=dark] #view-connections input:not([type=checkbox]),html[data-theme=dark] #view-connections select,html[data-theme=dark] #panel-content input:not([type=checkbox]):not([type=radio]),html[data-theme=dark] #panel-content select,html[data-theme=dark] .thread-toolbar input,html[data-theme=dark] .thread-toolbar select,html[data-theme=dark] body #section-view .record-form textarea,html[data-theme=dark] body #panel .record-form textarea{border-color:#727282}
.rail-search input{border-color:#727282}
.skill-import-form #skill-import-file{position:static;display:block;opacity:1;width:100%;height:auto;max-width:100%;font-size:12px;padding:8px}
#skill-import-preview:not(:empty){margin:14px 0;padding:18px;border:1px solid var(--line-2);border-radius:10px;background:var(--sheet)}
#skill-import-preview h3{font-size:16px;margin:0 0 16px}
#skill-import-preview h4{font-size:12px;margin:14px 0 6px;color:var(--ink-2)}
#skill-import-preview .record-text{white-space:pre-wrap;overflow-wrap:anywhere;margin:5px 0;font-size:13px}
.skill-import-instructions{white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--mono);font-size:12px;line-height:1.6;max-height:300px;overflow:auto;padding:14px;border:1px solid var(--line-2);border-radius:8px;background:var(--porcelain);color:var(--ink)}
.import-warnings{padding:10px 14px;border:1px solid var(--review-line);background:var(--review-bg);color:var(--review);border-radius:8px;font-size:12px;line-height:1.6;overflow-wrap:anywhere}
.import-warnings h4{color:inherit!important;margin-top:0!important}
.import-warnings ul{margin:5px 0;padding-left:18px}
#library-resources,#library-artifacts{margin:0 0 34px;min-width:0}
#resource-catalog{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:16px;margin:20px 0}
.resource-card{min-width:0;padding:20px;background:var(--sheet);border:1px solid var(--line-2);border-radius:12px;overflow-wrap:anywhere}
.resource-card:has(details[open]){grid-column:1/-1}
.resource-card h3{font-size:16px;margin:0 0 10px}.resource-card h4{font-size:14px;margin:16px 0 8px}
.resource-card>button{margin:10px 0 0}.resource-body{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.65 var(--mono);color:var(--ink);background:var(--porcelain);padding:14px;border:1px solid var(--line-2);border-radius:8px;max-height:360px;overflow:auto}
.resource-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:10px;margin:12px 0}
.resource-columns fieldset{min-width:0;border:1px solid var(--line-2);border-radius:8px;padding:10px}.resource-columns legend{font-size:12px;color:var(--ink-2);padding:0 5px}
.room-message{padding:16px;margin:14px 0;border:1px solid var(--line-2);border-radius:10px;background:var(--sheet);overflow-wrap:anywhere}.room-message[data-role=user]{background:var(--cobalt-soft)}.room-message h3{font-size:12px;margin:0 0 8px}.room-message .record-text{white-space:pre-wrap;font-size:13px;line-height:1.65}.room-task{padding:10px 0;border-bottom:1px solid var(--line-2)}
#room-detail:not([hidden]){padding:20px;margin:20px 0;border:1px solid var(--line-2);border-radius:12px;background:var(--porcelain);min-width:0}#room-detail h2{font-size:22px;overflow-wrap:anywhere}#room-detail>.record-text{white-space:pre-wrap;overflow-wrap:anywhere}#room-status{font-size:12px;color:var(--ink-2);margin:16px 0}
.resource-card>details>label{display:block;font-size:12px;margin:10px 0}.resource-card>details>label>select{display:block;margin-top:6px;padding:8px;background:var(--sheet);border:1px solid var(--line-2);border-radius:8px;color:var(--ink);font:inherit}
@media(max-width:520px){#room-detail:not([hidden]){padding:12px}.resource-card{padding:14px}}
.typed-table-editor{margin:15px 0}.table-editor-scroll{max-height:440px;margin:12px 0}.table-editor-scroll td{min-width:160px;vertical-align:top}.table-editor-scroll td label{font-size:11px;margin:5px 0;display:flex;align-items:center;gap:5px}.table-editor-scroll input[type=checkbox]{margin:0}.table-editor-scroll td>input,.table-editor-scroll td>select{min-width:130px}
.table-editor-scroll input:disabled,.table-editor-scroll select:disabled{opacity:.65}.resource-version{padding:12px 0;border-bottom:1px solid var(--line-2);font-size:12px}.resource-conflict:not(:empty){margin-top:15px;padding:14px;border:1px solid var(--review-line);border-radius:8px;background:var(--review-bg);color:var(--review)}
@media(max-width:520px){.mast #theme-toggle{font-size:10px;padding:5px 7px;white-space:nowrap}.mast .mast-tools{gap:4px}.proposal-provenance>div{grid-template-columns:86px minmax(0,1fr);gap:8px}}

/* Staged only; merge into the active stylesheet at the backend/static gate. */
.advanced-view{min-width:0}
.advanced-view fieldset{min-width:0;margin:12px 0;padding:12px;border:1px solid var(--line-2);border-radius:8px}
.advanced-view legend{padding:0 6px;font-size:12px;color:var(--ink-2)}
.advanced-view .record-form input[type=file]{position:static;display:block;opacity:1;width:100%;height:auto;font-size:12px;padding:8px}
.advanced-view .record-text{white-space:pre-wrap;overflow-wrap:anywhere}
.advanced-view .record-card:has(.record-editor[open]){grid-column:1/-1}
.advanced-view .resource-conflict{overflow-wrap:anywhere}
.plan-step-editor>fieldset{margin:18px 0}
.plan-step-editor .form-actions{flex-wrap:wrap}
.creative-preview{display:block;width:100%;height:560px;max-height:70vh;border:1px solid var(--line-2);border-radius:8px;background:#fff;margin:14px 0}
.artifact-preview{min-width:0;width:100%}
.wiki-graph-canvas{max-width:100%;overflow:auto;border:1px solid var(--line-2);border-radius:8px;margin:14px 0;background:var(--sheet)}
.wiki-graph-canvas svg{display:block;color:var(--ink-2);font:11px var(--sans)}
@media(max-width:520px){.advanced-view fieldset{padding:10px}.creative-preview{height:440px}.advanced-view .form-actions{flex-wrap:wrap}}

.context-selectors{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:680px){.context-selectors{grid-template-columns:minmax(0,1fr)}}

/* Attention workflows: explicit reviews and local PC automations. */
.attention-view{min-width:0}
.attention-view fieldset{min-width:0;margin:12px 0;padding:12px;border:1px solid var(--line-2);border-radius:8px}
.attention-view legend{padding:0 6px;font-size:12px;color:var(--ink-2)}
.attention-view .record-text,.attention-provenance{white-space:pre-wrap;overflow-wrap:anywhere}
.attention-provenance{font-size:11px;color:var(--ink-2)}
.attention-view .resource-conflict{overflow-wrap:anywhere}
.attention-view .form-actions{flex-wrap:wrap}
.attention-copy-text{width:100%;min-height:160px;max-height:360px;font:12px/1.6 var(--mono)}
.attention-question{padding:14px;margin:12px 0;border:1px solid var(--review-line);border-radius:8px;background:var(--review-bg);color:var(--review)}
@media(max-width:520px){.attention-view fieldset{padding:10px}.attention-question{padding:12px}}

/* Unloaded local/free workflow styles. Integrate only after the parent gate. */
.free-view{min-width:0}
.free-view fieldset{min-width:0;margin:12px 0;padding:12px;border:1px solid var(--line-2);border-radius:8px}
.free-view legend{padding:0 6px;color:var(--ink-2);font-size:12px}
.free-view .form-actions{flex-wrap:wrap}
.free-view .record-form,.free-view .free-card{min-width:0}
.free-view .record-form input[type=file]{position:static;display:block;opacity:1;width:100%;max-width:100%;height:auto;font-size:12px;padding:8px}
.free-view .free-wrap,.free-view .free-literal{overflow-wrap:anywhere;white-space:pre-wrap}
.free-status-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:12px 0}
.free-status-facts>div{min-width:0}
.free-status-facts dt{font-size:11px;color:var(--ink-2)}
.free-status-facts dd{margin:3px 0 0;overflow-wrap:anywhere}
.free-view .free-secret{padding:14px;border:1px solid var(--review-line);border-radius:8px;background:var(--review-bg);color:var(--review);margin:14px 0}
.free-view .free-secret textarea{display:block;width:100%;max-width:100%;margin:8px 0;padding:10px;font-family:var(--mono);overflow-wrap:anywhere;background:var(--sheet);color:var(--ink);border:1px solid var(--review-line);border-radius:6px}
.free-view .free-request-content{max-height:320px;overflow:auto}
.free-view .free-map-points{max-height:320px;overflow:auto;border:1px solid var(--line-2);border-radius:8px}
.free-coordinate-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.free-intake-request{padding:12px;margin:12px 0;border:1px solid var(--line-2);border-radius:8px;min-width:0}
.free-map-diagram{margin:14px 0;padding:10px;border:1px solid var(--line-2);border-radius:8px;background:var(--sheet);min-width:0}
.free-map-diagram svg{display:block;width:100%;max-height:320px;color:var(--cobalt)}
.free-map-point{fill:var(--cobalt);stroke:var(--sheet);stroke-width:1}
.free-map-line{fill:none;stroke:var(--cobalt);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.free-map-estimate{stroke-dasharray:6 4}
.free-map-diagram figcaption{margin-top:8px}
@media(max-width:520px){.free-view fieldset,.free-view .free-secret{padding:10px}.free-status-facts,.free-coordinate-row{grid-template-columns:minmax(0,1fr)}}

/* The manual is a separate, printable page; this remains a normal link. */
.mast .guide-link{display:inline-flex;align-items:center;justify-content:center;min-height:30px;max-width:100%;padding:6px 9px;border:1px solid var(--line-2);border-radius:var(--r);color:var(--ink-2);background:var(--sheet);font-size:11px;line-height:1.3;text-decoration:none;white-space:nowrap}
.mast .guide-link:hover{color:var(--cobalt);background:var(--cobalt-soft);border-color:var(--cobalt)}
@media(max-width:520px){body.rail-shell{grid-template-rows:auto minmax(0,1fr) auto}.rail-shell .mast{flex-wrap:wrap}.mast .mast-tools{max-width:100%;flex-wrap:wrap}.mast .guide-link{font-size:10px;padding:5px 7px}}
