/* Plan019 neutral tokens: shared by Admin, Reviewer, Vault and dialogs. */
:root{--shade-0:#000000;--shade-16:#101010;--shade-22:#161616;--shade-28:#1c1c1c;--shade-35:#232323;--shade-44:#2c2c2c;--shade-58:#3a3a3a;--shade-78:#4e4e4e;--shade-105:#696969;--shade-134:#868686;--shade-160:#a0a0a0;--shade-185:#b9b9b9;--shade-208:#d0d0d0;--shade-230:#e6e6e6;--shade-245:#f5f5f5;--shade-255:#ffffff;}
/* Shared dashboard components and behavior-preserving layout foundation.
   The visual system and responsive conversation rules follow below. */
:root{--bg:var(--shade-16);--surface:var(--shade-28);--surface2:var(--shade-35);--line:var(--shade-58);--text:var(--shade-230);--muted:var(--shade-160);--subtle:var(--shade-134);--accent:var(--shade-185);--blue:var(--shade-160);--amber:var(--shade-185);--danger:var(--shade-160);--sidebar:215px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:13px;color:var(--text);background:var(--bg);color-scheme:dark}
*{box-sizing:border-box}
body{margin:0}
button,input,textarea,select{font:inherit}
button{cursor:pointer;color:var(--text);border:1px solid var(--line);border-radius:7px;background:var(--surface2);padding:9px 13px;font-weight:550;line-height:1.4}
button:hover{background:var(--shade-58);border-color:var(--shade-105)}
button:disabled{opacity:.4;cursor:not-allowed}
button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
a{color:var(--blue);text-decoration:none}
textarea,input,select{color:var(--text);background:var(--shade-22);border:1px solid var(--line);border-radius:7px;padding:11px 12px;max-width:100%}
textarea{resize:vertical;width:100%;line-height:1.8}
input::placeholder,textarea::placeholder{color:var(--subtle)}
label{display:block;color:var(--shade-185);font-size:11px;font-weight:550;margin-bottom:8px}
h1,h2,h3,h4,p{margin-top:0}
h1{font-size:16px;font-weight:600;letter-spacing:-.3px;margin:0}
h2{font-size:24px;font-weight:600;letter-spacing:-.7px;margin-bottom:9px}
h3{font-size:15px;font-weight:600;margin-bottom:12px}
h4{font-size:13px;font-weight:600}
small{font-size:10px}
pre{font:12px/1.8 "Cascadia Code",ui-monospace,monospace;white-space:pre-wrap;overflow-wrap:anywhere;color:var(--shade-208)}
blockquote{padding:11px 14px;border-left:2px solid var(--shade-105);margin:12px 0;background:var(--shade-28);color:var(--shade-185);white-space:pre-wrap;line-height:1.8;font-size:11px}
details{margin:14px 0;border:1px solid var(--line);border-radius:7px;padding:11px 13px}
summary{color:var(--shade-185);font-size:11px;cursor:pointer}
details[open] summary{margin-bottom:13px}
details pre{max-height:420px;overflow:auto}
.app-shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);height:100dvh;min-width:0}
.sidebar{background:var(--shade-22);border-right:1px solid var(--line);padding:27px 12px 17px;display:flex;flex-direction:column;min-width:0}
.brand{display:flex;gap:12px;align-items:center;color:var(--shade-245);padding:0 15px 32px;font-size:26px;font-weight:600;letter-spacing:-1.5px}
.brand-mark{width:34px;height:34px;display:grid;place-items:center;border:1px solid var(--shade-105);border-radius:10px;font:29px Georgia,serif;color:var(--accent);background:var(--shade-44)}
.brand small{display:block;font-size:8px;letter-spacing:2px;color:var(--subtle);margin-top:3px}
.nav-caption{font-size:9px;letter-spacing:1.8px;color:var(--subtle);margin:0 16px 10px}
.nav-item{display:flex;align-items:center;gap:12px;padding:11px 13px;background:transparent;border-color:transparent;width:100%;text-align:left;font-size:12px;color:var(--muted);margin-bottom:4px}
.nav-item:hover{background:var(--shade-35)}
.nav-item.active{color:var(--shade-245);background:var(--shade-44);border-color:var(--shade-58)}
.nav-icon{width:18px;font-size:20px;line-height:1;color:var(--shade-160)}
.nav-item.active .nav-icon{color:var(--accent)}
.nav-count{margin-left:auto;min-width:18px;border-radius:5px;font-size:9px;background:var(--shade-58);padding:2px 5px;text-align:center;color:var(--shade-208)}
.nav-count:empty{display:none}
.nav-count.attention{background:var(--shade-58);color:var(--amber)}
.sidebar-bottom{margin-top:auto;padding-top:24px}
.runtime-status{display:flex;align-items:center;gap:10px;border-top:1px solid var(--line);padding:18px 11px 14px;margin-top:12px}
.status-dot{width:7px;height:7px;border-radius:50%;background:var(--subtle);flex:none}
.status-dot.ready{background:var(--accent)}
.status-dot.paused{background:var(--amber)}
.runtime-status strong{display:block;font-size:10px;font-weight:550}
.runtime-status small{display:block;margin-top:5px;color:var(--subtle);font-size:9px;line-height:1.6;overflow-wrap:anywhere}
.local-boundary{font-size:9px;color:var(--subtle);padding:0 11px}
.main-shell{display:flex;min-width:0;flex-direction:column;overflow:hidden}
.topbar{height:65px;flex:none;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:0 30px;background:var(--shade-22)}
.breadcrumb,.topbar-actions{display:flex;align-items:center;gap:14px;min-width:0}
.breadcrumb-root{font-size:11px;color:var(--subtle)}
.slash{color:var(--shade-78)}
.operator-avatar{display:grid;place-items:center;width:29px;height:29px;font-size:11px;background:var(--shade-58);border:1px solid var(--shade-78);border-radius:50%;color:var(--shade-208)}
.icon-button{width:31px;height:31px;padding:0;display:grid;place-items:center;background:transparent;color:var(--muted);font-size:18px;flex:none}
.work-status{font-size:10px;color:var(--accent)}
.connection-error{display:flex;justify-content:space-between;gap:14px;align-items:center;background:var(--shade-44);padding:12px 25px;font-size:11px;color:var(--shade-185);border-bottom:1px solid var(--shade-78)}
.connection-error button{background:transparent;border-color:var(--shade-78)}
#mainContent{flex:1;min-height:0;min-width:0;overflow:auto;outline:none}
.page{padding:30px;max-width:1600px;margin:auto;min-width:0}
.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:26px}
.page-head p{color:var(--muted);line-height:1.8;margin:0;font-size:12px}
.eyebrow{font-size:9px;text-transform:uppercase;letter-spacing:1.7px;color:var(--subtle);font-weight:600;margin-bottom:9px}
.button-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.primary{background:var(--accent);color:var(--shade-35);border-color:var(--accent);font-weight:650}
.primary:hover{background:var(--shade-208);border-color:var(--shade-208)}
.secondary{background:var(--shade-44);border-color:var(--shade-78);color:var(--shade-208)}
.danger{color:var(--danger);background:var(--shade-35);border-color:var(--shade-58)}
.subtle-button{border:0;background:transparent;color:var(--blue);padding:4px 0;font-size:11px}
.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:27px}
.metric{padding:20px;background:var(--surface2);border:1px solid var(--line);border-radius:10px;min-width:0}
.metric-label{color:var(--muted);font-size:11px;display:flex;justify-content:space-between;gap:9px}
.metric-label span{color:var(--shade-134);font-size:18px}
.metric-value{display:block;font-size:30px;font-weight:550;letter-spacing:-1px;margin:12px 0 5px}
.metric-note{font-size:10px;color:var(--subtle)}
.metric.attention .metric-value{color:var(--amber)}
.overview-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:21px;margin-bottom:25px}
.surface{background:var(--surface);border:1px solid var(--line);border-radius:10px;min-width:0;overflow:hidden}
.surface-head{padding:18px 20px;display:flex;justify-content:space-between;align-items:center;gap:14px;border-bottom:1px solid var(--line)}
.surface-head h3{margin:0}
.surface-head span{font-size:10px;color:var(--subtle)}
.surface-body{padding:20px}
.queue-row{display:flex;align-items:center;gap:13px;padding:16px 20px;border-bottom:1px solid var(--shade-44);min-width:0}
.queue-row:last-child{border:0}
.queue-icon{width:31px;height:31px;background:var(--shade-44);color:var(--amber);border-radius:7px;display:grid;place-items:center;font-size:17px;flex:none}
.queue-icon.memory{background:var(--shade-58);color:var(--accent)}
.queue-copy{flex:1;min-width:0}
.queue-copy strong{font-size:12px;font-weight:550;display:block}
.queue-copy p{font-size:11px;color:var(--muted);margin:6px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.queue-row button{font-size:10px;padding:6px 10px}
.live-summary{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--shade-58);font-size:12px}
.live-summary:last-child{border:0}
.live-summary span{color:var(--muted)}
.live-summary strong{font-weight:550;text-align:right}
.good{color:var(--accent)}
.warn{color:var(--amber)}
.muted{color:var(--muted);font-size:12px;line-height:1.8}
.subtle{color:var(--subtle)}
.tiny{font-size:10px}
.tag{display:inline-flex;align-items:center;border:1px solid var(--shade-78);border-radius:5px;padding:4px 7px;font-size:9px;color:var(--shade-208);background:var(--shade-44);white-space:nowrap}
.tag.teal{color:var(--shade-208);background:var(--shade-44);border-color:var(--shade-78)}
.tag.amber{color:var(--shade-208);background:var(--shade-44);border-color:var(--shade-78)}
.tag.red{color:var(--shade-185);background:var(--shade-44);border-color:var(--shade-58)}
.tag.neutral{color:var(--shade-160);background:var(--shade-35)}
.roster-table{width:100%;border-collapse:collapse;text-align:left}
.roster-table th{color:var(--subtle);font-weight:500;font-size:10px;padding:14px 20px;border-bottom:1px solid var(--line)}
.roster-table td{padding:17px 20px;font-size:12px;border-bottom:1px solid var(--shade-44)}
.roster-table tr:last-child td{border:0}
.roster-table tbody tr{cursor:pointer}
.roster-table tbody tr:hover{background:var(--shade-35)}
.identity{display:flex;align-items:center;gap:11px;min-width:0}
.avatar{width:35px;height:35px;display:grid;place-items:center;flex:none;border-radius:10px;background:var(--shade-58);border:1px solid var(--shade-78);font-size:12px;font-weight:600;color:var(--shade-208)}
.avatar.a1{background:var(--shade-58);border-color:var(--shade-78);color:var(--shade-208)}
.avatar.a2{background:var(--shade-58);border-color:var(--shade-78);color:var(--shade-208)}
.avatar.a3{background:var(--shade-58);border-color:var(--shade-78);color:var(--shade-208)}
.identity strong{display:block;font-size:12px;font-weight:550}
.identity small{display:block;font-size:10px;color:var(--muted);margin-top:4px}
.table-time{color:var(--muted);font-size:11px!important}
.workspace-grid{display:grid;grid-template-columns:287px minmax(0,1fr);height:100%;min-width:0;min-height:0}
.pair-rail{border-right:1px solid var(--line);background:var(--shade-28);display:flex;flex-direction:column;min-width:0;min-height:0}
.rail-head{padding:20px 17px 15px;border-bottom:1px solid var(--line)}
.rail-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}
.rail-title strong{font-size:12px}
.rail-title small{color:var(--subtle);font-size:10px}
.search-field{position:relative}
.search-field input{width:100%;padding-left:31px;background:var(--shade-35);font-size:12px;height:36px}
.search-field:before{content:"⌕";position:absolute;left:11px;top:7px;font-size:17px;color:var(--subtle)}
.rail-filters{display:flex;gap:6px;margin-top:12px}
.rail-filters button{font-size:10px;padding:5px 9px;background:transparent;border-color:transparent;color:var(--muted)}
.rail-filters button.active{background:var(--shade-58);color:var(--shade-230);border-color:var(--shade-78)}
.pair-list{overflow:auto;min-height:0;flex:1;padding:8px}
.pair-row{display:block;width:100%;border-color:transparent;background:transparent;text-align:left;padding:14px 10px;margin:4px 0;min-width:0}
.pair-row:hover{background:var(--shade-44)}
.pair-row.active{background:var(--shade-44);border-color:var(--shade-78);box-shadow:inset 2px 0 var(--accent)}
.pair-row-top{display:flex;align-items:flex-start;gap:10px}
.pair-row .avatar{width:34px;height:34px;border-radius:50%;font-size:11px}
.pair-row-text{min-width:0;flex:1}
.pair-row-text strong{font-size:12px;display:flex;justify-content:space-between;gap:8px}
.pair-row-text strong small{font-size:9px;font-weight:400;color:var(--subtle);white-space:nowrap}
.pair-row-text span{display:block;color:var(--shade-160);font-size:10px;margin-top:4px}
.pair-snippet{font-size:11px;line-height:1.6;color:var(--shade-160);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:11px 0 0;padding-left:44px}
.pair-footer{display:flex;gap:5px;padding:9px 0 0 44px;flex-wrap:wrap}
.pair-footer .tag{font-size:8px;padding:3px 5px}
.workpane{display:flex;flex-direction:column;min-width:0;min-height:0;background:var(--shade-22)}
.pair-toolbar{padding:18px 24px;display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid var(--line);background:var(--shade-28);flex:none;min-width:0}
.pair-toolbar .identity .avatar{width:40px;height:40px;border-radius:12px}
.pair-toolbar .identity strong{font-size:14px}
.pair-toolbar .identity small{color:var(--shade-160);margin-top:6px}
.pair-toolbar .button-row{flex:none}
.mobile-back{display:none}
.pair-tabs{display:flex;gap:23px;padding:0 24px;border-bottom:1px solid var(--line);background:var(--shade-28);flex:none;overflow:auto}
.pair-tabs button{border:0;border-radius:0;padding:14px 0;background:transparent;color:var(--muted);font-size:11px;white-space:nowrap}
.pair-tabs button.active{color:var(--accent);box-shadow:inset 0 -2px var(--accent)}
.tab-count{background:var(--shade-58);color:var(--shade-208);padding:1px 5px;border-radius:4px;margin-left:5px;font-size:9px}
.pair-content{flex:1;min-height:0;min-width:0;display:flex;flex-direction:column}
.chat-stream{flex:1;min-height:0;overflow:auto;padding:23px 30px}
.date-divider{display:flex;align-items:center;gap:14px;margin:7px 0 25px;color:var(--shade-160);font-size:9px;text-transform:uppercase;letter-spacing:.8px}
.date-divider:before,.date-divider:after{content:"";height:1px;background:var(--shade-58);flex:1}
.chat-message{display:flex;gap:10px;margin-bottom:20px;align-items:flex-end;max-width:82%}
.chat-message.candidate{margin-left:auto;flex-direction:row-reverse}
.chat-avatar{width:25px;height:25px;display:grid;place-items:center;flex:none;border-radius:50%;background:var(--shade-58);color:var(--shade-208);font-size:9px}
.candidate .chat-avatar{background:var(--shade-78);color:var(--shade-230)}
.bubble-wrap{min-width:0}
.bubble{background:var(--shade-44);border:1px solid var(--shade-78);border-radius:11px 11px 11px 2px;padding:13px 16px;color:var(--shade-230);line-height:1.8;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}
.candidate .bubble{background:var(--shade-44);border-color:var(--shade-78);border-radius:11px 11px 2px 11px;color:var(--shade-230)}
.message-meta{display:flex;gap:8px;align-items:center;color:var(--shade-134);font-size:9px;padding:6px 2px 0}
.candidate .message-meta{justify-content:flex-end;color:var(--shade-160)}
.message-meta button{padding:0;border:0;background:transparent;font-size:9px;color:var(--shade-185)}
.message-media{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}
.message-media img{max-width:230px;max-height:230px;border-radius:7px;border:1px solid var(--shade-105);object-fit:contain;cursor:zoom-in}
.history-controls{display:flex;justify-content:center;margin-bottom:18px}
.history-controls button{font-size:10px;padding:6px 12px;color:var(--shade-208);background:var(--shade-44)}
.history-note{text-align:center;font-size:10px;color:var(--subtle);margin-bottom:22px;line-height:1.8}
.compose-zone{border-top:1px solid var(--line);padding:16px 23px 18px;background:var(--shade-35);flex:none}
.compose-label{display:flex;align-items:center;justify-content:space-between;gap:13px;margin-bottom:11px;font-size:10px;color:var(--shade-185)}
.compose-label strong{font-size:11px;color:var(--shade-208);font-weight:500}
.compose-label span{color:var(--shade-160)}
.composer{background:var(--shade-28);border:1px solid var(--shade-78);border-radius:9px;overflow:hidden}
.composer:focus-within{border-color:var(--shade-134)}
.composer textarea{background:transparent;border:0;border-radius:0;padding:14px 16px;min-height:85px;max-height:190px;resize:vertical;font-size:12px;outline:none;display:block}
.compose-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border-top:1px solid var(--shade-58)}
.compose-left{display:flex;gap:12px;align-items:center;color:var(--shade-160);font-size:10px}
.attachment-button{width:29px;height:29px;font-size:16px;padding:0;display:grid;place-items:center;background:transparent;color:var(--shade-208)}
.compose-actions .primary{font-size:11px;padding:8px 13px}
.compose-actions kbd{font:9px system-ui;border:1px solid var(--shade-78);background:var(--shade-44);border-radius:3px;color:var(--shade-185);padding:2px 4px}
.composer-footnote{font-size:9px;color:var(--shade-160);margin:9px 2px 0;display:flex;justify-content:space-between;gap:12px}
.compose-media{padding:0 14px;display:flex;gap:10px;flex-wrap:wrap}
.attachment-preview{position:relative;margin-bottom:10px}
.attachment-preview img{width:62px;height:62px;object-fit:cover;border-radius:6px;border:1px solid var(--shade-105)}
.attachment-preview button{position:absolute;right:-6px;top:-5px;width:19px;height:19px;padding:0;border-radius:50%;background:var(--shade-78);border-color:var(--shade-134);font-size:12px;display:grid;place-items:center}
.prepared-bar{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:12px;background:var(--shade-58);border:1px solid var(--shade-105);border-radius:7px;padding:10px 12px}
.prepared-bar strong{font-size:11px;font-weight:550;color:var(--shade-230);display:block}
.prepared-bar small{color:var(--shade-185);font-size:9px;display:block;margin-top:4px}
.prepared-bar .button-row button{font-size:10px;padding:7px 11px}
.empty-state{padding:42px 26px;text-align:center;color:var(--muted);line-height:1.8;max-width:450px;margin:auto}
.empty-icon{width:45px;height:45px;margin:0 auto 16px;display:grid;place-items:center;font-size:22px;border-radius:12px;background:var(--shade-58);border:1px solid var(--shade-78);color:var(--shade-208)}
.empty-state h3{color:var(--shade-208);font-size:14px;margin-bottom:9px}
.empty-state p{font-size:12px;margin-bottom:18px}
.quiet-row{padding:23px;color:var(--muted);font-size:11px;line-height:1.8}
.center-empty{display:flex;align-items:center;justify-content:center;flex:1;min-height:220px}
.boot-state{display:flex;gap:11px;align-items:center;justify-content:center;height:50vh;color:var(--muted);font-size:12px}
.boot-state p{margin:0}
.spinner{width:15px;height:15px;border:2px solid var(--shade-78);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}
}
.draft-layout{display:grid;grid-template-columns:225px minmax(0,1fr);height:100%;min-height:0;min-width:0}
.draft-sidebar{border-right:1px solid var(--line);overflow:auto;background:var(--shade-28);padding:13px 9px}
.draft-item{width:100%;text-align:left;background:transparent;border-color:transparent;padding:13px 11px;margin-bottom:6px}
.draft-item.active{background:var(--shade-58);border-color:var(--shade-105)}
.draft-item strong{font-size:11px;display:flex;justify-content:space-between;gap:7px;align-items:center}
.draft-item small{display:block;color:var(--shade-185);font-size:9px;margin-top:8px}
.draft-item p{font-size:11px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;color:var(--shade-185);margin:9px 0 0}
.draft-editor{display:flex;flex-direction:column;min-width:0;min-height:0;overflow:auto;padding:24px 27px}
.editor-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:21px}
.editor-header h3{font-size:16px;margin:0 0 9px}
.editor-header .muted{font-size:10px}
.editor-state{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.draft-writing{flex:1;width:100%;min-height:230px;background:var(--shade-28);border-color:var(--shade-78);padding:20px;resize:none;line-height:1.9;font-size:13px}
.editor-footer{display:flex;justify-content:space-between;gap:16px;align-items:center;padding-top:16px;flex-wrap:wrap}
.editor-footer span{font-size:10px;color:var(--subtle)}
.freshness-notice{display:flex;gap:10px;padding:11px 13px;background:var(--shade-44);border:1px solid var(--shade-78);border-radius:7px;margin-bottom:15px;color:var(--shade-208);font-size:11px;line-height:1.7}
.freshness-notice strong{display:block;font-size:11px;font-weight:550}
.freshness-notice small{display:block;color:var(--shade-160);margin-top:3px}
.draft-more{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px;border-top:1px solid var(--line);padding-top:15px}
.draft-more button{font-size:10px;background:transparent;color:var(--shade-185)}
.scroll-panel{overflow:auto;padding:24px 26px;flex:1;min-height:0;min-width:0}
.review-card{background:var(--shade-35);border:1px solid var(--line);border-radius:9px;padding:20px;margin-bottom:15px;min-width:0}
.review-card-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px}
.review-card h4{margin:0;font-size:13px}
.review-card p{font-size:12px;line-height:1.9;white-space:pre-wrap;color:var(--shade-208)}
.question-number{color:var(--amber);font-size:10px;font-weight:600;margin-bottom:7px}
.review-card textarea{min-height:72px;font-size:12px;margin:12px 0}
.review-card .button-row{justify-content:flex-end}
.section-title{display:flex;justify-content:space-between;align-items:center;margin:6px 0 17px;gap:13px}
.section-title h3{margin:0}
.section-title span{font-size:10px;color:var(--subtle)}
.evidence-item{display:flex;gap:12px;padding:11px 0;border-bottom:1px solid var(--shade-58);font-size:11px;line-height:1.8;color:var(--shade-185)}
.evidence-item:last-child{border:0}
.evidence-item time{color:var(--shade-160);min-width:80px}
.evidence-item p{margin:0;white-space:pre-wrap;font-size:11px}
.state-transition{display:flex;gap:10px;align-items:center;padding:13px;border-radius:6px;background:var(--shade-35);margin-bottom:15px;font-size:12px;flex-wrap:wrap}
.state-transition span{color:var(--shade-160)}
.state-transition strong{font-weight:550;color:var(--shade-230)}
.context-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.context-card{background:var(--shade-35);border:1px solid var(--line);padding:20px;border-radius:9px;min-width:0}
.context-card h4{font-size:10px;text-transform:uppercase;color:var(--shade-185);letter-spacing:.8px;margin-bottom:14px}
.context-card .big{font-size:19px;font-weight:550;color:var(--shade-230)}
.context-card dl{margin:0}
.context-card dt{font-size:10px;color:var(--subtle);margin-top:15px}
.context-card dd{margin:6px 0 0;font-size:12px;color:var(--shade-208);line-height:1.8;overflow-wrap:anywhere}
.context-card.full{grid-column:1/-1}
.prose{font-size:12px;line-height:1.9;color:var(--shade-208);white-space:pre-wrap;overflow-wrap:anywhere}
.memory-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:21px}
.memory-toolbar select{font-size:12px;min-width:180px}
.memory-stats{display:flex;gap:20px;font-size:11px;color:var(--muted);margin-bottom:20px;flex-wrap:wrap}
.memory-stats strong{font-size:14px;color:var(--shade-230);margin-right:6px}
.memory-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}
.memory-card{background:var(--shade-35);border:1px solid var(--shade-78);border-radius:9px;padding:21px;min-width:0}
.memory-body{font-size:13px;line-height:1.9;white-space:pre-wrap;color:var(--shade-230);margin:16px 0}
.source-note{font-size:10px;color:var(--shade-160);display:flex;gap:12px;flex-wrap:wrap}
.memory-card textarea{margin:12px 0;min-height:65px;font-size:11px}
.backup-list{display:flex;flex-direction:column;gap:9px}
.backup-row{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:14px 15px;background:var(--shade-35);border:1px solid var(--line);border-radius:7px}
.backup-row strong{font-size:11px;font-weight:500}
.backup-row small{display:block;font-size:10px;color:var(--subtle);margin-top:5px}
.backup-row button{font-size:10px}
.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.setting-card{padding:23px}
.setting-card h3{font-size:15px;margin-bottom:12px}
.setting-card p{font-size:12px;color:var(--muted);line-height:1.8}
.field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.field{min-width:0}
.field input,.field select{width:100%;font-size:12px}
.field.full{grid-column:1/-1}
.field textarea{min-height:145px;font-size:12px}
.vault-layout{display:grid;grid-template-columns:255px minmax(0,1fr);height:100%;min-height:0;min-width:0}
.vault-list{overflow:auto;border-right:1px solid var(--line);padding:15px;background:var(--shade-28)}
.vault-list button{display:block;text-align:left;width:100%;padding:12px;border-color:transparent;background:transparent;margin-bottom:4px}
.vault-list button.active{background:var(--shade-58);border-color:var(--shade-105)}
.vault-list button strong{font-size:11px;display:block}
.vault-list button span{display:block;color:var(--subtle);font-size:9px;margin-top:5px}
.vault-editor{display:flex;flex-direction:column;min-height:0;min-width:0;padding:24px}
.vault-editor textarea{flex:1;min-height:250px;font:12px/1.8 "Cascadia Code",ui-monospace,monospace}
.vault-editor .editor-header{margin-bottom:14px}
.vault-editor .editor-footer{padding-top:14px}
.toast-region{position:fixed;right:24px;bottom:24px;display:flex;flex-direction:column;gap:10px;z-index:100;max-width:calc(100vw - 40px)}
.toast{display:flex;align-items:flex-start;gap:11px;background:var(--shade-58);border:1px solid var(--shade-105);color:var(--shade-230);box-shadow:0 8px 35px #0008;padding:15px 16px;border-radius:9px;font-size:12px;line-height:1.7;max-width:410px}
.toast.error{background:var(--shade-44);border-color:var(--shade-78);color:var(--shade-208)}
.toast button{padding:0;background:transparent;border:0;font-size:17px;color:inherit;margin-left:7px}
dialog{width:min(800px,calc(100vw - 40px));max-height:86dvh;border:1px solid var(--shade-105);border-radius:12px;background:var(--shade-35);color:var(--text);padding:0;box-shadow:0 25px 100px #0009}
dialog[open]{display:flex;flex-direction:column;overflow:hidden}
dialog[open] .dialog-header,dialog[open] .dialog-footer{flex:none}
dialog[open] .dialog-body{min-height:0;flex:1 1 auto}
dialog::backdrop{background:#060c16c9;backdrop-filter:blur(5px)}
.dialog-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:24px 26px;border-bottom:1px solid var(--line)}
.dialog-header h2{font-size:20px;margin:0}
.dialog-header .eyebrow{margin-bottom:8px}
.dialog-body{padding:24px 26px;overflow:auto;max-height:58dvh}
.dialog-footer{padding:16px 26px;display:flex;justify-content:flex-end;align-items:center;gap:10px;border-top:1px solid var(--line);flex-wrap:wrap}
.dialog-footer:empty{display:none}
.dialog-body pre{margin:0}
.dialog-body .field{margin-bottom:16px}
.preview-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:21px}
.preview-summary>div{padding:13px;background:var(--shade-58);border:1px solid var(--shade-105);border-radius:7px}
.preview-summary strong{display:block;font-size:17px;margin-bottom:5px}
.preview-summary span{font-size:10px;color:var(--muted)}
.mobile-nav{display:none}
.skip-link{position:fixed;left:15px;top:-100px;background:var(--accent);color:var(--shade-35);padding:10px;z-index:1000;border-radius:6px}
.skip-link:focus{top:15px}
.mono{font:11px "Cascadia Code",monospace;overflow-wrap:anywhere}
.load-skeleton{height:70px;margin:15px;border-radius:8px;background:var(--surface2);background-size:200%;animation:shimmer 1.6s infinite}
@keyframes shimmer{to{background-position:-200% 0}
}
[hidden]{display:none!important}
.screen-reader-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.wide-scroll{overflow:auto;max-width:100%}
.field-note{color:var(--subtle);font-size:10px;line-height:1.7;margin-top:7px}
.checkbox-label{display:flex;gap:9px;align-items:flex-start;line-height:1.7}
.checkbox-label input{margin-top:4px}
.job-row{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:15px 20px;border-bottom:1px solid var(--line);font-size:11px}
.job-row strong{display:block;margin-bottom:5px}
.job-row small{color:var(--subtle)}
.job-row:last-child{border:0}


@media(max-width:1200px){:root{--sidebar:190px}
.brand{padding-left:11px}
.nav-item{padding:11px;gap:9px}
.workspace-grid{grid-template-columns:250px minmax(0,1fr)}
.page{padding:25px}
.overview-grid{grid-template-columns:minmax(0,1.4fr) minmax(230px,1fr)}
.pair-toolbar{padding:16px 18px}
.draft-layout{grid-template-columns:180px minmax(0,1fr)}
.draft-editor{padding:21px 19px}
.roster-table td,.roster-table th{padding-left:16px;padding-right:16px}
.table-meeting{display:none}
}


@media(max-width:980px){:root{--sidebar:72px}
.sidebar{padding:24px 7px 17px}
.brand{padding:0 11px 30px}
.brand>span:last-child,.nav-caption,.nav-item>span:not(.nav-icon),.runtime-status>div,.local-boundary{display:none}
.nav-item{justify-content:center;padding:13px 0}
.nav-icon{font-size:22px}
.runtime-status{justify-content:center;padding:20px 0 8px}
.overview-grid{grid-template-columns:minmax(0,1fr)}
.metric{padding:17px}
.metrics{gap:11px}
.memory-grid,.settings-grid{grid-template-columns:minmax(0,1fr)}
.workspace-grid{grid-template-columns:240px minmax(0,1fr)}
.draft-layout{display:flex;flex-direction:column}
.draft-sidebar{border-right:0;border-bottom:1px solid var(--line);display:flex;gap:7px;flex:none;max-height:110px;overflow-x:auto;overflow-y:hidden;padding:9px}
.draft-item{flex:0 0 180px;margin:0;padding:10px}
.draft-item p{-webkit-line-clamp:1}
.draft-editor{flex:1;min-height:0}
.pair-toolbar .identity small{font-size:9px}
.pair-toolbar{padding:15px}
.pair-toolbar .identity .avatar{width:32px;height:32px}
.pair-toolbar .identity strong{font-size:12px}
.pair-tabs{gap:18px;padding:0 16px}
.chat-stream{padding:21px 18px}
.compose-zone{padding:15px 16px}
.chat-message{max-width:94%}
.context-grid{grid-template-columns:minmax(0,1fr)}
}


@media(max-width:720px){.app-shell{display:block;height:calc(100dvh - 62px - env(safe-area-inset-bottom))}
.sidebar{display:none}
.main-shell{height:100%}
.topbar{height:55px;padding:0 17px}
.breadcrumb-root,.slash{display:none}
.topbar h1{font-size:14px}
.topbar-actions{gap:12px}
.work-status{font-size:9px;max-width:150px;overflow:hidden;white-space:nowrap}
.operator-avatar{width:25px;height:25px;font-size:10px}
.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;height:calc(62px + env(safe-area-inset-bottom));padding:5px 6px calc(5px + env(safe-area-inset-bottom));background:var(--shade-28);border-top:1px solid var(--shade-78);z-index:30;justify-content:space-around}
.mobile-nav button{display:flex;flex:1;flex-direction:column;align-items:center;gap:5px;font-size:8px;color:var(--shade-160);border:0;background:transparent;padding:4px 2px;min-width:0;font-weight:500}
.mobile-nav button span{font-size:19px;line-height:20px}
.mobile-nav button.active{color:var(--accent)}
.page{padding:22px 17px}
.page-head{gap:14px;flex-wrap:wrap;margin-bottom:20px}
.page-head h2{font-size:21px}
.page-head p{font-size:11px}
.metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:21px}
.metric{padding:15px}
.metric-value{font-size:26px;margin-top:10px}
.metric-label{font-size:10px}
.metric-label span{font-size:16px}
.metric-note{font-size:9px}
.overview-grid{gap:17px;margin-bottom:20px}
.surface-head,.surface-body{padding:16px}
.queue-row{padding:14px 16px;gap:10px}
.queue-copy strong{font-size:11px}
.queue-copy p{font-size:10px}
.queue-row button{padding:5px 8px;font-size:9px}
.roster-table th{font-size:9px;padding:12px}
.roster-table td{padding:13px 12px}
.table-stage,.table-time{display:none}
.roster-table .identity .avatar{width:31px;height:31px;font-size:10px}
.roster-table .identity strong{font-size:11px}
.roster-table .identity small{font-size:9px}
.workspace-grid{display:flex;flex-direction:column;height:100%}
.pair-rail{width:100%;border-right:0;height:100%;flex:none}
.workpane{height:100%;flex:1}
.workspace-grid.mobile-detail .pair-rail{display:none}
.workspace-grid:not(.mobile-detail) .workpane{display:none}
.rail-head{padding:20px 18px 14px}
.rail-title strong{font-size:14px}
.pair-list{padding:8px 12px}
.pair-row{padding:16px 12px}
.pair-row .avatar{width:40px;height:40px;font-size:12px}
.pair-row-text strong{font-size:13px}
.pair-row-text span{font-size:11px}
.pair-snippet{padding-left:50px;font-size:12px;margin-top:9px}
.pair-footer{padding-left:50px}
.mobile-back{display:grid;flex:none}
.pair-toolbar{padding:13px 14px;gap:10px}
.pair-toolbar .identity{gap:8px;flex:1;min-width:0}
.pair-toolbar .identity strong{font-size:13px}
.pair-toolbar .identity small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:210px;font-size:9px}
.pair-toolbar .button-row{gap:7px}
.pair-toolbar .button-row>button:not(.icon-button){font-size:10px;padding:7px 9px}
.pair-toolbar .identity .avatar{display:none}
.pair-tabs{padding:0 14px;gap:20px}
.pair-tabs button{font-size:10px;padding:12px 0}
.chat-stream{padding:20px 14px}
.bubble{font-size:12px;line-height:1.8;padding:12px 14px}
.chat-message{gap:8px;max-width:97%;margin-bottom:20px}
.chat-avatar{width:22px;height:22px;font-size:8px}
.message-meta{font-size:8px;gap:7px}
.message-media img{max-width:190px;max-height:190px}
.compose-zone{padding:11px 12px 14px}
.compose-label{font-size:9px;margin-bottom:8px}
.compose-label strong{font-size:10px}
.compose-label>span{display:none}
.composer textarea{min-height:72px;max-height:135px;font-size:12px;padding:11px 13px}
.compose-actions{padding:8px;gap:6px}
.compose-left{gap:8px;font-size:9px}
.compose-actions kbd{display:none}
.composer-footnote{font-size:8px;line-height:1.6;margin-top:7px}
.prepared-bar{padding:9px 10px;gap:9px;flex-wrap:wrap}
.prepared-bar strong{font-size:10px}
.prepared-bar small{font-size:8px}
.prepared-bar .button-row{margin-left:auto}
.prepared-bar .button-row button{font-size:9px;padding:6px 9px}
.draft-sidebar{max-height:104px}
.draft-item{flex-basis:170px}
.draft-editor{padding:18px 15px}
.draft-writing{padding:15px;min-height:200px;font-size:12px}
.editor-header{gap:11px;margin-bottom:14px}
.editor-header h3{font-size:14px}
.editor-header .button-row button{font-size:10px}
.editor-footer{gap:10px;align-items:flex-start}
.editor-footer .button-row{width:100%}
.editor-footer .button-row button{flex:1;font-size:10px}
.draft-more{gap:7px}
.draft-more button{font-size:9px;padding:7px}
.scroll-panel{padding:20px 15px}
.review-card{padding:16px}
.review-card .button-row button{font-size:10px}
.context-card{padding:17px}
.context-card dd{font-size:11px}
.memory-toolbar{gap:8px}
.memory-toolbar select{width:100%;min-width:0}
.memory-toolbar button{font-size:10px}
.memory-card{padding:17px}
.memory-body{font-size:12px}
.memory-stats{gap:15px;font-size:10px}
.setting-card{padding:19px}
.field-grid{grid-template-columns:minmax(0,1fr)}
.field.full{grid-column:auto}
.vault-layout{display:flex;flex-direction:column}
.vault-list{display:flex;gap:6px;overflow:auto;border-right:0;border-bottom:1px solid var(--line);max-height:104px;flex:none;padding:9px}
.vault-list button{min-width:170px;margin:0}
.vault-editor{padding:18px 15px;flex:1;min-height:0}
.vault-editor textarea{font-size:11px}
.toast-region{right:12px;bottom:calc(75px + env(safe-area-inset-bottom));max-width:calc(100vw - 24px)}
.toast{font-size:11px;padding:12px 13px}
.connection-error{padding:11px 15px;font-size:10px;line-height:1.7}
dialog{width:calc(100vw - 24px);max-height:85dvh}
.dialog-header{padding:19px 18px}
.dialog-header h2{font-size:18px}
.dialog-body{padding:19px 18px;max-height:57dvh}
.dialog-footer{padding:13px 18px}
.dialog-footer button{font-size:11px}
.preview-summary{gap:8px}
.preview-summary>div{padding:11px}
.preview-summary span{font-size:9px}
.empty-state{padding:34px 21px}
.evidence-item{display:block}
.evidence-item time{display:block;margin-bottom:7px}
.settings-grid{gap:16px}
.job-row{padding:14px 16px}
}


