:root{--nav:#071523;--nav-2:#0a1d2e;--panel:#fff;--bg:#edf3f7;--ink:#102231;--muted:#687b8b;--line:#dbe5eb;--cyan:#14b8c8;--cyan2:#67e8f9;--gold:#f6b73c;--red:#dc3545;--amber:#f59e0b;--green:#18a768;--violet:#7c5cff;--blue:#3b82f6;--shadow:0 18px 55px rgba(6,28,45,.12);--shadow2:0 8px 24px rgba(6,28,45,.09);--radius:18px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:radial-gradient(circle at 75% 0,#e3fbff 0,transparent 24%),var(--bg);color:var(--ink);min-height:100vh}.ambient{position:fixed;pointer-events:none;border-radius:50%;filter:blur(70px);opacity:.24;z-index:-1}.ambient-a{width:300px;height:300px;background:#45ddea;right:12%;top:8%}.ambient-b{width:320px;height:320px;background:#ffd56a;left:22%;bottom:4%}.app-shell{min-height:100vh;display:grid;grid-template-columns:270px minmax(0,1fr)}.sidebar{position:fixed;inset:0 auto 0 0;width:270px;background:linear-gradient(180deg,#071523,#071827 58%,#05101c);padding:24px 18px;display:flex;flex-direction:column;color:#d9e9f1;z-index:20;box-shadow:10px 0 35px rgba(5,20,32,.12)}.brand-block{display:flex;align-items:center;gap:12px;padding:4px 8px 24px}.sentinel-logo{width:49px;height:49px;padding:7px;border-radius:14px;background:linear-gradient(145deg,rgba(103,232,249,.13),rgba(246,183,60,.1));border:1px solid rgba(103,232,249,.22);box-shadow:inset 0 0 22px rgba(103,232,249,.07)}.sentinel-logo svg{width:100%;height:100%}.brand-block strong{display:block;color:#fff;font-size:17px;letter-spacing:.2px}.brand-block span{font-size:11px;color:#83a2b5;text-transform:uppercase;letter-spacing:1.35px}.main-nav{display:grid;gap:6px}.nav-item{border:0;background:transparent;color:#8eacbd;border-radius:12px;padding:12px 13px;display:flex;align-items:center;gap:12px;font-weight:650;text-align:left;cursor:pointer;transition:.22s}.nav-item svg{width:19px}.nav-item:hover{background:rgba(255,255,255,.055);color:#e8f6fb;transform:translateX(2px)}.nav-item.active{color:#fff;background:linear-gradient(90deg,rgba(20,184,200,.22),rgba(20,184,200,.06));box-shadow:inset 3px 0 #31d1de}.privacy-card{margin-top:auto;display:flex;gap:10px;padding:14px;border:1px solid rgba(103,232,249,.13);border-radius:14px;background:rgba(10,36,54,.62)}.privacy-card svg{width:19px;color:#67e8f9;flex:none}.privacy-card strong{display:block;font-size:12px;color:#e3f7fb}.privacy-card span{display:block;margin-top:4px;font-size:10px;line-height:1.45;color:#7595a9}.version{font-size:9px;color:#4f7085;text-align:center;margin-top:15px;letter-spacing:.5px}.main{grid-column:2;min-width:0}.topbar{position:sticky;top:0;z-index:15;background:rgba(244,248,251,.87);backdrop-filter:blur(18px);border-bottom:1px solid rgba(176,196,207,.55);min-height:92px;padding:13px 28px 15px;display:grid;grid-template-columns:minmax(260px,1fr) auto;grid-template-rows:27px 1fr;column-gap:20px}.menu-bar{grid-column:1/-1;display:flex;align-items:center;gap:5px;font-size:12px}.menu-wrap{position:relative}.menu-trigger{border:0;background:transparent;padding:5px 8px;border-radius:6px;color:#536b7b;cursor:pointer}.menu-trigger:hover,.menu-trigger.active{background:#dfe9ef;color:#102231}.menu-popover{display:none;position:absolute;top:31px;left:0;width:270px;background:#fff;border:1px solid var(--line);border-radius:13px;padding:7px;box-shadow:0 22px 65px rgba(6,28,45,.22);z-index:50}.menu-popover.open{display:block;animation:menuIn .15s ease-out}.menu-popover button{width:100%;border:0;background:transparent;padding:10px;border-radius:8px;display:flex;gap:10px;align-items:center;text-align:left;color:#233b4b;cursor:pointer}.menu-popover button:hover{background:#eef6f8}.menu-popover svg{width:17px}.menu-popover kbd{margin-left:auto;font:10px inherit;color:#8a9aa6}.menu-divider{height:1px;background:#e7edf1;margin:5px}.session-name{margin-left:10px;color:#8b9ca8}.dirty-dot{width:7px;height:7px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 4px rgba(246,183,60,.15)}.page-heading h1{margin:0;font-size:23px;letter-spacing:-.45px}.page-heading p{margin:2px 0 0;color:var(--muted);font-size:12px}.top-actions{display:flex;align-items:center;gap:9px}.btn,.icon-btn{border:0;border-radius:10px;padding:10px 15px;font-weight:750;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.2s}.btn svg,.icon-btn svg{width:17px;height:17px}.btn.primary{background:linear-gradient(135deg,#0e9fac,#16c0cc);color:white;box-shadow:0 8px 22px rgba(20,184,200,.25)}.btn.primary:hover{transform:translateY(-1px);box-shadow:0 11px 27px rgba(20,184,200,.32)}.btn.ghost,.icon-btn{background:white;color:#304a5b;border:1px solid var(--line)}.btn.glass{background:rgba(255,255,255,.09);color:white;border:1px solid rgba(255,255,255,.16)}.btn.danger{background:var(--red);color:#fff}.btn.xl{padding:13px 20px;border-radius:12px}.btn.compact{padding:8px 12px;font-size:12px}.icon-btn{width:39px;height:39px;padding:0}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none!important}.danger-text{color:#b92638!important}.view{display:none;padding:26px 28px 50px;animation:viewIn .26s ease}.view.active{display:block}.hero-panel{min-height:340px;border-radius:24px;padding:40px 44px;background:linear-gradient(115deg,#071523 0,#0a2537 64%,#0c3344);color:white;display:grid;grid-template-columns:1.1fr .9fr;overflow:hidden;position:relative;box-shadow:0 25px 65px rgba(4,24,38,.22)}.hero-panel:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(103,232,249,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(103,232,249,.035) 1px,transparent 1px);background-size:28px 28px;mask-image:linear-gradient(90deg,#000,transparent 90%)}.hero-copy{position:relative;z-index:2;align-self:center;max-width:690px}.overline,.panel-kicker{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;font-weight:800}.overline{color:#67e8f9;display:flex;align-items:center;gap:7px}.overline svg{width:14px}.hero-copy h2{font-size:41px;line-height:1.06;letter-spacing:-1.5px;margin:17px 0}.hero-copy p{color:#9eb8c7;line-height:1.7;max-width:670px;margin:0 0 25px}.hero-actions{display:flex;gap:10px}.hero-visual{position:relative;min-height:265px;display:grid;place-items:center}.radar-orbit{position:absolute;border:1px solid rgba(103,232,249,.18);border-radius:50%}.orbit-1{width:110px;height:110px}.orbit-2{width:190px;height:190px}.orbit-3{width:275px;height:275px}.radar-sweep{position:absolute;width:260px;height:260px;border-radius:50%;background:conic-gradient(from 10deg,rgba(103,232,249,.33),transparent 23%);animation:sweep 5s linear infinite}.radar-core{z-index:2;width:82px;height:82px;border-radius:50%;display:grid;place-items:center;background:rgba(5,22,34,.92);border:1px solid rgba(103,232,249,.38);box-shadow:0 0 38px rgba(103,232,249,.28)}.radar-core svg{width:45px}.radar-core path:first-child{fill:none;stroke:#67e8f9;stroke-width:3}.radar-core path:last-child{fill:none;stroke:#f6b73c;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.floating-tag{position:absolute;z-index:3;padding:9px 12px;border-radius:10px;background:rgba(10,38,56,.82);border:1px solid rgba(103,232,249,.16);backdrop-filter:blur(8px);display:flex;gap:8px;align-items:center;font-size:11px;color:#c4dbe7;box-shadow:0 10px 25px rgba(0,0,0,.16)}.floating-tag svg{width:15px;color:#67e8f9}.tag-a{top:8%;left:4%;animation:float 4.6s ease-in-out infinite}.tag-b{right:0;top:38%;animation:float 5.2s ease-in-out infinite reverse}.tag-c{left:12%;bottom:4%;animation:float 5.8s ease-in-out infinite}.kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:13px;margin:17px 0}.metric-card{position:relative;overflow:hidden;background:#fff;border:1px solid #dce7ed;border-radius:16px;padding:17px;min-height:126px;display:grid;grid-template-columns:42px 1fr;gap:11px;box-shadow:var(--shadow2)}.metric-card:after{content:"";position:absolute;width:90px;height:90px;border-radius:50%;right:-35px;bottom:-42px;background:currentColor;opacity:.055}.metric-icon{width:39px;height:39px;border-radius:11px;display:grid;place-items:center;background:color-mix(in srgb,currentColor 12%,white)}.metric-icon svg{width:19px}.metric-card span{display:block;font-size:11px;color:#718492;font-weight:700}.metric-card strong{display:block;font-size:29px;letter-spacing:-1px;margin-top:2px;color:#132938}.metric-card small{font-size:9px;color:#95a5b0}.metric-card.cyan{color:var(--cyan)}.metric-card.red{color:var(--red)}.metric-card.amber{color:var(--amber)}.metric-card.green{color:var(--green)}.metric-card.violet{color:var(--violet)}.metric-card.blue{color:var(--blue)}.sparkline{position:absolute;right:12px;bottom:12px;width:55px;height:26px;background:linear-gradient(180deg,rgba(20,184,200,.16),transparent);clip-path:polygon(0 85%,15% 60%,30% 75%,48% 25%,65% 46%,82% 6%,100% 23%,100% 100%,0 100%)}.mini-ring{position:absolute;right:13px;bottom:13px;width:39px;height:39px;border-radius:50%;display:grid;place-items:center;font-size:9px;font-weight:850;color:#dc3545;background:conic-gradient(#dc3545 var(--ring,0%),#edf1f3 0);border:5px solid transparent}.green-ring{color:#18a768;background:conic-gradient(#18a768 var(--ring,0%),#edf1f3 0)}.pulse-bars{position:absolute;right:15px;bottom:14px;display:flex;gap:3px;align-items:end;height:27px}.pulse-bars b{width:4px;border-radius:3px;background:#f59e0b;animation:bars 1.4s ease-in-out infinite}.pulse-bars b:nth-child(1){height:9px}.pulse-bars b:nth-child(2){height:22px;animation-delay:.2s}.pulse-bars b:nth-child(3){height:14px;animation-delay:.4s}.pulse-bars b:nth-child(4){height:25px;animation-delay:.6s}.score-meter{position:absolute;right:14px;bottom:16px;width:56px;height:5px;background:#ecedf2;border-radius:5px;overflow:hidden}.score-meter span{height:100%;display:block;width:0;background:linear-gradient(90deg,#7c5cff,#aa93ff);transition:width .8s}.alert-beacon{position:absolute;right:20px;bottom:21px;width:13px;height:13px;background:#3b82f6;border-radius:50%;box-shadow:0 0 0 0 rgba(59,130,246,.5);animation:beacon 2s infinite}.dashboard-grid{display:grid;grid-template-columns:1fr 1.25fr 1.35fr;gap:16px}.lower-grid{grid-template-columns:1.6fr .8fr;margin-top:16px}.panel{background:rgba(255,255,255,.95);border:1px solid rgba(210,224,231,.95);border-radius:var(--radius);box-shadow:var(--shadow2);padding:20px}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:16px}.panel-head h2{font-size:16px;margin:3px 0 0}.panel-head p{font-size:11px;color:var(--muted);margin:5px 0 0}.panel-kicker{color:#7990a0}.live-pill,.secure-pill{font-size:9px;border-radius:20px;padding:6px 9px;background:#e9fbf5;color:#14794f;display:flex;align-items:center;gap:6px;font-weight:800}.live-pill b{width:6px;height:6px;border-radius:50%;background:#18a768;animation:blink 1.3s infinite}.secure-pill{color:#087b88;background:#e5fbfd}.secure-pill svg{width:13px}.chart-wrap{height:235px;position:relative}.chart-centre{pointer-events:none;position:absolute;inset:0;display:grid;place-content:center;text-align:center}.chart-centre strong{font-size:29px}.chart-centre span{font-size:9px;text-transform:uppercase;letter-spacing:1px;color:#8a9aa5}.line-chart-wrap{height:235px}.trend-label{font-size:10px;color:#80939f}.recent-panel{min-width:0}.link-btn{border:0;background:transparent;color:#0b9ead;font-weight:750;display:flex;align-items:center;gap:5px;cursor:pointer}.link-btn svg{width:14px}.empty-state.luxe{min-height:175px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8a9ba6;text-align:center;border:1px dashed #d7e2e8;border-radius:14px;background:linear-gradient(145deg,#fbfdfe,#f5f9fb)}.empty-state.luxe svg{width:26px;color:#a5bac6}.empty-state.luxe strong{margin-top:8px;color:#5e7483}.empty-state.luxe span{font-size:11px;margin-top:3px}.risk-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.risk-tile{position:relative;padding:15px;border-radius:13px;background:linear-gradient(145deg,#f8fbfd,#edf5f8);border:1px solid #dce7ec;overflow:hidden}.risk-tile:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(#f59e0b,#dc3545)}.risk-tile span{font-size:10px;color:#657b89}.risk-tile strong{font-size:24px;display:block;margin-top:4px}.risk-tile small{font-size:9px;color:#91a1ab}.diagnostic-list{display:grid;gap:12px}.diagnostic-list>div{display:flex;align-items:center;justify-content:space-between;padding-bottom:10px;border-bottom:1px solid #edf1f3}.diagnostic-list span{display:flex;gap:8px;align-items:center;font-size:11px;color:#526a79}.diagnostic-list svg{width:15px}.diagnostic-list b{font-size:10px}.status-ok{color:#168957}.status-private{color:#0b9aaa}.review-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:17px}.review-workspace{display:grid;gap:16px}.premium-upload{overflow:hidden}.dropzone{position:relative;min-height:245px;border:1.5px dashed #9ed8de;border-radius:17px;background:radial-gradient(circle at 50% 35%,#f1feff,#f8fbfd 70%);display:flex;flex-direction:column;align-items:center;justify-content:center;color:#6c8391;cursor:pointer;transition:.25s}.dropzone:hover,.dropzone.dragover{border-color:#14b8c8;background:#eafcfe;transform:translateY(-1px);box-shadow:inset 0 0 35px rgba(20,184,200,.07)}.dropzone strong{font-size:17px;color:#234253;margin-top:12px}.dropzone>span{font-size:11px;margin:4px 0 13px}.drop-graphic{height:64px;position:relative;width:80px}.doc-stack span{position:absolute;width:43px;height:54px;border-radius:7px;border:1px solid #9fd6dc;background:white;left:18px;top:5px;box-shadow:0 7px 18px rgba(20,98,110,.1)}.doc-stack span:nth-child(1){transform:rotate(-10deg);left:10px}.doc-stack span:nth-child(3){transform:rotate(10deg);left:26px}.upload-arrow{position:absolute;left:31px;top:18px;width:29px;height:29px;border-radius:50%;display:grid;place-items:center;color:white;background:linear-gradient(135deg,#11a8b5,#37d7e2);box-shadow:0 7px 18px rgba(20,184,200,.3)}.upload-arrow svg{width:17px}.file-queue{display:grid;gap:8px;margin-top:12px}.file-row{padding:11px 13px;border:1px solid var(--line);border-radius:11px;display:flex;align-items:center;justify-content:space-between;background:#fbfdfe}.file-row>div{display:flex;align-items:center;gap:10px}.file-row .file-icon{width:34px;height:34px;border-radius:9px;background:#ffecef;color:#d33b4a;display:grid;place-items:center}.file-row .file-icon svg{width:17px}.file-row strong{font-size:11px;display:block}.file-row small{font-size:9px;color:#8c9da7;display:block}.file-row button{border:0;background:#f1f5f7;color:#687d89;border-radius:7px;padding:6px 8px;cursor:pointer}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.form-grid label,.settings-grid label{font-size:10px;font-weight:800;color:#55707f;display:grid;gap:6px}.form-grid input,.form-grid select,.settings-grid input,.search,.rule-filter-row select{border:1px solid #d5e1e7;border-radius:9px;padding:11px 12px;background:#fbfdfe;color:#173040;outline:0}.form-grid input:focus,.form-grid select:focus,.settings-grid input:focus,.search:focus{border-color:#4bc9d3;box-shadow:0 0 0 3px rgba(20,184,200,.1)}.action-row{display:flex;gap:9px;justify-content:flex-end}.analysis-console{background:linear-gradient(160deg,#071724,#0b2738);color:white;border:1px solid rgba(103,232,249,.13)}.analysis-header{display:grid;grid-template-columns:45px 1fr auto;align-items:center;gap:12px}.analysis-header span{font-size:9px;text-transform:uppercase;letter-spacing:1.5px;color:#65dce6}.analysis-header h2{font-size:16px;margin:3px 0}.analysis-header>strong{font-size:25px;color:#67e8f9}.scanner-icon{height:43px;width:43px;border-radius:12px;background:rgba(103,232,249,.09);display:grid;place-items:center;color:#67e8f9}.scanner-icon svg{animation:scanPulse 1.6s infinite}.progress{height:8px;background:rgba(255,255,255,.08);border-radius:9px;overflow:hidden;margin:18px 0 10px}.progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,#1bb7c4,#67e8f9,#f6b73c);transition:width .35s}.engine-stages{display:grid;grid-template-columns:repeat(5,1fr);gap:7px}.engine-stages span{font-size:9px;text-align:center;padding:6px;border-radius:6px;color:#66899d;background:rgba(255,255,255,.035)}.engine-stages span.active{color:#bdf8fc;background:rgba(20,184,200,.13)}.engine-stages span.done{color:#76e3b3;background:rgba(24,167,104,.12)}.progress-log{height:95px;overflow:auto;margin-top:10px;border-top:1px solid rgba(255,255,255,.07);padding-top:8px;font:10px ui-monospace,SFMono-Regular,Consolas;color:#789aad}.decision-card{position:relative;display:grid;grid-template-columns:76px 1fr 145px;align-items:center;gap:20px;border-radius:20px;padding:25px 28px;background:linear-gradient(120deg,#0b2435,#0c3043);color:#fff;overflow:hidden;box-shadow:0 18px 45px rgba(6,28,45,.18)}.decision-card:after{content:"";position:absolute;width:240px;height:240px;border-radius:50%;right:-100px;top:-105px;background:currentColor;opacity:.08}.decision-card.reject{color:#ff6d7d;background:linear-gradient(120deg,#2b1017,#4a1821)}.decision-card.conditional{color:#ffc453;background:linear-gradient(120deg,#2b210e,#44300b)}.decision-card.accept{color:#57e59f;background:linear-gradient(120deg,#0b281c,#0d3d28)}.decision-emblem{width:70px;height:70px;border-radius:19px;display:grid;place-items:center;background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.1)}.decision-emblem svg{width:36px;height:36px}.decision-copy{color:#fff}.eyebrow{font-size:9px;letter-spacing:1.6px;text-transform:uppercase;opacity:.65;font-weight:800}.decision-copy h2{font-size:25px;margin:5px 0}.decision-copy p{font-size:11px;line-height:1.55;color:rgba(255,255,255,.72);margin:0}.decision-meta{display:flex;gap:15px;margin-top:11px;font-size:9px;color:rgba(255,255,255,.48)}.score-ring{position:relative;width:125px;height:125px}.score-ring svg{width:100%;height:100%;transform:rotate(-90deg)}.ring-bg,.ring-value{fill:none;stroke-width:9}.ring-bg{stroke:rgba(255,255,255,.1)}.ring-value{stroke:currentColor;stroke-linecap:round;stroke-dasharray:326.7;stroke-dashoffset:326.7;transition:stroke-dashoffset 1s ease}.score-ring>div{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;color:white}.score-ring strong{font-size:25px}.score-ring span{font-size:8px;text-transform:uppercase;letter-spacing:1px;opacity:.55}.results-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin:12px 0}.results-kpis>div{background:#fff;border:1px solid #dbe5ea;border-radius:12px;padding:12px;text-align:center}.results-kpis span{font-size:9px;text-transform:uppercase;color:#82949f;font-weight:800}.results-kpis strong{display:block;font-size:21px;margin-top:3px}.result-toolbar{display:flex;justify-content:space-between;align-items:center;margin:13px 0}.filters,.toolbar-actions{display:flex;gap:7px}.chip{border:1px solid #dbe5ea;background:white;color:#607785;border-radius:20px;padding:7px 11px;font-size:10px;font-weight:800;cursor:pointer}.chip.active{background:#0d2b3d;color:white;border-color:#0d2b3d}.results-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:15px}.findings-list{display:grid;gap:9px;max-height:690px;overflow:auto;padding-right:4px}.finding{position:relative;border:1px solid #dce5ea;border-radius:13px;padding:14px 15px 14px 18px;background:#fff;cursor:pointer;transition:.18s}.finding:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:13px 0 0 13px;background:#80919b}.finding.critical:before{background:#dc3545}.finding.major:before{background:#f05a66}.finding.moderate:before{background:#f59e0b}.finding.minor:before{background:#718592}.finding:hover,.finding.selected{transform:translateY(-1px);box-shadow:0 10px 24px rgba(6,28,45,.1);border-color:#b7d2da}.finding-head{display:flex;gap:10px;justify-content:space-between}.finding h3{font-size:12px;margin:0}.finding p{font-size:10px;color:#667b88;line-height:1.5;margin:8px 0 0}.badge{display:inline-flex;align-items:center;border-radius:20px;padding:4px 8px;font-size:8px;text-transform:uppercase;letter-spacing:.4px;font-weight:900;background:#edf2f4;color:#647986}.badge.critical{background:#ffe9ec;color:#bb2735}.badge.major{background:#fff0ef;color:#cf3d42}.badge.moderate{background:#fff3d8;color:#a96500}.badge.minor{background:#edf1f3;color:#5f7481}.evidence-panel{min-height:450px}.evidence-meta{display:flex;gap:6px}.evidence-panel h3{font-size:15px}.evidence-panel p{font-size:11px;color:#627986}.evidence-quote{border-left:3px solid #18b4c1;background:#effbfc;border-radius:0 10px 10px 0;padding:13px;font:10px/1.55 ui-monospace,SFMono-Regular,Consolas;color:#3d5969}.review-aside{display:grid;align-content:start;gap:14px}.sticky{position:sticky;top:108px}.sticky-mini{position:sticky;top:600px}.coverage-list{display:grid;gap:8px}.coverage-item{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid #edf1f3}.coverage-item span:nth-child(2){font-size:10px;color:#526b79}.coverage-item small{font-size:8px;color:#93a2ab}.coverage-dot{width:8px;height:8px;border-radius:50%;background:#d4dee3}.coverage-dot.good{background:#18a768;box-shadow:0 0 0 4px rgba(24,167,104,.09)}.coverage-dot.warn{background:#f59e0b;box-shadow:0 0 0 4px rgba(245,158,11,.09)}.coverage-dot.bad{background:#dc3545;box-shadow:0 0 0 4px rgba(220,53,69,.09)}.session-summary{display:grid;gap:10px}.session-summary div{display:flex;justify-content:space-between;gap:10px}.session-summary span{font-size:9px;color:#82939e}.session-summary strong{font-size:9px;text-align:right;max-width:150px;overflow:hidden;text-overflow:ellipsis}.page-panel{min-height:550px}.table{width:100%;border-collapse:collapse;font-size:10px}.table th{text-align:left;text-transform:uppercase;letter-spacing:.55px;color:#81939f;font-size:8px;padding:10px;border-bottom:1px solid #dce6eb}.table td{padding:12px 10px;border-bottom:1px solid #edf2f4;color:#405968}.table tr:hover td{background:#f8fbfc}.table .table-actions{display:flex;gap:5px}.table .table-actions button{border:0;background:#edf4f6;border-radius:6px;padding:5px 7px;cursor:pointer;color:#58717f}.library-actions,.rule-stats,.rule-filter-row{display:flex;gap:9px;align-items:center}.search{width:280px}.search.wide{width:min(520px,100%)}.rule-stats span{font-size:9px;padding:8px 10px;border-radius:9px;background:#edf7f8;color:#527280}.rule-filter-row{justify-content:space-between;margin-bottom:15px}.rule-filter-row select{min-width:160px}.settings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-bottom:18px}.toggle-row{display:flex!important;align-items:center;gap:10px;padding:13px;border:1px solid #dce6eb;border-radius:12px;background:#f9fcfd}.toggle-row input{width:17px;height:17px}.toggle-row span{display:block}.toggle-row strong{display:block;color:#2f4b5b}.toggle-row small{display:block;font-weight:500;color:#8798a2;margin-top:3px}.toast{position:fixed;right:24px;bottom:24px;z-index:100;display:flex;gap:9px;align-items:center;background:#071c2a;color:white;padding:12px 16px;border-radius:11px;box-shadow:0 15px 40px rgba(3,18,28,.28);transform:translateY(110px);opacity:0;transition:.26s}.toast.show{transform:translateY(0);opacity:1}.toast svg{width:17px;color:#67e8f9}.modal-backdrop{position:fixed;inset:0;background:rgba(3,16,25,.62);display:grid;place-items:center;z-index:90;backdrop-filter:blur(4px)}.modal{width:min(420px,calc(100% - 30px));background:white;border-radius:18px;padding:27px;text-align:center;box-shadow:0 25px 80px rgba(0,0,0,.25)}.modal-icon{width:52px;height:52px;border-radius:50%;margin:auto;display:grid;place-items:center;background:#fff0d7;color:#dd8a00}.modal h3{margin:13px 0 6px}.modal p{font-size:11px;color:#667b88;line-height:1.55}.modal-actions{display:flex;justify-content:center;gap:9px;margin-top:19px}.hidden{display:none!important}@keyframes sweep{to{transform:rotate(360deg)}}@keyframes float{50%{transform:translateY(-8px)}}@keyframes bars{50%{height:6px;opacity:.5}}@keyframes beacon{70%{box-shadow:0 0 0 13px rgba(59,130,246,0)}}@keyframes blink{50%{opacity:.35}}@keyframes scanPulse{50%{transform:scale(1.18);opacity:.65}}@keyframes viewIn{from{opacity:0;transform:translateY(5px)}}@keyframes menuIn{from{opacity:0;transform:translateY(-4px)}}
@media(max-width:1350px){.kpi-grid{grid-template-columns:repeat(3,1fr)}.dashboard-grid{grid-template-columns:1fr 1fr}.recent-panel{grid-column:1/-1}.risk-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:1050px){.app-shell{grid-template-columns:82px 1fr}.sidebar{width:82px;padding:18px 11px}.brand-block>div:last-child,.nav-item span,.privacy-card div,.version{display:none}.brand-block{justify-content:center;padding-inline:0}.main{grid-column:2}.nav-item{justify-content:center;padding:13px}.privacy-card{justify-content:center;padding:13px}.review-layout{grid-template-columns:1fr}.review-aside{grid-template-columns:1fr 1fr}.sticky,.sticky-mini{position:static}.hero-panel{grid-template-columns:1fr}.hero-visual{display:none}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:static;width:auto;height:auto;flex-direction:row;align-items:center;padding:10px}.brand-block{padding:0 10px}.sentinel-logo{width:39px;height:39px}.main-nav{display:flex;overflow:auto}.privacy-card{display:none}.main{grid-column:auto}.topbar{position:static;padding:12px 15px;grid-template-columns:1fr}.menu-bar{display:none}.top-actions{margin-top:10px}.view{padding:15px}.hero-panel{padding:28px 22px}.hero-copy h2{font-size:31px}.kpi-grid,.dashboard-grid,.lower-grid,.form-grid,.results-grid,.settings-grid,.review-aside{grid-template-columns:1fr}.risk-grid{grid-template-columns:1fr 1fr}.decision-card{grid-template-columns:55px 1fr}.score-ring{grid-column:1/-1;margin:auto}.results-kpis{grid-template-columns:repeat(2,1fr)}.result-toolbar{align-items:flex-start;gap:10px;flex-direction:column}.filters{flex-wrap:wrap}.library-actions{width:100%;flex-direction:column}.search{width:100%}}
@media print{.sidebar,.topbar,.hero-panel,.result-toolbar,.review-aside,.upload-panel,.action-row{display:none!important}.main{grid-column:1}.view{display:none!important}.view.active{display:block!important;padding:0}.panel,.decision-card{box-shadow:none;break-inside:avoid}.results-grid{grid-template-columns:1fr}.findings-list{max-height:none;overflow:visible}}

