/* Approved operating layout. All displayed values are supplied by existing APIs. */
:root{--workspace-navy:#0d2238;--workspace-ground:#f5f8fc;--workspace-text:#142b42;--workspace-secondary:#4e6275}
body{background:var(--workspace-ground);font-size:14px;line-height:1.6;font-variant-numeric:tabular-nums}
::selection{background:#d5e5ff;color:#10263e}
input,textarea{caret-color:#235cd7}
button,a,input,select,textarea,summary{touch-action:manipulation}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #739cf4;outline-offset:3px}
button:disabled{opacity:.5;cursor:not-allowed;box-shadow:none}
.app-shell{grid-template-columns:216px minmax(0,1fr)}
.sidebar{width:216px;background:var(--workspace-navy);padding:24px 12px 12px}
.sidebar::before{display:none}
.sidebar .brand-lockup{padding:0 9px 28px;font-size:19px}
.sidebar nav{flex:1;display:flex;flex-direction:column;gap:8px;overflow:auto;scrollbar-color:#536d86 transparent}
.sidebar nav>button{min-height:48px;color:#c6d5e3;font-size:14px;grid-template-columns:28px 1fr;box-shadow:none;padding:12px;border-radius:8px}
.sidebar nav>button.active{background:#174a8c;color:#fff;box-shadow:none}
.sidebar nav>button:hover{background:#173a5e}
.sidebar nav>button span{display:flex;align-items:center;color:inherit}
.settings-nav{margin-top:auto}
.sidebar-boundary{font-size:12px;padding:16px 10px;border-color:#31475d}
.sidebar-boundary p,.sidebar-boundary div{color:#bdcfe0;font-size:12px}
.profile-card{border-color:#31475d;border-radius:8px;min-height:60px}
.profile-card b{font-size:14px}.profile-card small{font-size:12px;color:#b9cdde}
.topbar{height:68px;padding:0 26px;backdrop-filter:none;background:#fff;gap:16px}
.topbar p{font-size:16px}.workspace-tag{font-size:12px;color:var(--workspace-secondary)}
.top-actions{flex-wrap:wrap;justify-content:flex-end}
.top-actions .button,.compact-select{min-height:40px}
.monitoring-mode{background:#edf4ff;color:#2355a0;font-size:12px}
.content{max-width:1600px;margin:0 auto;padding:28px;min-width:0}
.page-head{margin-bottom:20px;gap:18px;align-items:center}
.page-head h1{font-size:30px;line-height:1.25;letter-spacing:-.02em;margin:0}
.page-head p{font-size:14px;color:var(--workspace-secondary);margin:7px 0 0}
.page-head .eyebrow{display:none}
.button{min-height:42px;border-radius:7px;font-size:14px;padding:9px 15px;box-shadow:none}
.button.primary,.button.primary:hover{box-shadow:none}
.button.secondary{border:1px solid #d2dfec;background:#fff}
.button:hover{box-shadow:none}
.text-link{display:inline-flex;align-items:center;gap:6px;min-height:38px;border:0;background:transparent;color:#2058ba;font:inherit;font-weight:600;cursor:pointer;padding:5px 0;text-align:left;text-decoration-thickness:1px;text-underline-offset:4px}
.text-link:hover{text-decoration:underline;color:#123f91}
.panel{background:#fff;border:1px solid #dce5ef;border-radius:12px;box-shadow:none;min-width:0;margin-bottom:20px}
.panel-head{min-height:60px;padding:16px 20px;gap:16px;align-items:center}
.panel-head h2{font-size:17px;line-height:1.5;margin:0}.panel-head p{font-size:13px;color:var(--workspace-secondary)}
.scope-bar{background:#fff;border:1px solid #dce5ef;border-radius:10px;padding:15px 18px;margin-bottom:20px}
.scope-bar form{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap}
.scope-bar label,.local-filters label{display:grid;gap:5px;color:var(--workspace-secondary);font-size:12px;font-weight:600;min-width:140px;flex:0 1 auto}
.scope-bar select,.scope-bar input,.local-filters select,.local-filters input{min-height:40px;max-width:100%;border:1px solid #d5dfeb;background:#fff;border-radius:6px;padding:8px 10px;color:var(--workspace-text);font-size:14px}
.scope-bar [name=batchId]{max-width:300px}.scope-bar .form-error{flex-basis:100%;margin:0}
.scope-source{align-self:center;margin-top:16px;padding:5px 9px;background:#eef5ff;color:#2055a0;border-radius:5px;font-size:12px}
.scope-caption{margin:10px 0 0;color:var(--workspace-secondary);font-size:12px;line-height:1.6}
[hidden]{display:none!important}
.workspace-tabs{display:flex;gap:22px;border-bottom:1px solid #dbe4ee;margin:0 0 22px;overflow:auto;white-space:nowrap;scrollbar-width:thin}
.workspace-tabs button{border:0;border-bottom:2px solid transparent;background:transparent;padding:11px 2px 13px;cursor:pointer;color:var(--workspace-secondary);font-size:14px;min-height:46px}
.workspace-tabs button[aria-current=page]{color:#2058ba;border-color:#235cd7;font-weight:650}
.finding-strip{display:flex;align-items:center;gap:18px;padding:15px 20px;border:1px solid #d9e7fa;background:#edf5ff;border-radius:10px;margin-bottom:16px}
.finding-strip strong{font-size:15px;white-space:nowrap}.finding-strip p{margin:0;flex:1;font-size:14px}.finding-strip small{font-size:12px;color:var(--workspace-secondary);white-space:nowrap}
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:20px}
.kpi-grid.compact-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
.kpi,.kpi:first-child,.kpi:last-child{min-height:122px;border:1px solid #dce5ef;border-radius:10px;padding:17px 20px;background:#fff;box-shadow:none}
.kpi::after{display:none}.kpi-top{font-size:14px;font-weight:600;color:#253b50}
.kpi h2{margin:10px 0 6px;font:650 34px/1.2 var(--body);letter-spacing:-.02em}
.kpi .formula{font-size:12px;line-height:1.6;color:var(--workspace-secondary)}
.workspace-columns{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:20px}
.workspace-columns.equal{grid-template-columns:repeat(2,minmax(0,1fr))}
.workspace-columns>.panel{min-width:0}
table{font-size:14px}th{font-size:12px!important;color:#4e6275!important;line-height:1.6}td{font-size:14px;line-height:1.6;padding:13px 16px}
td small{display:block;font-size:12px;line-height:1.6;color:var(--workspace-secondary);margin-top:4px}
.table-wrap{min-width:0;overflow:auto;scrollbar-width:thin}
.platform-comparison{min-width:560px}.platform-comparison td{padding:12px 18px}.platform-comparison small{display:inline;margin-left:7px}
.rate-track{display:inline-block;vertical-align:middle;width:clamp(55px,6vw,110px);height:9px;background:#e7eef5;border-radius:3px;margin-right:12px;overflow:hidden}
.rate-track i{display:block;height:100%;background:#2f79dc;min-width:0}
.priority-list{padding:0 20px 12px}.priority-item{display:block;text-align:left;width:100%;padding:13px 0;border:0;border-bottom:1px solid #e6edf4;background:transparent;cursor:pointer;font:inherit}
.priority-item:last-child{border-bottom:0}.priority-item strong{display:block;font-size:14px}.priority-item span{display:block;margin-top:4px;color:var(--workspace-secondary);font-size:12px}.priority-item:hover strong{color:#2058ba}
.summary-body{padding:0 20px 18px}.summary-body>strong{font-size:18px}.summary-body p{margin:8px 0;color:var(--workspace-secondary);font-size:14px}
.panel-footnote{padding:10px 20px;margin:0;color:var(--workspace-secondary);font-size:13px;line-height:1.7}
.data-quality-strip{display:flex;align-items:center;flex-wrap:wrap;gap:10px 20px;border:1px solid #dce5ef;background:#fff;border-radius:9px;padding:12px 20px;color:var(--workspace-secondary);font-size:13px}
.data-quality-strip strong{color:var(--workspace-text)}.data-quality-strip .text-link{margin-left:auto}
.scope-notes{margin:18px 0;font-size:13px;color:var(--workspace-secondary)}.scope-notes summary{cursor:pointer;padding:10px 0;min-height:40px}.scope-notes p{line-height:1.8}
.local-filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:12px;padding:16px 20px;border-bottom:1px solid #e3eaf1}
.local-filters input[type=search]{width:270px}.evidence-context{padding:12px 20px;background:#f5f9ff;display:flex;flex-wrap:wrap;align-items:center;gap:14px;font-size:13px}
.source-explorer{display:grid;grid-template-columns:235px minmax(0,1fr);gap:20px;align-items:start}
.source-domains{max-height:680px;overflow:auto;scrollbar-width:thin}
.source-domains .panel-head{position:sticky;top:0;z-index:2;background:#fff;border-bottom:1px solid #dce5ef}
.source-domains>.domain-choice:first-of-type{position:sticky;top:60px;z-index:2;border-bottom:1px solid #dce5ef}
.data-as-of{font-size:12px;color:var(--workspace-secondary);margin:-5px 0 15px;text-align:right}
.matrix-table{min-width:960px}
.matrix-table th:first-child,.matrix-table td:first-child{min-width:220px;width:260px}
.matrix-evidence.failed{color:#a02732;border-color:#eac4c9;background:#fff1f2}
.matrix-evidence.incomplete{color:#885315;border-color:#ead3b1;background:#fff7e8}
.matrix-evidence.recommended{color:#17634e;border-color:#bcded1;background:#eef8f3}
.domain-choice{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;padding:14px 18px;border:0;border-bottom:1px solid #e5edf5;background:#fff;text-align:left;color:var(--workspace-text);font:inherit;cursor:pointer;overflow-wrap:anywhere}
.domain-choice small{display:block;color:var(--workspace-secondary);font-size:12px;margin-top:3px}.domain-choice b{white-space:nowrap;font-size:13px}.domain-choice:hover{background:#f3f7fd}.domain-choice.selected{background:#eaf2ff;color:#174b99}
.source-article{display:flex;align-items:center;gap:20px;justify-content:space-between;padding:18px 20px;border-bottom:1px solid #e3eaf1;overflow-wrap:anywhere}.source-article>div{min-width:0}.source-article h3{margin:0;font-size:15px;font-weight:600;line-height:1.6}.source-article h3 a{color:#183f72;text-underline-offset:4px}.source-article p{margin:7px 0;color:var(--workspace-secondary);font-size:13px}.source-article>button{flex-shrink:0;font-size:13px}.source-article details{font-size:12px;color:var(--workspace-secondary)}
.matrix-evidence{min-height:38px;font:inherit;font-size:13px;white-space:nowrap;border:1px solid #d6e5f6;background:#f3f7ff;color:#1c509a;border-radius:5px;padding:6px 10px;cursor:pointer}.matrix-evidence:hover{background:#e5efff;border-color:#8fb0dc}
.settings-list>button{display:grid;grid-template-columns:200px 1fr 20px;gap:20px;width:100%;background:#fff;padding:22px;border:0;border-bottom:1px solid #e2eaf1;text-align:left;font:inherit;cursor:pointer;color:var(--workspace-text)}.settings-list>button span{color:var(--workspace-secondary)}.settings-list>button:hover{background:#f2f7ff}
.new-batch-disclosure{margin-bottom:20px;border:1px solid #cfdded;border-radius:10px;background:#fff}.new-batch-disclosure>summary{padding:16px 20px;cursor:pointer;font-weight:600;min-height:50px;color:#2356ac}.new-batch-disclosure>.panel{border:0;margin-bottom:0}
.collector-guide{margin:0}.collector-guide h2{font-size:16px}.collector-guide p{font-size:14px;line-height:1.8}
.empty{padding:32px 24px;font-size:14px}.empty p{max-width:65ch;margin:8px auto;color:var(--workspace-secondary);line-height:1.8}
.evidence-question{border-color:#dce5ef}.status-pill{font-size:12px;white-space:normal}.brand-evidence-table{min-width:720px}
dialog{border:0;border-radius:12px;box-shadow:0 18px 70px rgba(13,34,56,.22);max-height:94dvh}
dialog:has(.result-brand-analysis){width:min(960px,calc(100vw - 36px));margin-right:18px;margin-left:auto;animation:detail-enter .18s ease-out}
@keyframes detail-enter{from{transform:translateX(12px);opacity:.8}to{transform:translateX(0);opacity:1}}
.source-chip,.tag,.monitoring-mode{overflow-wrap:anywhere}
@media(min-width:761px){.sidebar-boundary{margin-top:12px}}
@media(max-width:1200px){.workspace-columns{grid-template-columns:minmax(0,1fr)}.workspace-columns.equal{grid-template-columns:repeat(2,minmax(0,1fr))}.finding-strip small{display:none}.topbar{padding:0 20px}.topbar .workspace-tag{display:none}.top-actions .monitoring-mode{display:none}}
@media(max-width:960px){.app-shell{grid-template-columns:196px minmax(0,1fr)}.sidebar{width:196px}.content{padding:22px}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.source-explorer{grid-template-columns:190px minmax(0,1fr)}.top-actions .tenant-create{display:none}.topbar{gap:8px}}
@media(max-width:760px){.app-shell{grid-template-columns:minmax(0,1fr)}main{grid-column:1}.sidebar{width:232px;transform:translateX(-100%)}.sidebar.open{transform:translateX(0)}.topbar{height:auto;min-height:66px;padding:12px 16px;align-items:center;position:sticky}.topbar>div{gap:9px}.topbar>.top-actions{display:flex;flex-wrap:wrap;max-width:65%;gap:8px}.top-actions .compact-select{max-width:155px;font-size:13px}.top-actions>.button.primary{font-size:13px;min-height:38px;padding:7px 10px}.icon-button{display:block;min-width:38px;min-height:42px}.content{padding:20px 16px}.page-head{align-items:flex-start}.page-head h1{font-size:27px}.page-head p{font-size:13px}.page-head>.text-link{white-space:nowrap}.scope-bar{padding:12px}.scope-bar form{gap:10px}.scope-bar label{flex:1 1 135px;min-width:0}.scope-bar select,.scope-bar input{width:100%;font-size:16px}.scope-bar .scope-source{display:none}.scope-caption{font-size:12px}.scope-bar [name=batchId]{max-width:none}.scope-bar .form-error{flex-basis:100%}.kpi-grid.compact-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi,.kpi:first-child,.kpi:last-child{padding:16px;min-height:120px}.kpi-top{font-size:13px}.kpi h2{font-size:30px}.finding-strip{display:block;padding:14px 16px}.finding-strip strong{display:block;margin-bottom:6px}.workspace-columns,.workspace-columns.equal{grid-template-columns:minmax(0,1fr);gap:0}.workspace-tabs{gap:20px}.source-explorer{grid-template-columns:minmax(0,1fr);gap:0}.source-domains{max-height:260px;overflow:auto}.source-article{display:block}.source-article>button{margin-top:9px}.local-filters{padding:14px}.local-filters label{flex:1 1 130px;min-width:0}.local-filters input[type=search]{width:100%}.local-filters input,.local-filters select{font-size:16px;min-width:0;width:100%}.data-quality-strip{gap:9px 14px;padding:14px}.data-quality-strip .text-link{margin-left:0}.settings-list>button{grid-template-columns:1fr 20px;gap:8px;padding:18px}.settings-list>button span:first-of-type{grid-column:1}.settings-list>button span:last-of-type{grid-column:2;grid-row:1/3}.source-explorer .panel-head{padding:14px 18px}.panel-head h2{font-size:16px}.brand-evidence-table{min-width:720px}.scope-bar [data-scope-date],.scope-bar [data-scope-batch]{flex-basis:100%}dialog:has(.result-brand-analysis){width:calc(100vw - 20px);margin:10px;max-height:calc(100dvh - 20px)}.topbar .monitoring-mode{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