@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;scroll-behavior:auto!important}
}

.overview-grid{align-items:start}


@media(max-width:720px){:root{font-size:14px}
.muted,.page-head p{font-size:12px}
.bubble,.prose,.review-card p,.memory-body{font-size:14px}
.tiny,.tag,.metric-note,.metric-label,.source-note,.history-note,.message-meta,.composer-footnote,.compose-label,.compose-left,.pair-row-text span,.pair-footer .tag,.nav-count,.draft-item small,.editor-footer span,.field-note,.section-title span,.surface-head span,.pair-toolbar .identity small,.dialog-body summary{font-size:11px}
button:not(.icon-button):not(.attachment-button){min-height:44px;font-size:12px}
.icon-button,.attachment-button{width:40px;height:40px}
.mobile-nav button{font-size:10px!important;min-height:44px!important;padding:2px!important}
.compose-actions .primary,.prepared-bar .button-row button{font-size:11px}
.pair-tabs button{min-height:44px;font-size:12px}
.search-field input{height:44px;font-size:13px}
.message-meta button{min-height:24px!important;font-size:11px!important}
.pair-row-text strong{font-size:14px}
.pair-snippet{font-size:12px}
.compose-left kbd{display:none}
.composer textarea,.draft-writing{font-size:14px}
.attachment-preview button{min-height:26px!important;width:26px;height:26px;font-size:15px!important}
.compose-actions .primary{padding:9px 11px}
.compose-label strong{font-size:12px}
.compose-left{gap:8px}
.queue-copy p,.queue-copy strong{font-size:12px}
.pair-toolbar .button-row>button{font-size:11px}
.prepared-bar{flex-wrap:wrap}
.composer-footnote{display:block}
.composer-footnote span:last-child{display:none}
.preview-summary span{font-size:11px}
.vault-list button span,.draft-item p,.roster-table .identity small{font-size:11px}
.rail-filters button{font-size:12px}
.date-divider{font-size:11px}
.pair-row-text strong small{font-size:11px}
.mobile-nav{height:calc(66px + env(safe-area-inset-bottom))}
.app-shell{height:calc(100dvh - 66px - env(safe-area-inset-bottom))}
}


.pair-toolbar .identity>div{min-width:0}
.pair-toolbar .identity strong{overflow-wrap:anywhere}
.pair-toolbar .identity small{max-width:100%}

@media(max-width:720px){.icon-button,.attachment-button{width:44px;height:44px}
.field input,.field select{min-height:44px}
.evidence-item input[type=checkbox]{min-width:22px;min-height:22px}
.checkbox-label{font-size:13px}
.checkbox-label input{min-width:20px;min-height:20px}
.draft-more button{flex:1 1 auto}
}

.dialog-body>img{display:block;max-width:100%;max-height:53vh;margin:auto;object-fit:contain}
.page>.search-field{max-width:380px;margin-bottom:23px}
.draft-editor>.muted{margin:14px 0 0}
.context-card>.muted,.review-card>.muted:last-child{margin-bottom:0}
.dialog-body .source-note{margin-top:12px}
.topbar-actions{flex:none}
#pageTitle{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

@media(max-width:720px){.breadcrumb{gap:9px}
#pageTitle{max-width:160px}
.work-status{position:fixed;top:62px;right:13px;max-width:230px;padding:8px 11px;background:var(--shade-58);border:1px solid var(--shade-78);border-radius:6px;z-index:20;font-size:11px}
}


.revision-images{display:grid;gap:12px;margin-bottom:12px}
.revision-image{display:flex;gap:14px;align-items:center;border:1px solid var(--line);padding:12px;border-radius:10px;min-width:0}
.revision-image img{width:92px;height:92px;object-fit:contain;background:var(--shade-16);border-radius:6px}
.revision-image>div{min-width:0;flex:1}
.revision-image strong{display:block;overflow-wrap:anywhere;font-size:13px;margin-bottom:8px}
.attachment-preview{position:relative}
.attachment-preview>button{position:static!important;padding:4px!important;min-width:28px;min-height:28px}
.attachment-preview>img{display:block}


.request-meta{display:grid;grid-template-columns:150px minmax(0,1fr);gap:8px 14px;font-size:13px}
.request-meta dt{color:var(--muted)}
.request-meta dd{margin:0;overflow-wrap:anywhere}

@media(max-width:720px){.request-meta{grid-template-columns:1fr}
.request-meta dd{margin-bottom:8px}
.revision-image .button-row{flex-wrap:wrap}
.attachment-preview>button{min-width:44px;min-height:44px}
}


