/* styles.css */
:root{--bg:#f5f8fc;--surface:#fff;--line:#dfe7f1;--text:#10213d;--muted:#6e7c92;--blue:#1478f2;--blue-soft:#eaf3ff;--green:#16a76c;--green-soft:#e9f8f1;--orange:#f3a21a;--orange-soft:#fff5df;--red:#e64343;--red-soft:#fff0f0;--violet:#8454ee;--violet-soft:#f2edff;--shadow:0 14px 34px rgba(28,61,104,.09);--radius:16px;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;color:var(--text)}
*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:var(--bg)}button,input,textarea,select{font:inherit}button,a{cursor:pointer}.hidden{display:none!important}.muted{color:var(--muted)}
.topbar{height:72px;background:#fff;border-bottom:1px solid var(--line);display:grid;grid-template-columns:260px 1fr 260px;align-items:center;padding:0 28px;position:sticky;top:0;z-index:50}.brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none}.brand-mark{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--blue-soft);color:var(--blue);font-weight:900;border:1px solid #cae0ff}.brand span:last-child:not(.brand-mark){display:flex;flex-direction:column;line-height:1.05}.brand small{font-size:12px;color:var(--muted);margin-top:3px}.main-nav{justify-self:center;display:flex;height:100%;gap:18px}.nav-item{border:0;background:transparent;color:#46566f;padding:0 18px;font-weight:700;border-bottom:3px solid transparent}.nav-item span{margin-right:8px}.nav-item.active{color:var(--blue);border-color:var(--blue)}.top-actions{display:flex;justify-content:flex-end;align-items:center;gap:14px}.system-status{font-size:12px;color:var(--muted)}.system-status.ready{color:var(--green)}.system-status.warning{color:#a66a00}.system-status.error{color:var(--red)}.user-button{width:38px;height:38px;border:0;border-radius:50%;background:var(--blue);color:#fff;font-weight:800}
.shell{max-width:1480px;margin:0 auto;padding:22px}.view{display:none}.view.active{display:block}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.search-hero{max-width:1180px;margin:20px auto 24px;text-align:center}.search-intro h1{font-size:32px;margin:7px 0 8px}.search-intro p{margin:0;color:var(--muted)}.eyebrow{text-transform:uppercase;letter-spacing:.11em;font-size:11px;color:#8190a6;margin:0 0 4px;font-weight:800}.search-form{margin-top:24px;background:#fff;border:1px solid #cfdbea;border-radius:14px;box-shadow:0 8px 28px rgba(23,68,128,.11);display:grid;grid-template-columns:44px 1fr 126px;align-items:center;padding:6px}.search-icon{font-size:25px;color:#667892}.search-form input{height:52px;border:0;outline:0;font-size:17px;color:var(--text)}.primary-button,.outline-button,.success-button,.warning-button,.danger-outline-button{border-radius:10px;padding:11px 18px;font-weight:800;border:1px solid transparent}.primary-button{background:var(--blue);color:#fff}.primary-button:disabled{opacity:.45;cursor:not-allowed}.outline-button{background:#fff;color:var(--blue);border-color:#b9d4fa}.success-button{background:var(--green);color:#fff}.warning-button{background:var(--orange-soft);color:#966000;border-color:#f6cc78}.danger-outline-button{background:#fff;color:var(--red);border-color:#ffc4c4}.filter-row{display:flex;justify-content:center;gap:8px;margin-top:12px}.filter-chip,.mini-chip{border:1px solid var(--line);background:#fff;color:#40506a;border-radius:9px;padding:8px 12px;font-weight:700}.filter-chip.active,.mini-chip.active{background:var(--blue-soft);color:var(--blue);border-color:#bcd8ff}.empty-search{max-width:920px;margin:36px auto;padding:48px;text-align:center}.empty-search h2{margin:12px 0 8px}.empty-search p{color:var(--muted);max-width:620px;margin:0 auto}.empty-icon{width:58px;height:58px;border-radius:18px;background:var(--blue-soft);color:var(--blue);display:grid;place-items:center;margin:auto;font-size:28px}.empty-icon.small{width:42px;height:42px;border-radius:12px;margin:0;font-size:20px}.search-results{padding:22px}.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.section-head h2{margin:0}.section-head p{margin:5px 0 0}.release-chip{font-size:12px;color:#51617a;background:#f1f5fa;padding:7px 10px;border-radius:20px}.source-list{display:grid;gap:12px;margin-top:18px}.source-card{border:1px solid var(--line);border-radius:13px;padding:18px;display:grid;grid-template-columns:1fr auto;gap:10px 20px;background:#fff}.source-card h3,.source-card p{grid-column:1/2;margin:0}.source-card p{line-height:1.55}.source-card .source-number{grid-row:1/4;grid-column:2;font-weight:800;color:var(--blue);background:var(--blue-soft);border-radius:10px;padding:7px 10px;height:max-content}.source-meta{display:flex;gap:16px;color:var(--muted);font-size:13px}.source-link{color:var(--blue);font-weight:800;text-decoration:none}
.pipeline-grid{display:grid;grid-template-columns:1fr 28px 1fr 28px 1fr 28px 1fr;align-items:stretch;margin-bottom:18px}.pipeline-card{display:flex;gap:14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 7px 24px rgba(29,64,111,.07)}.stage-icon{width:54px;height:54px;flex:0 0 54px;border-radius:50%;display:grid;place-items:center;color:#fff;font-size:25px;font-weight:800}.blue .stage-icon{background:var(--blue)}.green .stage-icon{background:var(--green)}.orange .stage-icon{background:var(--orange)}.violet .stage-icon{background:var(--violet)}.stage-main{min-width:0;flex:1}.stage-head{display:flex;justify-content:space-between;gap:8px;align-items:center}.stage-head h3{font-size:15px;margin:0}.stage-badge{font-size:11px;border-radius:7px;padding:5px 7px;background:#f1f5fa;color:#63728a;white-space:nowrap}.stage-value{font-size:23px;font-weight:900;margin:8px 0}.progress{height:6px;background:#e8edf4;border-radius:8px;overflow:hidden}.progress i{display:block;height:100%;background:var(--blue);border-radius:8px;transition:width .35s}.green .progress i{background:var(--green)}.orange .progress i{background:var(--orange)}.violet .progress i{background:var(--violet)}.progress.indeterminate i{width:38%!important;animation:slide 1.2s ease-in-out infinite}.stage-meta{display:flex;justify-content:space-between;gap:8px;margin-top:8px;font-size:11px;color:var(--muted)}.flow-arrow{display:grid;place-items:center;font-size:32px;color:#91a0b5}@keyframes slide{0%{transform:translateX(-110%)}100%{transform:translateX(310%)}}
.publication-strip{display:flex;justify-content:space-between;align-items:center;background:var(--violet-soft);border:1px solid #d9ccff;border-radius:13px;padding:14px 18px;margin:0 0 18px}.publication-strip div{display:flex;flex-direction:column;gap:3px}.publication-strip span{font-size:13px;color:#62557c}.documents-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:18px}.documents-card{overflow:hidden}.documents-head{padding:20px}.head-actions{display:flex;gap:9px}.compact-input{border:1px solid var(--line);border-radius:9px;padding:10px 12px;min-width:220px}.table-wrap{overflow:auto}.documents-table{width:100%;border-collapse:collapse}.documents-table th{background:#f7f9fc;color:#66758b;text-align:left;font-size:12px;padding:11px 14px;white-space:nowrap}.documents-table td{padding:12px 14px;border-top:1px solid #edf1f6;vertical-align:middle;font-size:13px}.documents-table tr{cursor:pointer}.documents-table tr:hover,.documents-table tr.selected{background:#f4f8ff}.doc-title{display:flex;gap:10px;align-items:flex-start;min-width:300px;font-weight:750}.doc-title small{display:block;font-weight:400;margin-top:3px;max-width:390px}.pdf-icon{color:#f04b4b}.badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:8px;background:#edf2f8;color:#54627a;font-size:11px;font-weight:800}.badge.success{background:var(--green-soft);color:#128252}.badge.warning{background:var(--orange-soft);color:#a26800}.badge.danger{background:var(--red-soft);color:#c43b3b}.badge.info{background:var(--blue-soft);color:var(--blue)}.row-progress{display:flex;align-items:center;gap:8px}.row-progress .progress{width:80px}.doc-actions{display:flex;gap:6px}.small-action{border:1px solid #bdd7fb;color:var(--blue);background:#fff;border-radius:8px;padding:7px 10px;font-weight:700}.small-action.danger{border-color:#ffc8c8;color:var(--red)}.table-empty{padding:28px;text-align:center;color:var(--muted)}.document-panel{padding:19px;height:max-content;position:sticky;top:94px}.panel-placeholder{text-align:center;color:var(--muted);padding:26px 16px}.panel-placeholder h3{color:var(--text);margin:10px 0 6px}.detail-title{display:flex;align-items:flex-start;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--line)}.detail-title h3{margin:3px 0 5px}.detail-grid{padding:12px 0}.detail-row{display:flex;justify-content:space-between;gap:10px;padding:9px 0;font-size:13px}.detail-row span{color:var(--muted)}.detail-actions{display:grid;gap:8px;margin-top:8px}.detail-actions a{text-align:center;text-decoration:none}.review-callout{padding:11px;border-radius:10px;background:var(--orange-soft);color:#815700;font-size:13px;margin:8px 0}
.modal,.login-overlay{position:fixed;inset:0;background:rgba(20,34,57,.55);z-index:100;display:grid;place-items:center;padding:18px}.review-studio{width:min(1540px,97vw);height:min(900px,94vh);background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 26px 80px rgba(6,24,50,.3)}.review-header{padding:13px 17px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:14px}.review-header h2{margin:2px 0}.review-header-actions{display:flex;align-items:center;gap:8px}.icon-button{border:0;background:#f0f4f9;color:#596880;border-radius:10px;width:40px;height:40px;font-size:24px}.icon-button.small{width:30px;height:30px;font-size:19px}.review-totals{display:flex;gap:9px;align-items:center;padding:8px 16px;border-bottom:1px solid var(--line);background:#fbfcfe;overflow:auto}.total-pill{padding:6px 10px;border-radius:20px;background:#eef3f8;font-size:12px;white-space:nowrap}.total-pill.critical{background:var(--red-soft);color:#bd3333}.total-pill.warning{background:var(--orange-soft);color:#8e5a00}.total-pill.success{background:var(--green-soft);color:#11764d}.review-body{display:grid;grid-template-columns:minmax(380px,1.05fr) minmax(340px,.75fr) minmax(400px,.9fr);min-height:0;flex:1}.source-pane,.review-list-pane,.editor-pane{min-width:0;min-height:0;display:flex;flex-direction:column}.source-pane,.review-list-pane{border-right:1px solid var(--line)}.pane-head{min-height:52px;padding:11px 13px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:8px}.source-toolbar{padding:8px 12px}.segmented{display:flex;background:#eef3f8;border-radius:9px;padding:3px}.segmented button{border:0;background:transparent;padding:7px 10px;border-radius:7px;color:#65738a;font-weight:750}.segmented button.active{background:#fff;color:var(--blue);box-shadow:0 2px 7px rgba(33,70,119,.13)}.page-controls{display:flex;align-items:center;gap:6px}.preview-stage{position:relative;flex:1;min-height:0;overflow:auto;background:#e9eef5;padding:14px;text-align:center}.preview-stage img{max-width:100%;height:auto;background:#fff;box-shadow:0 4px 18px rgba(14,30,55,.18)}.pdf-viewer{border:0;flex:1;width:100%;background:#e8edf4}.spinner{position:absolute;left:50%;top:50%;width:32px;height:32px;border:3px solid #d4deeb;border-top-color:var(--blue);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.page-chips{display:flex;gap:6px;padding:7px 10px;overflow:auto;border-top:1px solid var(--line)}.page-chip{border:1px solid var(--line);background:#fff;color:#53627a;border-radius:8px;padding:5px 8px;font-size:11px}.page-chip.active{background:var(--blue-soft);color:var(--blue);border-color:#bed9ff}.source-quote{padding:9px 12px;background:#fff9e9;border-top:1px solid #f6dc9a;font-size:12px;max-height:92px;overflow:auto}.review-filters{display:flex;gap:5px;padding:8px;overflow:auto;border-bottom:1px solid var(--line)}.review-items{overflow:auto;flex:1}.review-item{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #edf1f6;background:#fff;padding:12px}.review-item:hover,.review-item.active{background:#eef5ff}.review-item-meta{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:11px;color:var(--muted)}.review-item-title{font-size:13px;line-height:1.35;font-weight:750;margin:8px 0}.risk-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.risk-dot.critical{background:var(--red)}.risk-dot.warning{background:var(--orange)}.risk-dot.none,.risk-dot.info{background:var(--green)}.editor-pane{padding-bottom:10px;overflow:auto}.editor-pane #editorContent{padding:0 14px 16px}.editor-pane label{display:block;font-size:12px;font-weight:750;margin-top:11px}.editor-input,.editor-textarea{width:100%;border:1px solid #cfdbea;border-radius:10px;padding:10px;margin-top:6px;color:var(--text);background:#fff}.editor-textarea{min-height:150px;resize:vertical;line-height:1.45}.editor-textarea.small{min-height:72px}.merge-check{margin:0!important;font-weight:500!important;color:var(--muted)}.risk-list{display:grid;gap:7px;margin-top:10px}.risk-card{border-radius:10px;padding:9px 10px;font-size:12px;border:1px solid var(--line)}.risk-card strong{display:block;margin-bottom:3px}.risk-card.critical{background:var(--red-soft);border-color:#ffcaca;color:#9d2e2e}.risk-card.warning{background:var(--orange-soft);border-color:#f4d18b;color:#825300}.risk-card.info{background:var(--blue-soft);border-color:#c9defc;color:#315f99}.technical-details{margin-top:9px;border:1px solid var(--line);border-radius:9px;padding:8px 10px;color:var(--muted);font-size:12px}.technical-details pre{white-space:pre-wrap;font-size:11px}.info-box{padding:10px;border-radius:10px;background:var(--blue-soft);color:#345e91;font-size:12px;margin-top:10px}.info-box p{margin:4px 0 0}.editor-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.secondary-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:13px}.text-button,.secondary-actions a{border:0;background:transparent;padding:0;color:var(--blue);font-weight:750;text-decoration:none}.history-panel{margin-top:12px;border-top:1px solid var(--line);padding-top:8px}.history-row{padding:8px 0;border-bottom:1px solid #edf1f6;font-size:12px}.history-row strong{display:block}.history-row small{color:var(--muted)}
.operation-dialog{width:min(760px,94vw);max-height:90vh;overflow:auto;background:#fff;border-radius:17px;box-shadow:0 26px 80px rgba(6,24,50,.3)}.operation-dialog header,.operation-dialog footer{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--line)}.operation-dialog footer{border-top:1px solid var(--line);border-bottom:0;justify-content:flex-end;gap:8px}.operation-dialog h2{margin:2px 0}.operation-dialog #operationBody{padding:18px}.operation-dialog label{display:block;font-weight:750;font-size:13px;margin:10px 0}.operation-dialog textarea,.operation-dialog input,.operation-dialog select{width:100%;border:1px solid #cfdbea;border-radius:9px;padding:9px;margin-top:5px}.reason-field{min-height:80px}.split-part{border:1px solid var(--line);border-radius:12px;padding:12px;margin:10px 0}.split-part textarea{min-height:120px}.merge-preview{white-space:pre-wrap;background:#f7f9fc;border-radius:10px;padding:12px;max-height:260px;overflow:auto}.summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.summary-box{background:#f6f8fb;border-radius:10px;padding:10px}.summary-box strong{display:block;font-size:20px}.login-card{width:min(390px,94vw);background:#fff;border-radius:18px;padding:30px;text-align:center;box-shadow:var(--shadow)}.login-card .brand-mark{margin:auto}.brand-mark.large{width:50px;height:50px}.login-card input{width:100%;border:1px solid var(--line);padding:11px;border-radius:9px;margin:10px 0}.login-card button{width:100%}.form-error{color:var(--red);font-size:12px;margin-top:8px}.toast{position:fixed;right:22px;bottom:22px;background:#18304f;color:#fff;border-radius:11px;padding:13px 16px;z-index:200;box-shadow:var(--shadow);max-width:460px}.toast.error{background:#9f3030}
@media(max-width:1180px){.topbar{grid-template-columns:220px 1fr 140px}.pipeline-grid{grid-template-columns:1fr 16px 1fr;gap:8px}.pipeline-grid .flow-arrow:nth-of-type(2){display:none}.pipeline-card:nth-of-type(3),.pipeline-card:nth-of-type(4){margin-top:8px}.documents-layout{grid-template-columns:1fr}.document-panel{position:static}.review-body{grid-template-columns:1fr 1fr}.editor-pane{grid-column:1/3;border-top:1px solid var(--line)}}
@media(max-width:760px){.topbar{height:auto;grid-template-columns:1fr auto;padding:10px 14px}.main-nav{grid-column:1/3;grid-row:2;height:46px}.top-actions .system-status{display:none}.shell{padding:12px}.search-intro h1{font-size:25px}.search-form{grid-template-columns:38px 1fr}.search-form button{grid-column:1/3;width:100%}.filter-row{overflow:auto;justify-content:flex-start}.pipeline-grid{display:block}.flow-arrow{display:none}.pipeline-card{margin-bottom:8px}.documents-head{display:block}.head-actions{margin-top:12px}.compact-input{min-width:0;width:100%}.review-studio{width:100vw;height:100vh;border-radius:0}.review-header{align-items:flex-start}.review-header-actions{flex-wrap:wrap;justify-content:flex-end}.review-body{display:block;overflow:auto}.source-pane,.review-list-pane,.editor-pane{height:70vh;border-right:0;border-bottom:1px solid var(--line)}.source-list{grid-template-columns:1fr}.source-card{grid-template-columns:1fr}.source-card .source-number{grid-row:auto;grid-column:auto}}
.table-policy{background:#f7faff;color:#345e91}.table-error{margin-top:9px;padding:8px 10px;border:1px solid #f3c06b;border-radius:8px;background:#fff7e7;color:#8a5800}.table-grid-wrap{margin-top:10px;max-height:280px;overflow:auto;border:1px solid var(--line);border-radius:10px;background:#fff}.curated-table{width:max-content;min-width:100%;border-collapse:collapse}.curated-table th,.curated-table td{border:1px solid var(--line);padding:0;min-width:130px}.curated-table input,.curated-table textarea{width:100%;border:0!important;border-radius:0!important;margin:0!important;padding:8px!important;background:#fff;color:var(--text);font:inherit}.curated-table th input{font-weight:800;background:#f3f7fc}.curated-table textarea{min-height:56px;resize:vertical}.table-editor-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.table-editor-actions button{padding:8px 10px;font-size:12px}.text-button:disabled{opacity:.38;cursor:not-allowed}.merge-check input:disabled+span{opacity:.5}

.operation-error { margin: 12px 0 0; padding: 10px 12px; border: 1px solid #fecaca; border-radius: 10px; background: #fef2f2; color: #b91c1c; font-size: 13px; line-height: 1.45; }
.operation-error.hidden { display: none; }
.operation-dialog footer .primary-button[disabled] { opacity: .65; cursor: wait; }
.preflight-summary { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin: 14px 0; }
.preflight-summary .summary-box { background: #f8fafc; }
/* 1.2.1 evidence search: one statement, exact source, structured tables. */
.source-card{display:block}.source-card h3{margin:9px 0 8px;font-size:17px}.source-card p{margin:9px 0 12px;line-height:1.55}.source-card .badge{display:inline-block}.source-card .source-meta{margin-top:12px}.source-card .source-link{display:inline-block;margin-top:10px}.source-number{display:none!important}.result-table-wrap{overflow:auto;margin:12px 0;border:1px solid var(--line);border-radius:10px}.result-table{width:100%;border-collapse:collapse;background:#fff}.result-table th,.result-table td{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:9px 11px;text-align:left;vertical-align:top}.result-table th{background:#f4f7fb;font-size:12px}.result-table tr:last-child td{border-bottom:0}.result-table th:last-child,.result-table td:last-child{border-right:0}

/* 1.2.5: review transparency and reduced visual fatigue. */
body{font-weight:400;line-height:1.45}
strong,h1,h2,h3,h4,.brand strong{font-weight:600}
button,.badge,.total-pill,.nav-item,.eyebrow{font-weight:600}
.doc-title>span:last-child,.review-item-title{font-weight:600}
.review-item-title{font-size:13px;line-height:1.42}
.review-item-meta,.detail-row,.editor-pane,.source-quote{font-weight:400}
.editor-pane label,.operation-dialog label{font-weight:500}
.editor-input,.editor-textarea,.curated-table input,.curated-table textarea{font-weight:400;font-size:14px}
.review-header h2{font-weight:600;font-size:20px}
.review-studio{width:min(1580px,98vw);height:min(930px,96vh)}
.review-command-bar{display:grid;grid-template-columns:minmax(320px,1fr) auto;gap:8px 14px;align-items:end;padding:10px 16px;border-bottom:1px solid var(--line);background:#f9fbfe}
.review-command-bar .review-reason-label{display:grid;grid-template-columns:auto minmax(240px,1fr);align-items:center;gap:10px;margin:0;font-size:12px;font-weight:500}
.review-command-bar input{width:100%;border:1px solid #cfdbea;border-radius:9px;padding:9px 11px;background:#fff;color:var(--text);font-weight:400}
.review-bulk-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.review-command-bar>p{grid-column:1/-1;margin:0;font-size:12px}
.review-body{grid-template-columns:minmax(360px,1.05fr) minmax(330px,.72fr) minmax(420px,.95fr)}
.editor-pane #editorContent{padding:0 16px 18px}
.editor-actions{grid-template-columns:1fr 1fr}
.editor-actions button{min-height:42px}
#itemBodyField.hidden{display:none!important}
.table-policy{border:1px solid #cfe0f6;background:#f7faff}
.table-policy>strong{font-size:14px;color:#234e83}
.table-policy>p{line-height:1.45}
.table-grid-wrap{max-height:360px}
.curated-table th input{font-weight:600}
.table-editor-actions .text-button{padding:8px 4px}
.processing-result{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:500;white-space:nowrap}
.processing-result.done{color:#11764d}.processing-result.error{color:#b83232}
.row-progress{min-width:165px;flex-direction:column;align-items:flex-start;gap:5px}
.row-progress-label{display:flex;align-items:baseline;gap:6px;width:100%;max-width:190px}.row-progress-label span{min-width:0;flex:1;font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.row-progress-label strong{flex:0 0 auto;font-size:12px;font-weight:700;color:var(--text);white-space:nowrap}
.row-progress .progress{width:100%;max-width:150px;height:6px}
.publication-meaning{display:grid;gap:3px;margin:12px 0;padding:10px 11px;border:1px solid #cfe0f6;border-radius:10px;background:#f5f9ff;font-size:12px;color:#365b88}
.publication-meaning strong{font-size:13px;color:#244b7b}
.processing-timeline{margin:14px 0 4px;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.processing-head{display:flex;justify-content:space-between;gap:10px;padding:10px 11px;background:#f7f9fc;border-bottom:1px solid var(--line);font-size:12px}
.processing-head span{color:var(--muted)}
.processing-stage{display:grid;grid-template-columns:24px 1fr;gap:9px;padding:10px 11px;border-bottom:1px solid #edf1f6}
.processing-stage:last-child{border-bottom:0}
.processing-stage-icon{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:600;background:#eef3f8;color:#65738a}
.processing-stage-title{display:flex;justify-content:space-between;gap:8px;align-items:center;font-size:12px}
.processing-stage-title span{font-size:11px;color:var(--muted);white-space:nowrap}
.processing-stage p{margin:3px 0 0;color:var(--muted);font-size:11px;line-height:1.4}
.processing-stage.done .processing-stage-icon{background:var(--green-soft);color:var(--green)}
.processing-stage.active .processing-stage-icon{background:var(--blue-soft);color:var(--blue)}
.processing-stage.warning .processing-stage-icon{background:var(--orange-soft);color:#956000}
.processing-stage.error .processing-stage-icon{background:var(--red-soft);color:var(--red)}
.processing-stage.active{background:#fbfdff}
.processing-empty{padding:10px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);font-size:12px;margin:12px 0}
.documents-table td{vertical-align:middle}
.documents-table .doc-title{font-weight:400}
.documents-table .doc-title small{font-weight:400}
.review-totals{flex-wrap:wrap}
.total-pill{font-weight:500}
.risk-card strong{font-weight:600}
.secondary-actions .text-button,.secondary-actions a{font-weight:500}
@media(max-width:1180px){.review-command-bar{grid-template-columns:1fr}.review-bulk-actions{justify-content:flex-start}.review-command-bar>p{grid-column:1}.review-command-bar .review-reason-label{grid-template-columns:1fr}.review-body{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.review-command-bar{padding:10px}.review-bulk-actions{display:grid;grid-template-columns:1fr}.review-bulk-actions button{width:100%}.row-progress{min-width:120px}}

/* 1.2.6 — focused document workflow. Percentages are shown only while work is active. */
.pipeline-card{padding:16px;box-shadow:0 4px 16px rgba(29,64,111,.055)}
.pipeline-card .stage-value{font-size:20px;font-weight:600;margin:8px 0 6px;line-height:1.15}
.pipeline-card .stage-head h3{font-weight:600}
.pipeline-card .stage-badge{font-weight:500}
.pipeline-card .stage-meta{display:block;min-height:16px;line-height:1.35}
.pipeline-card.is-idle .stage-value{font-size:18px;color:#33445f}
.pipeline-card.is-idle .stage-icon{opacity:.88}
.pipeline-card.is-active{border-color:#cbdcf3;box-shadow:0 6px 18px rgba(29,64,111,.08)}
.pipeline-card .progress.hidden{display:none!important}
.row-progress{gap:4px}
.row-progress small{display:block;color:var(--muted);font-size:10px;line-height:1.25;max-width:190px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.live-processing-card{margin:12px 0 4px;padding:11px 12px;border:1px solid #cfe0f6;border-radius:10px;background:#f8fbff;display:grid;gap:5px}
.live-processing-card>span{font-size:11px;color:var(--muted)}
.live-processing-card>strong{font-size:13px;font-weight:500;line-height:1.35}
.live-processing-card .progress{height:5px}
.processing-head strong,.processing-stage-title strong{font-weight:500}
.processing-stage-title{font-size:12px}
.processing-stage p{font-size:11px}

/* Review Studio: source + decision, with the item list opened only when needed. */
.review-focus-layout{width:min(1500px,98vw);height:min(900px,96vh);font-size:14px;font-weight:400}
.review-focus-layout strong,.review-focus-layout h2,.review-focus-layout h3,.review-focus-layout button,.review-focus-layout .badge,.review-focus-layout label{font-weight:500}
.review-header-compact{padding:10px 14px;min-height:72px}
.review-title-block{min-width:0;max-width:70%}
.review-title-block .eyebrow{font-weight:500;letter-spacing:.08em;margin-bottom:2px}
.review-title-block h2{font-size:18px;font-weight:500;margin:0;line-height:1.25;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.review-title-block p:last-child{font-size:12px;margin:4px 0 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.review-header-actions{gap:7px;flex-shrink:0}
.review-headline{font-size:12px;color:#4d5d74;background:#f1f5f9;border-radius:8px;padding:7px 9px;white-space:nowrap}
.compact-button{padding:8px 11px!important;border-radius:8px!important;font-size:12px!important;min-height:34px!important}
.review-summary-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:7px 14px;border-bottom:1px solid var(--line);background:#fbfcfe;min-height:40px}
.review-totals-compact{padding:0;border:0;background:transparent;gap:0;overflow:visible;flex-wrap:wrap}
.review-totals-compact span{font-size:12px;color:#5f6f86;white-space:nowrap;padding:0 10px;border-right:1px solid #dfe6ef}
.review-totals-compact span:first-child{padding-left:0;color:#273a57}
.review-totals-compact span:last-child{border-right:0}
.review-totals-compact b{font-weight:600;color:#223654}
.review-decision-hint{margin:0;font-size:11px;color:var(--muted);text-align:right}
.success-text{color:#148257!important}.danger-text{color:#c23e3e!important}.warning-text{color:#986000!important}
.review-body-focus{display:grid;grid-template-columns:minmax(560px,1.15fr) minmax(500px,.85fr);min-height:0;flex:1}
.source-pane-focus{border-right:1px solid var(--line);min-height:0}
.source-pane-focus .source-toolbar{min-height:44px}
.source-pane-focus .preview-stage{padding:10px}
.source-quote-details{border-top:1px solid var(--line);background:#fff}
.source-quote-details summary{list-style:none;cursor:pointer;padding:7px 11px;font-size:11px;color:var(--muted)}
.source-quote-details summary::-webkit-details-marker{display:none}
.source-quote-details .source-quote{max-height:84px;border-top:1px solid #edf1f6;background:#fffdf7;font-size:11px}
.review-work-pane{position:relative;min-width:0;min-height:0;display:flex;flex-direction:column;background:#fff}
.review-work-toolbar{height:44px;display:grid;grid-template-columns:32px 1fr 32px;align-items:center;gap:8px;padding:6px 12px;border-bottom:1px solid var(--line);background:#fbfcfe}
.review-work-progress{min-width:0;text-align:center;display:flex;flex-direction:column;line-height:1.2}
.review-work-progress>span{font-size:12px;font-weight:500}
.review-work-progress small{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.review-list-drawer{position:absolute;z-index:30;top:44px;right:0;bottom:0;width:min(430px,100%);display:flex;flex-direction:column;background:#fff;border-left:1px solid var(--line);box-shadow:-12px 0 30px rgba(24,49,83,.12)}
.review-list-drawer.hidden{display:none!important}
.review-drawer-head{display:flex;justify-content:space-between;align-items:center;padding:11px 12px;border-bottom:1px solid var(--line);font-size:12px}
.review-list-drawer .review-filters{padding:7px;gap:4px}
.review-list-drawer .mini-chip{padding:6px 8px;font-size:11px;font-weight:500}
.review-list-drawer .review-item{padding:10px 11px}
.review-list-drawer .review-item-title{font-size:12px;font-weight:500;margin:6px 0;line-height:1.35}
.review-drawer-actions{display:grid;grid-template-columns:1fr;gap:6px;padding:9px;border-top:1px solid var(--line);background:#fbfcfe}
.review-drawer-actions .hidden{display:none!important}
.editor-pane-focus{flex:1;min-height:0;overflow:auto;padding:0}
.editor-pane-focus #editorContent{padding:12px 14px 18px}
.editor-object-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px}
.editor-object-head>div{display:flex;gap:6px}
.editor-pane-focus label.editor-field{font-size:11px;font-weight:500;color:#5c6d84;margin-top:10px}
.editor-input,.editor-textarea{border-radius:8px;padding:9px;font-size:13px;font-weight:400}
.editor-textarea{min-height:115px;line-height:1.4}
.editor-textarea.small{min-height:60px}
.risk-list{gap:6px;margin:7px 0 9px}
.risk-card{padding:8px 9px;font-size:11px;line-height:1.35;border-radius:8px}
.risk-card strong{font-weight:500;margin-bottom:2px}
.technical-details{margin:6px 0;font-size:11px}
.table-policy-focus{padding:9px;margin-top:9px;border:1px solid #d7e3f1;background:#fbfdff;color:#344c6d}
.table-policy-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:7px}
.table-policy-head>div{display:flex;align-items:center;gap:7px}.table-policy-head strong{font-size:12px;font-weight:500}.table-policy-head small{font-size:10px;color:var(--muted);max-width:250px;text-align:right}
.table-error{font-size:11px;padding:7px 8px;margin-top:6px}
.table-grid-wrap{max-height:330px;margin-top:7px;border-radius:8px}
.curated-table th,.curated-table td{min-width:110px}.curated-table input,.curated-table textarea{font-size:12px!important;padding:7px!important;font-weight:400!important}.curated-table th input{font-weight:500!important}.curated-table textarea{min-height:48px}
.table-editor-actions{margin-top:7px;gap:10px;align-items:center}.table-editor-actions .text-button{font-size:11px}
.editor-extra{margin-top:10px;border-top:1px solid #edf1f6;padding-top:8px}
.editor-extra>summary{cursor:pointer;color:#5f6f86;font-size:11px;list-style:none}.editor-extra>summary::-webkit-details-marker{display:none}
.editor-actions-primary{position:sticky;bottom:-18px;z-index:10;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px -14px 0;padding:10px 14px;background:rgba(255,255,255,.96);border-top:1px solid var(--line);backdrop-filter:blur(5px)}
.editor-actions-primary button{min-height:38px;padding:9px 12px;font-size:12px;font-weight:500}
.editor-actions-secondary{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:9px;min-height:28px}
.more-actions{position:relative;margin-left:auto}.more-actions>summary{cursor:pointer;list-style:none;color:var(--blue);font-size:11px}.more-actions>summary::-webkit-details-marker{display:none}
.more-actions-menu{position:absolute;right:0;bottom:24px;width:220px;background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:0 10px 28px rgba(20,45,80,.16);padding:8px;display:grid;gap:8px;z-index:40}
.more-actions-menu button,.more-actions-menu a{text-align:left;font-size:11px;text-decoration:none}
.merge-check{font-size:10px!important;font-weight:400!important;white-space:nowrap}
#toggleReviewList.active{background:var(--blue-soft);border-color:#bed8fa}
.operation-dialog label{font-weight:500}

@media(max-width:1180px){
  .review-body-focus{grid-template-columns:1fr 1fr}
  .review-focus-layout{width:99vw;height:97vh}
  .review-title-block{max-width:55%}
}
@media(max-width:860px){
  .review-body-focus{display:block;overflow:auto}
  .source-pane-focus{height:50vh;border-right:0;border-bottom:1px solid var(--line)}
  .review-work-pane{height:50vh}
  .review-title-block{max-width:45%}
  .review-decision-hint{display:none}
}

/* 1.2.7+ — robust structured Normalizer stages + OKF artifact action. */
.processing-stage{grid-template-columns:22px minmax(0,1fr) auto;align-items:start;column-gap:9px;row-gap:2px}
.processing-stage-main{min-width:0}
.processing-stage-name{display:block;font-size:12px;font-weight:500;line-height:1.35;overflow-wrap:anywhere}
.processing-stage-state{align-self:start;justify-self:end;font-size:11px;line-height:1.35;color:var(--muted);white-space:nowrap;padding-left:6px}
.processing-stage-main p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.42;overflow-wrap:anywhere}
.processing-stage-title{display:contents}
.okf-bundle-download{display:block;text-align:center;text-decoration:none}
@media(max-width:380px){.processing-stage{grid-template-columns:22px minmax(0,1fr)}.processing-stage-state{grid-column:2;justify-self:start;padding-left:0}}

/* 1.3.4-r2 — semantic curation preserved; incremental publisher: one vector point = one coherent clinical meaning. */
.semantic-guidance{margin:8px 0 10px;padding:10px 11px;border:1px solid #d7c8ff;border-radius:9px;background:#f7f3ff;color:#423565;font-size:12px;line-height:1.4}
.semantic-guidance>strong{display:block;font-weight:600;margin-bottom:3px}.semantic-guidance p{margin:0 0 7px}.semantic-related{display:flex;gap:6px;align-items:flex-start;margin:6px 0 8px;color:#65708a}.semantic-related .text-button{text-align:left;font-weight:500;line-height:1.35}.semantic-guidance .warning-button{font-size:11px;padding:7px 10px}.semantic-total{color:#6b46c1!important}
.neighbor-merge-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin:8px 0 2px;padding:8px 9px;border:1px solid #dbe5f1;border-radius:9px;background:#fbfcfe}.neighbor-merge-label{font-size:11px;color:#6b7890;margin-right:auto}.neighbor-merge-actions button{font-size:11px;padding:7px 9px;font-weight:500}
.merge-inline-preview{display:grid;grid-template-columns:1fr 1fr;gap:8px}.merge-inline-preview section{border:1px solid var(--line);border-radius:9px;padding:9px;background:#fff}.merge-inline-preview section small{display:block;color:var(--muted);margin-bottom:5px}.merge-inline-preview section p{margin:0;white-space:pre-wrap;line-height:1.4;max-height:150px;overflow:auto}.merge-inline-preview .merge-result{grid-column:1/-1;background:#f2fbf6;border-color:#c8ebd5}
@media(max-width:760px){.merge-inline-preview{grid-template-columns:1fr}.merge-inline-preview .merge-result{grid-column:1}}

/* 1.4.0-b1 — document knowledge map: business review starts from coverage, not from an error queue. */
.review-focus-layout{width:min(1760px,99vw)}
.review-body-focus{grid-template-columns:minmax(250px,.52fr) minmax(500px,1.03fr) minmax(480px,.92fr)}
.knowledge-map-pane{min-width:0;min-height:0;display:flex;flex-direction:column;border-right:1px solid var(--line);background:#f8fafc}
.knowledge-map-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px 11px;border-bottom:1px solid var(--line);background:#fff}
.knowledge-map-head>div:first-child{min-width:0}.knowledge-map-head strong{display:block;font-size:12px;color:#243955}.knowledge-map-head small{display:block;margin-top:3px;font-size:10px;line-height:1.35;color:var(--muted)}
.knowledge-map-counter{flex:0 0 auto;text-align:right}.knowledge-map-counter strong{display:block;font-size:16px;color:#1e3554}.knowledge-map-counter span{display:block;font-size:9px;color:var(--muted);white-space:nowrap}
#knowledgeMapError{margin:8px}
.knowledge-map-sections{flex:1;min-height:0;overflow:auto;padding:6px}
.knowledge-section{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;text-align:left;border:1px solid transparent;background:transparent;border-radius:8px;padding:7px 7px 7px calc(7px + (var(--section-indent,0) * 10px));margin:1px 0;color:var(--text);cursor:pointer}
.knowledge-section:hover{background:#fff;border-color:#e2e9f2}.knowledge-section.active{background:#fff;border-color:#b9d4f6;box-shadow:0 1px 2px rgba(25,55,90,.05)}
.knowledge-section.all{padding-left:7px;margin-bottom:5px;border-bottom-color:#e4eaf2}
.knowledge-section-main{min-width:0}.knowledge-section-main strong{display:block;font-size:11px;line-height:1.3;white-space:normal}.knowledge-section-main small{display:block;margin-top:3px;font-size:9px;color:var(--muted);line-height:1.25}
.coverage-state{font-size:8px;line-height:1.2;border-radius:999px;padding:4px 6px;max-width:92px;text-align:center;background:#eef2f6;color:#64748b}
.coverage-state.confirmed{background:#e8f7ef;color:#08764a}.coverage-state.pending-items{background:#eef5ff;color:#245ea8}.coverage-state.no-knowledge{background:#eef2f6;color:#526174}.coverage-state.gap{background:#fff0ed;color:#b8322b}.coverage-state.unreviewed{background:#fff7df;color:#8a5a00}.coverage-state.reference{background:#f1f4f8;color:#738197}
.knowledge-section-actions{padding:9px 10px 10px;border-top:1px solid var(--line);background:#fff}
.knowledge-section-title{font-size:11px;font-weight:600;line-height:1.3;color:#2d4361}.knowledge-section-actions .muted{font-size:9px;margin:4px 0 8px;line-height:1.3}.knowledge-section-buttons{display:grid;grid-template-columns:1fr;gap:5px}.knowledge-section-buttons button{width:100%;min-height:30px!important;padding:6px 8px!important;font-size:10px!important}

@media(max-width:1350px){
  .review-body-focus{grid-template-columns:240px minmax(430px,1fr) minmax(430px,.95fr)}
  .knowledge-map-head small{display:none}
}
@media(max-width:1180px){
  .review-body-focus{grid-template-columns:260px 1fr;overflow:auto}
  .knowledge-map-pane{height:54vh}
  .source-pane-focus{height:54vh}
  .review-work-pane{grid-column:1/-1;height:48vh;border-top:1px solid var(--line)}
}
@media(max-width:860px){
  .review-body-focus{display:block;overflow:auto}
  .knowledge-map-pane{height:42vh;border-right:0;border-bottom:1px solid var(--line)}
}

/* 1.4.0-b1.1 — moderator workspace: sections and object queue are explicit work modes. */
.review-body-focus{grid-template-columns:minmax(300px,.60fr) minmax(540px,1.08fr) minmax(500px,.92fr)}
.review-left-workspace{background:#f8fafc}
.review-left-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:7px;border-bottom:1px solid var(--line);background:#fff}
.review-left-tab{border:1px solid #d9e3ef;background:#f6f8fb;color:#5a6a80;border-radius:8px;padding:8px 9px;font-size:11px;font-weight:600;cursor:pointer}
.review-left-tab span{display:inline-flex;min-width:20px;justify-content:center;margin-left:4px;padding:1px 5px;border-radius:999px;background:#e9eef5;color:#53657d;font-size:10px}
.review-left-tab.active{background:#eaf3ff;border-color:#b9d6fb;color:#096ee8}
.review-left-tab.active span{background:#fff;color:#096ee8}
.review-left-view{flex:1;min-height:0;display:flex;flex-direction:column}
.review-left-view.hidden{display:none!important}
.object-queue-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px 11px;border-bottom:1px solid var(--line);background:#fff}
.object-queue-head strong{display:block;font-size:12px;color:#243955}.object-queue-head small{display:block;margin-top:3px;font-size:9px;line-height:1.3;color:var(--muted)}
.object-queue-head-actions{display:flex;align-items:center;gap:7px;flex-shrink:0}.object-queue-head-actions .text-button{font-size:10px}
.review-object-filters{display:flex;flex-wrap:wrap;overflow:visible;padding:7px;background:#fbfcfe}
.review-object-filters .mini-chip{padding:6px 7px;font-size:10px}
.object-queue-actions{display:grid;grid-template-columns:1fr;gap:5px;padding:8px;border-top:1px solid var(--line);background:#fff}
.object-queue-actions button{min-height:31px!important;padding:6px 8px!important;font-size:10px!important}
.queue-state{font-size:9px;font-weight:600;border-radius:999px;padding:3px 6px;background:#eef2f6;color:#64748b;white-space:nowrap}
.queue-state.critical{background:var(--red-soft);color:#b82f2f}.queue-state.warning{background:var(--orange-soft);color:#8a5900}.queue-state.success{background:var(--green-soft);color:#08764a}.queue-state.neutral{background:#eef2f6;color:#64748b}
.review-item-section{font-size:9px;color:#66768b;line-height:1.3;margin:-2px 0 6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.review-total-link{appearance:none;border:0;border-right:1px solid #dfe6ef;background:transparent;color:#5f6f86;font:inherit;font-size:12px;white-space:nowrap;padding:0 10px;cursor:pointer}
.review-total-link:first-child{padding-left:0;color:#273a57}.review-total-link:hover{color:#096ee8;text-decoration:underline;text-underline-offset:3px}.review-total-link b{font-weight:600;color:#223654}.review-total-link.danger-text{color:#bd3333}.review-total-link.success-text{color:#11764d}
.review-totals-compact>span{font-size:12px;color:#5f6f86;white-space:nowrap;padding:0 10px;border-right:1px solid #dfe6ef}.review-totals-compact>:last-child{border-right:0}
.editor-sticky-footer{position:sticky;bottom:-18px;z-index:20;margin:14px -14px -18px;padding:10px 14px 12px;background:rgba(255,255,255,.98);border-top:1px solid var(--line);box-shadow:0 -8px 20px rgba(31,54,82,.06);backdrop-filter:blur(6px)}
.editor-sticky-footer .editor-actions-primary{position:static;margin:0;padding:0;background:transparent;border:0;backdrop-filter:none}
.object-action-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin-top:7px}
.object-action{display:flex;align-items:center;justify-content:center;min-width:0;min-height:30px;border:1px solid #d8e2ee;background:#fff;color:#246fc2;border-radius:7px;padding:5px 6px;font-size:10px;font-weight:500;text-decoration:none;cursor:pointer;text-align:center}
.object-action:hover{background:#f3f8ff;border-color:#bcd7f7}.object-action.danger-text{color:#c64141;border-color:#f0cece}

@media(max-width:1350px){
  .review-body-focus{grid-template-columns:270px minmax(430px,1fr) minmax(430px,.96fr)}
  .object-action-bar{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:1180px){
  .review-body-focus{grid-template-columns:280px 1fr;overflow:auto}
  .review-left-workspace{height:56vh}.source-pane-focus{height:56vh}
  .review-work-pane{grid-column:1/-1;height:52vh}
}
@media(max-width:860px){
  .review-left-workspace{height:48vh;border-right:0;border-bottom:1px solid var(--line)}
  .object-action-bar{grid-template-columns:1fr 1fr}
}

/* 1.4.0-b2.3 — one business contract, viewport-safe moderation, boundary repair. */
.review-focus-layout{
  width:min(1780px,100%);
  max-width:100%;
  height:min(930px,100%);
  max-height:100%;
  margin:0;
  overflow:hidden;
}
.review-body-focus{
  min-width:0;
  overflow:hidden;
  grid-template-columns:minmax(245px,300px) minmax(0,1.18fr) minmax(0,1fr);
}
.review-left-workspace,.source-pane-focus,.review-work-pane,.editor-pane-focus,#editorContent{min-width:0}
.source-pane-focus,.review-work-pane{overflow:hidden}
.review-work-pane{display:flex;flex-direction:column}
.editor-pane-focus{overflow:auto}
.review-header-actions{min-width:0;flex-wrap:wrap;justify-content:flex-end}
.review-summary-bar{min-width:0;overflow-x:auto;overflow-y:hidden}
.review-totals-compact{min-width:max-content}
.object-action-bar{grid-template-columns:repeat(3,minmax(0,1fr))}
.object-action.boundary-action{grid-column:span 2;background:#eef6ff;border-color:#9ec9fa;color:#075fbe;font-weight:600}
.boundary-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:8px 0 12px}
.boundary-preview-grid section{min-width:0;border:1px solid var(--line);border-radius:9px;padding:9px;background:#fff}
.boundary-preview-grid section small{display:block;color:var(--muted);margin-bottom:5px}
.boundary-preview-grid section p{margin:0;white-space:pre-wrap;line-height:1.4;max-height:170px;overflow:auto}
.boundary-preview-grid .boundary-result{grid-column:1/-1;background:#f2fbf6;border-color:#c8ebd5}
.boundary-block-list{display:grid;gap:5px;max-height:310px;overflow:auto;border:1px solid var(--line);border-radius:9px;padding:8px;margin:8px 0 12px;background:#fbfcfe}
.boundary-block-list>strong{font-size:12px;margin-bottom:2px}
.boundary-block-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:start;padding:7px;border:1px solid transparent;border-radius:7px;background:#fff;cursor:pointer}
.boundary-block-row:has(input:checked){border-color:#9ec9fa;background:#eef6ff}
.boundary-block-row input{margin-top:3px}.boundary-block-row span{font-size:11px;line-height:1.4}.boundary-block-row span b{display:block;color:#56708f;font-size:10px;margin-bottom:2px}.boundary-block-row em{font-style:normal;font-size:9px;color:#b8322b;background:#fff0ed;border-radius:999px;padding:3px 5px;white-space:nowrap}
.curated-okf-download{border-color:#9bd7b7;color:#08764a;background:#f3fbf7}
@media(max-width:1450px){
  .review-body-focus{grid-template-columns:minmax(230px,275px) minmax(0,1.06fr) minmax(0,.94fr)}
  .object-action-bar{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:1180px){
  .review-focus-layout{width:100%;max-width:100%;height:100%;max-height:100%;margin:0}
  .review-body-focus{grid-template-columns:260px minmax(0,1fr);overflow:auto}
  .review-left-workspace{height:54vh}.source-pane-focus{height:54vh}
  .review-work-pane{grid-column:1/-1;height:52vh;border-top:1px solid var(--line)}
}
@media(max-width:860px){
  .review-body-focus{display:block;overflow:auto}
  .boundary-preview-grid{grid-template-columns:1fr}.boundary-preview-grid .boundary-result{grid-column:1}
}

/* 1.4.0-b2.3 — action-oriented moderation: one problem -> one clear primary action. */
.moderation-action{margin:8px 0 10px;padding:10px 12px;border:1px solid #cfe0f6;border-radius:10px;background:#f7fbff;color:#234e83}
.moderation-action strong{display:block;font-size:13px;margin-bottom:3px}.moderation-action p{margin:0;font-size:11px;line-height:1.45;color:#4c6480}
.recovery-table-preview{max-height:360px;overflow:auto;border:1px solid var(--line);border-radius:9px;background:#fff;margin:10px 0}.recovery-table-preview table{border-collapse:collapse;width:100%;font-size:12px}.recovery-table-preview th,.recovery-table-preview td{border:1px solid var(--line);padding:7px;vertical-align:top;text-align:left}.recovery-table-preview th{background:#f3f7fc}
.split-suggestion{display:grid;gap:8px;margin:10px 0}.split-suggestion section{border:1px solid var(--line);border-radius:9px;padding:10px;background:#fff}.split-suggestion small{font-weight:700;color:#49617f}.split-suggestion p{white-space:pre-wrap;line-height:1.5}.split-suggestion em{font-size:11px;color:var(--muted);font-style:normal}

/* 1.4.0-b2.3 — physician-first moderation and manual PDF source selection. */
.risk-card.source-note{background:#f4f8fd;border-color:#cbdcf1;color:#355674}
.risk-card.action-note{background:#fff9ec;border-color:#f0d69c;color:#72531c}
.source-canvas{position:relative;display:inline-block;max-width:100%;line-height:0}
.source-canvas>img{display:block;max-width:100%;height:auto}
.source-block-overlay{position:absolute;inset:0;pointer-events:auto;text-align:left}
.source-line-hit{position:absolute;border:1px solid transparent;background:rgba(20,110,230,.035);padding:0;margin:0;cursor:crosshair;border-radius:2px}
.source-line-hit:hover{border-color:rgba(24,111,220,.55);background:rgba(24,111,220,.10)}
.source-line-hit.selected{border-color:#146fe3;background:rgba(20,111,227,.24);box-shadow:0 0 0 1px rgba(255,255,255,.65) inset}
.preview-stage.manual-select-mode{background:#e7eef7}
.preview-stage.manual-select-mode .source-canvas{box-shadow:0 0 0 3px rgba(20,111,227,.22)}
.manual-knowledge-editor{padding:14px 14px 18px;overflow:auto}
.manual-knowledge-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:12px}
.manual-knowledge-head h3{margin:7px 0 4px;font-size:17px}
.manual-knowledge-head p{margin:0;line-height:1.4}
.manual-selection-meta{display:flex;justify-content:space-between;gap:12px;margin-top:12px;padding:9px 10px;border-radius:9px;background:#f3f7fc}
.manual-knowledge-note{margin-top:12px;padding:10px;border:1px solid #cfe0f4;border-radius:9px;background:#f7fbff;color:#49647e;font-size:12px;line-height:1.45}
.technical-downloads{margin-top:10px}
.technical-downloads summary{cursor:pointer;color:var(--muted);font-size:12px}
.technical-downloads .detail-actions{margin-top:8px}
@media(max-width:1180px){.manual-knowledge-head{flex-direction:column}.manual-knowledge-head button{align-self:flex-start}}

/* 1.4.0-b2.3 — risk-based document approval. */
.manual-select-mode .source-canvas{cursor:crosshair}.manual-select-mode .source-line-hit{background:rgba(20,111,227,.06)}
.object-queue-actions #approveSafeButton{order:-2}

.preview-stage.manual-select-mode{position:relative}
.preview-stage.manual-select-mode::after{content:"Выделите нужные строки мышью — можно провести сразу по нескольким строкам";position:absolute;top:10px;left:50%;transform:translateX(-50%);z-index:8;background:#0f62c9;color:#fff;padding:8px 12px;border-radius:8px;font-size:12px;font-weight:600;box-shadow:0 4px 16px rgba(15,98,201,.22);pointer-events:none;white-space:nowrap}

/* 1.4.0-b2.5: one-queue physician approval and natural PDF selection */
.coverage-gap-editor{padding:14px;overflow:auto}
.coverage-gap-head h3{margin:8px 0 4px;font-size:16px}.coverage-gap-head p{margin:0 0 12px;line-height:1.45}
.coverage-gap-candidates{display:grid;gap:8px}.coverage-gap-candidate{display:grid!important;grid-template-columns:auto minmax(0,1fr);gap:9px;align-items:start;margin:0!important;padding:10px;border:1px solid var(--line);border-radius:10px;background:#fbfcfe;font-weight:400!important;cursor:pointer}
.coverage-gap-candidate:hover{border-color:#b9d4f6;background:#f5f9ff}.coverage-gap-candidate input{margin-top:3px}.coverage-gap-body{min-width:0}.coverage-gap-body small{margin-left:7px;color:var(--muted)}.coverage-gap-body p{margin:7px 0 0;line-height:1.45;font-size:12px;color:var(--text)}
.coverage-gap-actions{display:grid;grid-template-columns:1fr;gap:7px;margin-top:12px}.task-complete{padding:24px 14px}
.source-gap-highlight{position:absolute;display:block;border-radius:2px;background:rgba(255,185,40,.22);box-shadow:0 0 0 1px rgba(218,139,0,.28) inset;pointer-events:none}
.preview-stage.manual-select-mode .source-block-overlay{cursor:text;touch-action:none}
.preview-stage.manual-select-mode .source-line-hit{pointer-events:none;background:transparent;border:0;box-shadow:none}
.preview-stage.manual-select-mode .source-line-hit.selected{background:rgba(20,111,227,.24);box-shadow:0 0 0 1px rgba(20,111,227,.55) inset}
.manual-drag-rect{position:absolute;display:block;border:2px solid #146fe3;background:rgba(20,111,227,.10);border-radius:4px;pointer-events:none;z-index:9}
.manual-select-mode .source-canvas{cursor:text!important}
.preview-stage.manual-select-mode::after{content:"Обведите мышью нужный абзац"!important}
/* 1.4.0-b2.5: physician-first end-to-end approval */
.preview-stage.manual-select-mode::after{content:"Проведите рамку вокруг нужного фрагмента PDF"!important;white-space:normal!important;text-align:center;max-width:70%}
.preview-stage.manual-select-mode .source-line-hit.selected{background:rgba(20,111,227,.14)!important;box-shadow:none!important;border-radius:3px}
.task-row .knowledge-section-main small{line-height:1.28}
.coverage-gap-candidate{cursor:pointer}
.coverage-gap-candidate input{align-self:flex-start;margin-top:4px}
.review-headline{white-space:nowrap}
@media (max-width:1350px){.review-headline{white-space:normal}.review-header-actions{gap:6px}}

/* b2.5: optional PDF enrichment is shown as one focused region, not a page full of line boxes. */
.source-gap-region{border:2px solid rgba(218,139,0,.72);background:rgba(255,185,40,.10);border-radius:6px;box-shadow:0 0 0 3px rgba(255,255,255,.72) inset}
.optional-suggestions-note{padding:10px 12px;margin-bottom:8px;border:1px solid #d8e2ee;border-radius:8px;background:#f8fbff}.optional-suggestions-note p{margin:4px 0 0;color:#66778c;font-size:12px}.optional-suggestion .coverage-state{white-space:nowrap}.success-callout{border-color:#cdebdc;background:#f3fbf7}

/* 1.4.0-b2.12 — physician-first Working OKF */
.documents-layout{display:block!important}
.documents-card{width:100%}
.document-panel-horizontal{position:static!important;margin:0 16px 14px;border:1px solid var(--line);border-radius:12px;background:#f8fbff;padding:14px;min-height:0;box-shadow:none}
.document-panel-horizontal .panel-placeholder{min-height:88px;display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap}
.document-inspector-title{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:12px}
.document-inspector-title h3{margin:0 0 3px;font-size:16px}.document-inspector-title p{margin:0}
.document-inspector-metrics{display:grid;grid-template-columns:repeat(6,minmax(105px,1fr));gap:8px}
.document-inspector-metrics>div{background:#fff;border:1px solid #e0e8f2;border-radius:10px;padding:9px 10px;min-width:0}
.document-inspector-metrics span,.document-inspector-metrics small{display:block;color:var(--muted);font-size:10px;line-height:1.25}
.document-inspector-metrics strong{display:block;font-size:19px;line-height:1.25;margin:2px 0;color:var(--text)}
.document-inspector-actions{margin-top:11px;display:flex;justify-content:flex-start;align-items:center;gap:8px;flex-wrap:wrap}
.horizontal-live{margin-top:9px;display:flex;align-items:center;gap:8px;padding:8px 10px}
.review-left-tabs{grid-template-columns:repeat(3,1fr)!important}
.inline-type-field{display:flex!important;align-items:center;gap:6px;margin:0!important;font-size:11px!important;color:var(--muted);font-weight:500!important}
.inline-type-field .compact-select{width:auto;min-width:170px;margin:0;padding:5px 26px 5px 7px;font-size:11px}
.priority-gap{background:#fff8f0!important}.priority-gap.active{background:#fff0de!important}
.merge-row-check{width:14px;height:14px;vertical-align:middle;margin:0 4px 0 0;accent-color:var(--blue)}
.review-item:has(.merge-row-check:checked){box-shadow:inset 3px 0 0 var(--blue);background:#f1f7ff}
#globalCreateKnowledge{white-space:nowrap}
#repointSource{color:#096ee8}
@media(max-width:1250px){.document-inspector-metrics{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.document-panel-horizontal{margin:0 8px 10px}.document-inspector-metrics{grid-template-columns:repeat(2,1fr)}.review-left-tabs{grid-template-columns:1fr!important}.inline-type-field{align-items:flex-start;flex-direction:column}.inline-type-field .compact-select{width:100%}}

/* 1.4.0-b2.12 — processing stages stay at eye level; no right-column basement. */
.processing-stage-strip{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:8px;margin:11px 0 2px;align-items:stretch}
.processing-stage-card{border:1px solid #e0e8f2;border-radius:10px;background:#fff;padding:9px 10px;min-width:0}
.processing-stage-card-head{display:grid;grid-template-columns:22px minmax(0,1fr) auto;gap:6px;align-items:center}
.processing-stage-card-head strong{font-size:11px;line-height:1.25;overflow-wrap:anywhere}
.processing-stage-card-head>span:last-child{font-size:9px;color:var(--muted);white-space:nowrap}
.processing-stage-card p{margin:6px 0 0;font-size:10px;color:var(--muted);line-height:1.3;overflow-wrap:anywhere}
.processing-stage-card.done{background:#f6fcf8;border-color:#ccebd7}.processing-stage-card.active{background:#f7fbff;border-color:#bdd9fb}.processing-stage-card.warning{background:#fffbf2;border-color:#f3dfac}.processing-stage-card.error{background:#fff7f7;border-color:#f4caca}
.working-okf-pending{display:flex;gap:8px;align-items:baseline;flex-wrap:wrap;margin:9px 0;padding:10px 12px;border-radius:10px;background:#f7f9fc;border:1px solid #e1e8f1}
.working-okf-pending strong{font-size:13px}.working-okf-pending span{font-size:11px;color:var(--muted)}
@media(max-width:1400px){.processing-stage-strip{grid-template-columns:repeat(4,minmax(130px,1fr))}}
@media(max-width:900px){.processing-stage-strip{grid-template-columns:repeat(2,minmax(130px,1fr))}}
@media(max-width:560px){.processing-stage-strip{grid-template-columns:1fr}}

/* 1.4.0-b2.12 — approval integrity and review-by-exception */
.coverage-gap-candidate{display:block!important;width:100%;text-align:left;border:1px solid var(--line);background:#fbfcfe;color:var(--text)}
.coverage-gap-candidate.active{border-color:#7eb4f5;background:#eef6ff;box-shadow:inset 3px 0 0 #146fe3}
.coverage-gap-body small{display:inline-block;margin-left:7px}.coverage-gap-body em{display:block;margin-top:6px;font-size:10px;line-height:1.35;color:#8a6420;font-style:normal}
.knowledge-section-main em{display:block;margin-top:3px;font-size:9px;line-height:1.3;color:#7a5d29;font-style:normal}
.decision-choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.decision-choice-grid button{min-height:64px;text-align:left;padding:10px 12px}
.large-document-review{margin:0 0 10px;padding:10px;border:1px solid #cfe0f4;border-radius:10px;background:#f7fbff}.large-document-review>div:first-child{display:grid;gap:3px}.large-document-review strong{font-size:12px}.large-document-review span,.large-document-review small{font-size:10px;color:var(--muted)}
.large-section-map{display:grid;gap:5px;margin-top:9px;max-height:260px;overflow:auto}.large-section-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;border:1px solid #e0e8f2;border-radius:8px;background:#fff;padding:7px 8px;cursor:pointer}.large-section-row span{min-width:0}.large-section-row strong,.large-section-row small{display:block}.large-section-row b{font-size:13px;color:#b55b00}.large-section-row .text-button{font-size:9px;white-space:nowrap}
.split-preview-part blockquote{margin:7px 0 0;padding:7px 9px;border-left:3px solid #9fc7f4;background:#f7fbff;color:#526b86;font-size:10px;line-height:1.4}
.publication-friendly-checks{margin:12px 0;padding:10px 12px;border:1px solid #cdebdc;border-radius:9px;background:#f3fbf7}.publication-friendly-checks p{margin:3px 0;color:#18774d;font-size:12px}
@media(max-width:900px){.decision-choice-grid{grid-template-columns:1fr}.large-section-row{grid-template-columns:1fr auto}.large-section-row .text-button{grid-column:1/-1;justify-self:start}}

/* b2.10 physician-first simplification */
.review-summary-bar{align-items:center;gap:12px}.review-totals-compact{display:flex;gap:8px;flex-wrap:wrap}.review-total-link{display:grid;grid-template-columns:auto auto;column-gap:8px;align-items:baseline;padding:7px 10px;border:1px solid var(--line,#dce5ef);border-radius:10px;background:#fff}.review-total-link span{font-size:12px;color:#64748b}.review-total-link b{font-size:18px}.review-total-link small{grid-column:1/-1;font-size:11px;color:#64748b}.review-decision-hint{margin:0;color:#64748b}.physician-section-map{padding:10px;border:1px solid #dce5ef;border-radius:12px;background:#f8fbff;margin-bottom:10px}.physician-section-map>div:first-child{display:flex;justify-content:space-between;gap:8px;align-items:center}.physician-section-map>div:first-child span{color:#64748b;font-size:12px}.physician-section-row{width:100%;border:0;background:#fff;text-align:left;cursor:pointer}.physician-section-row:hover{background:#f1f7ff}.boundary-visual-pages{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:12px 0}.boundary-page-card{border:1px solid #dce5ef;border-radius:12px;padding:8px;background:#f8fafc}.boundary-page-card header{font-weight:700;margin-bottom:6px}.boundary-page-image{position:relative;background:white;overflow:hidden;border-radius:8px}.boundary-page-image img{width:100%;display:block}.boundary-mark{position:absolute;border:2px solid;pointer-events:none;border-radius:3px}.boundary-mark.current{border-color:#2563eb;background:rgba(37,99,235,.12)}.boundary-mark.continuation{border-color:#16a34a;background:rgba(22,163,74,.10)}.boundary-mark.continuation.selected{background:rgba(22,163,74,.22);box-shadow:0 0 0 1px rgba(22,163,74,.35)}.boundary-result{padding:10px 12px;background:#ecfdf5;border:1px solid #bbf7d0;border-radius:10px;margin:10px 0}.boundary-result small{color:#64748b}.boundary-result p{margin:4px 0 0}.review-object-filters{gap:6px}.review-object-filters .mini-chip{white-space:nowrap}

/* 1.4.0-b2.12 — one physician workload counter */
.physician-core-metrics{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.review-summary-bar{min-height:34px;padding:6px 14px}
.review-decision-hint{font-size:12px}
@media(max-width:760px){.physician-core-metrics{grid-template-columns:1fr!important}}

/* 1.4.0-b2.12 — physician UI clarity: one workload number, everything else is context. */
.physician-single-workload{display:inline-grid;grid-template-columns:auto auto;column-gap:10px;align-items:baseline;margin:10px 0;padding:10px 14px;border:1px solid #dbe6f2;border-radius:12px;background:#fff;min-width:250px}
.physician-single-workload span{font-size:12px;color:#64748b}.physician-single-workload strong{font-size:28px;line-height:1;color:#172033}.physician-single-workload small{grid-column:1/-1;margin-top:4px;color:#64748b;font-size:11px}.physician-single-workload.has-work{border-color:#f0d7a5;background:#fffaf1}.physician-single-workload.is-complete{display:grid;grid-template-columns:1fr;border-color:#c9e7d5;background:#f5fbf7}.physician-single-workload.is-complete strong{font-size:17px;color:#18734b}.physician-single-workload.is-complete small{grid-column:auto}
.physician-review-summary{display:flex;align-items:center;gap:14px;min-height:58px;padding:8px 14px;border-bottom:1px solid #e7edf4;background:#fbfdff}
.review-primary-workload{display:flex;align-items:baseline;gap:9px;min-width:max-content}.review-primary-workload span{font-size:13px;color:#566b82}.review-primary-workload strong{font-size:28px;line-height:1;color:#172033}.review-primary-workload strong:first-child:last-child{font-size:17px}.physician-review-summary .review-decision-hint{font-size:11px;color:#6d7f91;line-height:1.35}
.review-left-tab{font-weight:650}.review-left-tab span{display:none!important}
.object-queue-head-actions #reviewSummary:empty{display:none}
.processing-stage-card.done .processing-stage-state{color:#4a7560}
@media(max-width:760px){.physician-single-workload{width:100%;min-width:0}.physician-review-summary{align-items:flex-start;flex-direction:column}.review-primary-workload{min-width:0}}
.processing-stage-card.done .processing-stage-state,.processing-stage-card.skipped .processing-stage-state{display:none}

/* 1.4.0-b2.14: faster physician decisions + evidence-first search. */
.coverage-gap-actions-fast{display:grid;gap:9px}.coverage-gap-decision-row{display:grid;grid-template-columns:1fr 1fr;gap:9px}.text-action-button{border:0;background:transparent;color:var(--blue);font-weight:750;padding:6px 8px;cursor:pointer}.text-action-button:hover{text-decoration:underline}.coverage-gap-more{border-top:1px solid var(--line);padding-top:8px}.coverage-gap-more summary{cursor:pointer;color:var(--muted);font-size:13px}.coverage-gap-more .outline-button{margin-top:8px;width:100%}
.grounded-answer{display:grid;gap:12px}.grounded-answer-note,.grounded-empty{border:1px solid #dce8f7;background:#f7fbff;border-radius:12px;padding:13px 15px;color:#53647d;line-height:1.45}.grounded-answer-item{border:1px solid var(--line);border-radius:13px;padding:16px;display:grid;grid-template-columns:34px 1fr;gap:12px;background:#fff}.grounded-answer-number{width:30px;height:30px;border-radius:9px;background:var(--blue-soft);color:var(--blue);font-weight:850;display:grid;place-items:center}.grounded-answer-type{font-size:12px;font-weight:800;color:var(--blue);margin-bottom:5px}.grounded-answer-item p{margin:0 0 9px;line-height:1.55}.related-evidence{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}.related-evidence summary{cursor:pointer;font-weight:800;color:#53647d}.related-source-list{margin-top:12px}.compact-evidence{padding:14px}.compact-evidence p{font-size:14px}
@media(max-width:760px){.coverage-gap-decision-row{grid-template-columns:1fr}.grounded-answer-item{grid-template-columns:1fr}.grounded-answer-number{display:none}}

/* 1.4.0-b2.14 — review productivity and manual LLM shadow. */
.preflight-note{margin:10px 0;padding:10px 12px;border:1px solid #efd9a7;border-radius:10px;background:#fffaf0;color:#72551c;display:grid;gap:3px;font-size:12px;line-height:1.4}.preflight-note strong{color:#66450a}.preflight-note span{color:#72551c}
.ai-shadow-hint{margin:10px 0;padding:10px 12px;border:1px solid #cfe0f4;border-radius:10px;background:#f7fbff;color:#415b77;font-size:12px;line-height:1.4}.ai-shadow-title{display:flex;justify-content:space-between;gap:10px;align-items:center}.ai-shadow-title span{font-size:10px;color:#718397}.ai-shadow-decision{font-weight:800;color:#0f62c9;margin-top:5px}.ai-shadow-hint p{margin:5px 0}.ai-shadow-hint ul{margin:5px 0;padding-left:18px}.ai-shadow-hint small{display:block;margin-top:6px;color:#718397}
.table-batch-launcher{border-color:#bfe3cf!important;background:#f5fbf7!important}.table-batch-launcher:hover{background:#eef9f2!important}.table-batch-editor{padding:14px;overflow:auto;height:100%}.table-batch-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:10px}.table-batch-head h3{margin:6px 0 3px}.table-batch-head p{margin:0;line-height:1.4}.table-batch-list{display:grid;gap:10px;margin:12px 0;max-height:calc(100vh - 300px);overflow:auto;padding-right:4px}.table-batch-card{border:1px solid #dce5ef;border-radius:11px;background:#fff;padding:10px;cursor:pointer}.table-batch-card.selected{border-color:#9fd4b6;background:#f7fcf9}.table-batch-select{display:flex;gap:9px;align-items:flex-start;cursor:pointer}.table-batch-select input{margin-top:3px;accent-color:#16a36a}.table-batch-select span{display:grid;gap:2px}.table-batch-select small{color:var(--muted)}.table-batch-preview{margin-top:8px;max-height:190px;overflow:auto;border-top:1px solid #edf1f5;padding-top:8px}.table-batch-preview .result-table{font-size:10px}.table-batch-actions{position:sticky;bottom:0;background:#fff;padding:10px 0 0;border-top:1px solid var(--line)}.table-batch-actions button{width:100%}
.ai-precheck-doc{white-space:nowrap;flex:0 0 188px;width:188px;min-width:188px;text-align:center;padding-left:14px;padding-right:14px}
@media(max-width:760px){.table-batch-head{flex-direction:column}.ai-shadow-title{align-items:flex-start;flex-direction:column}}

/* 1.4.0-b2.15 — AI review usability: stable progress, visible task hints, per-task staleness. */
.review-summary-assist{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0;flex:1}
.ai-shadow-summary{border:1px solid #cfe0f4;background:#f7fbff;color:#315f99;border-radius:9px;padding:7px 10px;font-size:11px;white-space:nowrap;cursor:pointer}
.ai-shadow-summary:disabled{cursor:default;opacity:.78}
.ai-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:12px 0}
.ai-summary-grid>div{border:1px solid #dce7f3;border-radius:10px;background:#f8fbff;padding:10px}
.ai-summary-grid span{display:block;font-size:11px;color:#64748b}.ai-summary-grid strong{display:block;font-size:22px;margin-top:3px;color:#213652}
.ai-task-mark{display:inline-flex;width:max-content;align-items:center;margin-top:6px;padding:3px 7px;border-radius:999px;font-size:10px;font-style:normal;border:1px solid #d4e2f2;background:#f7fbff;color:#45617f}
.ai-task-mark.accept{border-color:#bfe3cf;background:#f2fbf6;color:#19734c}.ai-task-mark.fix{border-color:#f0d7a5;background:#fffaf1;color:#8a5a09}.ai-task-mark.warn{border-color:#e1d9ee;background:#faf8fd;color:#6c5689}
.ai-shadow-suggestion{margin:8px 0;padding:9px 10px;border:1px solid #d9e5f2;border-radius:9px;background:#fff}
.ai-shadow-suggestion>span{display:block;font-size:10px;color:#6f8195}.ai-shadow-suggestion p{white-space:pre-wrap;margin:5px 0 8px;color:#31455d}
.table-batch-source-note{font-size:10px;color:#8a5a09;background:#fff8e9;border:1px solid #f2dca9;border-radius:7px;padding:3px 6px;margin-top:4px;width:max-content;max-width:100%}
@media(max-width:900px){.review-summary-assist{align-items:flex-end;flex-direction:column}.ai-shadow-summary{white-space:normal}.ai-summary-grid{grid-template-columns:1fr 1fr}}

/* 1.4.0-b2.16 — physician-confirmed AI batch review. */
.review-body.ai-batch-mode .knowledge-map-pane,
.review-body.ai-batch-mode .source-pane{display:none}
.review-body.ai-batch-mode .review-work-pane{grid-column:1/-1;min-width:0}
.review-body.ai-batch-mode .review-work-toolbar{display:none}
.ai-batch-editor{height:100%;overflow:auto;padding:14px 16px 76px;background:#fbfdff}
.ai-batch-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:1px solid var(--line)}
.ai-batch-head h3{margin:6px 0 4px}.ai-batch-head p{margin:0;max-width:920px;line-height:1.45}
.ai-batch-stats{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.ai-batch-stat{border:1px solid #dbe5f0;background:#fff;border-radius:10px;padding:8px 11px;min-width:150px}
.ai-batch-stat span{display:block;font-size:10px;color:#6c7c8f}.ai-batch-stat strong{display:block;font-size:20px;margin-top:2px}
.ai-batch-section{margin:16px 0}.ai-batch-section>h4{margin:0 0 8px;font-size:14px}.ai-batch-section>p{margin:-2px 0 9px}
.ai-batch-card{border:1px solid #dce5ef;border-radius:12px;background:#fff;padding:12px;margin-bottom:10px}
.ai-batch-card.selected{border-color:#9fd4b6;background:#fbfffc}
.ai-batch-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}
.ai-batch-check{display:flex;gap:9px;align-items:flex-start;min-width:0;cursor:pointer}.ai-batch-check input{margin-top:3px;accent-color:#16a36a}.ai-batch-check span{min-width:0}.ai-batch-check strong{display:block}.ai-batch-check small{display:block;color:var(--muted);margin-top:2px}
.ai-batch-source-link{white-space:nowrap;font-size:11px;text-decoration:none;color:#1976d2}
.ai-batch-compare{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ai-batch-version{border:1px solid #e3e9f0;border-radius:10px;padding:10px;background:#fafcfe;min-width:0}.ai-batch-version.proposed{background:#f8fcfa;border-color:#cfe8da}
.ai-batch-version>span{display:block;font-size:10px;color:#718096;text-transform:uppercase;letter-spacing:.04em;margin-bottom:6px}.ai-batch-version p{white-space:pre-wrap;margin:0;line-height:1.45;color:#24364a}
.ai-batch-version del{background:#fff0f0;text-decoration:none;color:#9b2c2c}.ai-batch-version ins{background:#eaf9f0;text-decoration:none;color:#17643e}
.ai-batch-reason{margin:9px 0 0;font-size:11px;color:#607286}.ai-batch-reason details{margin-top:5px}.ai-batch-reason summary{cursor:pointer}
.ai-batch-unchanged .ai-batch-card-head{margin-bottom:6px}.ai-batch-unchanged-text{margin:0;line-height:1.4;color:#34495e;white-space:pre-wrap}.ai-batch-status{display:inline-flex;align-items:center;border-radius:999px;padding:3px 7px;font-size:10px;background:#f2fbf6;color:#19734c;border:1px solid #cbe8d8;margin-top:5px;cursor:default;user-select:none}
.ai-batch-card.attention{border-color:#f0cf8a;background:#fffdf8}.ai-batch-card.attention.selected{border-color:#d7b35e;background:#fffaf0}.ai-batch-attention{display:inline-flex;align-items:center;border-radius:999px;padding:3px 7px;font-size:10px;background:#fff5df;color:#8a5c00;border:1px solid #f0d59b;margin:5px 0 0 6px;font-style:normal}.ai-batch-manual-card{background:#fffaf5;border-color:#ecdcc6}.ai-batch-manual-card .ai-batch-card-head>div:first-child small{display:block;color:var(--muted);margin-top:2px}.ai-batch-manual-status{display:inline-flex;border-radius:999px;padding:3px 7px;font-size:10px;background:#fff0e8;color:#9a4a19;border:1px solid #f3cdb8;margin-top:5px;font-style:normal}.ai-batch-card-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.ai-batch-blocked-reason{margin:8px 0 0;font-size:11px;color:#755c2c}.ai-batch-manual-section{border-top:1px solid var(--line);padding-top:14px}.compact-button{padding:7px 10px;font-size:11px}
.ai-batch-manual{border:1px solid #eadfca;background:#fffaf2;border-radius:10px;padding:10px 12px;margin-top:10px;font-size:11px;color:#755c2c}
.ai-batch-actions{position:sticky;bottom:-76px;margin:14px -16px -76px;padding:12px 16px;background:rgba(255,255,255,.97);border-top:1px solid var(--line)}.ai-batch-actions button{width:100%}
.ai-task-mark{cursor:default!important;user-select:none}.ai-task-mark.accept{background:transparent;border-color:transparent;padding-left:0;color:#3d7a5c}.ai-task-mark.fix{cursor:default}
@media(max-width:900px){.ai-batch-compare{grid-template-columns:1fr}.ai-batch-head{flex-direction:column}.ai-batch-source-link{white-space:normal}}

.ai-batch-unchanged-summary>details>summary{cursor:pointer;font-weight:800;color:#53657c;padding:8px 0}.ai-batch-unchanged-summary>details[open]>summary{margin-bottom:8px}

/* 1.4.0-b2.19 — throughput-first AI package. */
.ai-batch-stat small{display:block;margin-top:2px;font-size:9px;color:var(--muted)}
.ai-batch-stat-primary{border-color:#bfe3cf;background:#f7fcf9;min-width:190px}.ai-batch-stat-primary strong{color:#17643e}
.ai-batch-new{border-color:#cfe0f4;background:#fbfdff}.ai-batch-empty-version{background:#f7f9fc}.ai-batch-empty-version p{font-weight:700;color:#53657c}.ai-batch-empty-version small{display:block;margin-top:5px;color:var(--muted);line-height:1.35}
.ai-batch-resolution{border-color:#efd9a7;background:#fffdf8}.ai-batch-error-card{border-color:#f2c8c8;background:#fff8f8}.ai-batch-error-card .ai-batch-manual-status{background:#fff0f0;color:#a02f2f;border-color:#efcaca}
.ai-batch-stats .ai-batch-stat{flex:1 1 210px;min-width:190px}
.ai-batch-split-list{display:grid;gap:8px;min-width:0}
.ai-batch-split-item{border:1px solid #cfe8da;border-radius:10px;padding:10px;background:#f8fcfa;min-width:0}
.ai-batch-split-item>span{display:block;font-size:10px;color:#718096;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px}
.ai-batch-split-item>strong{display:block;font-size:12px;color:#244538;margin-bottom:6px}
.ai-batch-split-item>p{white-space:pre-wrap;margin:0;line-height:1.45;color:#24364a}
.ai-batch-tech{margin-top:8px;font-size:10px;color:var(--muted)}
.ai-batch-tech summary{cursor:pointer}.ai-batch-tech p{white-space:pre-wrap;overflow-wrap:anywhere}
.ai-batch-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:8px}.ai-batch-section-head h4{margin:0 0 4px}.ai-batch-section-head p{margin:0}.ai-batch-section-controls{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.ai-batch-ok-text{color:#17643e!important;background:#f2fbf6;border-left:3px solid #9fd4b6;padding:8px 10px;border-radius:6px}.ai-batch-unchanged-summary>details>summary{color:#17643e}
@media(max-width:900px){.ai-batch-section-head{flex-direction:column}.ai-batch-section-controls{justify-content:flex-start}}

/* b2.22 inline physician proposal editing */
.ai-proposal-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.ai-proposal-head>span{display:block;font-size:10px;color:#718096;text-transform:uppercase;letter-spacing:.04em}.ai-inline-edit{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid #b8d2ef;border-radius:8px;background:#fff;color:#1769c2;cursor:pointer;font-size:16px;line-height:1}.ai-inline-edit:hover{background:#f2f8ff}.ai-inline-edit.saved{background:#eaf9f0;border-color:#9fd4b6;color:#17643e;font-weight:800}.ai-inline-textarea{width:100%;min-height:110px;resize:vertical;border:1px solid #9fd4b6;border-radius:8px;padding:9px 10px;font:inherit;line-height:1.45;background:#fff;box-sizing:border-box}.ai-unchanged-edit-row{display:flex;align-items:flex-start;gap:8px}.ai-unchanged-edit-row>p{flex:1}.ai-batch-split-item .ai-proposal-head{margin-bottom:5px}.ai-batch-split-item .ai-proposal-head>span{margin:0}.ai-batch-card.physician-edited{border-color:#9fd4b6}

.ai-batch-manual-text { margin: 10px 0 6px; white-space: pre-wrap; line-height: 1.45; }

/* portal.css */
/* Portal presentation. Behaviour and source/approval contracts live in app.js. */
:root {
  --bg:#f4f5f7; --surface:#fff; --line:#dfe3e8; --text:#1b2635; --muted:#627084;
  --blue:#245edb; --blue-soft:#edf2ff; --green:#167554; --green-soft:#edf7f2;
  --orange:#9a6513; --orange-soft:#fff7e8; --red:#b23c3c; --red-soft:#fff3f2;
  --violet:#59647a; --violet-soft:#f1f3f7; --shadow:0 2px 8px #16273e05; --radius:10px;
  font-family:Inter,"Segoe UI",Arial,sans-serif; font-size:14px;
}
body {line-height:1.5; -webkit-font-smoothing:antialiased;}
h1,h2,h3,h4 {letter-spacing:-.018em; color:var(--text);}
button,a,input,textarea,select,summary {-webkit-tap-highlight-color:transparent;}
button:focus-visible,a:focus-visible,summary:focus-visible {outline:3px solid #245edb60; outline-offset:3px;}
input:focus,textarea:focus,select:focus {outline:2px solid #245edb45; outline-offset:1px; border-color:var(--blue);}
button:disabled {cursor:default;}
.topbar {height:68px; padding:0 32px; grid-template-columns:260px 1fr 260px; box-shadow:none;}
.brand {gap:12px;}
.brand-mark {width:34px; height:34px; border-radius:8px; background:var(--blue); color:#fff; border:0; font-size:18px;}
.brand strong {font-size:15px; font-weight:650;}
.brand small {font-size:11px; letter-spacing:.02em;}
.main-nav {gap:8px;}
.nav-item {font-size:14px; font-weight:550; padding:0 22px; border-bottom-width:2px; color:var(--muted);}
.user-button {width:32px; height:32px; font-size:12px; background:#edf0f5; color:var(--text); border:1px solid var(--line);}
.shell {max-width:1500px; padding:32px;}
.card {border-radius:10px; box-shadow:var(--shadow);}
.section-head {padding:24px;}
.section-head h2 {font-size:23px; font-weight:600;}
.section-head p {font-size:13px; margin-top:5px;}
.primary-button,.outline-button,.success-button,.warning-button,.danger-outline-button {
  border-radius:7px; padding:10px 16px; min-height:40px; font-size:13px;
  font-weight:550; line-height:1.45; box-shadow:none; transition:background-color .15s,border-color .15s;
}
.primary-button {background:var(--blue); border-color:var(--blue);}
.primary-button:hover {background:#1b4db8; border-color:#1b4db8;}
.outline-button {color:#354760; border-color:#ccd4de; background:#fff;}
.outline-button:hover {background:#f3f6fa; border-color:#9aa9bb;}
.success-button {background:var(--green); border-color:var(--green);}
.danger-outline-button {color:var(--red); border-color:#e5cece;}
.warning-button {background:var(--orange-soft); color:var(--orange); border-color:#e9d6b3;}
.icon-button {border-radius:7px; background:#f3f5f8; color:var(--muted);}
.badge,.stage-badge,.total-pill,.release-chip {border-radius:5px; font-size:11px; font-weight:500; line-height:1.5;}
.compact-input,.editor-input,.editor-textarea {border-color:#ccd4de; border-radius:7px; box-shadow:none;}
.head-actions {gap:10px;}
.head-actions input {min-width:180px; height:40px;}
.pipeline-grid {gap:14px; margin-bottom:24px; grid-template-columns:repeat(4,minmax(0,1fr));}
.pipeline-grid .flow-arrow {display:none;}
.pipeline-grid .pipeline-card {min-height:126px; border:1px solid var(--line); box-shadow:none; border-radius:10px; padding:18px; gap:12px;}
.pipeline-grid .pipeline-card .stage-icon {width:32px; height:32px; min-width:32px; border-radius:7px; font-size:18px; background:#f0f3f7; color:#56677e;}
.pipeline-grid .pipeline-card.active {border-color:#a5bce8; background:#fff;}
.pipeline-grid .stage-head {gap:8px; align-items:flex-start;}
.pipeline-grid .stage-head h3 {font-size:13px; font-weight:550;}
.pipeline-grid .stage-value {font-size:21px; font-weight:600; letter-spacing:-.03em; margin:6px 0 4px;}
.pipeline-grid .stage-meta {font-size:11px; line-height:1.5; color:var(--muted);}
.pipeline-grid .stage-badge {background:#f2f4f7; color:var(--muted); padding:2px 6px;}
.progress {background:#e8ecf1; height:4px; border-radius:2px;}
.document-panel-horizontal {margin:0 24px 24px; padding:22px; border:1px solid #d5deeb; border-radius:8px; background:#fbfcfe; box-shadow:none;}
.document-inspector-title {gap:16px; align-items:flex-start; margin-bottom:16px;}
.document-inspector-title h3 {font-size:17px; font-weight:600; margin:0; overflow-wrap:anywhere;}
.document-inspector-title p {font-size:12px; margin:5px 0 0;}
.document-materials-ready {display:flex; gap:10px; align-items:flex-start; margin:12px 0 16px;}
.document-materials-ready>span {display:grid; place-items:center; width:22px; height:22px; border-radius:50%; background:var(--green-soft); color:var(--green); flex-shrink:0;}
.document-materials-ready strong {font-size:13px; font-weight:550;}
.document-materials-ready p {font-size:12px; color:var(--muted); margin:2px 0 0;}
.document-process-details {margin:12px 0 18px; border-top:1px solid var(--line);}
.document-process-details>summary {padding:12px 0; color:var(--muted); cursor:pointer; font-size:12px;}
.processing-stages-grid,.processing-stage-grid,.horizontal-processing-timeline {gap:8px;}
.processing-stage-card {min-height:68px; padding:10px; border-radius:6px; box-shadow:none;}
.processing-stage-card.done {background:#f6f8fa; border-color:#e3e8ee;}
.processing-stage-card strong {font-weight:500; color:#435269;}
.document-ai-progress {max-width:620px; display:grid; gap:9px; margin:14px 0 12px; color:#435269; font-size:13px; font-variant-numeric:tabular-nums;}
.document-ai-progress progress {width:100%; height:4px; border:0; border-radius:3px; background:#e2e8f1; accent-color:var(--blue);}
.document-ai-progress progress::-webkit-progress-bar {background:#e2e8f1; border-radius:3px;}
.document-ai-progress progress::-webkit-progress-value {background:var(--blue); border-radius:3px;}
.document-inspector-actions {gap:10px; margin:12px 0 18px;}
.document-inspector-actions .ai-precheck-doc {white-space:normal; flex:0 1 auto; width:auto; min-width:0; max-width:100%; padding:10px 16px;}
.document-file-actions {display:flex; flex-wrap:wrap; gap:8px 18px; align-items:center; padding-top:14px; border-top:1px solid var(--line);}
.document-file-actions .outline-button,.document-file-actions .danger-outline-button {padding:3px 0; min-height:28px; background:transparent; border-color:transparent; border-radius:3px; font-size:12px;}
.document-file-actions .remove-panel-doc {margin-left:auto;}
.documents-table th {background:#f8f9fb; color:var(--muted); font-size:11px; font-weight:550; padding:12px 18px;}
.documents-table td {padding:17px 18px; border-color:#e9edf2; font-size:13px;}
.documents-table .doc-title {font-size:13px;}
.documents-table tr.selected td {background:#f0f4fc;}
.documents-table .compact-button {min-height:32px; font-size:11px; padding:6px 10px;}
.search-hero {max-width:980px; text-align:left; margin:32px auto;}
.search-intro h1 {font-size:32px; font-weight:600; letter-spacing:-.035em;}
.search-intro p {font-size:14px;}
.search-form {border-radius:9px; box-shadow:none; border-color:#cbd3df; margin-top:26px;}
.search-form {grid-template-columns:36px minmax(0,1fr) auto; gap:8px;}
.search-form:focus-within {border-color:var(--blue); box-shadow:0 0 0 3px #245edb20;}
.search-form input {font-size:16px; min-width:0; width:100%; background:transparent;}
.search-form input:focus {outline:none; border:0; box-shadow:none;}
.search-form button {grid-column:auto; width:auto;}
.filter-row {justify-content:flex-start; margin-top:16px;}
.filter-chip,.mini-chip,.review-mode-tab,.segmented button {font-size:12px; border-radius:6px; font-weight:500;}
.filter-chip.active,.mini-chip.active,.review-mode-tab.active {background:var(--blue-soft); color:var(--blue); border-color:#c6d5f5;}
.empty-search {padding:48px 24px; background:transparent; border-style:dashed; box-shadow:none;}
.empty-search h2 {font-size:19px; font-weight:550;}
.empty-icon {background:#edf0f5; color:#7b889d; border-radius:10px;}
.source-card {border-color:var(--line); border-radius:8px; box-shadow:none; padding:22px;}
.source-card h3 {font-size:17px;}
.modal {background:#1c2a3b55; backdrop-filter:blur(3px);}
.review-focus-layout {border-radius:10px; border:1px solid #d3dbe5; box-shadow:0 12px 50px #12203920;}
.review-header {padding:16px 20px; background:#fff;}
.review-header h2 {font-size:18px; font-weight:600;}
.review-header .eyebrow {font-size:10px; letter-spacing:.09em; color:var(--muted);}
.review-overview-strip,.review-command-bar,.review-work-toolbar,.pane-head {background:#f8f9fb; border-color:var(--line);}
.knowledge-map-pane,.review-work-pane,.source-pane {min-width:0;}
.review-body-focus {grid-template-columns:minmax(230px,280px) minmax(0,1.15fr) minmax(0,1fr);}
.review-mode-tabs {gap:6px; padding:12px;}
.review-mode-tab {min-height:38px; padding:8px 10px;}
.review-item {border-radius:6px; margin:4px 8px; padding:10px;}
.review-item:hover {background:#f5f7fa;}
.review-item.active {background:#edf2ff; border-color:#c8d6f3;}
.review-item-title {font-size:12px; line-height:1.5; font-weight:500;}
.review-item-meta {font-size:11px;}
.editor-pane label {font-size:12px; color:var(--muted);}
.editor-textarea {font-size:14px; line-height:1.65;}
.editor-actions {gap:7px; padding:12px 16px; border-top:1px solid var(--line); background:#fff;}
.editor-actions button {font-size:12px; min-height:36px;}
.preview-stage {background:#e9edf2;}
.review-body.ai-batch-mode {
  display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:minmax(0,1fr); overflow:hidden;
}
.review-body.ai-batch-mode .review-work-pane {min-height:0; height:100%;}
.ai-batch-editor {background:#f7f8fa; min-height:0; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable;}
.ai-batch-head {gap:20px; padding-bottom:18px;}
.ai-batch-head h3 {font-size:23px; font-weight:600; margin:6px 0;}
.ai-batch-head .muted {max-width:840px; font-size:13px; line-height:1.6;}
.ai-batch-head-actions {display:flex; flex-wrap:wrap; gap:8px; flex-shrink:0;}
.ai-batch-stats {gap:12px; margin:4px 0 24px;}
.ai-batch-stat {border:1px solid var(--line); border-radius:8px; background:#fff; padding:16px;}
.ai-batch-stat strong {font-weight:600; font-size:26px; letter-spacing:-.03em;}
.ai-batch-card {border:1px solid var(--line); border-radius:8px; box-shadow:none; background:#fff; padding:18px; margin:10px 0;}
.ai-batch-manual-card {background:#fffdfa; border-color:#e5d9c4;}
.ai-batch-card-head {display:flex; justify-content:space-between; align-items:flex-start; gap:16px;}
.ai-batch-card-head>div:first-child,.ai-batch-check,.ai-batch-check>span {min-width:0; flex:1;}
.ai-batch-card-head strong {font-size:14px; font-weight:550; overflow-wrap:anywhere; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
.ai-batch-card-actions {flex:0 0 auto; display:flex; flex-wrap:wrap; gap:8px; align-items:center; max-width:300px;}
.ai-batch-card-actions button,.ai-batch-card-actions a {white-space:normal; min-width:0;}
.ai-batch-card p {font-size:14px; line-height:1.65; overflow-wrap:anywhere;}
.ai-batch-manual-text {margin:14px 0;}
.ai-batch-blocked-reason {border-top:1px solid #eae3d5; padding-top:10px; color:#7e612f; font-size:12px!important;}
.ai-batch-actions {bottom:-14px; margin:14px -16px -14px; padding:12px 18px; background:#fffffff5; border-top:1px solid var(--line); box-shadow:0 -3px 10px #12203906; z-index:2;}
.ai-batch-editor {padding-bottom:14px;}
.ai-batch-actions button {min-height:42px; border-radius:7px;}
.ai-batch-section {margin-top:24px;}
.ai-batch-section h4 {font-size:15px;}
.ai-batch-navigation {display:flex; flex-wrap:wrap; gap:8px; margin:0 0 20px;}
.ai-batch-navigation button {white-space:normal;}
#aiBatchEditor:focus-visible {outline:2px solid #245edb60; outline-offset:-2px;}
.ai-batch-section .muted {font-size:12px;}
.operation-dialog,.auth-card,.profile-card {border-radius:10px; border:1px solid var(--line); box-shadow:0 12px 50px #12203920;}
.toast {border-radius:8px; box-shadow:0 4px 20px #12203915;}
@media (max-width:1180px) {
  .topbar {grid-template-columns:210px 1fr 190px; padding:0 20px;}
  .shell {padding:22px;}
  .pipeline-grid {gap:10px;}
  .pipeline-grid .pipeline-card {padding:14px;}
  .pipeline-grid .stage-icon {display:none;}
  .review-body-focus {grid-template-columns:225px minmax(0,1fr); overflow:auto;}
  .review-work-pane {grid-column:2;}
  .source-pane {min-height:460px;}
  .ai-batch-head {flex-wrap:wrap;}
}
@media (max-width:780px) {
  .topbar {height:auto; min-height:64px; padding:12px 16px; grid-template-columns:1fr auto; gap:12px;}
  .main-nav {grid-column:1/-1; grid-row:2; justify-self:stretch; height:38px;}
  .nav-item {flex:1; padding:0 10px;}
  .top-actions {grid-column:2; grid-row:1;}
  .system-status {display:none;}
  .shell {padding:16px;}
  .pipeline-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
  .pipeline-grid .pipeline-card {min-height:112px;}
  .section-head {padding:18px; flex-wrap:wrap; gap:16px;}
  .head-actions {width:100%; flex-wrap:wrap;}
  .head-actions input {flex:1; min-width:120px; width:120px;}
  .document-panel-horizontal {margin:0 16px 16px; padding:16px;}
  .document-inspector-actions>button {flex:1 1 220px!important; width:auto; min-width:0;}
  .document-file-actions .remove-panel-doc {margin-left:0;}
  .document-inspector-title {flex-wrap:wrap;}
  .search-intro h1 {font-size:26px;}
  .search-hero {margin:20px auto;}
  .search-form {grid-template-columns:28px minmax(0,1fr) auto;}
  .search-form input {min-width:0; font-size:14px;}
  .search-form button {padding:10px 12px;}
  .review-body-focus {display:block; overflow:auto;}
  .review-focus-layout {border-radius:0;}
  .source-pane {min-height:420px;}
  .ai-batch-card-head {flex-direction:column; gap:12px;}
  .ai-batch-card-actions {max-width:100%;}
  .ai-batch-editor {padding:16px;}
  .ai-batch-head-actions {width:100%;}
  .ai-batch-stats .ai-batch-stat {min-width:0; flex:1 1 150px;}
}
@media (prefers-reduced-motion:reduce) { * {scroll-behavior:auto!important; transition:none!important;} }

.publication-actions {display:flex;gap:12px;flex-wrap:wrap;justify-content:flex-end;}
.pipeline-grid button.stage-badge {appearance:none;border:0;font:inherit;font-size:11px;opacity:1;}
.pipeline-grid button.stage-badge:not(:disabled) {cursor:pointer;}
.pipeline-grid button.stage-badge:not(:disabled):hover {text-decoration:underline;}
.pipeline-grid button.stage-badge:focus-visible {outline:2px solid var(--blue);outline-offset:3px;}
.publication-failure {padding:16px;border:1px solid #edc6c6;border-radius:10px;background:#fff7f7;}
.failure-text {white-space:pre-wrap;overflow-wrap:anywhere;}
.document-ai-progress [data-ai-errors] {justify-self:start;}

/* Polling changes text and progress, never the geometry of the status row. */
html {scrollbar-gutter:stable;}
.pipeline-grid .stage-main {display:grid;grid-template-rows:36px 28px 6px 36px;row-gap:4px;min-width:0;}
.pipeline-grid .stage-head {min-width:0;overflow:hidden;}
.pipeline-grid .stage-head h3 {min-width:0;line-height:18px;}
.pipeline-grid .stage-badge {flex-shrink:0;align-self:start;}
.pipeline-grid .stage-value {margin:0;line-height:28px;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.pipeline-grid .progress.hidden {display:block!important;visibility:hidden;}
.pipeline-grid .stage-meta {margin:0;line-height:18px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;}
.publication-strip {min-height:86px;gap:16px;}
.publication-strip>div:first-child {min-width:0;}
.publication-strip #publicationText {line-height:18px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.publication-strip .publication-actions {flex-direction:row;flex-wrap:nowrap;flex-shrink:0;}
.publication-strip #publishButton {min-width:216px;font-variant-numeric:tabular-nums;}
@media(max-width:760px){.publication-strip{align-items:flex-start;flex-direction:column}.publication-strip .publication-actions{flex-wrap:wrap}.pipeline-grid .stage-badge{max-width:110px;white-space:normal}}

/* review-workspace.css */
.workspace-overlay{position:fixed;inset:0;z-index:1100;background:rgba(15,23,42,.24);padding:20px;display:flex;align-items:stretch;justify-content:center}.workspace-overlay.hidden{display:none}.workspace-dialog{width:min(1560px,100%);height:100%;min-height:0;background:#f8fafc;border:1px solid #dce3ec;border-radius:14px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 24px 80px #0f172a24;color:#18283c}.workspace-header{display:flex;justify-content:space-between;gap:24px;align-items:center;padding:20px 28px;background:white;border-bottom:1px solid #e2e8f0;flex:none}.workspace-eyebrow{text-transform:uppercase;font-size:11px;letter-spacing:.12em;color:#63758b}.workspace-header h2{margin:6px 0;font-size:22px;line-height:1.3}.workspace-header p{margin:0;font-size:13px}.workspace-header-actions,.workspace-toolbar>div,.workspace-row-actions,.workspace-decisions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.workspace-groups{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;padding:18px 28px 12px;flex:none}.workspace-group{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px 16px;background:white;border:1px solid #dce3ec;border-radius:9px;text-align:left;color:#526278;cursor:pointer;font:inherit}.workspace-group strong{font-size:26px;color:#22354d}.workspace-group.active{background:#eef4ff;border-color:#608bea;box-shadow:inset 0 0 0 1px #608bea}.workspace-group span{min-height:34px;font-size:13px;line-height:1.3}.workspace-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 28px 12px;flex:none}.workspace-toolbar label{display:flex;align-items:center;gap:8px;font-size:13px}.workspace-toolbar select{padding:8px;border:1px solid #dce3ec;border-radius:6px;background:white;max-width:430px}.workspace-message{padding:0 28px;color:#526278;font-size:13px;flex:none;min-height:18px}.workspace-message.error{color:#aa2d2d}.workspace-scroll{flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:12px 28px 24px}.workspace-selection{display:flex;align-items:center;gap:8px;margin-bottom:12px}.workspace-selection span{margin-left:auto}.workspace-row{background:white;border:1px solid #dfe6ee;border-radius:9px;padding:18px 20px;margin-bottom:12px;min-width:0;contain:layout style}.workspace-row-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.workspace-row-head label{display:flex;gap:12px;align-items:flex-start;min-width:0;flex:1}.workspace-row-head input{flex:none;margin:4px 0;width:16px;height:16px;accent-color:#245cdf}.workspace-row-head strong{font-size:15px;line-height:1.5;overflow-wrap:anywhere}.workspace-row-head .muted{font-size:12px;flex-shrink:0;max-width:25%;text-align:right}.workspace-excerpt{font-size:14px;line-height:1.6;margin:12px 0;color:#526278;overflow-wrap:anywhere}.workspace-reason{padding:8px 12px;background:#fff6e7;border-left:3px solid #d49a37;font-size:13px}.workspace-content{margin:12px 0}.workspace-content summary{cursor:pointer;color:#31588e;font-size:13px}.workspace-content p,.workspace-preview-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.7}.workspace-comparison{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:12px}.workspace-comparison section{padding:14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:7px;min-width:0}.workspace-comparison section+section{background:#f4faf7}.workspace-comparison h4{font-size:12px;color:#697b92;text-transform:uppercase;margin:0}.workspace-proposal-part+div{border-top:1px solid #dce3ec;padding-top:12px}.workspace-row-actions button{font-size:12px;padding:7px 12px}.workspace-pagination{display:flex;align-items:center;justify-content:center;gap:24px;padding:18px 0}.workspace-footer{padding:14px 28px;background:white;border-top:1px solid #dce3ec;display:flex;flex-wrap:wrap;align-items:center;gap:14px;flex:none;box-shadow:0 -4px 16px #0f172a04}.workspace-footer strong{font-size:13px;white-space:nowrap}.workspace-footer button{font-size:12px;padding:9px 12px}.workspace-decisions{margin-left:auto}.workspace-empty{padding:40px;text-align:center;color:#687b91}.workspace-popover{border:1px solid #cfd9e5;border-radius:12px;padding:28px;width:min(780px,calc(100vw - 48px));max-height:calc(100dvh - 48px);overflow:auto;color:#22354d;box-shadow:0 24px 80px #0f172a33}.workspace-popover::backdrop{background:#0f172a66}.workspace-popover h2{font-size:21px}.workspace-popover label{display:block;margin:16px 0}.workspace-popover textarea{width:100%;box-sizing:border-box}.workspace-popover [role=alert]{color:#af3030}.workspace-popover-close{float:right}.workspace-popover select{padding:9px;border:1px solid #ccd7e5;border-radius:6px}.workspace-overlay button:focus-visible,.workspace-popover button:focus-visible{outline:3px solid #aac1ff;outline-offset:2px}.workspace-overlay button:disabled{opacity:.45;cursor:default}
@media(max-width:1000px){.workspace-overlay{padding:6px}.workspace-groups{gap:6px;padding:12px}.workspace-group{padding:10px}.workspace-toolbar,.workspace-header,.workspace-footer{padding:12px}.workspace-scroll{padding:12px}.workspace-header h2{font-size:18px}.workspace-row-head{flex-direction:column;gap:5px}.workspace-row-head .muted{max-width:100%}.workspace-comparison{grid-template-columns:1fr}.workspace-decisions{margin-left:0}.workspace-toolbar{flex-wrap:wrap}.workspace-groups{overflow:auto;grid-template-columns:repeat(5,minmax(135px,1fr))}.workspace-footer{max-height:30vh;overflow:auto}}

/* search-workflow.css */
.search-refinements{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin:20px 0 28px}.search-refinements label{display:flex;flex-direction:column;gap:5px;color:#526278;font-size:12px}.search-refinements input,.search-refinements select{font:inherit;font-size:14px;padding:9px 12px;border:1px solid #d9e1ec;background:white;border-radius:7px;height:40px;box-sizing:border-box}.search-refinements label:first-child{flex:1;min-width:210px}.search-refinements input[type=number]{width:110px}.search-refinements button{height:40px}.search-answer-panel{border:1px solid #dce3ed;background:#f7faff;border-radius:9px;padding:20px;margin:18px 0}.search-answer-panel.hidden{display:none}.search-answer-panel p{margin:8px 0;line-height:1.65}.search-answer-panel article{background:white;border-top:1px solid #dce3ed;padding:12px;margin-top:12px}.search-answer-panel a{font-size:12px}.search-feedback-actions{border-top:1px solid #e8edf3;display:flex;gap:18px;padding-top:12px;margin-top:16px}.source-card details{margin:12px 0;color:#526278}.source-card summary{cursor:pointer}.source-card details p{white-space:pre-wrap;font-size:14px}.workspace-popover input:not([type=checkbox]),.workspace-popover select{box-sizing:border-box;width:100%;padding:9px 11px;border:1px solid #ccd7e5;border-radius:7px;font:inherit;margin-top:5px}.workspace-popover label:has(input[type=checkbox]){display:flex;gap:10px;align-items:center}.feedback-queue{width:min(980px,calc(100vw - 48px))}.feedback-queue article p{font-size:14px}.workspace-row-head strong{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.workspace-group{flex-direction:row;align-items:center;justify-content:space-between;gap:10px}.workspace-group span{min-height:0}.workspace-group strong{font-size:23px}.workspace-comparison ins{background:#dff3e7;text-decoration:none}.workspace-comparison del{background:#fde5e5;color:#a43434}.curated-table input[readonly],.curated-table textarea[readonly]{background:transparent;border-color:transparent;color:inherit;resize:none;box-shadow:none}.workspace-preview-body .structured-table-wrap{white-space:normal}.workspace-popover .workspace-row-actions{margin-top:16px}
@media(max-width:700px){.search-refinements{gap:10px}.search-refinements label:first-child{width:100%;flex-basis:100%}.search-refinements button{width:100%}.workspace-group{min-width:130px}.workspace-header-actions button:first-child{max-width:170px}.workspace-toolbar select{max-width:calc(100vw - 100px)}}
/* Source units retain their own context and conditions within the question. */
.material-question{font-size:20px;font-weight:600;margin:20px 0}
.material-section{margin:24px 0}.material-section h3{font-size:18px;margin-bottom:12px}
.material-block{background:#fff;border:1px solid var(--border,#dce3ef);border-radius:10px;padding:20px;margin:12px 0}
.material-block h4{font-size:16px;margin:0 0 12px}.material-text{white-space:pre-line;line-height:1.65}
.material-context,.material-coverage{color:var(--muted,#75879f);font-size:13px;line-height:1.6}
.material-conditions{border-left:3px solid #b5c7fc;background:#f6f8fd;padding:12px 16px;margin:16px 0}
.material-conditions p{white-space:pre-line;margin-bottom:0}.material-sources{margin-top:16px;font-size:13px}

/* service-status.css */
#systemStatus{background:transparent;border:0;font:inherit;font-size:13px;cursor:pointer;padding:8px;border-radius:6px}#systemStatus.warning{color:#946015}#systemStatus:focus-visible{outline:3px solid #a9c0ff;outline-offset:2px}.service-status-panel{background:#fff;border:1px solid #dce3ed;border-radius:14px;box-shadow:0 12px 40px #142d481a;margin:16px auto;padding:22px;max-width:1100px;width:calc(100% - 40px);box-sizing:border-box}.service-status-panel>header{display:flex;align-items:center;gap:10px}.service-status-panel>header>div{flex:1}.service-status-panel header p{margin:4px 0;font-size:12px}.service-status-row{display:flex;align-items:center;gap:14px;padding:15px 0;border-top:1px solid #edf0f5}.service-status-row:first-child{margin-top:16px}.service-status-row>div{flex:1;min-width:0}.service-status-row p{margin:4px 0 0;color:#6a7a90;font-size:13px;line-height:1.5}.service-status-row>span:last-child{font-size:12px;color:#526075}.service-status-dot{width:9px;height:9px;flex:none;border-radius:50%;background:#cb912a}.service-status-dot.ready{background:#198267}.service-status-panel details{border-top:1px solid #edf0f5;padding-top:12px;color:#69798e;font-size:12px}.service-status-panel pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:250px;overflow:auto}.service-status-panel summary{cursor:pointer}@media(max-width:600px){.service-status-panel{width:calc(100% - 16px);padding:16px}.service-status-panel>header{flex-wrap:wrap}.service-status-panel>header>div{flex-basis:100%}.service-status-row>span:last-child{display:none}#systemStatus{font-size:11px;max-width:150px}}

/* review-inspector.css */
.inspector-overlay{position:fixed;inset:0;z-index:1150;padding:16px;background:#14263840;display:flex;align-items:stretch;justify-content:center}.inspector-overlay.hidden{display:none}.inspector-dialog{width:min(1620px,100%);height:100%;background:#fff;border:1px solid #dae2ed;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;color:#20324a;box-shadow:0 24px 80px #172a3b30}.inspector-header{flex:none;display:flex;align-items:center;gap:16px;padding:18px 24px;border-bottom:1px solid #e1e7ef}.inspector-header>div{flex:1;min-width:0}.inspector-header h2{font-size:20px;margin:4px 0;line-height:1.3;overflow-wrap:anywhere}.inspector-header p{margin:0;font-size:12px}.inspector-header small{font-size:11px;letter-spacing:.06em;color:#6b7d94}.inspector-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);flex:1;min-height:0}.inspector-source,.inspector-work{display:flex;flex-direction:column;min-width:0;min-height:0}.inspector-source{border-right:1px solid #dce4ee;background:#edf1f6}.inspector-toolbar{padding:12px 18px;display:flex;gap:12px;align-items:center;justify-content:space-between;background:#f8fafc;border-bottom:1px solid #e4e9f1;flex:none;min-height:58px;box-sizing:border-box;font-size:12px;color:#607187}.inspector-toolbar>div{display:flex;gap:6px;flex-wrap:wrap}.inspector-toolbar button{padding:7px 10px;font-size:12px}.inspector-toolbar .active{background:#eaf1ff;border-color:#90adee;color:#2458c8}.inspector-image-stage{overflow:auto;min-height:0;flex:1;padding:16px;scrollbar-gutter:stable;overscroll-behavior:contain}.inspector-image-stage img{display:block;width:100%;height:auto;box-shadow:0 3px 14px #1a35461c;background:#fff}.inspector-image-stage img[hidden]{display:none}.inspector-image-stage p{font-size:13px;color:#65758b;text-align:center}.inspector-image-stage p:empty{display:none}.inspector-source iframe{border:0;flex:1;min-height:0;width:100%;background:#fff}.inspector-source-caption{flex:none;padding:12px 18px;background:#fff;border-top:1px solid #e1e7ef;font-size:12px;line-height:1.4;max-height:54px;overflow:hidden;color:#64738a}.inspector-content{min-height:0;flex:1;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:24px;background:#fbfcfe}.inspector-card{border:1px solid #dce4ee;background:#fff;border-radius:10px;padding:18px;margin:0 0 16px}.inspector-card.proposal{background:#f4faf7;border-color:#cce4d9}.inspector-card header{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:#52687e}.inspector-card header button{padding:5px 8px;font-size:12px}.inspector-card p,.inspector-original p{white-space:pre-wrap;font-size:15px;line-height:1.75;margin:14px 0 0;overflow-wrap:anywhere}.inspector-intro{font-size:13px;line-height:1.6;color:#566a82;margin:0 0 20px}.inspector-original{padding:14px 0;font-size:13px;color:#60768e}.inspector-original summary{cursor:pointer}.inspector-warning{padding:14px 16px;border:1px solid #edd3a4;background:#fff8e9;border-radius:9px;font-size:13px;line-height:1.5;margin-bottom:18px}.inspector-warning p{margin:6px 0}.inspector-warning details{font-size:12px}.inspector-warning details p{overflow-wrap:anywhere}.inspector-grid{overflow:auto;max-width:100%;border:1px solid #dfe6ed;border-radius:8px}.inspector-grid table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.4}.inspector-grid th,.inspector-grid td{padding:8px 10px;border:1px solid #dce4ed;white-space:normal;min-width:65px;vertical-align:top}.inspector-grid th{background:#f0f4f9;color:#425974}.inspector-message{flex:none;margin:0;padding:0 20px 8px;font-size:13px;line-height:1.4;color:#a84926;overflow-wrap:anywhere}.inspector-message:empty{display:none}.inspector-footer{position:relative;flex:none;display:flex;gap:8px;align-items:center;padding:16px 20px;background:#fff;border-top:1px solid #e2e8f0}.inspector-footer>button{padding:11px 12px;font-size:12px;white-space:normal}.inspector-footer>button:first-child{flex:1}.inspector-footer details>summary{cursor:pointer;font-size:13px;list-style:none;padding:10px}.inspector-footer details>div{position:absolute;bottom:calc(100% - 8px);right:20px;min-width:250px;max-height:65vh;overflow:auto;background:#fff;border:1px solid #dce4ee;box-shadow:0 8px 30px #23364924;border-radius:10px;padding:7px;z-index:3}.inspector-footer details button,.inspector-footer details a{display:block;width:100%;text-align:left;padding:10px 12px;background:transparent;border:0;color:#415978;font-size:13px;cursor:pointer;border-radius:6px;text-decoration:none}.inspector-footer details button:hover,.inspector-footer details a:hover{background:#f0f5fc}.inspector-footer details button[hidden]{display:none}.inspector-dialog button:disabled{opacity:.5;cursor:default}.inspector-dialog button:focus-visible,.inspector-dialog summary:focus-visible{outline:3px solid #aec7ff;outline-offset:2px}.inspector-edit{padding:18px;background:#fff;border:1px solid #97b2e7;border-radius:10px;margin-bottom:20px}.inspector-edit h3{font-size:17px;margin:0 0 8px}.inspector-edit p{font-size:13px;line-height:1.6}.inspector-edit label{display:block;margin:12px 0;font-size:13px;color:#63768e}.inspector-edit input,.inspector-edit textarea,.inspector-edit select{display:block;width:100%;box-sizing:border-box;margin-top:6px}.inspector-edit select{padding:10px;border:1px solid #d7e2ef;border-radius:6px;background:#fff}.inspector-edit textarea{min-height:220px;font-size:14px;line-height:1.6}.inspector-edit [role=alert]{color:#ac392c}.inspector-related{display:flex;gap:8px;flex-wrap:wrap;font-size:13px;padding:12px;background:#f0f4fa;border-radius:8px}.inspector-related strong{width:100%}
.workspace-group-description{padding:0 28px;margin:0 0 8px;color:#65758d;font-size:13px;line-height:1.5}.workspace-groups{grid-template-columns:repeat(4,minmax(0,1fr)) auto}.workspace-group[data-workspace-group=resolved]{background:transparent;border-color:transparent;font-size:12px}.workspace-group[data-workspace-group=resolved] strong{font-size:18px}.workspace-group span{min-height:18px}.workspace-group{flex-direction:row;align-items:center;justify-content:space-between}.workspace-footer .workspace-decisions{gap:6px}.workspace-tools-mode .review-summary-bar,.workspace-tools-mode .review-left-workspace,.workspace-tools-mode #approveDocumentButton{display:none!important}.workspace-tools-mode .review-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important}.workspace-tools-mode.inspector-merge-mode .review-left-workspace{display:flex!important}.workspace-tools-mode.inspector-merge-mode .review-body{grid-template-columns:280px minmax(0,1fr) minmax(0,1fr)!important}.workspace-tools-mode .review-studio{max-width:1620px;border-radius:14px}.workspace-tools-mode .review-header{padding:18px 24px}.workspace-tools-mode .review-work-toolbar{background:#f8fafc}.workspace-tools-mode .review-work-toolbar button{visibility:hidden}.workspace-tools-mode .object-action-bar{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:1000px){.inspector-overlay{padding:6px}.inspector-header{gap:10px;padding:12px}.inspector-header h2{font-size:17px}.inspector-header>button{font-size:11px;padding:8px}.inspector-toolbar{padding:10px}.inspector-content{padding:14px}.inspector-footer{padding:12px;gap:5px}.inspector-footer>button{font-size:11px;padding:10px 8px}.workspace-groups{grid-template-columns:repeat(5,minmax(160px,1fr))}.workspace-group-description{padding:0 12px}}
@media(max-width:700px){.inspector-header{flex-wrap:wrap}.inspector-header>div{order:-1;flex:1 1 calc(100% - 55px)}#inspectorClose{order:-1}.inspector-header>button{padding:6px 9px}.inspector-body{grid-template-columns:1fr;grid-template-rows:minmax(160px,38%) minmax(0,1fr)}.inspector-source{border-right:0;border-bottom:1px solid #dde5ef}.inspector-image-stage{padding:8px}.inspector-source-caption{display:none}.inspector-toolbar{min-height:40px;padding:5px 10px}.inspector-content{padding:12px}.inspector-card p{font-size:14px}.inspector-footer{padding:10px}.inspector-footer details>div{right:10px;max-width:calc(100vw - 45px)}.workspace-tools-mode .review-body{grid-template-columns:1fr!important}.workspace-tools-mode .review-header{padding:12px}.workspace-tools-mode .review-header-actions{flex-wrap:wrap}.workspace-tools-mode #globalCreateKnowledge{font-size:11px}}

/* settings.css */
.settings-page{max-width:1130px;margin:0 auto}.settings-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.settings-heading h1{font-size:27px;margin:0}.settings-layout{display:grid;grid-template-columns:170px minmax(0,1fr);gap:28px}.settings-nav{display:flex;flex-direction:column;gap:6px}.settings-nav button{border:0;background:transparent;padding:12px;text-align:left;border-radius:7px;color:var(--muted)}.settings-nav button[aria-current=page]{background:var(--blue-soft);color:var(--blue);font-weight:600}.settings-content{padding:28px;min-width:0}.settings-content h2{margin:0 0 7px;font-size:21px}.settings-content p{margin:6px 0 18px}.settings-tabs{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:5px;background:var(--bg);padding:5px;border-radius:8px;margin:24px 0}.settings-tabs button{padding:12px 8px;background:transparent;border:1px solid transparent;border-radius:6px;color:var(--muted)}.settings-tabs button[aria-pressed=true]{background:#fff;border-color:var(--line);color:var(--blue)}.settings-field{display:flex;flex-direction:column;gap:7px;margin-top:17px;color:var(--text)}.settings-field input,.settings-field select{width:100%;padding:10px 12px;border:1px solid var(--line);border-radius:7px;min-height:42px;font:inherit;background:white}.settings-content input[type=checkbox]{accent-color:var(--blue);width:17px;height:17px}.settings-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}.settings-check{display:flex;align-items:center;gap:10px;margin:16px 0}.settings-content details{margin-top:24px;border-top:1px solid var(--line);padding-top:16px}.settings-content summary{color:var(--muted);cursor:pointer}.settings-actions{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.settings-actions>div{display:flex;gap:10px}.settings-result{margin:12px 0;color:var(--green);overflow-wrap:anywhere}.settings-result[data-error=true]{color:var(--red)}.settings-notice{padding:14px 16px;background:var(--blue-soft);border-radius:8px;margin:18px 0}.settings-warning{background:var(--orange-soft)}.settings-content table{width:100%;border-collapse:collapse}.settings-content td{padding:12px 0;border-bottom:1px solid var(--line)}.settings-content td:last-child{text-align:right}.settings-content pre{overflow:auto;max-height:360px;font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}.settings-journal{padding:16px 0;border-bottom:1px solid var(--line)}.category-tiles{display:flex;gap:12px;flex-wrap:wrap;margin:4px 0 22px}.category-tiles button{display:flex;gap:22px;align-items:center;background:white;border:1px solid var(--line);border-radius:9px;padding:14px 18px;min-width:160px;justify-content:space-between}.category-tiles button[aria-pressed=true]{background:var(--blue-soft);border-color:var(--blue);color:var(--blue)}.category-tiles strong{font-size:20px}.category-bulk{display:flex;align-items:center;gap:12px;padding:12px 24px;border-top:1px solid var(--line)}.doc-category{display:block;margin:5px 0 0 27px;font-size:12px;color:var(--muted)}.document-select{margin-right:10px;accent-color:var(--blue)}.settings-content [hidden]{display:none!important}.user-button{font-size:22px}.search-feedback-actions{font-size:12px;opacity:.8}.search-feedback-actions button{font-size:12px;font-weight:400}.source-conditions{border-left:3px solid var(--line);padding:0 0 0 14px;margin:16px 0;white-space:pre-line}.source-conditions strong{font-size:13px}.settings-content button{cursor:pointer}.settings-content button:disabled{cursor:default}
@media(max-width:800px){.settings-layout{grid-template-columns:1fr;gap:15px}.settings-nav{flex-direction:row;overflow:auto}.settings-content{padding:20px}.settings-tabs{grid-template-columns:1fr}.settings-pair{grid-template-columns:1fr}.category-tiles button{min-width:130px}.topbar{grid-template-columns:45px 1fr auto}}

/* Dimensions and colors from the approved portal-settings.html mockup. */
.settings-page{--bg:#f3f5f8;--text:#233349;--muted:#60728a;--line:#dde5ef;--blue:#245ce6;--blue-soft:#edf2ff;font:14px/1.5 "Segoe UI",Arial,sans-serif;max-width:1130px;color:var(--text)}
.settings-heading{margin-bottom:22px}.settings-heading h1{font-size:25px;font-weight:650;letter-spacing:-.35px}
.settings-layout{grid-template-columns:162px minmax(0,1fr);gap:26px}
.settings-nav{gap:7px}.settings-nav button{display:flex;gap:10px;align-items:center;min-height:40px;padding:10px 14px;font:600 14px "Segoe UI",Arial,sans-serif;color:var(--text)}
.settings-nav svg,.settings-actions svg{width:17px;height:17px;flex:none}.settings-nav button[aria-current=page]{color:var(--blue)}
.settings-content{padding:25px;border:1px solid var(--line);border-radius:10px;box-shadow:none;min-height:565px}
.settings-content h2{font-size:19px;font-weight:650;letter-spacing:-.2px;margin:0}.settings-content h3{font-size:15px;font-weight:650;margin:0}
.settings-content>p{margin:6px 0 0}.settings-tabs{gap:6px;padding:4px;margin:22px 0;border-radius:8px}
.settings-tabs button{min-height:41px;padding:9px 12px;font-size:13px;font-weight:600;color:var(--text)}
.settings-profile-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:18px}.settings-profile-head .muted{font-size:12px}
.settings-field{gap:6px;margin-top:15px;font-size:13px;font-weight:500}.settings-field input,.settings-field select{min-height:41px;border-radius:7px;padding:9px 11px;font:14px "Segoe UI",Arial,sans-serif}
.settings-field input:disabled{background:var(--bg);color:var(--muted)}.settings-pair{gap:14px}.settings-content details{margin-top:22px;padding-top:15px}
.settings-actions{margin-top:23px;padding-top:18px;align-items:center;gap:12px}.settings-actions button{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-size:14px;font-weight:500;min-height:41px;padding:9px 14px;border-radius:7px}
.settings-actions .primary-button{font-weight:600}.settings-actions .text-button{color:var(--muted);font-weight:500}.settings-result:empty{display:none}
.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:9px;background:#245ce6}.brand-mark svg{width:24px;height:24px;color:#fff}
.user-button{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;border:1px solid #dde5ef;background:#edf2ff;color:#245ce6;padding:8px}.user-button svg{width:19px;height:19px}
.category-tiles strong{font-size:14px;font-weight:600;white-space:nowrap}.category-tiles .category-add{min-width:45px;width:45px;justify-content:center;padding:10px;font-size:24px;color:var(--blue)}
.category-create-dialog{width:min(440px,90vw);border:1px solid var(--line);border-radius:12px;padding:24px}.category-create-dialog::backdrop{background:#23334955}
@media(max-width:800px){.settings-layout{grid-template-columns:1fr;gap:15px}.settings-nav{flex-direction:row;overflow:auto}.settings-content{padding:20px}.settings-tabs{grid-template-columns:1fr}.settings-pair{grid-template-columns:1fr}.settings-profile-head{align-items:flex-start;flex-direction:column;gap:6px}}

/* expert-material.css */

.expert-material{--ep-bg:light-dark(#f3f5f8,#17202e);--ep-panel:light-dark(#fff,#202d3e);--ep-text:light-dark(#23344b,#edf2f9);--ep-muted:light-dark(#65778d,#adbcd0);--ep-line:light-dark(#dce4ef,#384b63);--ep-soft:light-dark(#eef3ff,#273e68);--ep-blue:light-dark(#245ce6,#8bb0ff);--ep-green:light-dark(#278874,#70d1bb);--ep-amber:light-dark(#93650f,#ebc275);font:14px/1.6 Inter,Segoe UI,Arial,sans-serif;color:var(--ep-text);background:var(--ep-bg);min-width:0}
.expert-material *{box-sizing:border-box}.expert-material [hidden]{display:none!important}
.expert-material button,.expert-material input,.expert-material select{font:inherit;color:inherit}.expert-material button{border:1px solid var(--ep-line);border-radius:8px;padding:9px 14px;background:var(--ep-panel);font-weight:600}.expert-material button:hover{background:var(--ep-soft)}.expert-material button.ep-primary{background:#245ce6;color:#fff;border-color:#245ce6}.expert-material button.ep-link{border:0;padding:4px 0;background:transparent;color:var(--ep-blue);text-align:left}.expert-material button.ep-icon{padding:9px;display:grid;place-items:center;width:40px;height:40px;background:var(--ep-soft);color:var(--ep-blue)}
.expert-material .ep-note{padding:8px 24px;background:var(--ep-soft);font-size:12px;color:var(--ep-muted);display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.expert-material .ep-header{height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--ep-panel);border-bottom:1px solid var(--ep-line);padding:0 24px}.expert-material .ep-logo{width:36px;height:36px;border-radius:9px;background:#245ce6;color:#fff;display:grid;place-items:center;flex:none}.expert-material .ep-logo svg{width:24px;height:24px;stroke-width:4}.expert-material .ep-nav{display:flex;align-self:stretch;gap:16px}.expert-material .ep-nav button{display:flex;align-items:center;gap:8px;border:0;border-bottom:2px solid transparent;border-radius:0;padding:0 12px;background:transparent;color:var(--ep-muted)}.expert-material .ep-nav button[aria-current=page]{border-color:var(--ep-blue);color:var(--ep-blue)}.expert-material svg{width:18px;height:18px;flex:none}.expert-material .ep-health{color:var(--ep-green);font-size:12px}.expert-material .ep-tools{display:flex;align-items:center;gap:18px}
.expert-material main{padding:32px;max-width:1160px;margin:auto}.expert-material h1{font-size:28px;line-height:1.3;letter-spacing:-.4px;margin:8px 0 12px;font-weight:650}.expert-material h2{font-size:21px;line-height:1.4;margin:0 0 8px;font-weight:650}.expert-material h3{font-size:16px;line-height:1.4;margin:0 0 10px;font-weight:650}.expert-material p{margin:0 0 12px}.expert-material .ep-muted{color:var(--ep-muted)}.expert-material .ep-eyebrow{font-size:12px;color:var(--ep-muted);letter-spacing:1.1px;text-transform:uppercase}.expert-material .ep-search{max-width:900px;margin:0 auto 22px}.expert-material .ep-question{display:flex;align-items:center;gap:12px;padding:8px 8px 8px 16px;background:var(--ep-panel);border:1px solid var(--ep-line);border-radius:10px;margin-top:22px}.expert-material .ep-question input{min-width:0;flex:1;border:0;background:transparent;outline-offset:4px;padding:8px 0}.expert-material .ep-question>svg{color:var(--ep-muted)}.expert-material .ep-type-row{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}.expert-material .ep-type-row button{font-size:12px;padding:7px 11px;font-weight:400}.expert-material button[aria-pressed=true]{background:var(--ep-soft);border-color:var(--ep-blue);color:var(--ep-blue)}.expert-material .ep-filters{display:grid;grid-template-columns:2fr .8fr 1.2fr 1.2fr;gap:12px;margin-top:14px}.expert-material label{display:block;color:var(--ep-muted);font-size:12px}.expert-material label input,.expert-material label select{display:block;width:100%;margin-top:5px;background:var(--ep-panel);border:1px solid var(--ep-line);border-radius:7px;padding:9px;color:var(--ep-text);font-size:14px}.expert-material .ep-panel{background:var(--ep-panel);border:1px solid var(--ep-line);border-radius:12px;padding:26px}.expert-material .ep-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.expert-material .ep-rule{border:0;border-top:1px solid var(--ep-line);margin:22px 0}.expert-material .ep-meta{font-size:12px;color:var(--ep-muted);display:flex;gap:14px;flex-wrap:wrap}.expert-material .ep-tag{border-radius:6px;background:var(--ep-soft);color:var(--ep-blue);padding:4px 9px;font-size:12px;display:inline-block}.expert-material .ep-tag.ep-ok{color:var(--ep-green);background:light-dark(#eef8f4,#1e413d)}.expert-material .ep-tag.ep-warn{color:var(--ep-amber);background:light-dark(#fff8e8,#453b26)}.expert-material .ep-answer-section{margin-top:24px}.expert-material .ep-evidence{border-left:3px solid var(--ep-line);padding:0 0 0 16px;margin:12px 0}.expert-material .ep-source-link{color:var(--ep-blue);font-size:12px}.expert-material .ep-answer-layout{display:grid;grid-template-columns:minmax(0,1fr);gap:18px}.expert-material .ep-answer-layout.ep-with-source{grid-template-columns:minmax(0,1.5fr) minmax(230px,1fr)}.expert-material .ep-source{background:var(--ep-panel);border:1px solid var(--ep-line);border-radius:12px;padding:20px;align-self:start}.expert-material .ep-source blockquote{font-family:Georgia,serif;font-size:15px;margin:22px 0;color:var(--ep-text)}.expert-material .ep-gap{padding:14px 16px;background:light-dark(#faf8f2,#353228);border-radius:8px;color:var(--ep-text)}.expert-material .ep-gap p{margin:0}.expert-material .ep-footer{margin-top:20px;display:flex;gap:18px;align-items:center;flex-wrap:wrap;font-size:12px}.expert-material .ep-api{white-space:pre-wrap;overflow-wrap:anywhere;border-radius:8px;padding:16px;background:var(--ep-bg);font:12px/1.7 Consolas,monospace;margin:16px 0 0}
.expert-material .ep-doc-head{margin:18px 0 24px}.expert-material .ep-doc-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:20px}.expert-material .ep-outline{padding:6px 0}.expert-material .ep-outline button{width:100%;border:0;background:transparent;text-align:left;margin-bottom:8px;padding:12px}.expert-material .ep-outline button[aria-pressed=true]{background:var(--ep-soft);color:var(--ep-blue)}.expert-material .ep-outline small{display:block;font-weight:400;color:var(--ep-muted);margin-top:5px}.expert-material .ep-summary{border:1px solid var(--ep-line);border-radius:8px;padding:16px;margin-top:20px}.expert-material .ep-summary p:last-child{margin:0}.expert-material .ep-settings-layout{display:grid;grid-template-columns:190px minmax(0,1fr);gap:28px;margin-top:26px}.expert-material .ep-settings-nav div,.expert-material .ep-settings-nav button{display:flex;align-items:center;gap:12px;padding:12px;margin-bottom:8px;border:0}.expert-material .ep-settings-nav button{width:100%;color:var(--ep-blue);background:var(--ep-soft);text-align:left}.expert-material .ep-setting{display:flex;gap:16px;padding:24px 0;border-bottom:1px solid var(--ep-line);align-items:flex-start}.expert-material .ep-setting input{width:18px;height:18px;margin:4px 0;accent-color:#245ce6;flex:none}.expert-material .ep-setting label{font-size:15px;color:var(--ep-text)}.expert-material .ep-setting p{font-size:13px;margin:7px 0 0;color:var(--ep-muted)}.expert-material .ep-settings-footer{padding-top:24px;display:flex;justify-content:flex-end;gap:16px;align-items:center}.expert-material .ep-small{font-size:12px}.expert-material .ep-demo-switch{display:flex;gap:12px;align-items:center;font-size:12px;margin-bottom:18px;color:var(--ep-muted)}.expert-material .ep-demo-switch select{font-size:12px;padding:5px;border:1px solid var(--ep-line);border-radius:6px;background:var(--ep-panel)}
@media(max-width:700px){.expert-material main{padding:20px 14px}.expert-material .ep-header{padding:0 14px;gap:10px}.expert-material .ep-nav{gap:0}.expert-material .ep-nav button{padding:0 9px}.expert-material .ep-health{display:none}.expert-material .ep-filters{grid-template-columns:1fr 1fr}.expert-material .ep-doc-layout,.expert-material .ep-settings-layout,.expert-material .ep-answer-layout.ep-with-source{grid-template-columns:1fr}.expert-material .ep-outline{display:flex;gap:5px;flex-wrap:wrap}.expert-material .ep-outline button{width:auto;flex:1;min-width:130px}.expert-material .ep-settings-nav{display:flex;flex-wrap:wrap;gap:8px}.expert-material .ep-settings-nav div{display:none}.expert-material .ep-settings-nav button{width:auto}.expert-material h1{font-size:24px}.expert-material .ep-panel{padding:20px}.expert-material .ep-question{gap:8px}.expert-material .ep-question>svg{display:none}.expert-material .ep-question button{padding:9px}}
@media(max-width:420px){.expert-material .ep-nav svg{display:none}.expert-material .ep-nav button{font-size:13px;padding:0 8px}.expert-material .ep-header{padding:0 10px;gap:8px}.expert-material h1{overflow-wrap:anywhere}}

.search-refinements[hidden]{display:none!important} #searchFeedbackQueue{display:none!important}
#searchAnswerPanel{background:none;border:0;padding:0;margin:0} #searchResult.expert-result{background:none;border:0;box-shadow:none;padding:0} #searchResult.expert-result>.section-head{display:none} .expert-material .ep-source iframe{border:1px solid var(--ep-line);width:100%;height:560px;margin-top:16px} .expert-material .ep-source p{overflow-wrap:anywhere} .expert-material .ep-evidence p{white-space:pre-wrap} .expert-material .ep-outline{max-height:70vh;overflow:auto} .expert-material .ep-doc-layout>.ep-panel{min-width:0} .expert-material .ep-outline-body{max-height:65vh;overflow:auto} .expert-material .ep-answer-layout{align-items:start} .settings-tabs{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}

#searchView,#documentMaterialView{max-width:1160px;margin:auto}#searchView .search-hero{max-width:900px;padding-top:12px}#settingsContent>.expert-material{background:transparent}#searchView .search-hero{margin-bottom:22px}
.expert-material .ep-search-progress .ep-row{align-items:flex-start;gap:16px;flex-wrap:wrap}.expert-material .ep-search-time{font-variant-numeric:tabular-nums;white-space:nowrap;background:var(--ep-soft);color:var(--ep-blue);padding:7px 12px;border-radius:8px;min-width:78px;text-align:center}.expert-material .ep-progress-track{height:5px;border-radius:8px;background:var(--ep-soft);overflow:hidden;margin:24px 0}.expert-material .ep-progress-track span{display:block;height:100%;width:38%;border-radius:8px;background:linear-gradient(90deg,transparent,var(--ep-blue),transparent);animation:ep-search-scan 1.8s ease-in-out infinite}.expert-material .ep-progress-steps{display:flex;gap:24px;flex-wrap:wrap;padding:0;margin:0 0 20px;list-style:none;color:var(--ep-muted);font-size:14px}.expert-material .ep-progress-steps li{display:flex;gap:8px;align-items:center}.expert-material .ep-progress-steps li>span{display:grid;place-items:center;width:24px;height:24px;border:1px solid var(--ep-line);border-radius:50%;font-size:12px}.expert-material .ep-progress-steps [aria-current=step]{color:var(--ep-blue);font-weight:600}.expert-material .ep-progress-steps [aria-current=step]>span{background:var(--ep-soft);border-color:var(--ep-blue)}.expert-material .ep-progress-steps [data-complete]{color:var(--ep-green)}.expert-material .ep-search-duration{font-variant-numeric:tabular-nums}.expert-material [data-pending-question]{overflow-wrap:anywhere}@keyframes ep-search-scan{from{transform:translateX(-100%)}to{transform:translateX(365%)}}@media(prefers-reduced-motion:reduce){.expert-material .ep-progress-track span{animation:none;width:100%;opacity:.6}}@media(max-width:540px){.expert-material .ep-progress-steps{gap:12px;font-size:12px}.expert-material .ep-search-progress h2{font-size:18px}}
.search-form:has(#searchCancel) { grid-template-columns:28px minmax(0,1fr) auto auto; }
@media (max-width:600px) {
  .search-form:has(#searchCancel) > button[type="submit"] { display:none; }
  .search-form:has(#searchCancel) { grid-template-columns:28px minmax(0,1fr) auto; }
}
.ep-evidence-list {margin:12px 0;border:1px solid #dfe7f1;border-radius:10px;background:#fff;padding:16px 20px;}
.ep-evidence-list>summary {cursor:pointer;font-weight:600;color:#36516f;}
.ep-evidence-list .source-card {margin-top:16px;}
.ep-filter-notice {color:#755d30;font-size:13px;margin:12px 0;}

/* controls.css */
/* Approved Portal controls. Shared by search, documents, review and settings. */
:root {
  --control-blue:#245de3;
  --control-blue-text:#2254c9;
  --control-blue-soft:#edf3ff;
  --control-line:#e3e9f1;
  --control-ink:#243248;
  --control-danger:#b93c41;
  --control-danger-soft:#fff2f2;
  --control-green:#16775b;
}
:root :is(.primary-button,.outline-button,.success-button,.warning-button,.danger-outline-button) {
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:40px;padding:9px 14px;border:1px solid transparent;border-radius:8px;
  font:600 13px/20px "Segoe UI",Arial,sans-serif;text-decoration:none;
  transition:background .15s,border-color .15s,box-shadow .15s;
}
:root .primary-button {background:var(--control-blue);color:#fff;border-color:transparent;}
:root .primary-button:not(:disabled):hover {background:#2052c8;border-color:transparent;}
:root .outline-button {background:#fff;color:var(--control-ink);border-color:var(--control-line);}
:root .outline-button:not(:disabled):hover {background:#f4f5f7;border-color:#748299;}
:root .success-button {background:var(--control-green);color:#fff;border-color:transparent;}
:root .success-button:not(:disabled):hover {background:#13654d;border-color:transparent;}
:root .warning-button {background:#fff6e7;color:#99621d;border-color:transparent;}
:root .warning-button:not(:disabled):hover {background:#f9ebd2;border-color:transparent;}
:root .danger-outline-button {background:var(--control-danger-soft);color:var(--control-danger);border-color:transparent;font-weight:500;}
:root .danger-outline-button:not(:disabled):hover {background:#f7dee0;border-color:transparent;}
:root .documents-table .open-doc {background:var(--control-blue-soft);color:var(--control-blue-text);border-color:transparent;}
:root .documents-table .open-doc:not(:disabled):hover {background:#dbe7ff;border-color:transparent;}
:root .documents-table .open-doc::before {content:"→";font-size:16px;font-weight:500;}
:root :is(.primary-button,.outline-button,.success-button,.warning-button,.danger-outline-button):disabled {opacity:.45;cursor:default;}
:root :is(.primary-button,.outline-button,.success-button,.warning-button,.danger-outline-button):focus-visible {
  outline:3px solid #245de360;outline-offset:3px;
}
/* Navigation, status badges and disclosures retain their own geometry. */
:root :is(.icon-button,.filter-chip,.mini-chip,.review-mode-tab,.page-chip) {border-radius:8px;font-weight:600;}
:root .text-button {font-weight:600;color:var(--control-blue-text);}
:root .icon-button:not(:disabled):hover {background:#e7edf5;}
:root .object-action {
  min-height:40px;padding:9px 14px;border-radius:8px;border-color:var(--control-line);
  background:#fff;color:var(--control-ink);font:600 13px/20px "Segoe UI",Arial,sans-serif;
}
:root .object-action.boundary-action {background:var(--control-blue-soft);color:var(--control-blue-text);border-color:transparent;}
:root .object-action.danger-text {background:var(--control-danger-soft);color:var(--control-danger);border-color:transparent;font-weight:500;}
:root .expert-material button:not(.ep-link):not(.ep-icon) {
  min-height:40px;padding:9px 14px;border-radius:8px;border-color:var(--control-line);
  font:600 13px/20px "Segoe UI",Arial,sans-serif;
}
:root .expert-material button.ep-primary {background:var(--control-blue);color:#fff;border-color:transparent;}
:root .expert-material button.ep-primary:not(:disabled):hover {background:#2052c8;}
@media(pointer:coarse) {
  :root :is(.primary-button,.outline-button,.success-button,.warning-button,.danger-outline-button) {min-height:44px;}
}
@media(prefers-reduced-motion:reduce) {
  :root :is(.primary-button,.outline-button,.success-button,.warning-button,.danger-outline-button) {transition:none;}
}