/* APG surgical stability patch v2.1 */
.review-layout{align-items:start}
.review-aside{position:sticky;top:108px;align-self:start;max-height:calc(100vh - 126px);overflow:auto;padding-right:4px;scrollbar-width:thin}
.review-aside .sticky,.review-aside .sticky-mini{position:static;top:auto}
.review-aside .panel{min-width:0}
.coverage-list{max-height:52vh;overflow:auto;padding-right:4px}
.table-scroll{width:100%;overflow:auto;border-radius:12px}
.table-actions button{display:inline-flex!important;align-items:center;gap:5px;white-space:nowrap}
.table-actions button span{font-size:9px;font-weight:800}
.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}
.project-card{border:1px solid #dce6eb;border-radius:17px;padding:18px;background:linear-gradient(145deg,#fff,#f8fcfd);box-shadow:0 10px 28px rgba(6,28,45,.06)}
.project-card-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.project-card h3{margin:4px 0;font-size:16px}.project-card p{margin:0;color:#7b909d;font-size:10px}
.project-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin:16px 0}
.project-stats div{background:#edf5f7;border-radius:10px;padding:10px;text-align:center}.project-stats span{display:block;font-size:8px;color:#80949f;text-transform:uppercase;font-weight:800}.project-stats strong{display:block;font-size:17px;margin-top:3px}
.project-actions{display:flex;gap:8px}
@media(max-width:1050px){.review-aside{position:static;max-height:none;overflow:visible}.coverage-list{max-height:none}.project-grid{grid-template-columns:1fr}}
@media(max-width:760px){.project-stats{grid-template-columns:repeat(2,1fr)}.project-actions{flex-direction:column}}

/* v2.2 secure access + active review intelligence */
body.auth-locked{overflow:hidden;background:#061521}
.app-shell.app-locked{visibility:hidden;pointer-events:none;user-select:none}
.login-screen{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:28px;background:radial-gradient(circle at 15% 15%,rgba(22,183,199,.16),transparent 32%),radial-gradient(circle at 82% 78%,rgba(245,178,45,.13),transparent 30%),linear-gradient(145deg,#04111c,#092638 58%,#061622);overflow:auto}
.login-screen:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(to bottom,black,transparent 90%)}
.login-shell{position:relative;width:min(1040px,100%);display:grid;grid-template-columns:1.15fr .85fr;overflow:hidden;border:1px solid rgba(152,226,236,.18);border-radius:28px;background:rgba(5,25,39,.82);box-shadow:0 36px 110px rgba(0,0,0,.55);backdrop-filter:blur(22px)}
.login-brand{position:relative;padding:68px 64px;min-height:610px;color:#fff;background:linear-gradient(145deg,rgba(17,75,94,.56),rgba(4,26,40,.38));overflow:hidden}
.login-brand:after{content:"";position:absolute;width:430px;height:430px;border:1px solid rgba(103,232,249,.11);border-radius:50%;right:-170px;bottom:-190px;box-shadow:0 0 0 65px rgba(103,232,249,.025),0 0 0 130px rgba(103,232,249,.018)}
.login-logo{width:78px;height:78px;margin-bottom:30px;filter:drop-shadow(0 0 22px rgba(103,232,249,.18))}
.login-brand .overline{display:inline-flex;align-items:center;gap:8px;color:#8cebf3;font-size:10px;letter-spacing:1.5px}.login-brand .overline svg{width:15px}
.login-brand h1{margin:18px 0 8px;font-size:48px;letter-spacing:-2px}.login-brand>p{max-width:480px;font-size:15px;line-height:1.7;color:rgba(235,249,252,.67)}
.login-intelligence{position:relative;z-index:1;display:grid;gap:13px;margin-top:52px;max-width:500px}.login-intelligence>div{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid rgba(155,229,238,.12);border-radius:14px;background:rgba(255,255,255,.035)}.login-intelligence svg{width:23px;color:#67e8f9}.login-intelligence strong,.login-intelligence small{display:block}.login-intelligence strong{font-size:11px}.login-intelligence small{margin-top:3px;font-size:9px;color:rgba(235,249,252,.52)}
.login-card{display:flex;flex-direction:column;justify-content:center;padding:58px 50px;background:#fff}.login-card h2{font-size:27px;margin:8px 0}.login-card>p{margin:0 0 27px;font-size:11px;color:#758894}.login-card label{display:block;margin-bottom:16px;color:#405766;font-size:10px;font-weight:800}.login-card input{margin-top:7px;width:100%;height:47px;border:1px solid #d6e2e7;border-radius:11px;padding:0 13px;font-size:13px;outline:0;transition:.18s}.login-card input:focus{border-color:#17aebd;box-shadow:0 0 0 4px rgba(23,174,189,.1)}
.password-wrap{position:relative}.password-wrap input{padding-right:46px}.password-wrap button{position:absolute;right:7px;top:14px;width:34px;height:34px;display:grid;place-items:center;border:0;border-radius:8px;background:#edf6f7;color:#54727d;cursor:pointer}.password-wrap button svg{width:16px}
.login-error{display:flex;align-items:center;gap:8px;margin:-2px 0 15px;padding:10px 12px;border-radius:9px;background:#fff0f2;color:#bd3340;font-size:10px;font-weight:700}.login-error svg{width:16px}.login-submit{width:100%;justify-content:center;margin-top:4px}.login-note{text-align:center;margin-top:21px;color:#98a6af;font-size:8px;letter-spacing:.7px;text-transform:uppercase}
.logout-btn{background:#fff1f2!important;border:1px solid #ffd7dc!important;color:#b82e3c!important}.logout-btn:hover{background:#ffe5e8!important}
.active-review-spotlight{position:relative;display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;gap:21px;align-items:center;margin:0 0 16px;padding:17px 20px;border-radius:18px;overflow:hidden;color:#fff;box-shadow:0 13px 32px rgba(4,25,39,.13)}
.active-review-spotlight.reject{background:linear-gradient(120deg,#38131b,#5a1c27)}.active-review-spotlight.conditional{background:linear-gradient(120deg,#39290e,#62440d)}.active-review-spotlight.accept{background:linear-gradient(120deg,#0d3827,#12613e)}
.active-review-spotlight:after{content:"";position:absolute;right:-30px;top:-95px;width:240px;height:240px;border-radius:50%;border:1px solid rgba(255,255,255,.08);box-shadow:0 0 0 38px rgba(255,255,255,.018),0 0 0 76px rgba(255,255,255,.012)}
.active-review-signal{position:relative;width:56px;height:56px;display:grid;place-items:center;border-radius:16px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.1)}.active-review-signal span{position:absolute;width:9px;height:9px;border-radius:50%;background:#7ef2c2;right:7px;top:7px;box-shadow:0 0 0 5px rgba(126,242,194,.12);animation:beacon 1.8s infinite}.active-review-signal svg{width:27px}
.active-review-copy{position:relative;z-index:1}.active-review-copy .panel-kicker{color:rgba(255,255,255,.54)}.active-review-copy h2{font-size:17px;margin:5px 0 3px}.active-review-copy p{margin:0;font-size:9px;color:rgba(255,255,255,.57)}
.active-review-metrics{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,minmax(62px,auto));gap:7px}.active-review-metrics div{padding:9px 11px;border-radius:10px;background:rgba(255,255,255,.065);text-align:center}.active-review-metrics span,.active-review-metrics strong{display:block}.active-review-metrics span{font-size:7px;text-transform:uppercase;letter-spacing:.65px;color:rgba(255,255,255,.5)}.active-review-metrics strong{margin-top:3px;font-size:12px;white-space:nowrap}
.active-review-spotlight .btn{position:relative;z-index:2;color:#fff;border-color:rgba(255,255,255,.15);white-space:nowrap}
@media(max-width:1050px){.active-review-spotlight{grid-template-columns:auto 1fr auto}.active-review-metrics{grid-column:1/-1;grid-template-columns:repeat(5,1fr)}}
@media(max-width:760px){.login-screen{padding:12px}.login-shell{grid-template-columns:1fr;border-radius:19px}.login-brand{display:none}.login-card{padding:38px 25px;min-height:560px}.active-review-spotlight{grid-template-columns:auto 1fr}.active-review-spotlight>.btn{grid-column:1/-1}.active-review-metrics{grid-template-columns:repeat(2,1fr)}.top-actions{flex-wrap:wrap}.logout-btn{margin-left:auto}}

/* v2.4 authentication hardening: prevent login markup ever entering app layout */
body:not(.auth-locked) #loginScreen{display:none!important}
body.auth-locked #applicationShell{display:none!important}
body:not(.auth-locked) #applicationShell{display:grid!important}
/* v2.6 surgical fixes */
.login-only{min-height:100vh;overflow:auto;background:#06111d}.standalone-login{display:grid!important;position:relative!important;inset:auto!important;min-height:100vh;z-index:1}.app-shell{display:grid!important}.document-matrix-panel{margin:18px 0}.document-review-matrix{display:grid;gap:10px}.document-outcome{display:grid;grid-template-columns:44px minmax(220px,1fr) auto auto;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line,#dce5ea);border-radius:15px;background:linear-gradient(135deg,#fff,#f8fbfc);box-shadow:0 8px 22px rgba(4,20,34,.05)}.document-outcome.reject{border-left:4px solid #dc3545}.document-outcome.conditional{border-left:4px solid #f59e0b}.document-outcome.accept{border-left:4px solid #168753}.document-outcome-icon{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#edf4f7}.document-outcome-main{min-width:0;display:flex;flex-direction:column}.document-outcome-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#102231}.document-outcome-main span{font-size:12px;color:#6b7d88;margin-top:3px}.document-outcome-stats{display:flex;gap:15px;font-size:11px;color:#73838d}.document-outcome-stats span{display:flex;flex-direction:column;align-items:center}.document-outcome-stats b{font-size:15px;color:#152b3a}.finding-document{display:block;color:#1d8ca0;text-transform:uppercase;letter-spacing:.08em;font-weight:800;margin-bottom:4px}@media(max-width:980px){.document-outcome{grid-template-columns:40px 1fr auto}.document-outcome-stats{grid-column:2/-1;justify-content:flex-start}.document-outcome>.badge{grid-column:3;grid-row:1/3}}@media(max-width:620px){.document-outcome{grid-template-columns:36px 1fr}.document-outcome>.badge{grid-column:2;grid-row:auto;justify-self:start}.document-outcome-stats{grid-column:1/-1;justify-content:space-around}}

/* v2.7 multi-RAMS clarity and Command Centre document intelligence */
.document-matrix-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.document-outcome{grid-template-columns:44px minmax(260px,1fr) minmax(300px,auto) auto}
.document-outcome-main small{font-size:8px;font-weight:900;letter-spacing:.1em;text-transform:uppercase;color:#1a93a4;margin-bottom:5px}
.document-outcome-main em{font-size:9px;font-style:normal;color:#96a5ad;margin-top:5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.document-outcome-stats{display:grid;grid-template-columns:repeat(4,minmax(62px,1fr));gap:7px}
.document-outcome-stats span{min-width:66px;padding:8px 9px;border-radius:9px;background:#eef5f7}
.document-outcome-actions{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.finding-document-group{display:grid;gap:9px;margin-bottom:18px;padding:12px;border:1px solid #e1e9ed;border-radius:14px;background:#f8fbfc}
.finding-group-head{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:2px 3px 6px}
.finding-group-head h3{margin:3px 0 0;font-size:14px;color:#102735}
.active-document-portfolio{margin:0 0 16px;background:linear-gradient(145deg,#ffffff,#f5fafb)}
.active-document-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:11px}
.active-document-card{appearance:none;width:100%;border:1px solid #dce7eb;border-left:4px solid #8ea4af;border-radius:14px;background:#fff;padding:14px;display:grid;grid-template-columns:34px minmax(0,1fr);gap:10px;text-align:left;cursor:pointer;box-shadow:0 7px 20px rgba(8,30,43,.05);transition:.18s ease;color:inherit}
.active-document-card:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(8,30,43,.1);border-color:#b9d7dd}
.active-document-card.reject{border-left-color:#dc3545}.active-document-card.conditional{border-left-color:#f59e0b}.active-document-card.accept{border-left-color:#18a768}
.active-document-card .doc-order{grid-row:1/4;width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:#eaf4f6;color:#157f8d;font-size:10px;font-weight:900}
.active-document-card>div:nth-child(2){min-width:0}.active-document-card small,.active-document-card strong,.active-document-card em{display:block}
.active-document-card small{font-size:8px;text-transform:uppercase;letter-spacing:.08em;color:#1a93a4;font-weight:900}
.active-document-card strong{font-size:12px;color:#102735;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.active-document-card em{font-size:8px;font-style:normal;color:#99a7ae;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.active-document-card .doc-kpis{grid-column:2;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:2px}
.active-document-card .doc-kpis span{padding:7px;border-radius:8px;background:#f0f6f7;font-size:8px;color:#71848e;text-align:center}
.active-document-card .doc-kpis b{display:block;color:#15303e;font-size:13px}
.active-document-card>.badge{grid-column:2;justify-self:start;margin-top:2px}
@media(max-width:1120px){.document-outcome{grid-template-columns:44px 1fr auto}.document-outcome-stats{grid-column:2/4}.document-outcome-actions{grid-column:3;grid-row:1/2}}
@media(max-width:720px){.document-matrix-head-actions{justify-content:flex-start}.document-outcome{grid-template-columns:38px 1fr}.document-outcome-stats,.document-outcome-actions{grid-column:1/-1}.document-outcome-actions{align-items:flex-start}.document-outcome-stats{grid-template-columns:repeat(2,1fr)}.active-document-cards{grid-template-columns:1fr}}

/* v2.8 forensic evidence presentation */
.evidence-determination,.evidence-action,.evidence-source{border:1px solid var(--line);border-radius:12px;padding:12px 14px;margin:12px 0;background:rgba(255,255,255,.72)}
.evidence-determination strong,.evidence-action strong{display:block;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:6px}
.evidence-determination span,.evidence-action span{display:block;line-height:1.55}
.evidence-action{border-left:4px solid #f59e0b}
.evidence-source{background:#f7fafb}
.evidence-source-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px;font-size:12px}
.evidence-source-head span{color:var(--muted);font-weight:700}
.evidence-calculation{font-weight:800;color:#8b1e2d;background:#fff1f2;border:1px solid #fecdd3;border-radius:8px;padding:9px 10px;margin:8px 0;font-variant-numeric:tabular-nums}
.evidence-quote{white-space:pre-wrap;line-height:1.55}

/* v2.9 — document KPI and risk-rating intelligence */
.risk-validation-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid var(--line,#e7edf0)}
.risk-summary-stat{padding:14px 16px;border-radius:14px;border:1px solid #e5ecef;background:#f8fafb;display:grid;gap:3px}
.risk-summary-stat span{font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#61747f}.risk-summary-stat strong{font-size:26px;line-height:1}.risk-summary-stat small{font-size:11px;color:#81919a}
.risk-summary-stat.valid{background:#eefaf4;border-color:#bcebd3}.risk-summary-stat.valid strong{color:#168a59}.risk-summary-stat.invalid{background:#fff1f2;border-color:#f3c1c7}.risk-summary-stat.invalid strong{color:#c92f42}.risk-summary-stat.unknown{background:#fff8e8;border-color:#f4dfac}.risk-summary-stat.unknown strong{color:#b67807}
.risk-status{display:inline-flex!important;align-items:center;justify-content:center;width:max-content;padding:4px 8px;border-radius:999px;font-size:10px!important;font-weight:800!important;line-height:1.15;text-transform:uppercase;letter-spacing:.035em;white-space:nowrap}
.risk-valid{color:#087849;background:#e6f8ef;border:1px solid #b8e8cf}.risk-invalid{color:#b42336;background:#fff0f1;border:1px solid #efbec5}.risk-unknown{color:#9a6700;background:#fff6dc;border:1px solid #efd995}
.document-outcome-stats .risk-status{grid-column:1/-1}.doc-kpis .risk-status{margin-top:2px}.document-intelligence-panel{grid-column:1/-1}.document-intel-table td:nth-child(2){min-width:260px}.document-intel-table td,.document-intel-table th{vertical-align:middle}
@media(max-width:900px){.risk-validation-summary{grid-template-columns:1fr}.document-intelligence-panel{grid-column:auto}}

.risk-detail{display:block;max-width:260px;color:#687d8b;font-size:9px;line-height:1.35;margin-top:3px}.document-outcome-stats .risk-detail,.doc-kpis .risk-detail{grid-column:1/-1}


/* v3.1 — elite fairness, task-risk assurance and dashboard hierarchy */
#view-dashboard .hero-panel + .active-review-spotlight{margin-top:22px}
.dashboard-grid>.document-intelligence-panel,.document-intelligence-panel{grid-column:1/-1!important;width:100%;min-width:0}
@media(max-width:900px){.dashboard-grid>.document-intelligence-panel,.document-intelligence-panel{grid-column:1/-1!important}}

.active-review-spotlight{margin-bottom:18px;border:1px solid rgba(255,255,255,.08);box-shadow:0 18px 44px rgba(4,25,39,.18)}
.active-review-metrics div:first-child{min-width:92px;background:rgba(255,255,255,.1)}
.active-review-metrics div:first-child strong{font-size:14px;letter-spacing:.02em}
.active-review-copy .panel-kicker{color:rgba(255,255,255,.62)}

.document-intelligence-panel{overflow:hidden}
.document-intelligence-panel .table-scroll{width:100%}
.document-intel-table{width:100%;table-layout:auto}
.document-intel-table .badge,.document-outcome-actions>.badge,.active-document-card>.badge,.project-card .badge{padding:7px 12px;font-size:10px;letter-spacing:.055em;box-shadow:0 4px 12px rgba(15,35,48,.08)}
.document-intel-table .badge.critical,.document-outcome-actions>.badge.critical,.active-document-card>.badge.critical{background:#d92f43;color:#fff;border:1px solid #bf2034;box-shadow:0 7px 18px rgba(217,47,67,.25)}
.document-intel-table .badge.moderate,.document-outcome-actions>.badge.moderate,.active-document-card>.badge.moderate{background:#f59e0b;color:#2d2106;border:1px solid #d98a05}

.risk-status{padding:6px 10px!important;font-size:10.5px!important;letter-spacing:.055em;box-shadow:0 3px 10px rgba(14,35,47,.05)}
.risk-status.risk-invalid{background:#d92f43;color:#fff;border-color:#bf2034;box-shadow:0 7px 18px rgba(217,47,67,.24)}
.risk-row-invalid{background:linear-gradient(90deg,rgba(217,47,67,.055),transparent 52%)}
.risk-row-invalid td:first-child{box-shadow:inset 4px 0 0 #d92f43}
.document-score{font-size:17px;color:#142d3b;font-variant-numeric:tabular-nums}

.risk-arithmetic-banner{display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:center;margin:0 0 16px;padding:16px 18px;border-radius:15px;border:1px solid;box-shadow:0 10px 28px rgba(8,30,43,.08);position:relative;overflow:hidden}
.risk-arithmetic-banner:after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;right:-72px;top:-76px;background:currentColor;opacity:.05}
.risk-arithmetic-banner .risk-banner-icon{width:44px;height:44px;border-radius:13px;display:grid;place-items:center;background:rgba(255,255,255,.7);border:1px solid rgba(255,255,255,.8)}
.risk-arithmetic-banner .risk-banner-icon svg{width:23px;height:23px}
.risk-arithmetic-banner span{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.12em;font-weight:900;opacity:.7}
.risk-arithmetic-banner strong{display:block;margin-top:3px;font-size:15px;color:#132d3b}
.risk-arithmetic-banner p{margin:4px 0 0;font-size:11px;line-height:1.5;color:#5f7481}
.risk-arithmetic-banner.invalid{color:#c62e41;background:linear-gradient(115deg,#fff0f2,#fff9fa);border-color:#efb5bd}
.risk-arithmetic-banner.valid{color:#13865a;background:linear-gradient(115deg,#edfaf4,#f8fffb);border-color:#b6e7ce}
.risk-arithmetic-banner.manual{color:#ad7306;background:linear-gradient(115deg,#fff7df,#fffdf6);border-color:#efd89c}

.document-outcome{position:relative;transition:.2s ease;border-width:1px}
.document-outcome:hover{transform:translateY(-1px);box-shadow:0 15px 32px rgba(9,31,43,.09)}
.document-outcome.reject{box-shadow:inset 4px 0 0 #d92f43,0 8px 22px rgba(9,31,43,.05)}
.document-outcome.conditional{box-shadow:inset 4px 0 0 #f59e0b,0 8px 22px rgba(9,31,43,.05)}
.document-outcome.accept{box-shadow:inset 4px 0 0 #18a768,0 8px 22px rgba(9,31,43,.05)}
.risk-validation-callout{grid-column:2/-1;display:grid;grid-template-columns:minmax(205px,.55fr) 1fr;gap:14px;align-items:center;padding:12px 14px;border-radius:12px;border:1px solid;margin-top:2px}
.risk-validation-callout>div{display:grid;grid-template-columns:22px 1fr;align-items:center;column-gap:8px}
.risk-validation-callout svg{grid-row:1/3;width:20px;height:20px}
.risk-validation-callout span{font-size:8px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;opacity:.68}
.risk-validation-callout strong{font-size:12px}
.risk-validation-callout p{margin:0;font-size:10px;line-height:1.45;color:#657985}
.risk-validation-callout.invalid{background:#fff1f3;border-color:#efbdc5;color:#bf263a}
.risk-validation-callout.valid{background:#eefaf4;border-color:#b9e8d0;color:#128155}
.risk-validation-callout.manual{background:#fff8e5;border-color:#efdca7;color:#9a6700}

.active-document-card.has-risk-error{background:linear-gradient(135deg,#fff,#fff5f6);border-color:#edc1c7;box-shadow:0 10px 26px rgba(195,38,57,.09)}
.active-document-card .doc-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}
.active-document-card .doc-kpis .risk-status{grid-column:1/-1;justify-self:start}
.active-document-card .doc-kpis .risk-detail{max-width:none}

.provenance-status{display:inline-flex!important;align-items:center;gap:5px;width:max-content;margin-top:7px;padding:4px 8px;border-radius:999px;font-size:8.5px!important;font-style:normal!important;font-weight:850!important;line-height:1.2;text-transform:uppercase;letter-spacing:.045em;white-space:nowrap}
.provenance-status svg{width:12px;height:12px}
.provenance-review{color:#9b3d16;background:#fff0e9;border:1px solid #f1c4b0}
.provenance-observe{color:#6f4aa2;background:#f4effb;border:1px solid #d8c9ec}
.provenance-clear{color:#187252;background:#edf8f3;border:1px solid #c4e6d5}
.document-intel-table .provenance-status{margin-top:6px}

.decision-card{border:1px solid rgba(255,255,255,.07);box-shadow:0 24px 58px rgba(6,28,45,.22)}
.decision-copy h2{font-size:28px;letter-spacing:-.45px}
.score-ring strong{font-variant-numeric:tabular-nums}
.results-kpis>div{background:linear-gradient(180deg,#fff,#f9fbfc);box-shadow:0 7px 18px rgba(8,30,43,.045)}
.results-kpis strong{font-variant-numeric:tabular-nums}

@media(max-width:760px){
  .risk-validation-callout{grid-column:1/-1;grid-template-columns:1fr}
  .risk-arithmetic-banner{grid-template-columns:40px 1fr;padding:14px}
  .risk-arithmetic-banner .risk-banner-icon{width:38px;height:38px}
}


/* v3.3 — surgical clarity, fair action curation and verified task arithmetic */
.risk-validation-summary{grid-template-columns:repeat(4,minmax(0,1fr))}
.risk-summary-stat.review{background:#eef5ff;border-color:#c9daf6}.risk-summary-stat.review strong{color:#3566a8}
.risk-scale{color:#315f9c;background:#edf4ff;border:1px solid #c5d8f5}
.risk-arithmetic-banner.review{color:#3566a8;background:linear-gradient(115deg,#eef5ff,#fbfdff);border-color:#c5d8f5}
.risk-validation-callout.review{background:#eef5ff;border-color:#c5d8f5;color:#315f9c}
.risk-validation-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.risk-validation-meta span{display:inline-flex;padding:4px 7px;border-radius:999px;background:rgba(255,255,255,.72);border:1px solid rgba(94,119,135,.14);font-size:8px;font-weight:850;text-transform:none;letter-spacing:.01em;color:#607582}
.fairness-note{display:inline-flex!important;align-items:center;gap:5px;width:max-content;max-width:100%;margin-top:7px;padding:4px 8px;border-radius:999px;background:#edf5f7;color:#607984!important;font-size:8px!important;font-weight:800!important;line-height:1.25}.fairness-note svg{width:11px;height:11px;flex:0 0 auto}
.provenance-status{padding:6px 10px;font-size:9.5px!important;font-weight:900!important;box-shadow:0 4px 12px rgba(13,36,49,.07)}
.provenance-review{color:#8f2815;background:#ffebe6;border-color:#edae9d}.provenance-observe{color:#68428f;background:#f3ecfb;border-color:#d4c0e9}.provenance-clear{color:#146d4d;background:#eaf8f1;border-color:#b8e1cc}

/* Latest run outcomes use a single aligned management row per RAMS. */
.active-document-cards{grid-template-columns:1fr;gap:10px}
.active-document-card{grid-template-columns:38px minmax(240px,1.25fr) minmax(245px,.72fr) minmax(250px,.9fr) auto;align-items:center;gap:14px;padding:15px 16px;min-height:118px}
.active-document-card .doc-order{grid-row:auto;width:34px;height:34px}
.active-document-card .active-doc-identity{min-width:0}.active-document-card .active-doc-identity strong{font-size:13px}.active-document-card .active-doc-identity em{font-size:9px}
.active-document-card .doc-kpis{grid-column:3;display:grid;grid-template-columns:repeat(3,minmax(68px,1fr));gap:7px;margin:0}
.active-document-card .doc-kpis span{min-height:48px;display:grid;place-items:center;align-content:center;padding:8px}
.active-document-card .active-doc-risk{grid-column:4;min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:10px 12px;border-radius:11px;background:#f6fafb;border:1px solid #e4edef}
.active-document-card .active-doc-risk .risk-status{align-self:flex-start}.active-document-card .active-doc-risk .risk-detail{max-width:none;margin-top:7px;text-transform:none;letter-spacing:0;font-weight:600;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.active-document-card>.badge{grid-column:5;justify-self:end;margin:0;min-width:92px}
.active-document-card.has-risk-error .active-doc-risk{background:#fff1f3;border-color:#efbdc5}
.document-intel-table td:last-child{min-width:330px}.document-intel-table td:last-child small{display:block;max-width:520px;margin-top:6px;line-height:1.45;color:#687d8b}
.document-outcome-stats span:first-child b{color:#186f7b}
@media(max-width:1200px){.active-document-card{grid-template-columns:38px minmax(220px,1fr) minmax(230px,.8fr) auto}.active-document-card .doc-kpis{grid-column:3}.active-document-card .active-doc-risk{grid-column:2/4}.active-document-card>.badge{grid-column:4;grid-row:1}}
@media(max-width:820px){.risk-validation-summary{grid-template-columns:repeat(2,1fr)}.active-document-card{grid-template-columns:36px 1fr}.active-document-card .active-doc-identity{grid-column:2}.active-document-card .doc-kpis,.active-document-card .active-doc-risk,.active-document-card>.badge{grid-column:1/-1}.active-document-card>.badge{grid-row:auto;justify-self:start}.document-intel-table td:last-child{min-width:260px}}
@media(max-width:520px){.risk-validation-summary{grid-template-columns:1fr}.active-document-card .doc-kpis{grid-template-columns:repeat(3,1fr)}}

/* v3.3 — management-grade prioritisation and explicit task-figure proof */
.risk-figure-equation{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:0 0 8px;padding:8px 10px;border-radius:9px;background:rgba(255,255,255,.78);border:1px solid rgba(108,126,137,.16);font-variant-numeric:tabular-nums}
.risk-figure-equation span{display:inline-flex;align-items:center;gap:4px;font-size:9px;font-weight:800;color:#647985}
.risk-figure-equation b{color:#bd263a;font-size:13px}.risk-figure-equation strong{color:#147550;font-size:13px}.risk-figure-equation>svg{width:14px;height:14px;color:#8da0aa}
.risk-figure-equation em{flex-basis:100%;font-size:8.5px;font-style:normal;font-weight:800;color:#657b87;letter-spacing:.01em}
.risk-figure-equation.verified strong{color:#147550}.risk-figure-equation.manual strong{color:#8a640c}
.active-document-card{border-radius:15px;overflow:hidden}
.active-document-card .active-doc-risk{min-height:88px}
.active-document-card .active-doc-risk .risk-figure-equation{margin-top:8px;margin-bottom:5px;padding:6px 8px}
.active-document-card .active-doc-risk .risk-detail{-webkit-line-clamp:2}
.active-document-card>.badge{min-width:108px;min-height:34px;justify-content:center;font-size:9.5px;font-weight:950;letter-spacing:.045em}
.active-document-card .doc-kpis span{border:1px solid #e7eef1;background:linear-gradient(180deg,#fff,#f7fafb);border-radius:10px}
.active-document-card .doc-kpis b{font-size:15px;font-variant-numeric:tabular-nums}
.active-document-card .active-doc-identity>.fairness-note{background:#e9f3f5;border:1px solid #d6e7eb}
.document-outcome .risk-figure-equation{max-width:540px}
.document-outcome-actions .badge{min-width:104px;justify-content:center;font-size:10px;padding:8px 11px}
.provenance-status{font-size:10px!important;letter-spacing:.055em;padding:7px 11px;box-shadow:0 6px 15px rgba(13,36,49,.09)}
@media(min-width:1201px){.active-document-card{grid-template-columns:42px minmax(280px,1.35fr) minmax(255px,.72fr) minmax(320px,.95fr) 116px}.active-document-card .doc-kpis{align-self:stretch}.active-document-card .doc-kpis span{height:100%}}

/* v3.4 guided site-manager experience */
.guided-start-card{background:linear-gradient(135deg,#071d2c,#0d3448);color:#fff;border:1px solid rgba(103,232,249,.2);box-shadow:0 20px 45px rgba(6,28,45,.18)}
.guided-start-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.guided-start-head h2{margin:5px 0 6px;font-size:23px}.guided-start-head p{margin:0;color:#a8c2cf;line-height:1.55}.mode-switch{display:flex;background:rgba(255,255,255,.08);padding:4px;border-radius:12px;border:1px solid rgba(255,255,255,.1)}.mode-switch button{border:0;background:transparent;color:#9db8c5;font-weight:800;padding:8px 13px;border-radius:9px;cursor:pointer}.mode-switch button.active{background:#fff;color:#0b2a3c;box-shadow:0 6px 18px rgba(0,0,0,.16)}
.guided-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:18px}.guided-step{display:grid;grid-template-columns:35px 1fr auto;align-items:center;gap:10px;padding:13px;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:rgba(255,255,255,.045)}.guided-step>span{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:rgba(103,232,249,.12);color:#67e8f9;font-weight:900}.guided-step strong,.guided-step small{display:block}.guided-step small{color:#8fabb9;margin-top:3px;line-height:1.35}.guided-step b{font-size:9px;text-transform:uppercase;letter-spacing:.7px;color:#7693a3}.guided-step.active{border-color:rgba(103,232,249,.5);background:rgba(103,232,249,.09)}.guided-step.done>span{background:rgba(87,229,159,.16);color:#57e59f}.guided-step.done b{color:#57e59f}.guided-promise{display:flex;gap:10px;align-items:center;margin-top:13px;padding:11px 13px;border-radius:11px;background:rgba(255,255,255,.055);color:#c8dce5;font-size:11px}.guided-promise svg{width:19px;color:#57e59f;flex:none}.guided-mode .advanced-review-field{display:none}.expert-mode .guided-steps,.expert-mode .guided-promise{display:none}
.strengths-panel{border-color:#ccebdd;background:linear-gradient(180deg,#fff,#f7fffb)}.badge.positive{background:#e3f8ed;color:#117a4e}.strengths-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.strength-card{padding:13px;border:1px solid #d9eee4;border-radius:12px;background:#fff}.strength-card-head{display:flex;align-items:center;gap:8px}.strength-card-head svg{width:17px;color:#18a768}.strength-card strong{font-size:11px}.strength-card p{font-size:10px;color:#627986;line-height:1.5;margin:7px 0 0}.strength-empty{grid-column:1/-1;padding:18px;text-align:center;color:#758894;background:#f8fbfc;border:1px dashed #d7e3e8;border-radius:12px}
.evidence-quote{font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif!important;font-size:11px!important;line-height:1.72!important;letter-spacing:.005em;word-spacing:.06em;overflow-wrap:anywhere;white-space:pre-wrap}.evidence-source{box-shadow:0 6px 18px rgba(6,28,45,.045)}.evidence-source-head strong{font-size:12px}.evidence-source-head span{max-width:65%;text-align:right;overflow-wrap:anywhere}
:focus-visible{outline:3px solid #22c5d1;outline-offset:3px}
@media(max-width:1000px){.guided-steps,.strengths-grid{grid-template-columns:1fr}.guided-start-head{flex-direction:column}.mode-switch{align-self:flex-start}}

/* v3.5 — Executive Clarity experience */
:root{--elite-cyan:#43d9e6;--elite-green:#2bc781;--elite-amber:#f4b740;--elite-ink:#071b29}
body{background:radial-gradient(circle at 80% -5%,rgba(67,217,230,.08),transparent 30%),#f2f6f8}
.hero-panel{position:relative;overflow:hidden}.hero-panel:after{content:"";position:absolute;width:420px;height:420px;border-radius:50%;right:-160px;top:-220px;background:radial-gradient(circle,rgba(103,232,249,.22),rgba(103,232,249,0) 68%);pointer-events:none}
.panel{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.panel:hover{border-color:#cbdde4}.guided-start-card:hover,.executive-brief:hover{transform:none}
.trust-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.trust-strip>span{display:grid;grid-template-columns:28px 1fr;column-gap:9px;align-items:center;padding:12px;border-radius:12px;background:rgba(255,255,255,.055);border:1px solid rgba(255,255,255,.09)}.trust-strip svg{grid-row:1/3;width:19px;color:#67e8f9}.trust-strip b,.trust-strip small{display:block}.trust-strip b{font-size:10px;color:#fff}.trust-strip small{font-size:9px;color:#91adba;line-height:1.35;margin-top:2px}
.upload-readiness{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-bottom:12px}.upload-readiness>div{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid #dce8ed;border-radius:12px;background:linear-gradient(180deg,#fff,#f8fbfc)}.upload-readiness svg{width:18px;color:#168fa0}.upload-readiness span,.upload-readiness b,.upload-readiness small{display:block}.upload-readiness b{font-size:10px;color:#294b5d}.upload-readiness small{font-size:9px;color:#7d929e;line-height:1.35;margin-top:2px}.dropzone{min-height:245px;border-width:2px;background:radial-gradient(circle at 50% 15%,rgba(67,217,230,.11),transparent 34%),linear-gradient(180deg,#fbfeff,#f3fafc)}.dropzone:hover,.dropzone:focus-visible{transform:translateY(-2px);box-shadow:0 18px 42px rgba(9,53,73,.1);border-color:#55cad6}
.executive-brief{background:linear-gradient(135deg,#061c2a,#0b3548);color:white;border-color:rgba(103,232,249,.22);box-shadow:0 22px 55px rgba(5,28,43,.2);overflow:hidden;position:relative}.executive-brief:after{content:"";position:absolute;inset:auto -120px -180px auto;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(67,217,230,.14),transparent 70%);pointer-events:none}.executive-brief-head{display:flex;justify-content:space-between;gap:22px;align-items:flex-start;position:relative;z-index:1}.executive-brief h2{font-size:24px;margin:5px 0 5px}.executive-brief-head p{color:#a9c1cc;margin:0;line-height:1.55}.review-confidence{min-width:225px;padding:13px 15px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.06)}.review-confidence span,.review-confidence strong,.review-confidence small{display:block}.review-confidence span{font-size:8px;text-transform:uppercase;letter-spacing:.75px;color:#91adba}.review-confidence strong{font-size:17px;margin:5px 0;color:#fff;font-variant-numeric:tabular-nums}.review-confidence small{font-size:9px;line-height:1.4;color:#a9c1cc}.confidence-high strong{color:#61e5a6}.confidence-good strong{color:#67e8f9}.confidence-moderate strong{color:#ffd06d}.confidence-limited strong{color:#ff8c96}.briefing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-top:17px;position:relative;z-index:1}.briefing-card{padding:15px;border-radius:14px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.1);min-height:130px}.briefing-card>span{display:flex;gap:7px;align-items:center;font-size:8px;text-transform:uppercase;letter-spacing:.7px;color:#91adba;font-weight:900}.briefing-card svg{width:16px}.briefing-card.good svg{color:#57e59f}.briefing-card.action svg{color:#ffbf55}.briefing-card.human svg{color:#67e8f9}.briefing-card strong{display:block;font-size:13px;line-height:1.35;margin:10px 0 6px}.briefing-card p{font-size:10px;line-height:1.55;color:#b1c7d1;margin:0}
.result-view-switch{display:flex;gap:3px;padding:4px;background:#eaf1f4;border:1px solid #d8e4e9;border-radius:11px}.result-view-switch button{display:flex;align-items:center;gap:6px;border:0;background:transparent;color:#718591;font-size:9px;font-weight:900;padding:7px 10px;border-radius:8px;cursor:pointer}.result-view-switch button svg{width:14px}.result-view-switch button.active{background:#fff;color:#173d50;box-shadow:0 5px 14px rgba(9,42,58,.1)}
.manager-results .evidence-meta .badge.neutral:last-child{display:none}.manager-results .finding p:first-of-type{color:#607783}.manager-results .evidence-determination strong:after{content:" — why this matters";text-transform:none;letter-spacing:0;font-weight:600}.technical-results .finding-document,.technical-results .evidence-meta .badge.neutral:last-child{display:inline-flex}.manager-results .finding-document{display:none}
.finding{border-radius:14px!important;box-shadow:0 7px 20px rgba(9,40,55,.035)}.finding.selected{transform:translateX(3px);box-shadow:0 14px 30px rgba(9,40,55,.09)}.evidence-source{border-left:3px solid #7ed8e1}.evidence-quote{background:#fff;border-radius:9px;padding:11px;border:1px solid #e3ecef}
@media(max-width:1000px){.trust-strip,.upload-readiness,.briefing-grid{grid-template-columns:1fr}.executive-brief-head{flex-direction:column}.review-confidence{min-width:0;width:100%}}
@media(max-width:760px){.result-view-switch{order:2}.executive-brief h2{font-size:21px}.briefing-card{min-height:0}}
@media(prefers-reduced-motion:reduce){.panel,.dropzone,.finding{transition:none!important}}

/* v3.6 — Assurance Command Centre */
.assurance-command-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:16px;margin:16px 0}
.task-risk-module,.compliance-explain-panel,.fairness-panel,.revision-panel{box-shadow:0 14px 34px rgba(7,36,52,.065)}
.task-risk-module{border-top:3px solid #32c7d5}.task-risk-module-body{display:grid;gap:12px}
.task-risk-hero{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:center;padding:15px;border-radius:14px;background:linear-gradient(135deg,#071e2d,#0c3b4d);color:#fff}
.task-risk-hero-icon{width:58px;height:58px;border-radius:17px;display:grid;place-items:center;background:rgba(103,232,249,.12);border:1px solid rgba(103,232,249,.22)}.task-risk-hero-icon svg{width:27px;color:#67e8f9}.task-risk-hero strong{font-size:16px;display:block}.task-risk-hero p{font-size:10px;line-height:1.55;color:#a9c2cd;margin:5px 0 0}
.task-risk-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.task-risk-fact{padding:12px;border:1px solid #dce9ed;border-radius:12px;background:#fbfdfe}.task-risk-fact span,.task-risk-fact strong,.task-risk-fact small{display:block}.task-risk-fact span{font-size:8px;text-transform:uppercase;letter-spacing:.65px;color:#82949d;font-weight:900}.task-risk-fact strong{font-size:18px;margin:5px 0;color:#143e51}.task-risk-fact small{font-size:9px;color:#70848f;line-height:1.4}
.task-risk-error-list{display:grid;gap:8px}.task-risk-error{display:grid;grid-template-columns:1fr auto;gap:12px;padding:12px;border-radius:12px;border:1px solid #f0c9cc;background:#fff8f8}.task-risk-error strong{display:block;font-size:11px}.task-risk-error p{font-size:9.5px;color:#6d7e87;margin:4px 0 0}.task-risk-error code{align-self:center;font-size:12px;font-weight:900;color:#b32635;background:#fff;border:1px solid #f0d4d7;padding:8px 10px;border-radius:9px}
.category-compliance{display:grid;gap:9px}.category-row{display:grid;grid-template-columns:minmax(130px,1fr) 2fr 48px;gap:10px;align-items:center}.category-row>span{font-size:9.5px;font-weight:800;color:#345666}.category-track{height:9px;border-radius:99px;background:#e8eff2;overflow:hidden}.category-track i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#25b8c6,#36cf8b)}.category-row b{text-align:right;font-size:11px;font-variant-numeric:tabular-nums;color:#173f51}
.suppressed-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.suppressed-card{padding:13px;border:1px solid #d9ece3;border-radius:13px;background:linear-gradient(180deg,#fff,#f7fcfa)}.suppressed-card span{display:flex;align-items:center;gap:7px;font-size:10px;font-weight:900;color:#16734c}.suppressed-card svg{width:16px;color:#24b674}.suppressed-card p{font-size:9.5px;line-height:1.5;color:#617985;margin:7px 0 0}.suppressed-empty{grid-column:1/-1;padding:14px;border:1px dashed #d8e5e9;border-radius:12px;color:#718590;text-align:center;font-size:10px}
.revision-comparison{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.revision-stat{padding:13px;border-radius:13px;border:1px solid #dce8ed;background:#fbfdfe}.revision-stat span,.revision-stat strong,.revision-stat small{display:block}.revision-stat span{font-size:8px;text-transform:uppercase;letter-spacing:.6px;color:#82949d;font-weight:900}.revision-stat strong{font-size:22px;margin:5px 0;color:#163e50}.revision-stat small{font-size:9px;color:#718590}.closeout-summary{display:flex;gap:9px;flex-wrap:wrap;margin-top:11px}.closeout-chip{padding:9px 11px;border-radius:10px;background:#edf4f6;color:#315363;font-size:9.5px;font-weight:850}.closeout-chip b{font-size:12px;margin-right:4px}
.reviewer-decision{margin-top:14px;padding:13px;border-radius:13px;background:#f5f9fa;border:1px solid #dce7eb}.reviewer-decision>strong{display:block;font-size:10px;color:#294d5e;margin-bottom:9px}.reviewer-options{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.reviewer-options button{border:1px solid #d6e3e8;background:#fff;padding:8px;border-radius:9px;font-size:8.5px;font-weight:850;color:#526d79;cursor:pointer}.reviewer-options button.active{border-color:#1eafbd;background:#e9f9fb;color:#0c7781}.reviewer-reason{width:100%;min-height:62px;margin-top:8px;border:1px solid #d6e3e8;border-radius:9px;padding:9px;font:inherit;font-size:10px;resize:vertical}.reviewer-save-row{display:flex;justify-content:flex-end;margin-top:8px}
.score-method{margin-top:10px;padding:11px;border-radius:11px;background:#f3f8fa;border:1px solid #dce8ed;font-size:9.5px;line-height:1.55;color:#5d7480}
@media(max-width:1100px){.assurance-command-grid{grid-template-columns:1fr}.suppressed-checks{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.task-risk-facts,.revision-comparison,.suppressed-checks,.reviewer-options{grid-template-columns:1fr}.category-row{grid-template-columns:1fr 52px}.category-track{grid-column:1/-1;grid-row:2}.task-risk-hero{grid-template-columns:1fr}.task-risk-hero-icon{width:48px;height:48px}}


/* v3.7 — surgical outcome alignment, evidence spacing and matrix exclusion */
.document-outcome{
  grid-template-columns:44px minmax(300px,1fr) minmax(390px,1.08fr) 132px;
  grid-template-areas:
    "icon identity metrics actions"
    ". risk risk risk";
  align-items:start;
  column-gap:16px;
  row-gap:13px;
  padding:17px 18px;
}
.document-outcome-icon{grid-area:icon;align-self:center}
.document-outcome-main{grid-area:identity;align-self:center}
.document-outcome-stats{grid-area:metrics;display:grid;grid-template-columns:repeat(4,minmax(78px,1fr));gap:8px;align-self:center;width:100%}
.document-outcome-stats span{min-width:0;min-height:58px;padding:9px 8px;display:flex;align-items:center;justify-content:center;text-align:center;line-height:1.22}
.document-outcome-stats b{line-height:1;font-variant-numeric:tabular-nums;margin-bottom:4px}
.document-outcome-actions{grid-area:actions;align-self:center;align-items:stretch;width:132px}
.document-outcome-actions .badge,.document-outcome-actions .btn{width:100%}
.risk-validation-callout{grid-area:risk;grid-column:auto;display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.65fr);gap:20px;align-items:center;margin:0;padding:16px 18px;min-height:126px}
.risk-validation-callout>.risk-validation-heading{display:grid;grid-template-columns:26px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-items:center;min-width:0}
.risk-validation-callout>.risk-validation-heading svg{grid-column:1;grid-row:1/3;width:22px;height:22px}
.risk-validation-callout>.risk-validation-heading span,.risk-validation-callout>.risk-validation-heading strong{grid-column:2;min-width:0}
.risk-validation-callout>.risk-validation-heading strong{display:block;line-height:1.32}
.risk-validation-callout>.risk-validation-body{display:block;min-width:0;color:#425c69}
.risk-validation-callout>.risk-validation-body p{margin:0;max-width:none;overflow-wrap:anywhere}
.risk-validation-callout .risk-figure-equation{max-width:none;width:100%;display:grid;grid-template-columns:auto 18px auto;align-items:center;justify-content:start;column-gap:8px;margin:0 0 9px}
.risk-validation-callout .risk-figure-equation em{grid-column:1/-1;display:block;margin-top:1px;line-height:1.35}
.risk-validation-callout .risk-validation-meta{align-items:center}
.evidence-empty.luxe{display:grid!important;grid-template-columns:34px minmax(0,1fr);grid-template-rows:auto auto;column-gap:12px;row-gap:5px;align-content:start;align-items:center;min-width:0}
.evidence-empty.luxe>svg{grid-column:1;grid-row:1/3;width:26px;height:26px;align-self:start;margin-top:2px}
.evidence-empty.luxe>strong,.evidence-empty.luxe>span{grid-column:2;display:block;min-width:0;white-space:normal;overflow-wrap:anywhere}
.evidence-empty.luxe>strong{grid-row:1;line-height:1.3}
.evidence-empty.luxe>span{grid-row:2;line-height:1.55;margin:0}
.evidence-quote{word-break:normal!important;overflow-wrap:break-word!important;white-space:pre-wrap!important;word-spacing:.085em!important}
@media(max-width:1180px){
  .document-outcome{grid-template-columns:44px minmax(240px,1fr) minmax(330px,1fr);grid-template-areas:"icon identity actions" ". metrics metrics" ". risk risk"}
  .document-outcome-actions{width:132px}
}
@media(max-width:800px){
  .document-outcome{grid-template-columns:40px minmax(0,1fr);grid-template-areas:"icon identity" ". actions" "metrics metrics" "risk risk"}
  .document-outcome-actions{width:100%;display:grid;grid-template-columns:132px minmax(0,1fr);align-items:center}
  .document-outcome-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .risk-validation-callout{grid-template-columns:1fr;min-height:0}
}


/* v3.8 — surgical package-outcome flow correction and issue-page player */
.document-outcome .risk-validation-callout{
  display:flex!important;
  flex-flow:row nowrap;
  align-items:center;
  gap:22px;
  width:100%;
  min-width:0;
  min-height:126px;
}
.document-outcome .risk-validation-callout>.risk-validation-heading{
  flex:0 0 250px;
  width:250px;
  min-width:250px;
}
.document-outcome .risk-validation-callout>.risk-validation-body{
  flex:1 1 auto;
  width:auto;
  min-width:0;
  max-width:100%;
  display:block!important;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
.document-outcome .risk-validation-callout>.risk-validation-body p,
.document-outcome .risk-validation-callout>.risk-validation-body em,
.document-outcome .risk-validation-callout>.risk-validation-body span{
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
.document-outcome .risk-validation-callout .risk-figure-equation{
  width:100%!important;
  min-width:0;
  grid-template-columns:max-content 18px max-content!important;
}
.document-outcome-actions{gap:7px}
.document-outcome-actions .issue-page-player-btn{font-size:11px}
@media(max-width:800px){
  .document-outcome .risk-validation-callout{flex-direction:column;align-items:stretch;min-height:0}
  .document-outcome .risk-validation-callout>.risk-validation-heading{flex-basis:auto;width:auto;min-width:0}
}
.issue-page-player-backdrop{position:fixed;inset:0;z-index:120;background:rgba(3,15,24,.76);backdrop-filter:blur(7px);padding:22px;display:grid;place-items:center}
.issue-page-player-shell{width:min(1320px,100%);height:min(900px,calc(100vh - 44px));background:#f6fafc;border:1px solid rgba(255,255,255,.28);border-radius:20px;box-shadow:0 30px 100px rgba(0,0,0,.38);display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;overflow:hidden}
.issue-page-player-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 19px;background:linear-gradient(120deg,#071c2b,#0b3446);color:#fff}.issue-page-player-head h3{margin:4px 0 2px;font-size:16px}.issue-page-player-head p{margin:0;color:#9eb7c4;font-size:10px}.issue-page-player-head .icon-btn{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.15);color:#fff}
.issue-page-chips{display:flex;gap:7px;overflow-x:auto;padding:10px 14px;background:#fff;border-bottom:1px solid #dce7ec}.issue-page-chips button{flex:none;border:1px solid #d4e1e7;background:#f4f8fa;color:#476372;border-radius:999px;padding:7px 11px;font-size:9px;font-weight:850;cursor:pointer}.issue-page-chips button.active{background:#0d8390;border-color:#0d8390;color:#fff;box-shadow:0 5px 14px rgba(13,131,144,.22)}
.issue-page-frame-wrap{min-height:0;background:#dbe4e9;padding:10px}.issue-page-frame-wrap iframe{width:100%;height:100%;border:0;border-radius:11px;background:#fff;box-shadow:0 8px 25px rgba(8,28,40,.12)}
.issue-page-player-controls{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:11px 14px;background:#fff;border-top:1px solid #dce7ec}.issue-page-player-controls>span{text-align:center;font-size:9.5px;color:#6d808a}
@media(max-width:720px){.issue-page-player-backdrop{padding:8px}.issue-page-player-shell{height:calc(100vh - 16px);border-radius:14px}.issue-page-player-controls{grid-template-columns:1fr 1fr}.issue-page-player-controls>span{display:none}}
/* Ensure the named risk row spans its intended grid area; v3.7's grid-column:auto collapsed it to the icon column. */
.document-outcome .risk-validation-callout{grid-area:risk!important}


/* v3.9 — surgical evidence alignment and actionable concern-page filtering */
.evidence-panel{min-width:0;overflow:hidden}
#evidenceViewer{width:100%;max-width:100%;min-width:0}
.evidence-viewer-content{display:block!important;width:100%;max-width:100%;min-width:0;overflow:hidden;text-align:left}
.evidence-viewer-content>*{min-width:0;max-width:100%}
.evidence-viewer-content>.evidence-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin:0 0 10px}
.evidence-viewer-content>h3{display:block;margin:0 0 14px;line-height:1.35;overflow-wrap:break-word;word-break:normal}
.evidence-viewer-content .evidence-determination,
.evidence-viewer-content .evidence-action,
.evidence-viewer-content .evidence-source,
.evidence-viewer-content .reviewer-decision{display:block;width:100%;max-width:100%;min-width:0;text-align:left}
.evidence-viewer-content .evidence-determination>strong,
.evidence-viewer-content .evidence-determination>span,
.evidence-viewer-content .evidence-action>strong,
.evidence-viewer-content .evidence-action>span{display:block;width:100%;min-width:0;max-width:100%;white-space:normal;word-break:normal;overflow-wrap:break-word}
.evidence-viewer-content .evidence-source-head{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:start;gap:10px;width:100%;min-width:0}
.evidence-viewer-content .evidence-source-head strong{white-space:nowrap}
.evidence-viewer-content .evidence-source-head span{display:block;max-width:none;min-width:0;text-align:right;white-space:normal;word-break:normal;overflow-wrap:break-word;line-height:1.45}
.evidence-viewer-content .evidence-calculation{display:block;width:100%;max-width:100%;min-width:0;text-align:left;white-space:normal;word-break:normal;overflow-wrap:break-word;line-height:1.55}
.evidence-viewer-content .evidence-quote{display:block;width:100%;max-width:100%;min-width:0;text-align:left!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important;hyphens:none;line-height:1.72!important}
.evidence-viewer-content .reviewer-options{width:100%;min-width:0}
.evidence-viewer-content .reviewer-reason{display:block;width:100%;max-width:100%;min-width:0}
@media(max-width:620px){
  .evidence-viewer-content .evidence-source-head{grid-template-columns:1fr}
  .evidence-viewer-content .evidence-source-head span{text-align:left}
}

/* v3.10 — surgical risk-figure alignment, complete evidence excerpts and reliable concern-page navigation */
.risk-validation-callout .risk-figure-equation.risk-figure-equation-incorrect{
  display:grid!important;
  grid-template-columns:minmax(118px,1fr) 22px minmax(118px,1fr)!important;
  grid-template-rows:auto auto;
  align-items:center;
  justify-content:stretch;
  gap:8px 12px;
  width:100%!important;
  min-width:0;
  margin:0 0 10px;
  padding:9px 10px;
}
.risk-figure-equation-incorrect .risk-figure-value{
  display:flex;
  align-items:baseline;
  justify-content:center;
  gap:7px;
  min-width:0;
  padding:7px 10px;
  border-radius:8px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(108,126,137,.14);
  white-space:nowrap;
}
.risk-figure-equation-incorrect .risk-figure-value small{
  margin:0;
  font-size:8px;
  line-height:1;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
  color:#6b7f8a;
}
.risk-figure-equation-incorrect .risk-figure-recorded b,
.risk-figure-equation-incorrect .risk-figure-correct strong{
  display:inline-block;
  margin:0;
  line-height:1;
  font-size:15px;
  font-variant-numeric:tabular-nums;
}
.risk-figure-equation-incorrect>.risk-figure-arrow{
  grid-column:2!important;
  grid-row:1!important;
  width:18px!important;
  height:18px!important;
  align-self:center;
  justify-self:center;
  color:#82949e;
}
.risk-figure-equation-incorrect>.risk-figure-formula{
  grid-column:1/-1!important;
  grid-row:2!important;
  display:block;
  width:100%;
  margin:0;
  text-align:center;
  line-height:1.4;
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
}
.evidence-viewer-content .evidence-quote{
  text-indent:0!important;
  padding-left:14px!important;
  padding-right:14px!important;
  box-sizing:border-box;
}
@media(max-width:620px){
  .risk-validation-callout .risk-figure-equation.risk-figure-equation-incorrect{
    grid-template-columns:1fr!important;
  }
  .risk-figure-equation-incorrect>.risk-figure-arrow{
    grid-column:1!important;
    grid-row:2!important;
    transform:rotate(90deg);
  }
  .risk-figure-equation-incorrect .risk-figure-correct{grid-column:1;grid-row:3}
  .risk-figure-equation-incorrect>.risk-figure-formula{grid-column:1!important;grid-row:4!important}
}


/* v3.11 — surgical rejected KPI ring legibility fix */
#rejectRing{
  border:0!important;
  background:
    radial-gradient(circle at center,#fff 0 52%,transparent 54%),
    conic-gradient(#dc3545 var(--ring,0%),#edf1f3 0)!important;
  box-shadow:0 0 0 1px rgba(220,53,69,.08);
  line-height:1;
  isolation:isolate;
}

/* v3.12 — surgical source highlighting, DOCX intake and complete PDF action text */
.issue-page-frame-wrap{overflow:hidden}
.issue-page-viewport{position:relative;width:100%;height:100%;min-height:0;overflow:auto;border-radius:11px;background:linear-gradient(145deg,#cfdbe1,#e7eef2);box-shadow:inset 0 0 0 1px rgba(8,28,40,.06)}
.issue-pdf-stage{position:relative;margin:14px auto;background:#fff;box-shadow:0 12px 34px rgba(5,25,38,.2);transform-origin:top left}
.issue-pdf-stage canvas{display:block;width:100%;height:100%;background:#fff}
.issue-highlight-layer{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.issue-highlight-mark{position:absolute;z-index:2;border:2px solid rgba(232,154,0,.72);border-radius:3px;background:rgba(255,218,55,.34);box-shadow:0 0 0 1px rgba(255,255,255,.72),0 2px 8px rgba(120,75,0,.17);mix-blend-mode:multiply;transform-origin:left bottom}
.issue-page-loading,.issue-page-fallback{min-height:100%;display:grid;place-content:center;justify-items:center;text-align:center;padding:30px;color:#516b79}
.issue-page-loading svg,.issue-page-fallback svg{width:38px;height:38px;margin-bottom:12px;color:#0d98a6}
.issue-page-loading strong,.issue-page-fallback strong{font-size:14px;color:#183443}
.issue-page-loading span,.issue-page-fallback span{max-width:420px;margin-top:6px;font-size:10px;line-height:1.55}
.issue-word-page{width:min(920px,calc(100% - 28px));min-height:calc(100% - 28px);margin:14px auto;padding:42px 50px;background:#fff;border:1px solid #d5e0e5;border-radius:8px;box-shadow:0 12px 34px rgba(5,25,38,.18);color:#132d3c}
.word-page-label{margin-bottom:24px;padding-bottom:12px;border-bottom:1px solid #dfe8ec;color:#748994;font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.word-page-text{white-space:pre-wrap;overflow-wrap:anywhere;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:12px;line-height:1.8}
.sentinel-issue-mark{padding:1px 2px;border-radius:3px;background:rgba(255,216,55,.48);box-shadow:inset 0 -2px rgba(221,143,0,.38);color:inherit}
.finding-closeout{margin-top:8px!important;padding:9px 11px;border-left:3px solid #0d98a6;border-radius:7px;background:#f0fafb;color:#496572!important;font-size:10px!important;line-height:1.55}
.evidence-closeout{display:block;width:100%;max-width:100%;min-width:0;margin:12px 0;padding:12px 14px;border:1px solid #cfe6e8;border-left:4px solid #0d98a6;border-radius:12px;background:#f1fafb;text-align:left}
.evidence-closeout strong{display:block;margin-bottom:6px;color:#46717a;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.evidence-closeout span{display:block;line-height:1.55;overflow-wrap:break-word}
@media(max-width:720px){.issue-word-page{width:calc(100% - 16px);margin:8px auto;padding:24px 20px}.issue-pdf-stage{margin:8px auto}}

/* v3.13 — surgical reissue alignment, project identity tolerance and page-level review guidance */
.issue-page-player-shell{grid-template-rows:auto auto auto minmax(0,1fr) auto}
.issue-concern-bar{background:#eef8fa;border-bottom:1px solid #cfe4e8;padding:10px 14px;max-height:220px;overflow:auto}
.issue-concern-bar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:8px}
.issue-concern-bar-head>div{display:grid;gap:2px}.issue-concern-bar-head strong{font-size:12px;color:#123444}.issue-concern-bar-head>span{font-size:9.5px;color:#607b87;max-width:420px;text-align:right;line-height:1.4}
.issue-concern-list{display:grid;gap:7px}
.issue-concern-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 10px;background:#fff;border:1px solid #d6e7eb;border-left:4px solid #0d8390;border-radius:11px;box-shadow:0 3px 10px rgba(7,33,46,.05)}
.issue-concern-item-main{min-width:0}.issue-concern-title{display:flex;align-items:center;gap:8px;min-width:0}.issue-concern-title strong{font-size:11px;color:#153442;overflow-wrap:anywhere}.issue-concern-item p{margin:5px 0 0;font-size:10px;line-height:1.45;color:#355461;overflow-wrap:anywhere}.issue-concern-item details{margin-top:5px;font-size:9.5px;color:#5a727d}.issue-concern-item summary{cursor:pointer;font-weight:800;color:#0d7180}.issue-concern-item details span{display:block;margin-top:5px;line-height:1.45;color:#506a76}
.evidence-management-note{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:14px;width:100%;min-width:0;margin:12px 0;padding:14px;border:1px solid #9fd5db;border-left:4px solid #0d8390;border-radius:12px;background:linear-gradient(135deg,#eefafb,#f8fcfd)}
.evidence-management-note>div{min-width:0}.evidence-management-note strong{display:block;margin-bottom:7px;color:#0d6f7b;font-size:11px;letter-spacing:.07em;text-transform:uppercase}.evidence-management-note span{display:block;font-size:11px;line-height:1.55;color:#274b59;overflow-wrap:anywhere}.evidence-management-note .btn{white-space:nowrap}
@media(max-width:760px){.issue-concern-bar-head{display:block}.issue-concern-bar-head>span{display:block;max-width:none;text-align:left;margin-top:4px}.issue-concern-item,.evidence-management-note{grid-template-columns:1fr}.issue-concern-item .btn,.evidence-management-note .btn{justify-self:start}.issue-concern-bar{max-height:260px}}

/* ==================================================================
   MANAGER VERDICT LAYER v4.0
   The one panel a site manager reads. Everything else is evidence.
   Vernacular borrowed from the permit board: stamps, tallies, tickets.
   ================================================================== */

.manager-verdict{
  --stop:#ff5f6d; --stop-ink:#ffdfe2; --stop-deep:#b31f2c;
  --fix:#ffb43a;  --fix-ink:#ffeed2;  --fix-deep:#a86a00;
  --go:#54e6a5;   --go-ink:#d5fbe9;   --go-deep:#0d7a52;
  --tone:var(--go); --tone-ink:var(--go-ink); --tone-deep:var(--go-deep);
  position:relative;overflow:hidden;
  background:linear-gradient(168deg,#08192a 0%,#0a2033 55%,#061423 100%);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  color:#e6f2f8;
  margin-bottom:22px;
  border:1px solid rgba(255,255,255,.07);
}
.manager-verdict.verdict-stop{--tone:var(--stop);--tone-ink:var(--stop-ink);--tone-deep:var(--stop-deep)}
.manager-verdict.verdict-fix{--tone:var(--fix);--tone-ink:var(--fix-ink);--tone-deep:var(--fix-deep)}
.manager-verdict.verdict-go{--tone:var(--go);--tone-ink:var(--go-ink);--tone-deep:var(--go-deep)}
.manager-verdict:before{content:"";position:absolute;inset:0 0 auto 0;height:5px;background:var(--tone)}
.manager-verdict.hidden{display:none}

/* --- the stamp: the signature element -------------------------------- */
.verdict-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:26px;align-items:center;padding:30px 30px 26px}
.verdict-stamp{
  display:grid;place-items:center;gap:7px;
  padding:16px 18px;min-width:132px;
  transform:rotate(-2.5deg);
  border:2.5px solid var(--tone);outline:1px solid var(--tone);outline-offset:3px;
  border-radius:4px;color:var(--tone);
  /* Plain rgba rather than color-mix(): site laptops are often on an older locked-down
     Edge build where color-mix() is unsupported, which would drop the stamp fill. */
  background:rgba(255,255,255,.06);
}
.verdict-stop .verdict-stamp,.manager-verdict.verdict-stop .verdict-stamp{background:rgba(255,95,109,.12)}
.manager-verdict.verdict-fix .verdict-stamp{background:rgba(255,180,58,.12)}
.manager-verdict.verdict-go .verdict-stamp{background:rgba(84,230,165,.12)}
.verdict-stamp svg{width:30px;height:30px;stroke-width:2.4}
.verdict-stamp span{
  font-family:"Archivo Narrow","Roboto Condensed","Arial Narrow",ui-sans-serif,sans-serif;
  font-weight:800;font-size:13px;letter-spacing:1.6px;text-align:center;line-height:1.15;
}
.verdict-copy h2{margin:0 0 7px;font-size:29px;line-height:1.12;letter-spacing:-.5px;color:#fff}
.verdict-copy p{margin:0;font-size:14.5px;line-height:1.5;color:#a9c6d6;max-width:62ch}

/* --- tally: three numbers, tabular, hairline separated ---------------- */
.verdict-tally{display:flex;gap:0;text-align:center}
.verdict-tally div{padding:2px 17px;border-left:1px solid rgba(255,255,255,.11)}
.verdict-tally div:first-child{border-left:0}
.verdict-tally strong{display:block;font-size:31px;font-weight:800;font-variant-numeric:tabular-nums;line-height:1;color:#fff}
.verdict-tally div:first-child strong{color:var(--tone)}
.verdict-tally span{display:block;margin-top:6px;font-size:10px;text-transform:uppercase;letter-spacing:.9px;color:#7d9db0}

/* --- was this written for your job? ---------------------------------- */
.verdict-print{margin:0 24px 22px;padding:20px 22px;border-radius:14px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08)}
.print-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}
.print-head .panel-kicker{color:#67e8f9}
.print-head h3{margin:6px 0 5px;font-size:19px;color:#fff}
.print-head p{margin:0;font-size:13.5px;line-height:1.5;color:#a9c6d6;max-width:58ch}
.print-gauge{min-width:186px;text-align:right}
.print-bar{height:9px;border-radius:9px;background:rgba(255,255,255,.1);overflow:hidden;margin-bottom:9px}
.print-bar i{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,#ff5f6d 0%,#ffb43a 46%,#54e6a5 100%);
  transition:width .8s cubic-bezier(.16,1,.3,1)}
.print-gauge[data-band="copied"] .print-bar i,.print-gauge[data-band="thin"] .print-bar i{background:linear-gradient(90deg,#ff5f6d,#ff8b52)}
.print-gauge strong{font-size:27px;font-weight:800;font-variant-numeric:tabular-nums;color:#fff}
.print-gauge strong small{font-size:13px;font-weight:600;color:#7d9db0}
.print-gauge>span{display:block;margin-top:2px;font-size:10px;text-transform:uppercase;letter-spacing:.9px;color:#7d9db0}
.print-signals{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:11px;margin:18px 0 0;padding:0}
.print-signals li{display:grid;grid-template-columns:22px 1fr;gap:10px;align-items:start;padding:11px 13px;border-radius:11px;background:rgba(255,255,255,.04)}
.print-signals li svg{width:16px;height:16px;margin-top:2px}
.print-signals li.ok{box-shadow:inset 2px 0 0 #54e6a5}
.print-signals li.ok svg{color:#54e6a5}
.print-signals li.no{box-shadow:inset 2px 0 0 #ff8b52}
.print-signals li.no svg{color:#ff8b52}
.print-signals strong{display:block;font-size:12.8px;color:#fff;margin-bottom:2px}
.print-signals span{font-size:12.2px;line-height:1.45;color:#9dbccd}

/* --- fix tickets ------------------------------------------------------ */
.verdict-block{margin:0 24px 22px}
.verdict-block>h3{display:flex;align-items:center;gap:9px;margin:0 0 13px;font-size:14px;text-transform:uppercase;letter-spacing:1px;color:#c4dce9}
.verdict-block>h3 svg{width:17px;height:17px}
.block-stop>h3{color:#ff8f99}
.block-fix>h3{color:#ffc86a}
.block-good>h3{color:#7cecbc}
.fix-list{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.fix-ticket{display:grid;grid-template-columns:44px minmax(0,1fr);background:#fff;color:var(--ink);border-radius:13px;overflow:hidden;box-shadow:0 4px 16px rgba(3,14,24,.22)}
.ticket-no{
  display:grid;place-items:center;font-size:17px;font-weight:800;font-variant-numeric:tabular-nums;color:#fff;
  background:#5a6c7a;
}
.fix-ticket.stop .ticket-no{background:#c9283a}
.fix-ticket.fix .ticket-no{background:#d08800}
.fix-ticket.minor .ticket-no{background:#7b8d9b}
.ticket-body{padding:15px 17px 13px}
.ticket-body h4{margin:0 0 6px;font-size:16.5px;line-height:1.3;letter-spacing:-.2px}
.ticket-why{margin:0 0 9px;font-size:13.6px;line-height:1.5;color:#5b6f7d}
.ticket-send{margin:0;font-size:13.6px;line-height:1.5;padding:10px 12px;border-radius:9px;background:#f2f8fa;border-left:3px solid var(--cyan)}
.ticket-send b{color:#0c6b76}
.ticket-foot{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:11px;font-size:11.6px;color:#8195a3}
.ticket-link{border:0;background:none;padding:0;font:inherit;font-weight:700;color:var(--cyan);cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.ticket-link:hover{color:#0c6b76}
.fix-list.compact .ticket-body{padding:12px 15px 11px}
.fix-list.compact .ticket-body h4{font-size:15px}
.fix-list.compact .ticket-why{margin-bottom:7px;font-size:13px}

/* --- what it gets right ----------------------------------------------- */
.good-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:9px}
.good-list li{display:flex;align-items:flex-start;gap:9px;padding:11px 14px;border-radius:11px;background:rgba(84,230,165,.09);font-size:13.2px;line-height:1.45;color:#d6f4e8}
.good-list svg{width:15px;height:15px;flex:none;margin-top:3px;color:#54e6a5}

/* --- actions ---------------------------------------------------------- */
.verdict-actions{display:flex;flex-wrap:wrap;gap:10px;padding:4px 24px 6px}
.verdict-actions .btn.ghost{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.16);color:#dceaf2}
.verdict-actions .btn.ghost:hover{background:rgba(255,255,255,.13)}
.verdict-note{margin:12px 24px 22px;font-size:11.6px;color:#7d9db0}

/* --- Simple vs Full detail: make the toggle actually mean something ---- */
body.manager-results #decisionCard,
body.manager-results .results-kpis,
body.manager-results .assurance-command-grid,
body.manager-results .executive-brief,
body.manager-results #reviewRiskArithmeticBanner,
body.manager-results .results-grid{display:none}
body.manager-results .result-toolbar .filters{display:none}
body.technical-results #managerVerdict{display:none}

@media(max-width:1080px){
  .verdict-head{grid-template-columns:auto minmax(0,1fr);row-gap:20px}
  .verdict-tally{grid-column:1/-1;justify-content:flex-start}
  .verdict-tally div:first-child{padding-left:0}
  .print-head{grid-template-columns:minmax(0,1fr)}
  .print-gauge{text-align:left;min-width:0}
}
@media(max-width:620px){
  .verdict-head{grid-template-columns:minmax(0,1fr);padding:24px 18px 20px}
  .verdict-stamp{justify-self:start}
  .verdict-copy h2{font-size:23px}
  .verdict-print,.verdict-block{margin-left:16px;margin-right:16px}
  .verdict-actions{padding-left:16px;padding-right:16px}
  .verdict-actions .btn{flex:1 1 100%;justify-content:center}
}
@media(prefers-reduced-motion:reduce){.print-bar i{transition:none}}
.manager-verdict :focus-visible{outline:2px solid #67e8f9;outline-offset:2px;border-radius:4px}

/* --- mentioned but not covered ---------------------------------------- */
.block-thin>h3{color:#9fc0d2}
.thin-intro{margin:-4px 0 12px;font-size:13px;line-height:1.5;color:#93b2c4;max-width:64ch}
.thin-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:10px}
.thin-list li{padding:13px 15px;border-radius:11px;background:rgba(255,255,255,.045);border:1px dashed rgba(255,255,255,.16)}
.thin-list strong{display:block;font-size:13.4px;color:#fff;margin-bottom:4px}
.thin-list span{display:block;font-size:12.6px;line-height:1.45;color:#9dbccd}
.thin-list small{display:block;margin-top:7px;font-size:11px;color:#7d9db0}

/* --- worked examples: what good looks like ----------------------------- */
.ticket-example{margin-top:11px;border-top:1px solid #e7eef2;padding-top:10px}
.ticket-example summary{display:flex;align-items:center;gap:7px;cursor:pointer;font-size:13px;font-weight:800;color:#0c6b76;list-style:none;padding:7px 10px;border-radius:8px;background:#eef8fa;transition:.18s}
.ticket-example summary::-webkit-details-marker{display:none}
.ticket-example summary:hover{background:#e0f2f6}
.ticket-example summary svg{width:15px;height:15px;flex:none}
.ticket-example[open] summary{margin-bottom:10px}
.example-body{padding:0 2px}
.example-standard{margin:0 0 8px;font-size:12.4px;color:#5b6f7d}
.example-standard b{color:#0c6b76}
.example-limits{margin:0 0 10px;padding-left:18px}
.example-limits li{font-size:12.6px;line-height:1.55;color:#2f4b5b;font-weight:650}
.example-generic{margin:0 0 8px;font-size:12px;color:#8a6d1f;background:#fff8e6;border-left:3px solid #f0b429;padding:7px 10px;border-radius:0 6px 6px 0}
.ticket-example pre{margin:0 0 10px;padding:14px 15px;border-radius:9px;background:#0d2230;color:#dbeaf2;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;word-break:break-word;overflow-x:auto;max-height:420px;overflow-y:auto}
.ticket-example .btn.compact{font-size:12px}
@media(max-width:620px){.ticket-example pre{font-size:11px;padding:11px 12px;max-height:300px}}

/* --- what this job actually involves ----------------------------------- */
.verdict-task{margin:0 24px 20px;padding:18px 22px;border-radius:14px;background:rgba(103,232,249,.07);border:1px solid rgba(103,232,249,.2)}
.verdict-task .panel-kicker{color:#67e8f9}
.verdict-task h3{margin:6px 0 6px;font-size:17px;color:#fff;line-height:1.35}
.verdict-task>p{margin:0;font-size:13.4px;line-height:1.5;color:#a9c6d6;max-width:66ch}
.task-kit{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:13px 0 0;padding:0}
.task-kit li{display:flex;align-items:center;gap:7px;padding:7px 12px;border-radius:20px;background:rgba(255,255,255,.06);font-size:12.4px;color:#dceaf2}
.task-kit svg{width:14px;height:14px;color:#67e8f9}
.task-kit small{color:#7d9db0;font-size:11px}
.task-suppressed{display:flex;gap:8px;align-items:flex-start;margin:13px 0 0;padding:10px 12px;border-radius:9px;background:rgba(255,255,255,.045);font-size:12.2px;line-height:1.45;color:#9dbccd}
.task-suppressed svg{width:14px;height:14px;flex:none;margin-top:2px;color:#7cecbc}
@media(max-width:620px){.verdict-task{margin-left:16px;margin-right:16px}}

/* --- wrong file uploaded ----------------------------------------------- */
.wrong-file{display:flex;gap:12px;align-items:flex-start;margin:0;padding:16px 24px;background:rgba(246,183,60,.14);border-bottom:1px solid rgba(246,183,60,.3)}
.wrong-file svg{width:20px;height:20px;flex:none;margin-top:2px;color:#ffc453}
.wrong-file strong{display:block;font-size:14px;color:#ffdf9e;margin-bottom:3px}
.wrong-file span{display:block;font-size:13px;line-height:1.5;color:#e7d3ad}
@media(max-width:620px){.wrong-file{padding:14px 16px}}