.history-search{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:12px 22px;border-bottom:1px solid var(--line);background:var(--surface);flex:none}
.history-search input{flex:1;min-width:150px}
.history-search>span{width:100%;font-size:11px;color:var(--muted)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

@media(max-width:720px){.history-search{padding:10px 14px}
.history-search input{min-height:44px}
.history-search .button-row{flex-wrap:nowrap}
}


/* Short windows scroll the conversation pane instead of shrinking its reader to padding. */
.workpane:has(.chat-stream){overflow-y:auto}
.chat-stream{min-height:180px}


@media(max-height:740px){.pair-content:has(.chat-stream){flex:0 0 auto}
.pair-content:has(.chat-stream) .chat-stream{flex:0 0 240px;height:240px;min-height:240px}
.workpane:has(.chat-stream){overflow-y:auto}
.compose-zone{flex:none}
.history-search{padding-top:8px;padding-bottom:8px}
}

.preserved-examples{margin-top:20px}


.image-read-error{flex-basis:100%;padding:12px;border:1px solid var(--danger);border-radius:8px;background:var(--shade-35);color:var(--text)}
.image-read-error p{font-size:12px;line-height:1.6;margin-bottom:8px}


/* Recovery states and the searchable document picker. */
.read-notice{padding:12px 16px;border:1px solid var(--shade-105);background:var(--shade-44);color:var(--shade-208);border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;flex:none;overflow-wrap:anywhere}

.read-notice button{flex:none}
.pair-content>.read-notice{margin:8px 12px}
.compose-zone>.image-read-error{margin-bottom:12px}

.vault-list{display:flex;flex-direction:column;padding:0;min-height:0;overflow:hidden}

.vault-filter-controls{display:grid;gap:6px;padding:14px;border-bottom:1px solid var(--line);flex:none}

.vault-filter-controls label{font-size:12px;color:var(--muted)}
.vault-filter-controls input,.vault-filter-controls select{width:100%;min-width:0;min-height:40px}

.vault-results{overflow:auto;min-height:0;padding:10px;flex:1}
.vault-group h3{font-size:11px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:18px 8px 8px}

.vault-results button{display:block;width:100%;min-width:0;text-align:left;background:transparent;border-color:transparent;padding:12px;margin-bottom:4px;overflow-wrap:anywhere}

.vault-results button.active{background:var(--shade-58);border-color:var(--shade-105)}
.vault-results button strong{display:block;font-size:13px}
.vault-results button span{display:block;font-size:11px;color:var(--muted);margin-top:4px}

.vault-result-count{font-size:12px;color:var(--muted);margin:4px 8px}
.vault-mobile-picker{display:none}

#dialogBody:has(#vaultPickerResults){display:flex;flex-direction:column;overflow:hidden;padding:0;min-height:0}
#vaultPickerResults{max-height:42dvh;min-height:100px}

.nav-item:focus-visible{outline:2px solid var(--accent);outline-offset:-3px}

dialog[open]:has(#vaultPickerResults){display:flex;flex-direction:column;max-height:calc(100dvh - 24px);overflow:hidden}

dialog:has(#vaultPickerResults) .dialog-header,dialog:has(#vaultPickerResults) .dialog-footer{flex:none}

dialog:has(#vaultPickerResults) #dialogBody{flex:1;max-height:none}

#vaultPickerResults{min-height:48px}


@media(max-height:500px){dialog:has(#vaultPickerResults) .dialog-header,dialog:has(#vaultPickerResults) .dialog-footer{padding:10px 18px}
dialog:has(#vaultPickerResults) .eyebrow{margin-bottom:4px}
}


@media(max-width:720px){.vault-list{display:none}
.vault-mobile-picker{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 15px;border-bottom:1px solid var(--line);flex:none}
.vault-mobile-picker>span{min-width:0;font-size:13px;overflow-wrap:anywhere}
.vault-mobile-picker small{display:block;font-size:11px;color:var(--muted)}
.vault-mobile-picker button{flex:none}
.vault-filter-controls input,.vault-filter-controls select{min-height:44px}
.read-notice{flex-wrap:wrap}
#vaultPickerResults{max-height:35dvh}
.vault-results button{min-width:0;width:100%}
}


/* Workspace and conversation components: presentation stays separate from flow. */
.workspace-hidden{display:none!important}

.sidebar{overflow-y:auto}

.workspace-switch{display:flex;gap:3px;padding:3px;background:var(--bg);border:1px solid var(--line);border-radius:8px}

.workspace-switch button{flex:1;border-color:transparent;background:transparent;color:var(--muted);font-size:11px;line-height:1.4;padding:8px 9px}

.workspace-switch button:hover{background:var(--surface2);color:var(--text)}

.workspace-switch button[aria-pressed="true"]{background:var(--surface2);color:var(--text);border-color:var(--line)}

.workspace-switch-sidebar{margin:0 8px 23px}

.workspace-switch-mobile{display:none}

.conversation-layout{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;overflow:auto}

.conversation-layout .chat-stream{flex:1 1 240px;min-height:180px;height:auto;overscroll-behavior:contain}

.conversation-layout .compose-zone{flex:0 0 auto;max-height:min(60dvh,560px);overflow:auto;overscroll-behavior:contain;background:var(--surface)}

.chat-turn-controls{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:10px;margin-bottom:12px}

.chat-turn-controls .button-row{gap:8px}

.chat-turn-controls p{margin:0;color:var(--muted);line-height:1.6;font-size:12px}

.chat-reply-panel{border:1px solid var(--line);border-radius:9px;background:var(--bg);overflow:hidden;margin-top:12px}

.chat-reply-panel>header,.chat-reply-panel>.reply-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px}

.chat-reply-panel h3{margin:0;font-size:13px}

.chat-reply-editor{display:block;width:100%;min-height:110px;max-height:35dvh;resize:vertical;background:transparent;border:0;border-radius:0;padding:13px 15px;font-size:14px;line-height:1.8}

.chat-reply-editor textarea{display:block;min-height:110px;max-height:35dvh;background:transparent;font-size:14px;line-height:1.8}

.chat-reply-editor:focus-visible{outline-offset:-3px}

.reply-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px;padding:10px 12px;border-top:1px solid var(--line)}

.reply-actions>span,.reply-actions>p{flex:1;min-width:120px;color:var(--muted);font-size:11px;line-height:1.6;margin:0}

.chat-inline-question{padding:14px;margin:12px 0;border:1px solid var(--shade-78);background:var(--shade-35);border-radius:8px}

.chat-inline-question h3{font-size:13px;margin-bottom:8px;color:var(--amber)}

.chat-inline-question p{font-size:13px;line-height:1.7;margin-bottom:12px;overflow-wrap:anywhere}

.chat-inline-question textarea{min-height:80px;margin-bottom:10px;font-size:13px}

.chat-inline-question .button-row{justify-content:flex-end}

.chat-guidance,.manual-entry,.pending-inputs{margin:10px 0;background:transparent}

.chat-guidance>summary,.manual-entry>summary,.pending-inputs>summary{font-size:12px;color:var(--muted)}

.chat-guidance textarea{min-height:80px;max-height:200px;font-size:13px;line-height:1.7}

.manual-entry textarea{min-height:90px;max-height:210px;font-size:14px;line-height:1.7}

.manual-entry .button-row{margin-top:10px;justify-content:flex-end}

.manual-entry .composer{margin-top:10px}

.pending-inputs label{font-size:12px;color:var(--text);line-height:1.7}

.pending-inputs input[type="checkbox"]{flex:none;margin-top:4px}

.pending-inputs .checkbox-label{margin:10px 0;overflow-wrap:anywhere}

.chat-reply-panel details{border-width:0 0 1px;border-radius:0;margin:0}

.chat-reply-panel details:last-child{border-bottom:0}



@media(max-width:980px) and (min-width:721px){
  .workspace-switch-sidebar{flex-direction:column;margin:0 0 20px;padding:2px}

  .workspace-switch-sidebar button{padding:9px 2px;font-size:9px}

}


@media(max-width:720px){
  .topbar{padding:0 12px;gap:8px}

  .topbar-actions{gap:6px}

  .workspace-switch-mobile{display:flex;flex:none}

  .workspace-switch-mobile button{font-size:10px;min-height:38px;padding:7px 8px}

  #pageTitle{max-width:130px;font-size:13px}

  .breadcrumb{gap:6px;flex:1}

  .topbar:has(#environmentBadge:not([hidden])) #pageTitle{max-width:90px}

  .conversation-layout .chat-stream{flex-basis:200px;min-height:180px;padding:18px 14px}

  .conversation-layout .compose-zone{max-height:60dvh;padding:12px}

  .chat-turn-controls{gap:8px;margin-bottom:9px}

  .chat-turn-controls>.button-row{width:100%}

  .chat-turn-controls .primary{margin-left:auto}

  .chat-reply-editor{min-height:100px;font-size:14px;padding:11px 13px}

  .chat-reply-panel>header,.chat-reply-panel>.reply-heading{padding:11px 13px}

  .reply-actions{gap:7px;padding:9px}

  .reply-actions>span,.reply-actions>p{flex-basis:100%;font-size:11px}

  .chat-inline-question{padding:12px}

  .chat-guidance,.manual-entry,.pending-inputs{padding:10px 11px}

  .chat-guidance>summary,.manual-entry>summary,.pending-inputs>summary{font-size:12px;min-height:24px}

  .pending-inputs input[type="checkbox"]{min-width:20px;min-height:20px}

  .pending-inputs .checkbox-label{gap:9px;font-size:13px}

}


@media(max-height:600px){
  .conversation-layout{overflow:auto}

  .conversation-layout .chat-stream{flex:0 0 180px;min-height:180px;height:180px}

  .conversation-layout .compose-zone{max-height:none;overflow:visible}

}


/* Reviewer conversations fill the workspace; system navigation belongs to Admin. */
html[data-workspace-mode="reviewer"] .sidebar{display:none}

html[data-workspace-mode="reviewer"] .workspace-switch-mobile{display:flex}

html[data-workspace-mode="reviewer"] .app-shell{grid-template-columns:minmax(0,1fr)}


@media(min-width:721px){html[data-workspace-mode="reviewer"] .workspace-grid{grid-template-columns:290px minmax(0,1fr)}
}

.chat-reply-panel{padding:14px 18px;flex:none;max-height:48dvh;overflow:auto}

.chat-reply-panel .section-title{margin:0 0 8px}

.chat-reply-panel textarea{width:100%;min-width:0;resize:vertical}

.chat-pending-input{padding:10px 18px;flex:none}

.chat-guidance textarea,.manual-entry textarea{width:100%;min-width:0}

.manual-entry{flex:none}


@media(max-height:600px){.chat-reply-panel{max-height:none;overflow:visible}
}

.chat-previous-replies article { padding: 12px 0; border-top: 1px solid var(--line); }

.previous-reply-text { white-space: pre-wrap; overflow-wrap: anywhere; font: inherit; margin: 8px 0; }

html,body{height:100%;overflow:hidden}


@media(max-width:720px){
  .workpane:has(.conversation-layout){overflow:hidden}

  .pair-content:has(.conversation-layout){flex:1;min-height:0;overflow:hidden}

  .conversation-layout .chat-stream{flex:0 0 auto;height:auto;min-height:180px;overflow:visible}

  .conversation-layout .compose-zone,.conversation-layout .chat-reply-panel{max-height:none;overflow:visible}

}


/* ─────────────────────────────────────────────────────────────────────────
   Elys · minimal dark visual system
   Palette, typography, shared surfaces, then conversation layout. Earlier
   selectors retain operational behavior; these rules define the presentation.
   ───────────────────────────────────────────────────────────────────────── */
:root {
  --bg: var(--shade-16);
  --surface: var(--shade-16);
  --surface2: var(--shade-28);
  --surface3: var(--shade-35);
  --line: var(--shade-44);
  --line-soft: var(--shade-35);
  --text: var(--shade-230);
  --muted: var(--shade-160);
  --subtle: var(--shade-134);
  --accent: var(--shade-185);
  --blue: var(--shade-208);
  --amber: var(--shade-185);
  --danger: var(--shade-185);
  --sidebar: 208px;
  font-size: 14px;
  line-height: 1.5;
}
/* Focus may scroll an overflow:hidden root programmatically. Keep the shell
   anchored while the conversation, editors and dialogs own their scrolling. */
html { overflow: clip; }
body { position: fixed; inset: 0; width: 100%; overflow: clip; }
button {
  padding: 9px 13px;
  border-radius: 8px;
  background: var(--surface2);
  font-size: 13px;
  font-weight: 500;
  transition: background-color 120ms, border-color 120ms, color 120ms;
}
button:hover { background: var(--surface3); border-color: var(--shade-58); }
button:disabled { opacity: .42; }
input, textarea, select { background: var(--bg); color: var(--text); border-color: var(--line); border-radius: 8px; }
textarea { line-height: 1.75; }
input::placeholder, textarea::placeholder { color: var(--subtle); opacity: 1; }
input[type="checkbox"] { accent-color: var(--accent); }
label { color: var(--muted); font-size: 12px; font-weight: 500; }
h1 { font-size: 15px; font-weight: 550; }
h2 { font-size: 27px; font-weight: 550; letter-spacing: -.9px; }
h3, h4 { font-weight: 550; }
small { font-size: 11px; }
pre, blockquote { color: var(--muted); }
blockquote { background: var(--bg); border-color: var(--shade-78); font-size: 13px; }
summary { font-size: 12px; color: var(--muted); line-height: 1.6; }
summary:hover { color: var(--text); }
details { padding: 12px 14px; border-radius: 8px; }
details[open] > summary { margin-bottom: 14px; }
.ui-icon { display: block; width: 18px; height: 18px; flex: none; stroke-width: 1.6; }
.primary { background: var(--text); color: var(--shade-28); border-color: var(--text); font-weight: 600; }
.primary:hover { background: var(--shade-255); border-color: var(--shade-255); color: var(--shade-16); }
.secondary { background: var(--surface2); border-color: var(--shade-58); color: var(--text); }
.danger { color: var(--danger); background: var(--shade-28); border-color: var(--shade-58); }
.subtle-button { background: transparent; color: var(--muted); font-size: 12px; }
.muted { color: var(--muted); font-size: 13px; line-height: 1.75; }
.tiny { font-size: 11px; }
.tag { border-color: var(--line); background: var(--surface2); color: var(--muted); font-size: 10px; padding: 3px 7px; }
.tag.teal { color: var(--shade-185); background: var(--shade-35); border-color: var(--shade-58); }
.tag.amber { color: var(--amber); background: var(--shade-35); border-color: var(--shade-58); }
.tag.red { color: var(--danger); background: var(--shade-35); border-color: var(--shade-58); }
.tag.neutral { color: var(--muted); background: var(--surface2); }
.avatar { width: 36px; height: 36px; border-radius: 50%; background: var(--shade-44); border-color: var(--shade-58); color: var(--shade-208); font-weight: 500; }
.avatar.a1 { background: var(--shade-44); border-color: var(--shade-58); color: var(--shade-208); }
.avatar.a2 { background: var(--shade-44); border-color: var(--shade-58); color: var(--shade-208); }
.avatar.a3 { background: var(--shade-44); border-color: var(--shade-58); color: var(--shade-208); }
.identity strong { font-size: 13px; font-weight: 550; }
.identity small { font-size: 11px; color: var(--muted); }

/* Navigation and shell */
.sidebar { background: var(--surface); padding: 25px 12px 18px; }
.brand { color: var(--text); padding: 0 12px 27px; font-size: 29px; font-weight: 550; gap: 10px; }
.brand-mark { background: var(--surface2); color: var(--accent); border-color: var(--shade-58); }
.brand-period { color: var(--accent); }
.brand small { font-size: 9px; letter-spacing: 1.7px; }
.nav-caption { font-size: 10px; letter-spacing: 1.4px; margin: 0 13px 12px; }
.nav-item { font-size: 13px; padding: 11px 12px; gap: 11px; background: transparent; }
.nav-item:hover { background: var(--surface2); border-color: transparent; }
.nav-item.active { background: var(--surface3); color: var(--text); border-color: transparent; }
.nav-icon { display: grid; place-items: center; width: 19px; height: 20px; color: var(--subtle); flex: none; }
.nav-item.active .nav-icon { color: var(--text); }
.nav-count { min-width: 20px; font-size: 10px; background: var(--shade-44); color: var(--muted); }
.nav-count.attention { background: var(--shade-44); color: var(--amber); }
.runtime-status strong { font-size: 11px; }
.runtime-status small, .local-boundary { font-size: 10px; line-height: 1.6; }
.local-boundary { display: block; }
.topbar { height: 64px; padding: 0 28px; background: var(--bg); gap: 18px; }
.breadcrumb { gap: 16px; }
.breadcrumb-root { font-size: 12px; }
.topbar-brand { display: none; color: var(--text); font-size: 25px; font-weight: 550; letter-spacing: -1.5px; }
.slash { color: var(--shade-78); }
.topbar-actions { gap: 12px; }
.icon-button { width: 36px; height: 36px; padding: 0; border-color: transparent; background: transparent; color: var(--muted); font-size: 20px; }
.icon-button:hover { background: var(--surface2); border-color: transparent; }
.work-status { color: var(--accent); font-size: 12px; }
.workspace-switch { background: var(--bg); border-color: var(--line); border-radius: 9px; }
.workspace-switch button { font-size: 12px; padding: 7px 12px; color: var(--subtle); }
.workspace-switch button[aria-pressed="true"] { background: var(--surface3); color: var(--text); border-color: transparent; }
.workspace-switch-sidebar { margin: 0 0 27px; }
html[data-workspace-mode="reviewer"] .topbar-brand { display: block; }
html[data-workspace-mode="reviewer"] .breadcrumb-root { display: none; }

/* Conversation workspace: one header, a generous reader and a compact dock. */
html[data-workspace-mode="reviewer"] .topbar { display:none; }
.workspace-grid, html[data-workspace-mode="reviewer"] .workspace-grid { grid-template-columns:280px minmax(0,1fr); }
.pair-rail { background:var(--shade-16); }
.rail-head { padding:26px 18px 12px; border:0; }
.rail-brand { display:block; width:fit-content; color:var(--text); text-decoration:none; font-size:32px; font-weight:600; letter-spacing:-2px; line-height:1; margin:0 10px 34px; }
.rail-brand span { color:var(--shade-160); }
.rail-title { margin:0 10px 18px; }
.rail-title strong { font-size:13px; letter-spacing:0; font-weight:500; color:var(--shade-208); }
.rail-title small { font-size:11px; color:var(--subtle); }
.search-field input { height:38px; padding:9px 12px; font-size:12px; border-color:var(--shade-44); background:transparent; }
.search-field:before { content:none; }
.rail-filters { margin-top:12px; gap:4px; }
.rail-filters button { padding:5px 9px; font-size:11px; color:var(--subtle); }
.rail-filters button.active { background:var(--shade-35); border-color:transparent; color:var(--shade-230); }
.pair-list { padding:4px 10px; }
.pair-row { padding:16px 12px; margin:2px 0; border:0; border-radius:9px; }
.pair-row.active { background:var(--shade-35); box-shadow:none; }
.pair-row:hover { background:var(--shade-28); }
.pair-row.active:hover { background:var(--shade-35); }
.pair-row-top { align-items:flex-start; gap:11px; }
.pair-row .avatar { width:32px; height:32px; margin-top:2px; font-size:10px; border:0; background:var(--shade-44); color:var(--shade-208); }
.pair-row-text { min-width:0; }
.pair-row-text strong { font-size:12px; font-weight:500; gap:5px; }
.pair-row-text strong small { font-size:10px; margin-left:auto; white-space:nowrap; color:var(--shade-134); }
.pair-row-text span { font-size:11px; color:var(--shade-160); }
.pair-snippet { margin:5px 0 0; padding:0; font-size:12px; line-height:1.55; font-weight:400; color:var(--shade-160); -webkit-line-clamp:2; white-space:normal; display:-webkit-box; -webkit-box-orient:vertical; overflow:hidden; }
.pair-indicator { display:inline-block; width:5px; height:5px; border-radius:50%; background:var(--shade-185); flex:none; }
.pair-indicator.attention { background:var(--shade-185); }
.rail-workspace { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:17px 22px; border-top:1px solid var(--shade-35); font-size:11px; color:var(--shade-134); }
.rail-workspace button { border:0; padding:6px 9px; background:transparent; font-size:12px; color:var(--shade-185); }
.workpane, .workpane:has(.chat-stream), .workpane:has(.conversation-layout) { background:var(--shade-22); overflow:hidden; }
.pair-toolbar { height:78px; padding:14px 36px; gap:14px; background:transparent; border-color:var(--shade-44); position:relative; z-index:4; }
.pair-toolbar .identity { flex:1; min-width:0; }
.pair-toolbar .identity .avatar { display:none; }
.pair-toolbar .identity strong { font-size:14px; font-weight:550; }
.pair-toolbar .identity small { margin-top:4px; font-size:11px; color:var(--shade-160); }
.pair-context { color:var(--shade-105); }
.thread-tools, .page-tools { position:relative; padding:0; border:0; background:transparent; border-radius:0; flex:none; }
.thread-tools summary, .page-tools summary { list-style:none; display:grid; place-items:center; min-width:36px; height:36px; padding:0 10px; margin:0!important; border-radius:7px; font-size:13px; cursor:pointer; color:var(--shade-185); }
.thread-tools summary { font-size:24px; }
.thread-tools summary::-webkit-details-marker, .page-tools summary::-webkit-details-marker { display:none; }
.thread-tools summary:hover, .page-tools summary:hover, .thread-tools[open]>summary, .page-tools[open]>summary { background:var(--shade-44); color:var(--shade-245); }
.page-tools-menu { position:absolute; z-index:35; right:0; top:calc(100% + 7px); width:220px; max-width:calc(100vw - 32px); display:flex; flex-direction:column; align-items:stretch; gap:2px; padding:6px; border:1px solid var(--shade-58); border-radius:10px; background:var(--shade-35); box-shadow:0 12px 35px #0005; }
.page-tools-menu button { display:block; width:100%; min-height:38px; border:0; text-align:left; padding:10px 12px; font-size:12px; background:transparent; }
.page-tools-menu button:hover { background:var(--shade-58); }
.mobile-workspace-switch { display:none!important; }
.page-head-actions { display:flex; align-items:center; gap:8px; }
.setting-card:has(.page-tools[open]) { overflow:visible; position:relative; z-index:5; }
.pair-tabs { padding:0 28px; background:transparent; }
.pair-content, .pair-content:has(.chat-stream), .pair-content:has(.conversation-layout) { flex:1; min-height:0; overflow:hidden; }
.conversation-layout { overflow:hidden; }
.chat-stream { padding:30px max(32px,calc((100% - 760px)/2)); }
.conversation-layout .chat-stream, .pair-content:has(.chat-stream) .conversation-layout .chat-stream { flex:1 1 0; height:auto; min-height:100px; overflow:auto; }
.date-divider { font-size:10px; text-transform:none; letter-spacing:.1px; margin:0 0 28px; gap:18px; color:var(--shade-134); }
.date-divider:before, .date-divider:after { background:transparent; }
.chat-message { max-width:88%; margin-bottom:28px; gap:0; }
.bubble { padding:0; border:0; border-radius:0; background:transparent; font-size:14px; line-height:1.8; color:var(--shade-230); }
.candidate .bubble { padding:13px 18px; border:0; border-radius:16px 16px 4px 16px; background:var(--shade-44); color:var(--shade-230); }
.message-meta { display:flex; align-items:center; gap:10px; margin:0 0 7px; min-height:20px; font-size:10px; color:var(--shade-134); }
.message-meta strong { font-size:11px; font-weight:500; color:var(--shade-185); }
.candidate .message-meta { justify-content:flex-end; color:var(--shade-134); }
.message-meta .message-details-button { opacity:0; padding:0 5px; margin-left:0; min-height:22px; font-size:17px; color:var(--shade-185); }
.chat-message:hover .message-details-button, .message-details-button:focus-visible { opacity:1; }
.chat-turn-controls { display:flex; align-items:center; gap:10px; margin:8px 0 0; }
.chat-turn-controls button { font-size:11px; padding:4px 8px; color:var(--shade-185); border-color:transparent; background:transparent; }
.chat-turn-controls label { display:flex; align-items:center; gap:7px; margin:0; font-size:11px; }
.chat-turn-controls input { margin:0; }
.chat-turn-controls .primary { color:var(--bg); background:var(--text); }
.history-controls { margin-bottom:24px; }
.history-controls button { background:transparent; border:0; color:var(--shade-160); font-size:11px; }
.history-note { font-size:11px; margin-bottom:20px; }
.history-search { display:block; flex:none; margin:0; padding:12px 28px; border:0; border-bottom:1px solid var(--shade-44); border-radius:0; background:transparent; }
.history-search-fields { display:flex; align-items:center; gap:8px; }
.history-search input { flex:1; min-width:0; font-size:13px; }
.history-search .button-row { flex:none; }
.conversation-actions { flex:0 0 auto; min-height:0; max-height:42dvh; overflow-y:auto; overscroll-behavior:contain; border:0; padding:0 max(32px,calc((100% - 760px)/2)) 14px; background:transparent; }
.chat-reply-panel { padding:14px 16px 9px; border:1px solid var(--shade-58); border-radius:14px; background:var(--shade-28); margin:0; max-height:none; overflow:visible; }
.chat-reply-panel:focus-within { border-color:var(--shade-105); }
.chat-reply-panel .section-title { margin:0 0 7px; }
.chat-reply-panel h3 { font-size:11px; color:var(--shade-185); font-weight:500; }
.chat-reply-panel .section-title span { font-size:10px; }
.chat-reply-editor { display:block; width:100%; min-height:76px; max-height:180px; background:transparent; border:0; border-radius:0; padding:3px 0; font-size:14px; line-height:1.75; resize:vertical; }
.chat-reply-editor:focus-visible { outline:0; box-shadow:none; }
.reply-footer { display:flex; align-items:flex-end; justify-content:space-between; gap:8px; margin:6px 0 0; }
.reply-actions { display:flex; gap:6px; padding:0; border:0; flex:none; }
.reply-actions button { padding:7px 11px; font-size:11px; min-height:32px; }
.reply-actions button:not(.primary) { background:transparent; border-color:transparent; color:var(--shade-160); }
.reply-options { margin:0; padding:0; border:0; background:transparent; border-radius:0; }
.reply-options>summary { list-style:none; display:grid; place-items:center; width:32px; height:32px; font-size:12px; letter-spacing:2px; border-radius:6px; cursor:pointer; margin:0!important; }
.reply-options>summary::-webkit-details-marker { display:none; }
.reply-options>summary:hover { background:var(--shade-44); }
.reply-footer:has(.reply-options[open]) { flex-wrap:wrap; }
.reply-options[open] { width:100%; }
.reply-tools-panel { padding:12px 0; }
.reply-tools-panel .chat-guidance { padding:0 0 12px; }
.reply-tools-panel .button-row button { font-size:12px; }
.reply-delivery { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:14px 0 8px; }
.chat-guidance, .manual-entry, .chat-previous-replies { padding:0; margin:0; border:0; background:transparent; border-radius:0; }
.manual-entry { margin-top:8px; }
.manual-entry>summary { list-style:none; width:fit-content; min-height:32px; display:flex; align-items:center; gap:7px; color:var(--shade-160); font-size:11px; cursor:pointer; }
.manual-entry>summary::-webkit-details-marker { display:none; }
.manual-entry>summary>span[aria-hidden] { font-size:19px; }
.manual-entry>.compose-zone { margin-top:9px; border:1px solid var(--shade-58); border-radius:12px; padding:14px; background:var(--shade-28); }
.conversation-layout .compose-zone { max-height:none; overflow:visible; }
.manual-entry-tools { display:flex; flex-wrap:wrap; gap:6px; margin-bottom:12px; }
.manual-entry-tools button { font-size:11px; padding:6px 9px; }
.manual-entry textarea { min-height:88px; max-height:240px; }
.manual-entry .compose-actions { padding:12px 0 0; border:0; }
.manual-entry .compose-actions .primary { margin-left:auto; }
.manual-entry .chat-guidance { padding:12px 0 0; }
.chat-guidance>summary, .chat-previous-replies>summary { font-size:11px; }
.chat-previous-replies { padding:10px 0 0; }
.chat-previous-replies article { padding:14px 0; }
.previous-reply-text { color:var(--text); line-height:1.8; margin:10px 0; }
.chat-pending-input { padding:16px; border:1px solid var(--shade-58); border-radius:14px; background:var(--shade-28); }
.pending-reply-title { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-bottom:12px; font-size:12px; color:var(--shade-208); }
.chat-pending-input>.chat-guidance { padding:0 0 12px; }
.chat-pending-input .button-row { justify-content:flex-end; }
.chat-inline-question { padding:18px; margin:0 0 12px; border-color:var(--shade-78); background:var(--shade-35); border-radius:14px; }
.selection-bar { padding:0 0 12px; margin:0; font-size:12px; }


/* Admin surfaces share the same palette, spacing and readable type. */
.page { padding: 34px; max-width: 1500px; }
.page-head { margin-bottom: 30px; }
.page-head p { font-size: 13px; max-width: 720px; }
.eyebrow { font-size: 10px; letter-spacing: 1.4px; font-weight: 500; }
.metrics { gap: 16px; margin-bottom: 28px; }
.metric { padding: 23px; background: var(--surface); }
.metric-label { font-size: 12px; }
.metric-label span { color: var(--subtle); }
.metric-value { font-size: 32px; font-weight: 500; margin: 14px 0 7px; }
.metric-note, .surface-head span, .field-note, .source-note { font-size: 11px; }
.overview-grid { gap: 24px; margin-bottom: 28px; }
.surface-head, .surface-body { padding: 20px 22px; }
.queue-row { padding: 18px 22px; border-color: var(--line-soft); }
.queue-copy strong { font-size: 13px; font-weight: 500; }
.queue-copy p, .queue-row button { font-size: 12px; }
.queue-icon { background: var(--shade-35); color: var(--amber); }
.queue-icon.memory { background: var(--shade-35); color: var(--accent); }
.live-summary { padding: 14px 0; font-size: 13px; border-color: var(--line); }
.roster-table th { font-size: 11px; padding: 15px 22px; }
.roster-table td { font-size: 13px; padding: 19px 22px; border-color: var(--line-soft); }
.roster-table tbody tr:hover { background: var(--surface2); }
.table-time { font-size: 12px !important; }
.scroll-panel { padding: 28px; }
.review-card, .context-card, .memory-card { background: var(--surface); border-color: var(--line); border-radius: 10px; padding: 22px; }
.review-card p, .prose, .memory-body { font-size: 14px; line-height: 1.85; color: var(--text); }
.review-card h4 { font-size: 14px; }
.review-card textarea, .field textarea { font-size: 14px; }
.section-title span, .editor-footer span, .question-number { font-size: 11px; }
.evidence-item, .evidence-item p { color: var(--muted); font-size: 12px; }
.evidence-item time { color: var(--subtle); }
.state-transition { background: var(--bg); font-size: 13px; }
.state-transition span { color: var(--muted); }
.state-transition strong, .context-card .big, .context-card dd { color: var(--text); }
.context-card h4 { color: var(--muted); font-size: 11px; }
.context-card dt { font-size: 11px; }
.context-card dd { font-size: 13px; }
.memory-toolbar select { font-size: 13px; }
.memory-stats { font-size: 12px; }
.memory-stats strong { color: var(--text); }
.memory-card textarea { font-size: 13px; }
.backup-row { background: var(--surface); }
.backup-row strong, .backup-row button { font-size: 12px; }
.backup-row small { font-size: 11px; }
.setting-card { padding: 25px; }
.setting-card p, .field input, .field select { font-size: 13px; }
.job-row { padding: 18px 22px; font-size: 12px; }
.draft-sidebar, .vault-list { background: var(--surface); }
.draft-item.active, .vault-list button.active, .vault-results button.active { background: var(--surface3); border-color: var(--shade-58); }
.draft-item strong { font-size: 12px; }
.draft-item small { font-size: 11px; color: var(--subtle); }
.draft-item p { font-size: 12px; color: var(--muted); }
.draft-writing { background: var(--surface); border-color: var(--line); font-size: 14px; }
.draft-more button { color: var(--muted); font-size: 12px; }
.vault-editor textarea { font-size: 13px; }
.vault-list button strong, .vault-results button strong { font-size: 13px; }
.vault-list button span, .vault-results button span { font-size: 11px; }
.compose-zone { background: var(--surface); }
.compose-label, .compose-label strong { color: var(--muted); font-size: 12px; }
.composer { background: var(--bg); border-color: var(--shade-58); border-radius: 10px; }
.composer:focus-within { border-color: var(--shade-105); }
.composer textarea { font-size: 14px; }
.compose-actions { border-color: var(--line); flex-wrap: wrap; }
.compose-actions .primary { font-size: 12px; }
.compose-left, .composer-footnote { color: var(--subtle); font-size: 11px; }
.attachment-button { color: var(--muted); }
.prepared-bar { background: var(--shade-35); border-color: var(--shade-58); }
.prepared-bar strong { color: var(--shade-208); font-size: 12px; }
.prepared-bar small { color: var(--shade-160); font-size: 11px; }
.prepared-bar .button-row button { font-size: 12px; }
.read-notice, .freshness-notice { border-color: var(--shade-58); background: var(--shade-35); color: var(--amber); }
.image-read-error { border-color: var(--shade-78); background: var(--shade-35); }
.connection-error { background: var(--shade-35); color: var(--danger); border-color: var(--shade-58); font-size: 12px; }
dialog { background: var(--surface); border-color: var(--shade-58); border-radius: 14px; }
dialog::backdrop { background: #060709c9; backdrop-filter: blur(4px); }
.preview-summary > div { background: var(--surface2); border-color: var(--line); }
.preview-summary span { font-size: 11px; }
.toast { background: var(--shade-35); border-color: var(--shade-78); color: var(--shade-230); font-size: 13px; box-shadow: 0 8px 30px #0005; }
.toast.error { background: var(--shade-35); border-color: var(--shade-78); color: var(--shade-208); }
.empty-icon { background: var(--surface2); border-color: var(--line); color: var(--muted); }
.empty-state h3 { color: var(--text); font-size: 16px; font-weight: 500; }
.empty-state p { font-size: 13px; }
.quiet-row, .boot-state { font-size: 12px; }
.load-skeleton { background: var(--surface2); animation: quiet-pulse 1.6s ease-in-out infinite alternate; }
@keyframes quiet-pulse { to { opacity: .5; } }

/* Responsive sizing: desktop rail, compact tablet navigation, phone list/detail. */
@media (max-width:1200px) and (min-width:981px) {
  .workspace-grid, html[data-workspace-mode="reviewer"] .workspace-grid { grid-template-columns:280px minmax(0,1fr); }
  .page { padding:28px; }
}
@media (max-width:980px) and (min-width:721px) {
  :root { --sidebar:72px; }
  .sidebar { padding:24px 7px 17px; }
  .local-boundary { display:none; }
  .brand { padding:0 11px 26px; }
  .nav-item { justify-content:center; padding:13px 0; }
  .workspace-switch-sidebar { flex-direction:column; margin:0 0 24px; padding:2px; }
  .workspace-switch-sidebar button { padding:9px 2px; font-size:10px; }
  .workspace-grid, html[data-workspace-mode="reviewer"] .workspace-grid { grid-template-columns:260px minmax(0,1fr); }
  .rail-head { padding:23px 16px 16px; }
  .pair-list { padding:8px; }
  .pair-row { padding:14px 9px; }
  .pair-row .avatar { width:33px; height:33px; font-size:11px; }
  .pair-row-top { gap:9px; }
  .pair-snippet, .pair-footer { padding-left:42px; }
  .pair-toolbar { padding:18px; gap:10px; }
  .pair-toolbar .identity .avatar { width:34px; height:34px; }
  .pair-toolbar .identity strong { font-size:14px; }
  .pair-toolbar .identity small { font-size:11px; }
  .pair-toolbar .button-row button { padding:8px 10px; font-size:12px; }
  .pair-tabs { gap:19px; padding:0 18px; }
  .chat-stream { padding:24px 18px; }
  .chat-message { max-width:96%; }
  .conversation-actions { padding:0 18px; }
  .history-search { padding:10px 18px; }
}
@media (max-width:720px) {
  .app-shell { height:calc(100dvh - 66px - env(safe-area-inset-bottom)); }
  .sidebar { display:none; }
  .topbar { height:60px; padding:0 16px; gap:8px; }
  .breadcrumb { flex:1; gap:10px; }
  .breadcrumb-root, .slash { display:none; }
  .topbar-brand { font-size:25px; }
  .topbar h1 { font-size:14px; }
  #pageTitle { max-width:150px; }
  .topbar-actions { gap:7px; }
  .workspace-switch-mobile { display:flex; flex:none; }
  .workspace-switch-mobile button { font-size:11px; min-height:34px; padding:6px 9px; }
  html[data-workspace-mode="reviewer"] .topbar #pageTitle { display:none; }
  html[data-workspace-mode="reviewer"] .app-shell { height:100dvh; }
  html[data-workspace-mode="reviewer"] .mobile-nav { display:none; }
  .topbar .icon-button { width:36px; height:40px; }
  .work-status { top:66px; background:var(--shade-35); border-color:var(--shade-78); font-size:11px; }
  .mobile-nav { background:var(--surface); border-color:var(--line); }
  .mobile-nav button { justify-content:center; color:var(--subtle); font-weight:400; border-radius:6px; }
  .mobile-nav button.active { color:var(--text); background:var(--surface2); }
  button:not(.icon-button):not(.attachment-button) { min-height:44px; font-size:13px; }
  input, select, textarea { font-size:16px; }
  .workspace-switch-mobile button { min-height:34px!important; font-size:11px!important; }
  .icon-button, .attachment-button { width:44px; height:44px; }
  .workspace-grid { height:100%; }
  .rail-head { padding:25px 20px 17px; }
  .rail-title { margin-bottom:20px; }
  .rail-title strong { font-size:23px; letter-spacing:-.7px; }
  .rail-filters { margin-top:13px; }
  .rail-filters button { min-height:36px!important; font-size:12px!important; }
  .rail-footnote { padding:13px 20px; font-size:11px; }
  .search-field input { height:44px; font-size:16px; }
  .search-field:before { top:9px; }
  .search-field>.ui-icon { top:14px; }
  .pair-list { padding:10px 12px; }
  .pair-row { padding:18px 11px; margin:3px 0; }
  .pair-row .avatar { width:41px; height:41px; font-size:13px; }
  .pair-row-top { gap:12px; }
  .pair-row-text strong { font-size:14px; }
  .pair-row-text strong small { font-size:11px; }
  .pair-row-text span { font-size:12px; }
  .pair-snippet { padding-left:53px; font-size:13px; margin-top:9px; }
  .pair-footer { padding-left:53px; }
  .pair-footer .tag { font-size:10px; }
  .mobile-back { display:grid; margin-left:-7px; }
  .pair-toolbar { padding:12px 16px; gap:10px; }
  .pair-toolbar .identity { gap:9px; flex:1; min-width:0; }
  .pair-toolbar .identity .avatar { display:none; }
  .pair-toolbar .identity strong { font-size:15px; }
  .pair-toolbar .identity small { font-size:11px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%; }
  .pair-toolbar .button-row { gap:6px; }
  .pair-toolbar .button-row>button:not(.icon-button) { font-size:12px; padding:8px 10px; }
  .pair-context { display:none; }
  .pair-tabs { padding:0 16px; gap:21px; }
  .pair-tabs button { min-height:44px; font-size:12px; padding:12px 0; }
  .conversation-layout { overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; padding-bottom:env(safe-area-inset-bottom); }
  .conversation-layout .chat-stream,
  .pair-content:has(.chat-stream) .conversation-layout .chat-stream { flex:0 0 auto; height:auto; min-height:200px; overflow:visible; padding:23px 16px; }
  .chat-stream { padding:22px 16px; }
  .chat-message { gap:8px; max-width:96%; margin-bottom:24px; }
  .chat-avatar { width:23px; height:23px; font-size:9px; }
  .bubble { font-size:14px; line-height:1.8; padding:12px 14px; border-radius:11px; }
  .candidate .bubble { border-radius:11px; }
  .message-meta { font-size:11px; gap:7px; }
  .message-meta button { min-height:28px!important; font-size:11px!important; }
  .message-media img { max-width:min(200px,100%); max-height:220px; }
  .date-divider { font-size:11px; margin-bottom:25px; }
  .history-search { padding:12px 16px; }
  .history-search>summary { min-height:24px; font-size:12px; }
  .history-search input { min-height:44px; font-size:16px; flex-basis:100%; }
  .conversation-actions { flex:0 0 auto; max-height:none; overflow:visible; padding:0 16px; }
  .chat-turn-controls { gap:8px; }
  .chat-turn-controls label { font-size:12px; min-height:36px; }
  .chat-turn-controls input { width:19px; height:19px; }
  .chat-turn-controls button { min-height:36px!important; font-size:12px!important; padding:6px 11px; }
  .conversation-actions>.chat-turn-controls .primary { min-height:44px!important; }
  .chat-pending-input { padding:16px 0; }
  .chat-reply-panel { max-height:none; overflow:visible; padding-top:18px; }
  .chat-reply-panel h3 { font-size:13px; }
  .chat-reply-editor { min-height:138px; max-height:none; font-size:16px; padding:13px 14px; }
  .reply-footer { align-items:flex-start; }
  .reply-footer>p { flex-basis:100%; font-size:11px; }
  .reply-actions { gap:8px; padding:12px 0; }
  .reply-actions>span, .reply-actions>p { flex-basis:100%; font-size:11px; }
  .chat-guidance, .manual-entry, .chat-previous-replies { padding:15px 0; }
  .chat-guidance>summary, .manual-entry>summary, .chat-previous-replies>summary { min-height:24px; font-size:12px; }
  .chat-guidance textarea, .manual-entry textarea, .chat-inline-question textarea { font-size:16px; }
  .chat-inline-question { padding:14px; }
  .pending-inputs input[type="checkbox"] { min-width:20px; min-height:20px; }
  .pending-inputs .checkbox-label { gap:9px; font-size:13px; }
  .compose-zone { padding:16px; }
  .compose-label { font-size:11px; margin-bottom:10px; }
  .compose-label strong { font-size:12px; }
  .composer textarea { min-height:100px; max-height:200px; font-size:16px; padding:12px 14px; }
  .compose-actions { padding:9px; gap:8px; }
  .compose-left { gap:9px; font-size:11px; }
  .compose-actions .primary { font-size:12px; }
  .composer-footnote { font-size:11px; }
  .attachment-preview>button { min-width:44px; min-height:44px; font-size:15px!important; }
  .prepared-bar { padding:12px; gap:10px; }
  .prepared-bar strong { font-size:12px; }
  .prepared-bar small { font-size:11px; }
  .prepared-bar .button-row button { font-size:12px; padding:8px 11px; }
  .page { padding:25px 18px; }
  .page-head { gap:16px; margin-bottom:25px; }
  .page-head h2 { font-size:25px; }
  .page-head p { font-size:13px; }
  .metrics { gap:11px; margin-bottom:23px; }
  .metric { padding:17px; }
  .metric-value { font-size:29px; margin-top:11px; }
  .metric-label, .metric-note { font-size:11px; }
  .overview-grid { gap:19px; margin-bottom:23px; }
  .surface-head, .surface-body { padding:18px; }
  .queue-row { padding:16px 18px; gap:10px; }
  .queue-copy strong, .queue-copy p { font-size:12px; }
  .queue-row button { padding:7px 9px; font-size:12px; }
  .roster-table th { font-size:11px; padding:13px; }
  .roster-table td { padding:16px 13px; }
  .roster-table .identity strong { font-size:12px; }
  .roster-table .identity small { font-size:11px; }
  .draft-sidebar { max-height:120px; }
  .draft-item { flex-basis:185px; }
  .draft-editor { padding:20px 16px; }
  .draft-writing { padding:15px; min-height:200px; font-size:16px; }
  .editor-header { gap:12px; margin-bottom:17px; }
  .editor-header h3 { font-size:16px; }
  .editor-header .button-row button, .editor-footer .button-row button { font-size:12px; }
  .draft-more button { font-size:12px; padding:8px; }
  .scroll-panel { padding:22px 16px; }
  .review-card { padding:18px; }
  .review-card .button-row button { font-size:12px; }
  .review-card textarea { font-size:16px; }
  .context-card { padding:19px; }
  .context-card dd { font-size:13px; }
  .memory-toolbar select { font-size:16px; }
  .memory-toolbar button { font-size:12px; }
  .memory-card { padding:19px; }
  .memory-body { font-size:14px; }
  .memory-card textarea { font-size:16px; }
  .memory-stats { gap:16px; font-size:12px; }
  .setting-card { padding:21px; }
  .field input, .field select, .field textarea { min-height:44px; font-size:16px; }
  .vault-mobile-picker { padding:14px 16px; }
  .vault-filter-controls input, .vault-filter-controls select { min-height:44px; font-size:16px; }
  .vault-editor { padding:20px 16px; overflow:auto; }
  .vault-editor textarea { font-size:14px; }
  html[data-workspace-mode="reviewer"] .toast-region { bottom:calc(16px + env(safe-area-inset-bottom)); }
  .toast { font-size:12px; padding:13px 14px; }
  .toast button { min-height:30px!important; min-width:30px; }
  .connection-error { padding:12px 16px; font-size:12px; }
  dialog { max-height:88dvh; border-radius:12px; }
  .dialog-header { padding:21px 19px; }
  .dialog-header h2 { font-size:20px; }
  .dialog-body { padding:21px 19px; }
  .dialog-footer { padding:15px 19px; }
  .dialog-footer button { font-size:12px; }
  .empty-state { padding:40px 22px; }
  .job-row { padding:16px 18px; }
}
@media (max-width:380px) {
  .topbar { padding:0 12px; }
  .topbar-actions { gap:3px; }
  .workspace-switch-mobile button { font-size:10px!important; padding:6px 8px; }
  .pair-toolbar { padding:11px 12px; gap:6px; }
  .pair-toolbar .button-row>button:not(.icon-button) { font-size:11px; padding:7px 8px; }
  .conversation-layout .chat-stream,
  .pair-content:has(.chat-stream) .conversation-layout .chat-stream { padding-left:12px; padding-right:12px; }
  .conversation-actions { padding-left:12px; padding-right:12px; }
  .chat-avatar { display:none; }
  .manual-entry .compose-actions>#composeCount { display:none; }
  .metric { padding:15px; }
}
@media (max-height:620px) and (min-width:721px) {
  .pair-toolbar { padding-top:12px; padding-bottom:12px; }
  .conversation-layout .chat-stream,
  .pair-content:has(.chat-stream) .conversation-layout .chat-stream { min-height:90px; }
  .conversation-actions { max-height:45dvh; flex-shrink:1; }
  .chat-reply-editor { min-height:100px; }
}
@media (prefers-reduced-motion:reduce) {
  *, *:before, *:after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
}

/* Compact workspace sizes and Admin overview. */
.pair-context { display:none; }
.pair-toolbar .identity small { color:var(--shade-160); }
.message-meta, .candidate .message-meta { font-size:11px; color:var(--shade-160); }
.rail-workspace { color:var(--shade-160); }
.chat-stream, .conversation-layout, .conversation-actions, .pair-list { scrollbar-width:thin; scrollbar-color:var(--shade-78) transparent; }
.overview-page { max-width:1240px; }
.overview-metrics { display:flex; gap:0; margin:0 0 32px; padding:20px 0; border-block:1px solid var(--line); }
.overview-metrics .metric { flex:1; display:flex; flex-direction:column; gap:4px; padding:0 24px; border:0; border-right:1px solid var(--line); border-radius:0; background:transparent; }
.overview-metrics .metric:first-child { padding-left:0; }
.overview-metrics .metric:last-child { border-right:0; }
.overview-metrics .metric-value { font-size:27px; line-height:1.2; margin:0; }
.overview-metrics .metric-label { font-size:11px; color:var(--subtle); }
.overview-work { grid-template-columns:minmax(0,1.7fr) minmax(240px,1fr); }
.overview-queue, .overview-engine { border-color:var(--line); background:transparent; }
.overview-queue .surface-head, .overview-engine .surface-head { background:transparent; }
.overview-queue .queue-icon { display:none; }
.overview-connections { border:0; border-top:1px solid var(--line); border-radius:0; padding:18px 0; background:transparent; }
.overview-connections>summary { font-size:12px; }
.engine-details { border:0; border-radius:0; padding:16px 0 0; margin:0; }
.engine-details>summary { font-size:11px; }
.page-head { align-items:center; }
.page-head .eyebrow { display:none; }
.page-head-actions { flex:none; margin-left:auto; }
.main-content, #mainContent, .scroll-panel, .vault-list { scrollbar-width:thin; scrollbar-color:var(--shade-78) transparent; }
.chat-reply-editor { scrollbar-width:thin; scrollbar-color:var(--shade-105) transparent; }
.page-head-actions>.primary { font-size:12px; }
.page-tools[open] { z-index:20; }
@media (min-width:721px) {
  .workspace-grid, html[data-workspace-mode="reviewer"] .workspace-grid { grid-template-columns:280px minmax(0,1fr); }
  .pair-toolbar { height:78px; padding:14px 36px; }
  .conversation-actions { padding:0 max(32px,calc((100% - 760px)/2)) 14px; }
}
@media (min-width:721px) and (max-width:1050px) {
  .workspace-grid, html[data-workspace-mode="reviewer"] .workspace-grid { grid-template-columns:232px minmax(0,1fr); }
  .rail-head { padding:25px 14px 12px; }
  .rail-brand { margin-bottom:28px; }
  .pair-list { padding:4px 8px; }
  .pair-row { padding:14px 9px; }
  .pair-row .avatar { display:none; }
  .pair-snippet { padding:0; }
  .pair-toolbar { padding-inline:24px; }
  .pair-context { display:none; }
  .chat-stream { padding:24px; }
  .conversation-actions { padding-inline:24px; }
  .overview-work { grid-template-columns:1fr; }
}
@media (max-width:720px) {
  html[data-workspace-mode="reviewer"] .topbar { display:none; }
  .workspace-grid, html[data-workspace-mode="reviewer"] .workspace-grid { grid-template-columns:1fr; }
  .rail-head { padding:28px 20px 10px; }
  .rail-brand { font-size:36px; margin:0 5px 32px; }
  .rail-title { margin:0 5px 18px; }
  .rail-title strong { font-size:16px; letter-spacing:-.2px; }
  .rail-filters { margin-top:12px; }
  .pair-list { padding:6px 12px; }
  .pair-row { padding:17px 12px; }
  .pair-row .avatar { width:37px; height:37px; font-size:12px; }
  .pair-row-text strong { font-size:14px; }
  .pair-row-text strong small { font-size:10px; }
  .pair-row-text span { font-size:11px; }
  .pair-snippet { padding:0; font-size:13px; margin-top:5px; }
  .rail-workspace { padding:12px 22px calc(12px + env(safe-area-inset-bottom)); }
  .rail-workspace button { min-height:40px; }
  .pair-toolbar { height:66px; padding:8px 16px 8px 11px; gap:9px; }
  .pair-toolbar .identity strong { font-size:14px; }
  .pair-toolbar .identity small { font-size:11px; margin-top:2px; }
  .pair-toolbar .mobile-back { width:36px; margin:0; }
  .thread-tools summary { width:40px; height:44px; padding:0; }
  .page-tools summary { height:44px; }
  .mobile-workspace-switch { display:block!important; }
  .conversation-layout { overflow-y:auto; overflow-x:hidden; overscroll-behavior:contain; padding-bottom:env(safe-area-inset-bottom); }
  .conversation-layout .chat-stream, .pair-content:has(.chat-stream) .conversation-layout .chat-stream { flex:0 0 auto; height:auto; min-height:180px; overflow:visible; padding:24px 22px; }
  .chat-message { max-width:95%; margin-bottom:26px; gap:0; }
  .bubble { padding:0; border:0; font-size:15px; line-height:1.8; }
  .candidate .bubble { padding:12px 15px; border-radius:15px 15px 4px 15px; }
  .message-meta { font-size:11px; min-height:24px; margin-bottom:4px; }
  .message-meta strong { font-size:11px; }
  .message-meta .message-details-button { opacity:1; min-height:30px!important; min-width:30px; font-size:18px!important; }
  .date-divider { margin-bottom:24px; font-size:10px; }
  .conversation-actions { flex:0 0 auto; max-height:none; overflow:visible; padding:0 14px 12px; }
  .chat-reply-panel { padding:13px 14px 9px; border-radius:14px; }
  .chat-reply-panel h3 { font-size:11px; }
  .chat-reply-panel .section-title { margin-bottom:6px; }
  .chat-reply-editor { min-height:90px; max-height:240px; padding:3px 0; font-size:16px; line-height:1.65; }
  .reply-footer { align-items:flex-end; margin-top:5px; }
  .reply-actions { padding:0; gap:2px; }
  .reply-actions button { min-height:40px!important; font-size:12px!important; padding:7px 11px; }
  .reply-options>summary { width:40px; height:40px; }
  .reply-tools-panel .chat-guidance { padding:0 0 12px; }
  .manual-entry, .chat-previous-replies { padding:0; margin-top:6px; }
  .manual-entry>summary, .chat-previous-replies>summary { min-height:40px; font-size:12px; }
  .manual-entry>.compose-zone { padding:12px; }
  .chat-guidance { padding:0; }
  .chat-guidance>summary { font-size:12px; }
  .chat-pending-input { padding:14px; }
  .pending-reply-title { font-size:12px; }
  .pending-reply-title .tiny { font-size:10px; }
  .history-search { padding:10px 14px; }
  .history-search-fields { flex-wrap:nowrap; }
  .history-search input { flex:1; width:0; min-width:0; font-size:16px; }
  .history-search-fields .button-row { gap:2px; }
  .history-search-fields button { padding:7px 8px; font-size:12px!important; }
  .page { padding:26px 20px; }
  .page-head { flex-direction:row; flex-wrap:wrap; align-items:center; gap:14px; margin-bottom:24px; }
  .page-head h2 { font-size:24px; }
  .page-head p { font-size:12px; }
  .page-head-actions { gap:5px; }
  .page-head-actions>.primary { font-size:12px!important; }
  .overview-metrics { margin-bottom:24px; padding:17px 0; }
  .overview-metrics .metric { padding:0 12px; }
  .overview-metrics .metric-value { font-size:23px; }
  .overview-metrics .metric-label { font-size:10px; line-height:1.4; }
  .overview-work { grid-template-columns:1fr; gap:20px; }
  .overview-queue .queue-row { flex-wrap:wrap; }
  .overview-queue .queue-copy { flex:1; min-width:120px; }
}
@media (max-width:380px) {
  .conversation-layout .chat-stream, .pair-content:has(.chat-stream) .conversation-layout .chat-stream { padding-inline:18px; }
  .conversation-actions { padding-inline:10px; }
  .pair-toolbar { padding-right:10px; }
  .pending-reply-title .tiny { display:none; }
  .overview-metrics .metric { padding-inline:9px; }
}
@media (max-height:620px) and (min-width:721px) {
  .pair-toolbar { height:64px; }
  .conversation-actions { max-height:48dvh; flex-shrink:1; }
  .conversation-layout .chat-stream, .pair-content:has(.chat-stream) .conversation-layout .chat-stream { min-height:90px; }
  .chat-reply-editor { min-height:60px; }
}

/* Admin: a quiet navigation rail and one purposeful workspace per destination. */
html[data-workspace-mode="admin"] { --sidebar:220px; --bg:var(--shade-22); --surface:var(--shade-28); --line:var(--shade-44); --line-soft:var(--shade-44); }
html[data-workspace-mode="admin"] .sidebar { background:var(--shade-16); border-color:var(--shade-44); padding:32px 14px 18px; }
html[data-workspace-mode="admin"] .brand { display:flex; align-items:baseline; gap:10px; padding:0 12px 35px; text-decoration:none; }
.admin-wordmark { font:600 34px/1 Georgia,serif; letter-spacing:-2px; color:var(--shade-230); }
.admin-wordmark>span { color:var(--shade-160); }
html[data-workspace-mode="admin"] .brand>small { font:11px/1.4 inherit; letter-spacing:0; color:var(--shade-160); }
html[data-workspace-mode="admin"] .nav-caption { margin:0 12px 10px; font-size:10px; text-transform:none; letter-spacing:.3px; color:var(--shade-134); }
html[data-workspace-mode="admin"] .nav-caption-tools { margin-top:26px; }
html[data-workspace-mode="admin"] .nav-item { padding:11px 12px; margin:2px 0; border:0; border-radius:7px; font-size:12px; color:var(--shade-160); }
html[data-workspace-mode="admin"] .nav-item.active { background:var(--shade-44); color:var(--shade-230); }
html[data-workspace-mode="admin"] .nav-item:hover { background:var(--shade-28); }
html[data-workspace-mode="admin"] .nav-item.active:hover { background:var(--shade-44); }
html[data-workspace-mode="admin"] .nav-item .nav-icon { color:var(--shade-160); }
html[data-workspace-mode="admin"] .nav-count { background:var(--shade-58); color:var(--shade-208); }
html[data-workspace-mode="admin"] .sidebar-bottom { padding-top:20px; }
html[data-workspace-mode="admin"] .runtime-status { padding:17px 12px; margin-top:16px; border-color:var(--shade-44); align-items:flex-start; }
html[data-workspace-mode="admin"] .runtime-status .status-dot { margin-top:5px; }
html[data-workspace-mode="admin"] .runtime-status strong { font-size:11px; font-weight:400; color:var(--shade-185); }
html[data-workspace-mode="admin"] .runtime-status small { display:none; }
.admin-switch-row { display:flex; align-items:center; justify-content:space-between; padding:0 3px; gap:4px; }
.return-conversations { display:flex; align-items:center; gap:9px; border:0; background:transparent; color:var(--shade-185); font-size:12px; padding:9px; }
.return-conversations:hover { background:var(--shade-44); }
.return-conversations>span[aria-hidden] { font-size:17px; }
.admin-mobile-bar { display:none; }
.admin-environment { position:fixed; z-index:35; right:12px; bottom:12px; font-size:9px; pointer-events:none; opacity:.8; }
.work-status { position:fixed; z-index:50; right:20px; top:12px; padding:8px 12px; border-radius:7px; background:var(--shade-44); border:1px solid var(--shade-78); max-width:min(360px,90vw); }
html[data-workspace-mode="admin"] .page { padding:44px 46px 54px; max-width:1260px; }
html[data-workspace-mode="admin"] .page-head { margin-bottom:32px; align-items:center; gap:20px; }
html[data-workspace-mode="admin"] .page-head h2 { font-size:28px; font-weight:550; letter-spacing:-.9px; margin:0; }
html[data-workspace-mode="admin"] .page-head p { max-width:560px; margin:8px 0 0; color:var(--shade-160); font-size:13px; line-height:1.65; }
html[data-workspace-mode="admin"] .page button { font-size:12px; min-height:36px; padding:8px 12px; }
html[data-workspace-mode="admin"] .page button:not(.primary):not(.danger) { background:transparent; border-color:var(--shade-58); color:var(--shade-208); }
html[data-workspace-mode="admin"] .page button:not(.primary):hover { background:var(--shade-44); }
html[data-workspace-mode="admin"] .page .primary { background:var(--shade-230); color:var(--shade-28); border-color:var(--shade-230); font-weight:550; }
html[data-workspace-mode="admin"] .page .page-tools-menu button { border:0; }
html[data-workspace-mode="admin"] .page-head .page-head-actions { margin-left:auto; }
html[data-workspace-mode="admin"] .page .empty-state { border:0; background:transparent; padding:58px 28px; }
html[data-workspace-mode="admin"] .empty-icon { width:36px; height:36px; border:0; border-radius:0; background:transparent; font-size:24px; color:var(--shade-134); margin-bottom:13px; }
html[data-workspace-mode="admin"] .empty-state h3 { font-size:16px; }
html[data-workspace-mode="admin"] .empty-state p { max-width:340px; margin:10px auto 0; color:var(--shade-160); line-height:1.8; font-size:13px; }
html[data-workspace-mode="admin"] input, html[data-workspace-mode="admin"] select, html[data-workspace-mode="admin"] textarea { background:var(--shade-28); border-color:var(--shade-58); border-radius:7px; }
html[data-workspace-mode="admin"] select { font-size:13px; }
html[data-workspace-mode="admin"] .tag { font-size:10px; padding:3px 7px; border-radius:5px; }
.admin-section { padding:0; margin:0 0 36px; min-width:0; }
.admin-section-head { display:flex; align-items:center; justify-content:space-between; gap:16px; margin:0 0 18px; min-width:0; }
.admin-section-head h3 { margin:0; font-size:14px; font-weight:550; color:var(--shade-230); }
.admin-section-head>strong { font-size:13px; font-weight:500; overflow-wrap:anywhere; }
.admin-list { border-top:1px solid var(--shade-58); }
.admin-row { display:flex; align-items:center; justify-content:space-between; gap:20px; min-width:0; padding:18px 0; border:0; border-bottom:1px solid var(--shade-44); background:transparent; border-radius:0; }
.admin-row-main { flex:1; min-width:0; }
.admin-row-main>strong { display:block; font-size:13px; font-weight:500; color:var(--shade-230); overflow-wrap:anywhere; }
.admin-row-meta { display:flex; flex-wrap:wrap; gap:5px 12px; font-size:11px; color:var(--shade-160); margin:5px 0 0; line-height:1.6; overflow-wrap:anywhere; }
.admin-row-actions { display:flex; align-items:center; flex-wrap:wrap; justify-content:flex-end; gap:10px; flex:none; }
.admin-status { display:inline-flex; align-items:center; gap:6px; font-size:11px; color:var(--shade-185); white-space:nowrap; }
.admin-status:before { content:''; width:5px; height:5px; border-radius:50%; background:currentColor; flex:none; }
.admin-status.good { color:var(--shade-185); }
.admin-status.warn { color:var(--shade-160); }
.danger-text { color:var(--shade-185); }
.admin-details { padding:15px 0; border:0; border-radius:0; background:transparent; margin:0; }
.admin-details>summary { color:var(--shade-160); font-size:12px; }
.admin-details p { color:var(--shade-160); font-size:13px; line-height:1.8; }
.admin-section-tools { display:flex; justify-content:flex-end; padding-top:12px; }
.admin-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:18px; margin-bottom:16px; padding:15px 0; border-block:1px solid var(--shade-58); }
.admin-tabs { display:flex; gap:2px; min-width:0; overflow-x:auto; scrollbar-width:thin; }
html[data-workspace-mode="admin"] .admin-tabs button { flex:none; border:0; background:transparent; color:var(--shade-160); padding:8px 11px; }
html[data-workspace-mode="admin"] .page .admin-tabs button.active { background:var(--shade-44); color:var(--shade-230); }
html[data-workspace-mode="admin"] .overview-page { max-width:1260px; }
html[data-workspace-mode="admin"] .overview-metrics { border:0; margin:0 0 40px; padding:8px 0 22px; border-bottom:1px solid var(--shade-58); }
html[data-workspace-mode="admin"] .overview-metrics .metric { padding:0 28px; border-color:var(--shade-58); }
html[data-workspace-mode="admin"] .overview-metrics .metric:first-child { padding-left:0; }
html[data-workspace-mode="admin"] .overview-metrics .metric-value { font-size:28px; font-weight:450; }
html[data-workspace-mode="admin"] .overview-metrics .metric-label { color:var(--shade-160); font-size:11px; }
html[data-workspace-mode="admin"] .overview-work { grid-template-columns:minmax(0,1fr) 240px; gap:40px; margin-bottom:36px; }
html[data-workspace-mode="admin"] .overview-queue, html[data-workspace-mode="admin"] .overview-engine { border:0; border-radius:0; background:transparent; overflow:visible; }
html[data-workspace-mode="admin"] .overview-work .surface-head { padding:0 0 18px; border-color:var(--shade-58); }
html[data-workspace-mode="admin"] .overview-work .surface-head h3 { font-size:14px; }
html[data-workspace-mode="admin"] .overview-queue .queue-row { padding:23px 0; gap:18px; border-color:var(--shade-44); }
html[data-workspace-mode="admin"] .overview-queue .queue-copy strong { font-size:13px; }
html[data-workspace-mode="admin"] .overview-queue .queue-copy p { white-space:normal; display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; line-height:1.7; color:var(--shade-160); font-size:12px; }
html[data-workspace-mode="admin"] .overview-work .surface-body { padding:5px 0; }
html[data-workspace-mode="admin"] .live-summary { font-size:12px; border-color:var(--shade-44); padding:14px 0; }
html[data-workspace-mode="admin"] .live-summary strong { overflow-wrap:anywhere; font-size:12px; font-weight:500; }
html[data-workspace-mode="admin"] .live-summary span { color:var(--shade-160); }
html[data-workspace-mode="admin"] .overview-connections { border-color:var(--shade-58); padding:22px 0; }
.memory-tool-scope { color:var(--shade-160); font-size:11px; margin:-15px 0 20px; }
.memory-tool-scope strong { color:var(--shade-185); font-weight:500; }
.memory-filters>select { max-width:310px; flex:1; min-width:200px; }
.memory-stats { display:flex; gap:20px; padding:0; margin:0 0 22px; color:var(--shade-160); font-size:11px; }
.memory-list { max-width:850px; }
.memory-item.memory-card { background:transparent; border:0; border-radius:0; padding:26px 0; border-top:1px solid var(--shade-58); margin:0; overflow:visible; }
.memory-item .admin-section-head { align-items:flex-start; }
.memory-item .memory-body { font-size:15px; line-height:1.85; color:var(--shade-208); margin:0 0 14px; max-width:740px; }
.memory-item .review-reason { margin:10px 0 16px; }
.memory-item .review-reason label { display:block; font-size:11px; color:var(--shade-160); }
.memory-item textarea { width:100%; margin-top:7px; font-size:13px; }
.memory-item .evidence-item { padding:12px 0; border-color:var(--shade-58); }
.people-directory { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:42px; }
.people-page .admin-toolbar>.search-field { width:100%; max-width:360px; }
.person-row .avatar { width:34px; height:34px; border:0; font-size:11px; background:var(--shade-44); }
.person-row { gap:12px; }
.person-row .admin-row-actions { gap:4px; }
.pair-directory { border:0; border-top:1px solid var(--shade-58); background:transparent; padding:20px 0; border-radius:0; }
.pair-directory>summary { font-size:13px; color:var(--shade-208); }
.people-page .preserved-examples { border:0; padding:18px 0; background:transparent; }
html[data-workspace-mode="admin"] .roster-table th { font-size:10px; color:var(--shade-160); padding:16px 12px; }
html[data-workspace-mode="admin"] .roster-table td { padding:18px 12px; border-color:var(--shade-44); font-size:12px; }
html[data-workspace-mode="admin"] .roster-table tbody tr:hover { background:var(--shade-35); }
.activity-section { margin-bottom:34px; }
.activity-page .job-row .admin-row-meta time { color:var(--shade-134); }
.settings-sections { border-top:1px solid var(--shade-58); }
.settings-section { display:grid; grid-template-columns:minmax(140px,230px) minmax(0,1fr); gap:38px; padding:29px 0; border-bottom:1px solid var(--shade-44); }
.settings-section>header h3 { margin:0 0 8px; color:var(--shade-230); font-size:14px; }
.settings-section>header p { margin:0; font-size:12px; line-height:1.75; max-width:210px; color:var(--shade-160); }
.settings-content { min-width:0; }
.settings-content>p { font-size:13px; line-height:1.75; color:var(--shade-160); margin:0 0 18px; }
.settings-content .admin-section-head { margin-bottom:2px; }
.settings-content .field-note { margin:0 0 14px; font-size:12px; line-height:1.75; }
.settings-content .live-summary:first-child { padding-top:0; }
.settings-content .live-summary:last-child { margin-bottom:14px; }
.settings-content .backup-list { margin-top:18px; }
.settings-content .backup-row { padding:14px 0; }
.settings-content .button-row { gap:8px; }
.admin-vault { background:var(--shade-22); }
.admin-vault .vault-list { width:auto; background:var(--shade-22); padding:28px 18px; border-color:var(--shade-58); }
.vault-library-head { display:flex; align-items:baseline; justify-content:space-between; gap:12px; padding:4px 10px 22px; }
.vault-library-head h2 { font-size:18px; font-weight:500; margin:0; }
.vault-library-head small { color:var(--shade-160); font-size:11px; }
.admin-vault .vault-filter-controls { padding:0 8px 18px; gap:7px; }
.admin-vault .vault-filter-controls label { font-size:10px; color:var(--shade-160); }
.admin-vault .vault-filter-controls input, .admin-vault .vault-filter-controls select { font-size:12px; padding:9px; }
.admin-vault .vault-group h3 { font-size:10px; font-weight:500; color:var(--shade-134); letter-spacing:.5px; padding:8px; }
.admin-vault .vault-results button { padding:12px 9px; border-radius:7px; }
.admin-vault .vault-results button.active { background:var(--shade-44); border-color:transparent; }
.admin-vault .vault-results button strong { font-size:12px; font-weight:500; }
.admin-vault .vault-results button span { font-size:10px; color:var(--shade-160); }
.admin-vault .vault-result-count { font-size:10px; color:var(--shade-160); margin:0 8px 12px; }
.admin-vault .vault-editor { padding:32px 34px; gap:16px; }
.admin-vault .editor-header { margin:0; }
.admin-vault .editor-header h3 { font-size:20px; font-weight:500; letter-spacing:-.4px; }
.admin-vault .vault-editor textarea { padding:20px; font:13px/1.85 Consolas,monospace; border:1px solid var(--shade-58); background:var(--shade-28); border-radius:10px; }
.admin-vault .editor-footer { border:0; padding:0; align-items:center; }
.decision-review { padding:30px; }
.decision-section { margin-bottom:32px; }
.decision-section>.section-title { margin:0 0 18px; }
.decision-item.review-card { border:0; border-top:1px solid var(--shade-58); border-radius:0; background:transparent; padding:24px 0; }
.decision-item.review-card textarea { font-size:14px; }
.decision-item .question-number { display:none; }
.decision-item .review-card-head h4 { font-size:14px; }
.decision-item .state-transition { background:var(--shade-35); border-radius:8px; }
.sandbox-context { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:20px; padding:20px 0; border-block:1px solid var(--shade-58); }
.sandbox-context .field { flex:1; min-width:200px; max-width:330px; margin:0; }
.sandbox-context label { font-size:11px; color:var(--shade-160); }
.sandbox-context select { width:100%; }
.sandbox-boundary { display:flex; align-items:center; gap:8px; font-size:11px; color:var(--shade-160); max-width:330px; line-height:1.65; }
.sandbox-boundary .status-dot { background:var(--shade-160); width:5px; height:5px; }
.sandbox-page .draft-layout { min-height:480px; margin-top:24px; border:1px solid var(--shade-58); border-radius:10px; overflow:hidden; }
html[data-workspace-mode="admin"] dialog { background:var(--shade-28); border-color:var(--shade-58); }
html[data-workspace-mode="admin"] .dialog-header { padding:26px; border-color:var(--shade-58); }
html[data-workspace-mode="admin"] .dialog-header h2 { font-size:22px; font-weight:500; }
html[data-workspace-mode="admin"] .dialog-body { padding:24px 26px; }
html[data-workspace-mode="admin"] .dialog-footer { background:var(--shade-28); border-color:var(--shade-58); padding:17px 26px; }
@media (min-width:721px) and (max-width:1100px) {
  html[data-workspace-mode="admin"] { --sidebar:72px; }
  html[data-workspace-mode="admin"] .sidebar { padding:27px 7px 16px; }
  html[data-workspace-mode="admin"] .brand { padding:0 0 34px; justify-content:center; }
  html[data-workspace-mode="admin"] .brand>small, html[data-workspace-mode="admin"] .nav-caption, html[data-workspace-mode="admin"] .nav-item>span:not(.nav-icon), html[data-workspace-mode="admin"] .runtime-status>div { display:none; }
  html[data-workspace-mode="admin"] .brand>.admin-wordmark { display:block; font-size:23px; letter-spacing:-1.8px; }
  html[data-workspace-mode="admin"] .nav-item { justify-content:center; padding:13px 0; }
  html[data-workspace-mode="admin"] .nav-caption-tools { display:block; font-size:0; height:1px; background:var(--shade-44); margin:18px 10px; }
  .admin-switch-row { flex-direction:column; }
  .admin-switch-row .return-conversations>span:last-child { display:none; }
  .admin-switch-row .return-conversations { width:40px; height:40px; justify-content:center; }
  html[data-workspace-mode="admin"] .runtime-status { padding:17px 0; justify-content:center; }
  html[data-workspace-mode="admin"] .page { padding:34px 32px; }
  html[data-workspace-mode="admin"] .overview-work { grid-template-columns:1fr; gap:30px; }
  html[data-workspace-mode="admin"] .overview-engine .surface-body { display:grid; grid-template-columns:1fr 1fr; gap:0 24px; }
  html[data-workspace-mode="admin"] .overview-engine .engine-details { grid-column:1/-1; }
  .people-directory { gap:26px; }
  .settings-section { grid-template-columns:170px minmax(0,1fr); gap:25px; }
  .admin-vault .vault-editor { padding:26px 22px; }
}
@media (max-width:720px) {
  html[data-workspace-mode="admin"] .topbar.admin-mobile-bar { display:flex; height:58px; padding:0 18px; gap:12px; border-color:var(--shade-44); background:var(--shade-22); }
  .admin-mobile-brand { display:flex; align-items:baseline; gap:0; font:600 27px/1 Georgia,serif; letter-spacing:-1.7px; color:var(--shade-230); text-decoration:none; flex:1; }
  .admin-mobile-brand>span { color:var(--shade-160); }
  .admin-mobile-brand>small { font:10px/1.4 system-ui; margin-left:9px; letter-spacing:0; color:var(--shade-160); }
  .admin-mobile-bar .topbar-actions { gap:3px; }
  .admin-mobile-bar .return-conversations { min-height:40px!important; padding:7px; font-size:11px!important; }
  .admin-mobile-bar .icon-button { width:36px; height:40px; }
  html[data-workspace-mode="admin"] .app-shell { height:calc(100dvh - 64px - env(safe-area-inset-bottom)); }
  html[data-workspace-mode="admin"] .mobile-nav { height:calc(64px + env(safe-area-inset-bottom)); background:var(--shade-22); border-color:var(--shade-44); }
  html[data-workspace-mode="admin"] .mobile-nav button { font-size:10px; gap:4px; min-height:48px; }
  html[data-workspace-mode="admin"] .mobile-nav button.active { background:var(--shade-44); color:var(--shade-230); }
  .admin-environment { bottom:calc(68px + env(safe-area-inset-bottom)); right:8px; padding:2px 5px; font-size:8px; }
  html[data-workspace-mode="admin"] .page { padding:28px 20px 35px; }
  html[data-workspace-mode="admin"] .page-head { margin-bottom:27px; flex-wrap:wrap; align-items:center; gap:17px 10px; }
  html[data-workspace-mode="admin"] .page-head h2 { font-size:25px; letter-spacing:-.7px; }
  html[data-workspace-mode="admin"] .page-head p { font-size:12px; margin-top:8px; }
  html[data-workspace-mode="admin"] .page button { min-height:44px; font-size:12px; }
  html[data-workspace-mode="admin"] .page-head-actions { flex-wrap:nowrap; }
  html[data-workspace-mode="admin"] .page-head .primary { padding:9px 11px; font-size:11px!important; }
  html[data-workspace-mode="admin"] input, html[data-workspace-mode="admin"] select, html[data-workspace-mode="admin"] textarea { font-size:16px; }
  html[data-workspace-mode="admin"] .page .empty-state { padding:42px 8px; }
  .admin-section-head { gap:12px; margin-bottom:14px; }
  .admin-section-head h3 { font-size:13px; }
  .admin-section { margin-bottom:28px; }
  .admin-row { padding:16px 0; gap:10px; }
  .admin-row-main>strong { font-size:13px; }
  .admin-row-actions { gap:5px; }
  .admin-row-meta { font-size:11px; }
  .admin-status { font-size:10px; }
  .admin-row-actions .admin-status { max-width:100px; white-space:normal; }
  .admin-toolbar { gap:12px; padding:14px 0; }
  .admin-toolbar>select { max-width:none; flex-basis:100%; }
  .admin-tabs { width:100%; }
  html[data-workspace-mode="admin"] .admin-tabs button { min-height:38px; padding:8px 11px; font-size:11px; }
  html[data-workspace-mode="admin"] .overview-metrics { padding:1px 0 23px; margin-bottom:26px; }
  html[data-workspace-mode="admin"] .overview-metrics .metric { padding:0 13px; }
  html[data-workspace-mode="admin"] .overview-metrics .metric-value { font-size:23px; }
  html[data-workspace-mode="admin"] .overview-metrics .metric-label { font-size:10px; }
  html[data-workspace-mode="admin"] .overview-work { grid-template-columns:1fr; gap:29px; }
  html[data-workspace-mode="admin"] .overview-queue .queue-row { padding:18px 0; gap:12px; }
  html[data-workspace-mode="admin"] .overview-queue .queue-copy { min-width:150px; }
  html[data-workspace-mode="admin"] .overview-queue .queue-copy p { font-size:12px; }
  .memory-tool-scope { font-size:11px; margin:-9px 0 20px; line-height:1.75; }
  .memory-stats { gap:18px; font-size:10px; margin-bottom:16px; }
  .memory-item.memory-card { padding:23px 0; }
  .memory-item .memory-body { font-size:14px; }
  .memory-item .review-reason textarea { font-size:16px; }
  .people-directory { display:block; }
  .people-page .admin-toolbar>.search-field { max-width:none; }
  .person-row .avatar { width:32px; height:32px; }
  .activity-page .admin-row { align-items:flex-start; }
  .activity-page .admin-row-actions { flex-direction:column; align-items:flex-end; gap:7px; }
  .settings-section { grid-template-columns:1fr; gap:19px; padding:25px 0; }
  .settings-section>header p { max-width:none; font-size:12px; }
  .settings-content .admin-section-head { flex-wrap:wrap; }
  .settings-content .admin-section-head>.field-note { flex-basis:100%; }
  .settings-content .backup-row { flex-wrap:wrap; }
  .admin-vault .vault-mobile-picker { padding:13px 18px; background:var(--shade-28); border-color:var(--shade-58); }
  .admin-vault .vault-mobile-picker>span { font-size:12px; }
  .admin-vault .vault-mobile-picker button { font-size:11px; padding:8px 10px; }
  .admin-vault .vault-editor { padding:23px 18px; gap:15px; }
  .admin-vault .editor-header { flex-wrap:wrap; gap:10px; }
  .admin-vault .editor-header h3 { font-size:18px; }
  .admin-vault .editor-header .button-row { margin-left:auto; }
  .admin-vault .editor-header button { font-size:12px; padding:8px 11px; }
  .admin-vault .vault-editor textarea { padding:15px; font-size:16px; line-height:1.85; min-height:220px; }
  .admin-vault .editor-footer { flex-wrap:wrap; gap:9px; }
  .decision-review { padding:24px 18px; }
  .decision-item.review-card { padding:21px 0; }
  .decision-item.review-card textarea { font-size:16px; }
  .sandbox-context { padding:18px 0; gap:14px; }
  .sandbox-context .field { max-width:none; flex-basis:100%; }
  .sandbox-boundary { font-size:11px; max-width:none; }
  .sandbox-page .draft-layout { min-height:480px; }
  html[data-workspace-mode="admin"] .dialog-header { padding:21px; }
  html[data-workspace-mode="admin"] .dialog-header h2 { font-size:20px; }
  html[data-workspace-mode="admin"] .dialog-body { padding:21px; }
  html[data-workspace-mode="admin"] .dialog-footer { padding:16px 21px; }
}
/* Plan019 shared neutral controls and account screens. */
#accessWorkspace[hidden]{display:none!important}
body.access-locked .app-shell,body.access-locked #mobileNav,body.access-locked .skip-link{display:none!important}
#accessGate{height:100dvh;overflow:auto;display:grid;place-items:center;padding:28px;background:var(--shade-16)}
#accessGate[hidden]{display:none}
.access-card{width:min(100%,380px);margin:auto;min-width:0}
.access-brand{display:block;font:600 48px Georgia,serif;color:var(--shade-245);text-decoration:none;margin-bottom:48px}
.access-card h1{font-size:26px;letter-spacing:-.8px;margin:8px 0 12px}
.access-card form{display:grid;gap:10px;margin-top:28px}
.access-card label{font-size:12px;color:var(--shade-185);margin-top:10px}
.access-card input{width:100%;min-height:46px;background:var(--shade-22);border:1px solid var(--shade-58);border-radius:9px;padding:12px;color:var(--shade-230)}
.access-card button{margin-top:16px;min-height:46px}.access-other{display:block;margin-top:28px;font-size:13px;color:var(--shade-160)}
.access-card small{font-size:12px;line-height:1.6}.access-card #accessError{color:var(--shade-230);font-size:13px;border-left:2px solid var(--shade-185);padding-left:12px}
.admin-account-row{display:flex;gap:8px;padding:12px 0}.admin-account-row button{font-size:11px;padding:8px;background:transparent;color:var(--shade-160);border:0}
.access-reviewers{margin:20px 0 28px}.access-reviewer{padding:20px 0;border-bottom:1px solid var(--shade-44)}
.access-row,.access-assignment{display:flex;align-items:center;justify-content:space-between;gap:18px}.access-row h3{margin:0 0 5px}.access-grants{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px;font-size:12px}.access-grants>span{flex-basis:100%}
.access-grants label,.access-check{display:flex;align-items:center;gap:8px}.access-grants input,.access-check input{width:16px;height:16px;accent-color:var(--shade-185)}
.access-assignment{padding:15px 0;border-bottom:1px solid var(--shade-44)}.access-assignment>div{display:grid;gap:6px;min-width:0}.access-assignment select{max-width:55%;font-size:12px}
.access-preview dl,.access-profile{display:grid;grid-template-columns:110px 1fr;gap:12px;font-size:13px}.access-preview dt,.access-profile dt{color:var(--shade-134)}.access-preview dd,.access-profile dd{margin:0}.preserve-lines{white-space:pre-wrap;overflow-wrap:anywhere}
.client-create-actions{display:flex;gap:6px;margin:14px 0 0}.client-create-actions button{font-size:11px;padding:8px;min-height:34px}
.active-response{margin:12px 0 28px;padding-top:0}.response-jev-details{margin-top:10px;font-size:12px;color:var(--shade-134)}
@media(max-width:640px){.access-assignment{align-items:stretch;flex-direction:column;gap:10px}.access-assignment select{max-width:100%}.access-preview dl,.access-profile{grid-template-columns:90px 1fr}.access-row{align-items:flex-start}.access-row button{flex-shrink:0}.client-create-actions{flex-wrap:wrap}}

.reviewer-filter{display:grid;gap:7px;margin-top:14px;font-size:11px;color:var(--shade-160)}.reviewer-filter select{min-width:0;width:100%;font-size:12px}.access-empty-options{padding:12px 0;line-height:1.7}.access-card form input{font-size:16px}
@media(max-width:380px){.admin-mobile-brand small{display:none}.admin-mobile-bar .topbar-actions{gap:3px}.admin-mobile-bar .return-conversations{font-size:11px;padding:8px}.admin-mobile-bar .icon-button{width:36px;min-width:36px}}

@media(min-width:721px) and (max-width:1100px){.admin-account-row{flex-direction:column;align-items:center;gap:4px;padding:8px 0}.admin-account-row button{font-size:0;width:36px;height:36px;padding:6px}.admin-account-row button::before{content:"◉";font-size:18px}.admin-account-row button[data-action="access-reviewers"]::before{content:"♙"}}

.client-lifecycle{display:inline-block;flex-shrink:0;margin-inline-start:7px;padding:2px 5px;border:1px solid var(--shade-58);border-radius:4px;font-size:9px;font-weight:400;line-height:1.3;color:var(--shade-160);vertical-align:middle}

/* Plan021: the original source, Jev and editor share one conversation scroll. */
.conversation-layout { display:flex; flex-direction:column; min-height:0; overflow:hidden; padding-bottom:0; }
.conversation-layout .chat-stream, .pair-content:has(.chat-stream) .conversation-layout .chat-stream { flex:1 1 auto; height:auto; min-height:0; overflow-y:auto; overflow-x:hidden; padding:24px max(28px,calc((100% - 760px)/2)); overscroll-behavior:contain; overflow-anchor:none; }
.conversation-actions { flex:none; max-height:none; overflow:visible; padding:0; background:transparent; }
.chat-message.is-response-source { padding:0 12px; margin-left:-14px; border-left:2px solid var(--shade-105); background:var(--shade-28); border-radius:0 8px 8px 0; }
.chat-message { scroll-margin-block:20px; }
.response-source-header { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:0 0 12px; font-size:12px; }
.response-target { display:grid; gap:5px; min-width:0; }
.response-target strong { font-size:12px; font-weight:500; color:var(--shade-208); overflow-wrap:anywhere; }
.response-source-header button { flex:none; font-size:11px; min-height:36px; padding:6px 9px; background:transparent; border-color:transparent; color:var(--shade-160); }
.chat-grow-field, .chat-reply-editor.chat-grow-field, .chat-inline-question textarea, .manual-entry textarea.chat-grow-field { min-height:72px; max-height:none; resize:none; overflow:hidden; white-space:pre-wrap; overflow-wrap:anywhere; }
.chat-reply-editor.chat-grow-field { min-height:96px; }
.reply-state { display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:7px 12px; }
.reply-state span { white-space:nowrap; }
.chat-jev-row { display:block; margin:0 0 14px; padding:13px 15px; border:1px solid var(--shade-58); border-radius:10px; background:var(--shade-28); font-size:13px; line-height:1.75; overflow-wrap:anywhere; }
.chat-jev-row p { white-space:pre-wrap; margin:9px 0 0; }
.jev-heading { display:flex; align-items:center; flex-wrap:wrap; gap:8px 14px; }
.jev-heading strong { font-size:12px; font-weight:500; color:var(--shade-208); }
.jev-heading span { font-size:11px; color:var(--shade-160); }
.chat-jev-answered { padding:0; border:0; background:transparent; }
.chat-jev-answered summary { list-style:none; min-height:38px; display:flex; align-items:center; gap:9px; font-size:12px; color:var(--shade-160); cursor:pointer; }
.chat-jev-answered summary::before { content:'›'; font-size:17px; }
.chat-jev-answered[open] summary::before { transform:rotate(90deg); }
.chat-jev-answered summary::-webkit-details-marker { display:none; }
.jev-saved-answer span { display:block; margin-bottom:5px; }
.conversation-primary { flex:none; min-height:58px; display:flex; align-items:center; justify-content:flex-end; flex-wrap:wrap; gap:8px; padding:9px max(28px,calc((100% - 760px)/2)) calc(9px + env(safe-area-inset-bottom)); border-top:1px solid var(--shade-44); background:var(--surface); }
.conversation-primary #chatPrimary { min-width:0; }
.conversation-primary .primary { min-height:40px; font-size:12px; }
.conversation-primary .chat-latest { margin-right:auto; font-size:11px; background:transparent; border-color:transparent; color:var(--shade-160); }
@media(max-width:720px) {
 html[data-workspace-mode="reviewer"] .app-shell { height:var(--visual-viewport-height,100dvh); }
 html[data-workspace-mode="admin"] .app-shell { height:calc(var(--visual-viewport-height,100dvh) - 64px - env(safe-area-inset-bottom)); }
 .conversation-layout { overflow:hidden; padding-bottom:0; }
 .conversation-layout .chat-stream, .pair-content:has(.chat-stream) .conversation-layout .chat-stream { flex:1 1 auto; min-height:0; overflow-y:auto; padding:20px 18px; }
 .conversation-actions { padding:0; max-height:none; overflow:visible; }
 .conversation-primary { padding:8px 14px calc(8px + env(safe-area-inset-bottom)); min-height:58px; }
 .conversation-primary .primary { min-height:42px; }
 .response-source-header { align-items:flex-start; gap:6px; }
 .response-source-header button { min-height:40px; }
 .chat-message.is-response-source { padding:0 9px; margin-left:-11px; }
 .chat-grow-field, .chat-reply-editor.chat-grow-field, .chat-inline-question textarea { font-size:16px; }
 .reply-state { gap:4px 10px; }
 .chat-reply-panel .section-title { align-items:flex-start; flex-wrap:wrap; gap:7px; }
}
.generation-attempt{margin:16px 0;padding:12px;border:1px solid var(--line);border-radius:10px}
.generation-attempt dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 12px;margin:12px 0;font-size:12px}
.generation-attempt dt{color:var(--muted)}
.generation-attempt dd{margin:0;overflow-wrap:anywhere}
.generation-call{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}
.recovery-identity{overflow-wrap:anywhere}
.recovery-ack{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.5}
.recovery-ack input{margin-top:4px;flex:none}
/* Quiet account-scoped alerts share the conversation controls. */
.notification-button { position:relative; display:inline-flex; align-items:center; justify-content:center; gap:7px; }
.notification-button .ui-icon { width:18px; height:18px; flex:none; }
.notification-count { min-width:16px; padding:1px 4px; border-radius:9px; background:#ddd; color:#171717; font-size:10px; line-height:14px; }
.notification-count[hidden] { display:none; }
.notification-button.icon-button .notification-count { position:absolute; top:0; right:0; }
.admin-notification-row { margin:8px 0; }
.admin-notification-row .notification-button { width:100%; justify-content:flex-start; }
.rail-workspace { flex-wrap:wrap; }
.rail-workspace .notification-button { margin-right:auto; }
.notification-page { width:100%; max-width:820px; padding:36px 32px 60px; }
.notification-page-top { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:30px; }
.notification-page-top button { background:transparent; border:0; padding:8px 0; color:var(--shade-160); }
.notification-page-head h2 { margin:0; font-size:26px; letter-spacing:-.5px; }
.notification-page-head p { margin:10px 0 26px; color:var(--shade-160); font-size:13px; }
.notification-page-tabs { display:flex; gap:24px; border-bottom:1px solid var(--shade-58); margin-bottom:24px; }
.notification-page-tabs button { background:transparent; border:0; border-radius:0; padding:12px 2px; color:var(--shade-160); border-bottom:2px solid transparent; }
.notification-page-tabs button.active { color:var(--shade-230); border-bottom-color:var(--shade-230); }
.notification-list { display:grid; gap:0; margin:0 0 20px; }
.notification-item { display:flex; align-items:center; gap:18px; border-bottom:1px solid var(--shade-44); padding:17px 0; min-width:0; }
.notification-item > button:first-child { display:grid; flex:1; min-width:0; gap:7px; padding:6px 0; text-align:left; justify-content:stretch; background:transparent; border:0; }
.notification-item-heading { display:flex; align-items:center; gap:12px; }
.notification-unread-dot { width:6px; height:6px; border-radius:50%; background:var(--shade-230); flex:none; }
.notification-item strong { font-size:14px; }
.notification-item span { font-size:13px; color:#c5c5c5; }
.notification-item time,.notification-item small { font-size:11px; color:#a5a5a5; }
.notification-item .quiet { margin:0; flex:none; font-size:11px; padding:8px; }
.notification-settings p { line-height:1.65; margin:10px 0 18px; }
.notification-setting-row { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.notification-setting-row h3 { margin:0; font-size:14px; font-weight:600; }
.notification-setting-row p { font-size:13px; color:var(--shade-160); }
.notification-device-status { color:var(--shade-185); font-size:12px; white-space:nowrap; padding-top:2px; }
.notification-settings > .tiny { margin-top:18px; max-width:430px; }
.notification-extra { margin-top:32px; padding:20px 0 0; border:0; border-top:1px solid var(--shade-44); border-radius:0; background:transparent; }
.notification-extra summary { cursor:pointer; font-size:12px; color:var(--shade-160); }
.notification-extra .notification-setting-row { margin-top:22px; }
.notification-empty { padding:50px 0; text-align:center; }
.notification-empty h3 { margin:0 0 10px; font-size:15px; font-weight:500; }
.notification-empty p { margin:0; font-size:13px; color:var(--shade-160); }
.pair-toolbar .notification-button { display:none; }
@media(min-width:721px) and (max-width:1100px) { .admin-notification-row .notification-button>span:not(.nav-icon) { display:none; } .admin-notification-row .notification-button { justify-content:center; padding:10px 0; } .admin-notification-row .notification-count:not([hidden]) { display:block; position:absolute; right:4px; top:3px; } }
@media(max-width:720px) { html[data-workspace-mode="reviewer"] .pair-toolbar .notification-button { display:inline-flex; } .notification-page { padding:22px 20px calc(40px + env(safe-area-inset-bottom)); } .notification-page-top { margin-bottom:24px; } .notification-page-head h2 { font-size:24px; } .notification-item { gap:10px; } .notification-item span { overflow-wrap:anywhere; } .notification-extra .notification-setting-row { flex-wrap:wrap; } }
@media(max-width:600px) { .pair-toolbar .notification-button.icon-button { width:32px; min-width:32px; margin-left:auto; } .pair-toolbar .identity { min-width:0; } .pair-toolbar .identity strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; } }

/* Plan029: root destinations and focused tasks share one shell. */
html[data-shell-mode] .app-shell {grid-template-columns:216px minmax(0,1fr);height:var(--visual-viewport-height,100dvh)}
html[data-shell-mode] .sidebar {width:216px;padding:24px 16px;display:flex;gap:28px;flex-direction:column}
html[data-shell-mode] .brand {font-size:30px;margin:0;min-height:44px}
html[data-shell-mode] #mainNav {display:grid;gap:6px}
html[data-shell-mode] .nav-item {min-height:48px;padding:12px 16px;text-align:left;border-radius:8px;justify-content:flex-start}
html[data-shell-mode] .main-shell {min-width:0;display:flex;flex-direction:column;height:100%;padding:0;overflow:hidden}
html[data-shell-mode] #mainContent {flex:1;min-height:0;overflow:auto;padding:0}
html[data-shell-mode] .route-header {display:flex;align-items:center;gap:8px;min-height:56px;flex-shrink:0;padding:4px 24px;border-bottom:1px solid var(--border,#303030)}
html[data-shell-mode] .route-header :is(h1,h2) {font-size:22px;margin:0;line-height:1.3;font-weight:600;overflow-wrap:anywhere}
html[data-shell-mode] .route-header button {min-width:44px;min-height:44px;font-size:28px}
html[data-shell-mode] .page {margin:0 auto;max-width:1040px;width:100%;padding:24px;box-sizing:border-box}
html[data-shell-mode] .page-head h2 {font-size:22px}
html[data-shell-mode] .admin-home {padding-top:12px}
.admin-home .section-title {display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px}
.admin-home .section-title h2,.admin-tool-directory h2 {font-size:15px;color:var(--muted,#b2b2b2);font-weight:500;margin:0}
.admin-attention-row {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--border,#303030)}
.admin-attention-row p {font-size:14px;color:var(--muted,#b2b2b2);margin:4px 0 0;overflow-wrap:anywhere}
.admin-attention-row button {min-height:44px;flex-shrink:0}
.admin-tool-directory {display:grid;gap:24px;margin-top:20px;grid-template-columns:repeat(3,minmax(0,1fr))}
.admin-tool-link {display:flex;width:100%;align-items:center;justify-content:space-between;min-height:52px;border:0;border-bottom:1px solid var(--border,#303030);border-radius:0;padding:12px 0;text-align:left;background:transparent;font-size:16px}
.admin-tool-link span:last-child {font-size:22px;color:var(--muted,#b2b2b2)}
.admin-tool-directory h2 {padding-bottom:4px}
.admin-ready {margin-top:24px;font-size:14px}
html[data-shell-mode] .route-task .dialog-body {padding:0;overflow:visible;max-height:none}
html[data-shell-mode] .route-task .dialog-footer {position:static;padding:16px 0;flex-wrap:wrap}
html[data-shell-mode] [hidden] {display:none!important}
html[data-shell-mode] button:focus-visible,html[data-shell-mode] a:focus-visible {outline:2px solid #dadada;outline-offset:3px}
.access-card {max-width:400px;box-sizing:border-box}
.access-card input {font-size:16px;min-height:44px}
.access-card [role=alert]:focus {outline:2px solid #dedede;outline-offset:4px}
@media(max-width:1100px) and (min-width:721px){html[data-shell-mode] .app-shell{grid-template-columns:148px minmax(0,1fr)}html[data-shell-mode] .sidebar{width:148px;padding:20px 8px}html[data-shell-mode] .nav-item{font-size:14px;padding:12px 8px}.admin-tool-directory{grid-template-columns:1fr 1fr}}
@media(max-width:720px){
 html[data-shell-mode] .app-shell {display:block;height:calc(var(--visual-viewport-height,100dvh) - 64px - env(safe-area-inset-bottom,0px));padding:0}
 html[data-shell-mode=focus] .app-shell {height:var(--visual-viewport-height,100dvh)}
 html[data-shell-mode] .sidebar {display:none!important}
 html[data-shell-mode] .main-shell {padding:0!important;height:100%;margin:0}
 html[data-shell-mode] .route-header {padding:4px 16px;min-height:56px}
 html[data-shell-mode] .route-header :is(h1,h2) {font-size:21px}
 html[data-shell-mode] .page {padding:12px 16px 24px}
 html[data-shell-mode] #mainContent {padding:0!important;margin:0!important;height:auto}
 html[data-shell-mode] .mobile-nav {display:flex;justify-content:stretch;height:auto;min-height:64px;padding:0 8px env(safe-area-inset-bottom,0px);position:fixed;bottom:0;left:0;right:0;background:#161616;border-top:1px solid #303030;z-index:20}
 html[data-shell-mode] .root-tab {flex:1;min-height:64px;min-width:0;display:flex;align-items:center;justify-content:center;font-size:12px;padding:12px 3px;border:0;border-radius:0;background:transparent;color:#a7a7a7;gap:4px}
 html[data-shell-mode] .root-tab.active {color:#fff;box-shadow:inset 0 2px #d6d6d6}
 html[data-shell-mode=focus] .mobile-nav {display:none!important}
 .admin-tool-directory {grid-template-columns:1fr;gap:20px;margin-top:16px}
 .admin-home .quiet-row {padding:8px 0;margin:0}
 .access-locked #accessGate {padding:24px 18px;align-items:flex-start;min-height:100dvh;height:auto;overflow:visible;box-sizing:border-box}
 .access-card {padding:24px 16px!important;width:100%}
}

/* Simple notification preferences, with browser alerts subordinate to this device. */
.notification-settings .notification-setting-row { align-items:center; min-height:76px; gap:16px; border-bottom:1px solid var(--shade-44); }
.notification-settings .notification-setting-row h3 { font-size:16px; }
.notification-browser-row.is-disabled { color:var(--shade-160); }
.notification-browser-row.is-disabled h3 { opacity:.55; }
.notification-toggle { display:inline-flex; align-items:center; gap:12px; flex:none; min-height:44px; padding:6px 0 6px 10px; border:0; background:transparent; box-shadow:none; }
.notification-toggle:hover { background:transparent; }
.notification-toggle-state { font-size:13px; color:var(--shade-160); }
.notification-toggle-track { display:block; width:44px; height:26px; border-radius:20px; background:var(--shade-70,#464646); padding:3px; }
.notification-toggle-track > span { display:block; width:20px; height:20px; border-radius:50%; background:#fff; }
.notification-toggle[aria-checked="true"] .notification-toggle-track { background:#ededed; }
.notification-toggle[aria-checked="true"] .notification-toggle-track > span { transform:translateX(18px); background:#242424; }
.notification-toggle:disabled { opacity:.4; cursor:default; }
.notification-toggle:focus-visible { outline:2px solid var(--shade-230); outline-offset:4px; border-radius:6px; }

/* Plan030: each destination owns the full viewport. */
html[data-shell-mode] .app-shell {display:block;grid-template-columns:minmax(0,1fr);height:var(--visual-viewport-height,100dvh);padding:0}
html[data-shell-mode] .sidebar,html[data-shell-mode] .mobile-nav {display:none!important}
html[data-shell-mode] .route-header {gap:8px;padding:4px 16px;min-height:56px}
html[data-shell-mode] #routeNotifications {margin-left:auto;font-size:22px;position:relative}
html[data-shell-mode] #routeTitle {font-size:20px}
html[data-shell-mode] .home-page {max-width:540px;padding-top:24px}
.home-greeting {color:var(--muted);margin:0 0 20px}
.home-destination {display:flex;justify-content:space-between;align-items:center;gap:20px;width:100%;min-height:60px;margin:0 0 12px;padding:16px;text-align:left;font-size:16px}
html[data-shell-mode] .toast-region {bottom:calc(16px + env(safe-area-inset-bottom,0px))}

/* Plan031: approved visual finish, scoped to Home and Account. */
.elys-icon{display:block;width:21px;height:21px;flex:none}
.elys-wordmark{font-family:Georgia,"Times New Roman",serif;font-size:34px;font-weight:700;letter-spacing:-2px;line-height:1;color:var(--text)}
.elys-eyebrow{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#a4ad95;font-weight:600;line-height:1.5;margin:0 0 15px}
html[data-root-tab="home"],html[data-root-tab="account"]{--bg:#111310;--text:#e8e8e4;--muted:#a3a79d;--line:#30362a;--border:#30362a}
html[data-root-tab="home"],html[data-root-tab="account"]{--surface:#1c2019;--surface2:#252b20;--accent:#c5cbbd;--subtle:#a4ad95}
html[data-root-tab="home"] .route-header{padding:16px 24px;min-height:76px;border-bottom:1px solid #252922;gap:8px}
html[data-root-tab="home"] .home-page{max-width:540px;margin:0 auto;padding:30px 24px 36px}
.home-title{font-family:Georgia,"Times New Roman",serif;font-size:32px;font-weight:400;letter-spacing:-.5px;line-height:1.16;margin:0 0 12px}
.home-person{font-size:14px;color:#a3a79d;line-height:1.55;margin:0}
.home-conversations{margin-top:38px;padding-bottom:28px}
.home-conversations h2{font-size:20px;font-weight:500;letter-spacing:0;line-height:1.4;margin:0 0 8px}
.home-conversations p{font-size:14px;color:#a3a79d;line-height:1.55;max-width:280px;margin:0}
.home-primary{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;width:100%;padding:14px 16px;min-height:48px;border:1px solid #d9dcd2;border-radius:7px;background:#d9dcd2;color:#191c16;font-size:14px;font-weight:600}
.home-primary:hover{background:#edf0e5;border-color:#edf0e5}
.home-primary .elys-icon{width:18px;height:18px}
.home-secondary{border-top:1px solid #30362a}
.home-secondary .home-destination{width:100%;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:62px;margin:0;padding:17px 0;border:0;border-bottom:1px solid #30362a;border-radius:0;background:transparent;text-align:left;font-size:15px;font-weight:400}
.home-secondary .home-destination:hover{background:#1a1e16}
.home-secondary .elys-icon{width:17px;height:17px;color:#a3aa98}
.account-notifications-page .notification-setting-copy{min-width:0}
.account-notifications-page .notification-setting-detail{font-size:12px;color:#a2a896;line-height:1.4;margin:6px 0 0}
.account-notifications-page .notification-device-note{margin-top:25px;padding-left:12px;border-left:2px solid #434d37}
.account-notifications-page .notification-device-note strong{display:block;font-size:12px;font-weight:500;color:#c2c9b8;margin-bottom:7px}
.account-notifications-page .notification-device-note p{font-size:12px;line-height:1.6;color:#9ba38e;margin:0}
.account-notifications-page .notification-browser-row.is-disabled h3{opacity:1;color:#a4aa9c}
.account-notifications-page .notification-toggle:disabled{opacity:1;color:#a2a896;cursor:default}
.account-notifications-page .notification-toggle:disabled .notification-toggle-track{background:#2b3026}
.account-notifications-page .notification-toggle:disabled .notification-toggle-track>span{background:#777f6e}
html[data-root-tab="home"] button.home-primary{min-height:48px;font-size:14px}
html[data-root-tab="home"] button.home-destination,html[data-root-tab="account"] button.account-preferences-row{font-size:15px}
html[data-root-tab="account"] .account-signout button{font-size:14px}

.w1-list{max-width:760px;margin:0 auto;padding:0 16px 20px}.w1-list-controls{display:flex;gap:8px;align-items:center}.w1-list-controls input{min-width:0;flex:1;margin:0;height:44px}.w1-filters{position:relative}.w1-filters summary{min-height:44px;display:flex;align-items:center;padding:0 10px;cursor:pointer}.w1-filters[open]{background:var(--surface,#171b21)}.w1-filters .reviewer-filter{min-width:170px}.w1-segments{display:flex;align-items:center;gap:6px;margin:8px 0}.w1-segments button,.w1-add{min-height:44px}.w1-add{margin-left:auto}.w1-pair-list{display:flex;flex-direction:column}.w1-pair-row{display:block;padding:13px 4px;border-bottom:1px solid var(--line,#303640);text-decoration:none;color:inherit;min-height:100px}.w1-row-title{display:flex;gap:12px;justify-content:space-between;align-items:baseline}.w1-row-title strong{overflow-wrap:anywhere}.w1-row-title time{font-size:12px;flex-shrink:0;color:var(--muted,#a6adb9)}.w1-secondary{font-size:13px;color:var(--muted,#a6adb9);line-height:1.5}.w1-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.45;margin:5px 0;white-space:pre-wrap;overflow-wrap:anywhere}.w1-status{display:block;font-size:13px;color:var(--accent,#a9cebf);line-height:1.5}.w1-link{display:inline-flex;align-items:center;min-height:44px;padding:8px 10px;color:inherit;text-decoration:none;border-radius:8px}.w1-link:hover,.w1-pair-row:hover{background:var(--surface-hover,#212731)}.w1-link:focus-visible,.w1-pair-row:focus-visible,.w1-search-result:focus-visible,.w1-version-row:focus-visible,.w1-fold-button:focus-visible{outline:2px solid var(--accent,#a9cebf);outline-offset:3px}.w1-chat{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden}.w1-chat-header{display:flex;align-items:center;gap:8px;padding:6px 12px;min-height:56px;border-bottom:1px solid var(--line,#303640);flex-shrink:0}.w1-chat-identity{flex:1;min-width:0;display:flex;flex-direction:column;text-decoration:none;color:inherit;line-height:1.35}.w1-chat-identity strong{overflow-wrap:anywhere}.w1-chat-identity span{font-size:13px;color:var(--muted,#a6adb9)}.w1-chat .conversation-layout{min-height:0;flex:1}.w1-chat .chat-stream{width:100%;padding-left:max(12px,calc((100% - 740px)/2));padding-right:max(12px,calc((100% - 740px)/2))}.w1-chat .conversation-primary{padding-top:6px;padding-bottom:max(6px,env(safe-area-inset-bottom));min-height:50px}.w1-page{max-width:760px;margin:0 auto;padding:12px 16px 32px;width:100%;box-sizing:border-box;overflow-wrap:anywhere}.w1-page h2{font-size:20px;margin:12px 0}.w1-page h3{font-size:17px;margin:20px 0 8px}.w1-facts{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,2fr);gap:10px;margin:14px 0}.w1-facts dt{color:var(--muted,#a6adb9)}.w1-facts dd{margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.w1-exact{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6;max-height:none;overflow:visible;background:none;padding:0;border:0}.w1-exact.mono{font-family:monospace;font-size:14px}.w1-page figure{margin:12px 0}.w1-page figure img{max-width:100%;max-height:400px;object-fit:contain}.w1-page figcaption{font-size:13px;overflow-wrap:anywhere}.w1-source-lane,.w1-history-record{border-bottom:1px solid var(--line,#303640);padding:10px 0}.w1-destinations{display:flex;flex-direction:column;align-items:flex-start;margin:10px 0}.w1-search-page form{display:flex;gap:8px}.w1-search-page input{min-width:0;flex:1}.w1-search-result,.w1-version-row{display:block;color:inherit;text-decoration:none;border-bottom:1px solid var(--line,#303640);padding:14px 0}.w1-search-result time,.w1-version-row time{display:block;font-size:13px;color:var(--muted,#a6adb9);margin:4px 0}.w1-search-result p{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5}.w1-search-result mark{background:#405445;color:inherit}.w1-task-footer{display:flex;flex-wrap:wrap;gap:8px;padding:14px 0}.w1-task-page #dialogBody{overflow:visible;max-height:none;padding:0}.w1-task-page #dialogFooter{display:flex;flex-wrap:wrap;gap:8px;padding:0;border:0}.w1-task-page .scroll-panel{overflow:visible}.w1-task-page textarea{min-height:90px;resize:vertical;max-height:none}.w1-task-page .field{margin-bottom:16px}.w1-fold-text{white-space:pre-wrap;overflow-wrap:anywhere}.w1-fold-text.w1-folded{max-height:var(--w1-fold-height,320px);overflow:hidden}.w1-fold-button{display:block;min-height:44px;padding:8px 0;font:inherit;font-size:14px;color:var(--accent,#a9cebf);background:none;border:0;cursor:pointer}.w1-error{padding:10px;border:1px solid var(--danger,#c88888);border-radius:8px}.w1-task-page .reply-tools-panel{max-height:none}.w1-page .chat-reply-editor{height:auto;min-height:180px;max-height:none;overflow:hidden}.w1-prose{line-height:1.6;overflow-wrap:anywhere}@media(max-width:720px){.w1-list{padding:0 12px 12px}.w1-page{padding:8px 12px 24px}.w1-list-controls{gap:4px}.w1-row-title{gap:6px}.w1-chat-header{padding:5px 8px}.w1-chat .conversation-primary .chat-primary-actions{flex-wrap:wrap}.w1-facts{grid-template-columns:minmax(95px,1fr) minmax(0,2fr)}}
.w1-chat-header .w1-chat-title{margin:0;flex:1;min-width:0;font:inherit;letter-spacing:inherit;line-height:1.35}

/* A resting conversation gives its entire remaining height to the stream. */
.w1-chat .conversation-primary[hidden]{display:none}.w1-chat .conversation-primary .primary{min-height:44px}.w1-chat .chat-stream>.chat-latest{position:sticky;bottom:6px;margin-left:auto;display:block;min-height:44px}.w1-chat .chat-stream>.chat-latest[hidden]{display:none}

/* Filter disclosure must not inherit the prose-details padding and margins. */
.w1-list-controls{min-height:44px}.w1-list-controls>.w1-filters{flex:0 0 auto;margin:0;padding:0;border:0}.w1-filters>summary,.w1-filters[open]>summary{box-sizing:border-box;margin:0;min-height:44px;padding:0 10px}.w1-filter-panel{position:absolute;z-index:8;right:0;top:100%;min-width:220px;max-width:calc(100vw - 24px);padding:12px;border:1px solid var(--line,#303640);border-radius:8px;background:var(--surface,#171b21);box-shadow:0 8px 24px #0005}.w1-filter-panel .reviewer-filter{margin:0 0 8px}.w1-filter-panel button,.w1-filter-panel select{min-height:44px}.w1-segments{margin:4px 0}.w1-segments .w1-add{box-sizing:border-box;padding:0 10px}

.delivery-page{max-width:46rem;margin:0 auto;padding:clamp(1rem,4vw,2.5rem);overflow-wrap:anywhere}.delivery-page h2{font-family:Georgia,serif;font-size:clamp(1.7rem,5vw,2.3rem);font-weight:400;margin:.35rem 0 1rem}.delivery-page h3{font-size:1rem;font-weight:500}.delivery-eyebrow{color:var(--muted,#a4a19b);font-size:.85rem}.delivery-text{margin:1.75rem 0;padding:1rem 0;border-block:1px solid var(--line,#333)}.delivery-text pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.65;margin:.75rem 0}.delivery-error{padding:.75rem;border-left:2px solid #bb8c68;color:#e4b992;line-height:1.55}.delivery-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.25rem 0}.delivery-actions button,.delivery-page>button,.delivery-page select{min-height:44px;max-width:100%}.delivery-page select{width:100%;margin-top:.5rem}.delivery-review{display:grid;grid-template-columns:minmax(5rem,1fr) minmax(0,2fr);gap:.6rem 1rem}.delivery-review dt{color:var(--muted,#a4a19b)}.delivery-review dd{margin:0}.delivery-evidence{margin:1.75rem 0;color:var(--muted,#a4a19b);font-size:.85rem}.delivery-evidence summary{padding:.65rem 0;min-height:44px;cursor:pointer}.delivery-back,.delivery-chat-link{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-underline-offset:.25rem}.delivery-back{margin-top:1rem}.delivery-page [disabled]{opacity:.5;cursor:not-allowed}@media(max-width:400px){.delivery-review{grid-template-columns:1fr;gap:.25rem}.delivery-review dd{margin-bottom:.65rem}.delivery-actions>*{flex:1 1 100%}}

/* Account and compact Inbox; loaded after the shared stylesheet. */
.account-page,.notification-page{max-width:760px;margin:0 auto;padding:16px 20px 28px;}
.account-page-head,.notification-page-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px;min-height:44px;}
.account-page-head h1,.notification-page-head h1{font-size:24px;line-height:1.3;margin:0;}
.account-identity{padding:18px 0 24px;}
.account-identity h3{font-size:20px;line-height:1.4;margin:0 0 6px;overflow-wrap:anywhere;}
.account-identity p{margin:0;color:var(--text-secondary,#aaa);overflow-wrap:anywhere;}
.account-preferences-row{display:flex;width:100%;align-items:center;justify-content:space-between;gap:16px;min-height:56px;text-align:left;background:transparent;border:0;border-top:1px solid var(--border,#333);border-bottom:1px solid var(--border,#333);padding:12px 0;white-space:normal;}
.account-preferences-row>span:last-child{color:var(--text-secondary,#aaa);text-align:right;}
.account-admin-link{display:inline-flex;align-items:center;min-height:44px;margin-top:12px;}
.account-signout{margin-top:24px;}
.account-signout button,.account-page button,.notification-page button{min-height:44px;}
.notification-head-actions{display:flex;align-items:center;gap:4px;}
.notification-page-options,.notification-row-options{position:relative;}
.notification-page-options summary,.notification-row-options summary{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;cursor:pointer;list-style:none;font-size:22px;}
.notification-page-options summary::-webkit-details-marker,.notification-row-options summary::-webkit-details-marker{display:none;}
.notification-page-options[open]>button,.notification-row-options[open]>button{position:absolute;z-index:5;right:0;top:44px;min-width:170px;background:var(--surface,#242424);box-shadow:0 8px 20px #0006;white-space:normal;text-align:left;}
.notification-refresh-status{margin:0 0 4px;min-height:24px;font-size:14px;line-height:1.5;color:var(--text-secondary,#aaa);overflow-wrap:anywhere;}
.notification-page .notification-list{display:block;border:0;}
.notification-page .notification-item{display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start;border:0;border-bottom:1px solid var(--border,#333);border-radius:0;background:transparent;padding:0;gap:4px;}
.notification-page .notification-target{display:grid;grid-template-columns:minmax(0,1fr);gap:5px;text-align:left;background:transparent;border:0;padding:16px 0;min-width:0;white-space:normal;border-radius:0;}
.notification-page .notification-item-heading{display:flex;gap:8px;align-items:baseline;overflow-wrap:anywhere;}
.notification-page .notification-item-heading strong{font-size:16px;line-height:1.45;}
.notification-page .notification-item.seen strong{font-weight:500;}
.notification-page .notification-pair{overflow-wrap:anywhere;font-size:16px;line-height:1.45;}
.notification-page .notification-item time{font-size:13px;color:var(--text-secondary,#aaa);overflow-wrap:anywhere;}
.notification-page .notification-unread-dot{flex-shrink:0;}
.notification-row-options{margin-top:6px;}
.notification-page .notification-empty{padding:20px 0;background:transparent;border:0;}
.account-page .notification-settings{padding:12px 0;background:transparent;border:0;}
.account-page .notification-extra{margin-top:20px;}
.account-page .notification-extra summary{min-height:44px;display:flex;align-items:center;cursor:pointer;}
.account-logout-notice{max-width:420px;margin:16px auto;padding:0 20px;line-height:1.5;}
.notification-page summary:focus-visible,.account-page a:focus-visible{outline:2px solid currentColor;outline-offset:3px;}
@media(max-width:720px){.account-page,.notification-page{padding:12px 16px 24px;}.account-page-head h1,.notification-page-head h1{font-size:22px;}.account-page .notification-extra .notification-setting-row{display:block;}.account-page .notification-extra button{margin-top:10px;}.notification-device-status{white-space:normal;}}
@media(max-width:360px){.notification-page-head{gap:6px;}.notification-head-actions{gap:0;}.notification-page-head h1{font-size:20px;}}

.notification-page-head{margin-bottom:4px;}

.notification-page .notification-page-options,.notification-page .notification-row-options{margin:0;padding:0;border:0;background:transparent;}
.notification-page .notification-page-options>summary,.notification-page .notification-row-options>summary{margin:0;padding:0;border:0;background:transparent;width:44px;height:44px;min-width:44px;min-height:44px;box-sizing:border-box;}

/* Plan031: Account owns its heading and Back, with no separate navigation band. */
html[data-shell-mode] .account-page{max-width:760px;padding:24px 24px 40px;}
.elys-page-heading{display:flex;align-items:center;gap:8px;margin:0 0 12px -12px;min-width:0;}
.elys-page-heading>button{display:grid;place-items:center;flex:0 0 44px;min-width:44px;width:44px;min-height:44px;height:44px;padding:0;border:0;border-radius:8px;background:transparent;color:var(--text,#e8e8e4);}
.elys-page-heading>button:hover{background:var(--surface,#1c2019);}
.elys-page-heading .elys-heading-copy{min-width:0;}
.elys-page-heading .elys-eyebrow{margin:0 0 8px;font-size:11px;line-height:1.4;letter-spacing:.12em;color:var(--subtle,#a4ad95);}
.elys-page-heading h1{margin:0;font:400 30px/1.16 Georgia,"Times New Roman",serif;letter-spacing:-.5px;overflow-wrap:anywhere;}
.account-page .account-identity{display:flex;align-items:center;gap:14px;margin:30px 0 32px;padding:0;}
.account-page .account-avatar{display:grid;place-items:center;width:46px;height:46px;flex:0 0 46px;border-radius:50%;background:var(--surface2,#252b20);color:var(--accent,#c5cbbd);font:400 17px/1 Georgia,"Times New Roman",serif;}
.account-page .account-identity-copy{min-width:0;}
.account-page .account-identity h3{margin:0 0 7px;font-size:19px;font-weight:500;line-height:1.3;}
.account-page .account-identity p{margin:0;font-size:12px;line-height:1.5;color:var(--muted,#a4a99c);}
.account-settings-rows{border-top:1px solid var(--line,#30362a);}
.account-page .account-preferences-row{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:62px;margin:0;padding:17px 0;border:0;border-bottom:1px solid var(--line,#30362a);border-radius:0;background:transparent;box-shadow:none;text-align:left;white-space:normal;font-size:15px;font-weight:400;line-height:1.45;color:var(--text,#e8e8e4);}
.account-page .account-preferences-row:hover{background:var(--surface-hover,#171b14);}
.account-page .account-preferences-row>span:first-child{min-width:0;overflow-wrap:anywhere;}
.account-page .account-row-right{display:flex;align-items:center;gap:10px;flex-shrink:0;color:var(--muted,#a3a79d);font-size:12px;line-height:1.4;}
.account-page .account-preferences-row .elys-icon{width:17px;height:17px;flex:none;color:var(--muted,#a3aa98);}
.account-refresh-copy{display:grid;gap:5px;}
.account-refresh-copy small{font-size:12px;font-weight:400;line-height:1.5;color:var(--muted,#a4a99c);}
.account-page .account-preferences-row[aria-busy="true"]{cursor:wait;}
.account-page .account-signout{margin-top:24px;}
.account-page .account-signout button{min-height:44px;padding:10px 0;border:0;border-radius:4px;background:transparent;box-shadow:none;color:var(--accent,#bec4b4);font-size:14px;font-weight:400;}
.account-page .account-signout button:hover{color:var(--text,#e8e8e4);text-decoration:underline;text-underline-offset:4px;}
.account-notifications-page #notificationSettingsBody{margin-top:32px;}
.account-page .notification-settings{padding:0;}
@media(max-width:720px){html[data-shell-mode] .account-page{padding:24px 24px calc(32px + env(safe-area-inset-bottom,0px));}}
@media(max-width:360px){html[data-shell-mode] .account-page{padding-left:20px;padding-right:20px;}.account-page .account-preferences-row{gap:10px;}.account-page .account-row-right{gap:6px;}}

.ops-page{width:100%;max-width:960px;margin:0 auto;padding:16px;box-sizing:border-box;min-width:0}.ops-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.ops-toolbar nav{display:flex;gap:12px}.ops-toolbar nav .ops-row{border:0;padding:8px 0}.ops-row{display:flex;flex-direction:column;gap:5px;padding:16px 0;border-bottom:1px solid var(--line,#333);text-decoration:none;color:inherit;overflow-wrap:anywhere}.ops-row span,.ops-row small,.ops-note,.ops-status{color:var(--muted,#aaa);font-size:.875rem;line-height:1.5}.ops-status{margin:8px 0}.ops-prose{font-family:inherit;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;max-height:none;overflow:visible;font-size:1rem;line-height:1.65}.ops-page h2{font-size:1.1rem;margin:20px 0 10px}.ops-page dl{display:grid;grid-template-columns:minmax(80px,1fr) minmax(0,2fr);gap:10px}.ops-page dd{margin:0;overflow-wrap:anywhere}.ops-page input,.ops-page select,.ops-page textarea{max-width:100%;box-sizing:border-box}.ops-page textarea{width:100%;resize:vertical;min-height:100px}.ops-filters{margin:8px 0}.ops-filters label{display:block;margin-top:8px}.ops-page .ops-blocker{border-left:3px solid #b99c62;padding:12px}.ops-page .ops-actions{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.route-task pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:none;overflow:visible}.route-task .dialog-body,.route-task #dialogBody{max-height:none;overflow:visible}.ops-page button,.ops-page a{min-height:44px}.ops-page a{justify-content:center}@media(max-width:380px){.ops-page{padding:12px}.ops-page dl{grid-template-columns:1fr}.ops-page dd{margin-bottom:8px}} 

.directory-page {max-width:800px!important;overflow-wrap:anywhere}
.directory-tools {display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:8px}
.directory-tools input {flex:1;min-width:120px}
.directory-tools select {min-height:44px;max-width:180px}
.directory-tools .directory-link {min-height:44px;padding:8px 12px;border:0;background:#282828;border-radius:6px}
.directory-link {display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:12px 0;border-bottom:1px solid #303030;text-decoration:none;color:inherit;box-sizing:border-box}
.directory-link span:last-child {font-size:22px;color:#a7a7a7}
.directory-row {padding:8px 0;border-bottom:1px solid #303030}
.directory-row .directory-link {border:0;padding:4px 0}
.directory-row p {margin:2px 0 8px;color:#aaa;font-size:14px}
.directory-row button,.directory-page input,.directory-page select {min-height:44px}
.directory-secondary {margin-top:24px}
.directory-page h2 {font-size:22px;margin:0 0 12px}
.directory-page .prose {line-height:1.6}
.directory-prose {white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.6}
.directory-page label {display:block;margin:12px 0 6px}
.directory-page select {max-width:100%;width:100%}
.directory-page .directory-tools select {width:auto}
.directory-page .primary {margin-top:16px}
@media(max-width:720px){.directory-page {padding-top:8px!important}.directory-tools{gap:6px}.directory-tools input{max-width:100%}.directory-page .field-grid{grid-template-columns:1fr}.directory-page .access-grants{display:flex;flex-direction:column}.directory-page .access-grants label{min-height:44px}}

/* One compact directory row before the first Reviewer on narrow screens. */
.reviewer-toolbar {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:6px}
.reviewer-toolbar .directory-link {padding:8px;gap:8px;font-size:14px}
.reviewer-toolbar details {margin:0;min-width:0;border:0}
.reviewer-toolbar summary {min-height:44px;padding:10px 8px;box-sizing:border-box;border-radius:6px;background:#282828;font-size:14px;line-height:24px;cursor:pointer}
.reviewer-toolbar details[open] {grid-column:1/-1}
.reviewer-filters {padding:0 4px 8px}
.reviewer-filters input,.reviewer-filters select {width:100%;min-width:0;max-width:none;box-sizing:border-box}

.allocation-page{width:min(100%,48rem);margin:0 auto;padding:1rem clamp(.8rem,3vw,1.6rem) 4rem;overflow-wrap:anywhere}
.allocation-page h2{font-size:1.2rem;margin:.2rem 0 .7rem}.allocation-page h3{font-size:1.05rem}
.allocation-page p{line-height:1.55}.allocation-list{display:grid;gap:.85rem}
.allocation-row{padding:1rem 0;border-bottom:1px solid var(--border,#333)}
.allocation-link{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-height:2.75rem;padding:.65rem 0;color:inherit;text-decoration:none;border-bottom:1px solid var(--border,#333)}
.allocation-form{display:grid;gap:.55rem;max-width:36rem;margin:1.3rem 0}.allocation-form label{margin-top:.55rem}
.allocation-form input,.allocation-form select,.allocation-form textarea{width:100%;min-width:0;max-width:100%;box-sizing:border-box;font:inherit}
.allocation-form button{justify-self:start;margin-top:.6rem;max-width:100%;white-space:normal;min-height:2.75rem}
.allocation-preview{border:1px solid var(--border,#333);border-radius:12px;padding:1rem;margin:1rem 0}.allocation-preview button{white-space:normal;min-height:2.75rem}
.allocation-page dl{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:.5rem 1rem}.allocation-page dd{margin:0}.allocation-exact{white-space:pre-wrap}
.allocation-connection{margin:1.2rem 0;padding:1rem 0;border-block:1px solid var(--border,#333)}.allocation-code{font-family:ui-monospace,monospace;font-size:1.6rem;letter-spacing:.12em;padding:.8rem 0;overflow-wrap:anywhere}
.allocation-subscriptions{margin-top:1.2rem}.allocation-subscriptions summary{cursor:pointer;min-height:2.75rem;align-content:center}.allocation-source{font-size:.85rem;overflow-wrap:anywhere}.allocation-subscriptions button{min-height:2.75rem;white-space:normal;max-width:100%}
@media(max-width:420px){.allocation-page dl{grid-template-columns:1fr;gap:.25rem}.allocation-page dd{margin-bottom:.7rem}.allocation-form button,.allocation-preview button{width:100%}}

.teams-revision-page{max-width:48rem;margin:0 auto;padding:clamp(1rem,4vw,2.5rem);overflow-wrap:anywhere}.teams-revision-page h2{font:400 clamp(1.7rem,5vw,2.3rem) Georgia,serif;margin:.35rem 0 1rem}.teams-revision-page h3{font-size:1rem;font-weight:500}.teams-revision-muted{color:var(--muted,#a4a19b);font-size:.9rem}.teams-revision-link{display:flex;align-items:center;min-height:44px;padding:.65rem 0;color:inherit;text-underline-offset:.25rem}.teams-revision-version{margin:1.5rem 0;padding:1rem 0;border-block:1px solid var(--line,#333)}.teams-revision-version pre{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;line-height:1.65;margin:1rem 0}.teams-revision-version figure{margin:1rem 0}.teams-revision-version img{display:block;max-width:100%;height:auto;max-height:34rem;object-fit:contain;object-position:left}.teams-revision-version figcaption{margin:.6rem 0;color:var(--muted,#a4a19b);font-size:.85rem}.teams-revision-page details{margin:.8rem 0;color:var(--muted,#a4a19b)}.teams-revision-page summary{min-height:44px;padding:.65rem 0;cursor:pointer}.teams-revision-hash{font-family:ui-monospace,monospace;font-size:.8rem;overflow-wrap:anywhere}.teams-revision-error,.teams-revision-tombstone{padding:.8rem;border-left:2px solid #bb8c68;color:#e4b992;line-height:1.55}.teams-revision-page textarea{box-sizing:border-box;width:100%;margin:.6rem 0;min-height:7rem}.teams-revision-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin:1.25rem 0}.teams-revision-actions button,.teams-revision-page>button{min-height:44px;max-width:100%;white-space:normal}.teams-revision-page [disabled]{opacity:.55;cursor:not-allowed}@media(max-width:420px){.teams-revision-actions>*{width:100%}.teams-revision-page{padding:1rem}.teams-revision-version img{max-height:26rem}}

.reconciliation-page{max-width:66rem;margin-inline:auto}.reconciliation-page>p{max-width:48rem}.reconciliation-link{display:flex;justify-content:space-between;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line,#30343b);text-decoration:none}.reconciliation-form,.reconciliation-approval{display:grid;gap:.8rem;margin:1.4rem 0;padding:1rem;border:1px solid var(--line,#30343b);border-radius:12px}.reconciliation-form input,.reconciliation-form select,.reconciliation-form textarea{width:100%;box-sizing:border-box}.reconciliation-approval label{display:flex;gap:.8rem;align-items:flex-start}.reconciliation-approval input[type=checkbox]{flex:none;width:1.2rem;height:1.2rem}.reconciliation-hold{padding:1rem;border-left:3px solid #d3a55c;background:#d3a55c0c;margin:1rem 0;overflow-wrap:anywhere}.reconciliation-receipt{padding:1rem;border-left:3px solid #83b899}.reconciliation-change{margin:.7rem 0;padding:.8rem;border:1px solid var(--line,#30343b);border-radius:8px}.reconciliation-change summary{cursor:pointer;overflow-wrap:anywhere}.reconciliation-prose{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font:inherit;font-size:.9rem;max-height:28rem;overflow:auto;padding:.6rem;background:#0002;border-radius:6px}.reconciliation-comparison{display:grid;gap:.8rem}.reconciliation-comparison>div{min-width:0}.reconciliation-counts{display:flex;flex-wrap:wrap;gap:1rem}.reconciliation-counts>div{display:flex;gap:.5rem}.reconciliation-counts dd{margin:0;font-weight:600}.reconciliation-page code{overflow-wrap:anywhere;word-break:break-all}@media(min-width:900px){.reconciliation-comparison{grid-template-columns:repeat(3,minmax(0,1fr))}}

.sandbox-task{max-width:760px;margin:0 auto;padding:12px 20px 28px;}
.sandbox-task button,.sandbox-task a,.sandbox-task summary{min-height:44px;}
.sandbox-task a{display:inline-flex;align-items:center;overflow-wrap:anywhere;}
.sandbox-library-tools,.sandbox-list-controls,.sandbox-links{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.sandbox-boundary-note{font-size:14px;line-height:1.45;margin:8px 0 12px;color:var(--text-secondary,#aaa);}
.sandbox-list-controls{flex-wrap:nowrap;}.sandbox-list-controls input{flex:1;min-width:0;}
.sandbox-filters{position:relative;}.sandbox-filters summary{display:flex;align-items:center;padding:0 12px;cursor:pointer;}.sandbox-filters[open]{min-width:200px;}.sandbox-filters label{display:block;margin-bottom:12px;}
.sandbox-test-row{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:5px;padding:14px 0;border-bottom:1px solid var(--border,#333);text-decoration:none;color:inherit;}
.sandbox-test-row strong{font-size:17px;line-height:1.45;}.sandbox-test-row>span{font-size:16px;line-height:1.45;}.sandbox-row-state{font-size:13px!important;color:var(--text-secondary,#aaa);}
.sandbox-test-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere;}
.sandbox-context-line{font-size:14px;color:var(--text-secondary,#aaa);margin:0 0 12px;overflow-wrap:anywhere;line-height:1.45;}
.sandbox-saved-status{font-size:14px;margin:0 0 12px;}.sandbox-reader{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65;font-size:16px;padding:0;margin:12px 0;}
.sandbox-reader.folded{max-height:19.8em;overflow:hidden;position:relative;}.sandbox-reader.folded::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2em;background:linear-gradient(transparent,var(--bg,#161616));pointer-events:none;}
.sandbox-task details{margin:12px 0;}.sandbox-task summary{display:flex;align-items:center;cursor:pointer;}
.sandbox-growing-editor{display:block;width:100%;min-height:220px;height:auto;resize:none;overflow:hidden;line-height:1.65;font-size:16px;box-sizing:border-box;}
.sandbox-main-action{margin:16px 0;}.sandbox-options>div{display:flex;flex-direction:column;align-items:flex-start;border-top:1px solid var(--border,#333);}.sandbox-options>div>a,.sandbox-options>div>button{padding:8px 0;}
.sandbox-links{margin-top:20px;border-top:1px solid var(--border,#333);padding-top:8px;}
.sandbox-task pre{white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;font-size:13px;line-height:1.6;max-width:100%;}
.sandbox-context-details{display:grid;grid-template-columns:minmax(90px,1fr) minmax(0,2fr);gap:8px;}.sandbox-context-details dd{margin:0;overflow-wrap:anywhere;}
.sandbox-version-row{border-bottom:1px solid var(--border,#333);padding:12px 0;}.sandbox-version-row h4{margin:0 0 6px;}.sandbox-version-row p{white-space:pre-wrap;overflow-wrap:anywhere;}.sandbox-source-row{display:flex;width:100%;flex-direction:column;gap:8px;align-items:flex-start;text-align:left;border:0;border-bottom:1px solid var(--border,#333);border-radius:0;padding:12px 0;background:transparent;}.sandbox-source-row span{white-space:pre-wrap;overflow-wrap:anywhere;}
.sandbox-question{padding:12px 0;border-top:1px solid var(--border,#333);border-bottom:1px solid var(--border,#333);}.sandbox-question textarea{width:100%;box-sizing:border-box;}
@media(max-width:720px){.sandbox-task{padding:12px 16px 24px;}.sandbox-filters[open]{position:absolute;right:0;z-index:5;background:var(--surface,#242424);padding:12px;min-width:220px;max-width:calc(100vw - 32px);box-sizing:border-box;}.sandbox-list-controls{position:relative;}.sandbox-task .field-grid{display:block;}}

.sandbox-library-tools{position:relative;flex-wrap:nowrap;gap:8px;margin-bottom:8px;justify-content:space-between;}
.sandbox-library-tools .sandbox-filters{margin:0;}
.sandbox-library-tools .sandbox-filters summary{padding:0 8px;font-size:14px;white-space:nowrap;}
.sandbox-filter-panel{position:absolute;left:0;right:0;top:48px;z-index:5;background:var(--surface,#242424);padding:16px;border:1px solid var(--border,#333);border-radius:10px;}
.sandbox-filter-panel input,.sandbox-filter-panel select{width:100%;box-sizing:border-box;}
@media(max-width:720px){.sandbox-library-tools .sandbox-filters[open]{position:static;padding:0;min-width:0;background:none;}.sandbox-library-tools>button{padding-left:10px;padding-right:10px;}}

.mv-page{max-width:800px;width:100%;box-sizing:border-box;margin:0 auto;padding:12px 16px 32px;overflow-wrap:anywhere}.mv-page h2{font-size:19px;line-height:1.35;margin:16px 0 8px}.mv-page h3{font-size:17px}.mv-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:8px}.mv-toolbar input{flex:1;min-width:140px;margin:0}.mv-toolbar select{width:auto;max-width:100%;min-width:100px;margin:0;min-height:44px}.mv-link{display:inline-flex;min-height:44px;align-items:center;gap:8px;padding:8px 10px;box-sizing:border-box;color:inherit;text-decoration:none;border-radius:8px}.mv-links{display:flex;flex-direction:column;align-items:flex-start}.mv-row,.mv-list>.mv-link{display:block;color:inherit;text-decoration:none;border-bottom:1px solid var(--line,#303640);padding:13px 0;min-height:70px}.mv-row strong,.mv-row span,.mv-list>.mv-link strong,.mv-list>.mv-link span{display:block}.mv-row span,.mv-list>.mv-link span{font-size:13px;line-height:1.5;color:var(--muted,#a6adb9)}.mv-preview{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;line-height:1.5;margin:5px 0;white-space:pre-wrap}.mv-subtle{font-size:13px;line-height:1.5;color:var(--muted,#a6adb9)}.mv-exact{font:inherit;line-height:1.65;white-space:pre-wrap;overflow-wrap:anywhere;max-height:none;overflow:visible;padding:0;background:none;border:0}.mv-record{padding:12px 0;border-bottom:1px solid var(--line,#303640)}.mv-actions{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.mv-actions button,.mv-page>button{min-height:44px}.mv-error{border:1px solid var(--danger,#bf8a8a);padding:10px;border-radius:8px;line-height:1.5}.mv-result{color:var(--accent,#a9cebf);line-height:1.5}.mv-source{display:flex;align-items:flex-start;gap:10px;padding:12px 0;border-bottom:1px solid var(--line,#303640);line-height:1.5}.mv-source input{flex-shrink:0;width:20px;height:20px;margin:3px 0}.mv-source span{min-width:0}.mv-source time{font-size:13px;color:var(--muted,#a6adb9)}.mv-page .field{margin:14px 0}.mv-page .field label{display:block;margin-bottom:6px}.mv-page textarea{width:100%;min-height:90px;box-sizing:border-box;line-height:1.6;font:inherit;resize:vertical;max-height:none}.mv-document-editor{min-height:400px!important;overflow:hidden;font-family:monospace!important;font-size:15px!important}.mv-document-prose{line-height:1.65;overflow-wrap:anywhere}.mv-details{margin-top:16px}.mv-details dl{display:grid;grid-template-columns:minmax(100px,1fr) minmax(0,3fr);gap:8px}.mv-details dd{margin:0;overflow-wrap:anywhere}.mv-details dt{color:var(--muted,#a6adb9)}.mv-compare{display:grid;grid-template-columns:1fr;gap:16px}.mv-ack{display:flex;align-items:flex-start;gap:8px;padding:10px 0;line-height:1.5}.mv-ack input{flex-shrink:0;width:20px;height:20px;margin-top:3px}.mv-library-group h2{font-size:16px;color:var(--muted,#a6adb9)}.mv-tools{margin-top:14px}.mv-link:hover,.mv-row:hover{background:var(--surface-hover,#212731)}.mv-link:focus-visible,.mv-row:focus-visible,.mv-source input:focus-visible{outline:2px solid var(--accent,#a9cebf);outline-offset:3px}.w1-message-highlight{outline:2px solid var(--accent,#a9cebf);outline-offset:4px}@media(min-width:1100px){.mv-compare{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.mv-page:has(.mv-compare){max-width:1100px}}@media(max-width:720px){.mv-page{padding:8px 12px 24px}.mv-toolbar{gap:6px}.mv-toolbar select{min-width:90px;flex:1}.mv-document-editor{min-height:340px!important}.mv-page h2{margin-top:14px}.mv-details dl{grid-template-columns:minmax(90px,1fr) minmax(0,2fr)}}
html[data-workspace-mode="admin"] .page .mv-page .empty-state{padding:6px 0 12px;text-align:left;max-width:none;margin:0}html[data-workspace-mode="admin"] .page .mv-page .empty-icon{display:none}html[data-workspace-mode="admin"] .page .mv-page .empty-state h3{margin:0 0 6px}html[data-workspace-mode="admin"] .page .mv-page .empty-state p{margin:0;max-width:none}.mv-toolbar #w4Status{min-width:106px;flex:0 1 116px}.mv-toolbar #w4PairFilter{min-width:100px}.mv-toolbar:has(#w4Status)>.mv-link{padding-left:3px;padding-right:3px;font-size:13px}
