:root{--bg:#f6f7f9;--card:#fff;--ink:#1d2433;--muted:#5d6678;--line:#dfe3ea;--accent:#0b5cad;--accent-ink:#fff;
--viol:#b42318;--viol-bg:#fef3f2;--warn:#a15c07;--warn-bg:#fffaeb;--info:#175cd3;--info-bg:#eff8ff;--ok:#067647;--ok-bg:#ecfdf3}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#12151c;--card:#1b2030;--ink:#e6e9f0;--muted:#9aa3b5;--line:#2c3346;--accent:#5aa2ff;--accent-ink:#0b1220;
--viol:#ff8a80;--viol-bg:#3a1714;--warn:#f5c26b;--warn-bg:#3a2a0c;--info:#8ab8ff;--info-bg:#132544;--ok:#6fd8a2;--ok-bg:#0f2e20;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#12151c;--card:#1b2030;--ink:#e6e9f0;--muted:#9aa3b5;--line:#2c3346;--accent:#5aa2ff;--accent-ink:#0b1220;
--viol:#ff8a80;--viol-bg:#3a1714;--warn:#f5c26b;--warn-bg:#3a2a0c;--info:#8ab8ff;--info-bg:#132544;--ok:#6fd8a2;--ok-bg:#0f2e20;color-scheme:dark}
:root[data-theme="light"]{color-scheme:light}
*{box-sizing:border-box}body{margin:0;font:14px/1.5 system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--ink)}
a{color:var(--accent)}main{max-width:1280px;margin:0 auto;padding:16px}
.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 16px;background:var(--card);border-bottom:1px solid var(--line);flex-wrap:wrap}
.topbar-left,.topbar-right{display:flex;align-items:center;gap:22px;flex-wrap:wrap}
.mainnav{display:flex;gap:4px;flex-wrap:wrap}
.mainnav a{padding:6px 10px;border-radius:6px;text-decoration:none;color:var(--ink)}
.mainnav a:hover{background:var(--bg)}
.mainnav a.on{background:var(--info-bg);color:var(--info);font-weight:600}
.signout{padding:6px 12px}.brand{font-weight:700;text-decoration:none;color:var(--ink)}
h1{font-size:22px;margin:8px 0 12px}h2{font-size:16px;margin:0 0 10px}
.card{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:16px;margin:0 0 16px}
.narrow{max-width:520px;margin:32px auto}.muted{color:var(--muted)}.small{font-size:12px}
.row{display:flex;gap:10px;align-items:flex-end;flex-wrap:wrap}.between{justify-content:space-between;align-items:center}
.stack{display:flex;flex-direction:column;gap:12px}.stack label,.row label{display:flex;flex-direction:column;gap:4px}
input,select,textarea{font:inherit;padding:7px 9px;border:1px solid var(--line);border-radius:6px;background:var(--card);color:var(--ink);max-width:100%}
textarea{width:100%}select{min-width:240px}
button,.button{font:inherit;padding:7px 12px;border-radius:6px;border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer;text-decoration:none;display:inline-block}
button.primary,.button.primary{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
button.danger{color:var(--viol);border-color:var(--viol)}button.small{padding:3px 8px;font-size:12px}button:disabled{opacity:.5;cursor:not-allowed}
.linklike{border:0;background:none;color:var(--accent);padding:0}.inline{display:inline}
.flash{padding:10px 12px;border-radius:8px;margin:0 0 12px;border:1px solid var(--line)}
.flash.ok{background:var(--ok-bg);color:var(--ok)}.flash.error{background:var(--viol-bg);color:var(--viol)}.flash.warn{background:var(--warn-bg);color:var(--warn)}
table.grid{width:100%;border-collapse:collapse;background:var(--card)}table.grid th,table.grid td{border-bottom:1px solid var(--line);padding:7px 8px;text-align:left;vertical-align:top}
table.grid th{font-size:12px;color:var(--muted);font-weight:600}
.badge{display:inline-block;padding:1px 7px;border-radius:999px;font-size:11px;border:1px solid var(--line);color:var(--muted)}
.badge.violation{background:var(--viol-bg);color:var(--viol);border-color:var(--viol)}.badge.warning,.badge.review{background:var(--warn-bg);color:var(--warn);border-color:var(--warn)}
.badge.info{background:var(--info-bg);color:var(--info);border-color:var(--info)}.badge.ok{background:var(--ok-bg);color:var(--ok);border-color:var(--ok)}
.chip{display:inline-block;padding:0 6px;margin:0 4px 2px 0;border-radius:4px;background:var(--bg);border:1px solid var(--line);font-size:11px}
fieldset{border:1px solid var(--line);border-radius:8px}label.check{display:flex;flex-direction:row;gap:6px;align-items:center}
.layout{display:grid;grid-template-columns:260px 1fr;gap:16px}@media (max-width:860px){.layout{grid-template-columns:1fr}}
.sidenav{position:sticky;top:8px;align-self:start;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:12px;max-height:calc(100vh - 16px);overflow:auto}
.sidenav ul{list-style:none;padding:0;margin:0}.sidenav li{padding:4px 0;display:flex;justify-content:space-between;gap:6px}.sidenav li.active a{font-weight:700}
.count{color:var(--muted);font-size:12px;white-space:nowrap}.sidenav .badge{flex:none;align-self:center;white-space:nowrap}
.question{background:var(--card);border:1px solid var(--line);border-left:4px solid var(--line);border-radius:8px;padding:12px 14px;margin:0 0 12px}
.question.flagged.violation{border-left-color:var(--viol)}.question.flagged.warning,.question.flagged.review{border-left-color:var(--warn)}
.question header{font-weight:600;margin-bottom:4px}.qid{font-family:ui-monospace,Consolas,monospace;color:var(--muted);margin-right:4px}
.guidance{color:var(--muted);margin:2px 0 8px}.question label.small{display:block;margin-top:8px}.question input:not([type=radio]):not([type=checkbox]){width:100%}
.options{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:4px 12px}.check.bad{color:var(--viol)}
.question footer{margin-top:8px}
.finding{border-radius:8px;padding:8px 10px;margin:6px 0;border:1px solid}.finding p{margin:4px 0}
.finding.violation{background:var(--viol-bg);border-color:var(--viol)}.finding.warning,.finding.review{background:var(--warn-bg);border-color:var(--warn)}
.savebar{position:sticky;bottom:0;background:var(--card);border:1px solid var(--line);border-radius:8px;padding:10px;display:flex;gap:10px;margin-bottom:12px}
.accept-form{margin-right:6px}.cols{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width:860px){.cols{grid-template-columns:1fr}}
ul.columns{columns:2}code{font-family:ui-monospace,Consolas,monospace;word-break:break-all}table code{word-break:normal;white-space:nowrap}progress{width:110px;vertical-align:middle}

/* ---------- sign-in */
body.auth{background:#0B1D3A;min-height:100vh;margin:0;display:flex;align-items:center;justify-content:center;padding:32px 20px}
.auth-shell{width:100%;max-width:1080px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(320px,400px);gap:40px;align-items:center}
.auth-art{color:#EAF0F7}
.auth-visual{border-radius:18px;overflow:hidden;background:#0B1D3A;box-shadow:0 0 0 1px rgba(234,240,247,.08);max-width:min(100%,calc(62vh * 1.111))}
.auth-visual svg.lz-art{display:block;width:100%;height:auto}
.auth-copy{margin-top:22px;max-width:36rem}
.auth-mark{margin:0 0 8px;font-weight:600;color:#F4B740}
.auth-copy h1{font-family:"Segoe UI Variable Display","Segoe UI",system-ui,sans-serif;font-size:clamp(24px,2.4vw,34px);line-height:1.15;font-weight:650;letter-spacing:-.015em;margin:0 0 10px;color:#EAF0F7}
.auth-copy p{margin:0;color:#C5D3E4;font-size:15px;line-height:1.6}
.auth-panel{display:flex;justify-content:center}
.auth-card{width:100%;background:#FFFFFF;color:#1D2433;border-radius:16px;padding:32px 28px}
.auth-card h2{font-size:24px;margin:0 0 6px;letter-spacing:-.01em;color:#1D2433}
.auth-card .muted{color:#5D6678}
.auth-card input{background:#FFFFFF;color:#1D2433;border-color:#D5DBE5}
.auth-card a{color:#0B5CAD}
.auth-card button.primary{background:#0B5CAD;border-color:#0B5CAD;color:#FFFFFF}
.auth-card .stack{margin-top:18px}
.auth-links{margin:16px 0 0}
button.wide{width:100%;padding:10px 12px}
button.link{background:none;border:0;padding:0;color:var(--accent);text-decoration:underline;cursor:pointer}
.auth-card button.link{color:#0B5CAD;font-size:inherit}
.lz-art .route{stroke-dashoffset:0;animation:runway 1.6s linear infinite}
.lz-art .descent{animation:runway 2.4s linear infinite}
@keyframes runway{to{stroke-dashoffset:-28}}
@media (prefers-reduced-motion:reduce){.lz-art .route,.lz-art .descent{animation:none}}
@media (max-width:860px){.auth-shell{grid-template-columns:1fr;gap:20px;max-width:440px}.auth-visual{max-width:min(100%,calc(30vh * 1.111));margin:0 auto}.auth-copy{display:none}}
:focus-visible{outline:2px solid #2BB3A3;outline-offset:2px}

/* ---------- settings */
.settings{display:grid;grid-template-columns:220px 1fr;gap:20px}@media (max-width:860px){.settings{grid-template-columns:1fr}}
.settings-nav{display:flex;flex-direction:column;gap:2px;align-self:start;position:sticky;top:8px;background:var(--card);border:1px solid var(--line);border-radius:10px;padding:10px}
.settings-nav a{padding:7px 10px;border-radius:6px;text-decoration:none;color:var(--ink)}
.settings-nav a.on{background:var(--info-bg);color:var(--info);font-weight:600}
.settings-title{margin:4px 10px 8px;font-weight:700}
.settings-body{min-width:0}
tr.inactive td{opacity:.55}
.nowrap{white-space:nowrap}.short{width:130px}.tiny{width:56px}
.inline-check{display:inline-flex;margin-right:8px}
.attention{border-color:var(--warn);background:var(--warn-bg)}
label.block{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}
.narrowish{max-width:560px}.filters{margin-bottom:12px}

/* ---------- forms and client profile */
.grid-form{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px}
.grid-form fieldset{display:grid;grid-template-columns:1fr 1fr;gap:12px 16px;grid-column:1/-1;padding:12px 14px}
.grid-form label{display:flex;flex-direction:column;gap:4px}
.grid-form .span2{grid-column:1/-1}
.grid-form .actions,.actions{grid-column:1/-1;display:flex;gap:10px;margin-top:6px}
.grid-form select{min-width:0;width:100%}
@media (max-width:700px){.grid-form,.grid-form fieldset{grid-template-columns:1fr}}
.form-card{max-width:860px}
.profile dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px 20px;margin:0}
.profile dt{font-size:12px;color:var(--muted)}.profile dd{margin:2px 0 0;font-weight:500}
[hidden]{display:none!important}
.grid-form label.check{flex-direction:row;align-items:center;gap:6px}
.grid-form fieldset > .options,.grid-form fieldset > legend + .options{grid-column:1/-1}
.grid-form .options{display:flex;flex-wrap:wrap;gap:8px 22px}
label.check.inline-check{display:inline-flex;margin:2px 10px 2px 0}
table.grid select{min-width:110px}

/* ---------- banner, dashboard */
.banner{background:var(--warn-bg);color:var(--warn);border-bottom:1px solid var(--line);padding:8px 16px;text-align:center}
.page-head{margin-bottom:8px}.page-head h1{margin-bottom:2px}.page-head p{margin:0}
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;margin:12px 0 16px}
.kpi{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:14px 16px;display:flex;flex-direction:column;gap:2px}
.kpi-n{font-size:30px;font-weight:650;letter-spacing:-.02em;line-height:1.1}
.kpi-l{font-weight:600}.kpi-s{color:var(--muted);font-size:12px}
.kpi-alert{border-color:var(--viol)}.kpi-alert .kpi-n{color:var(--viol)}
.dash-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px;margin-bottom:16px}
.dash-grid .card{margin:0}.dash-grid h2{margin-bottom:2px}.dash-grid .card > p.small{margin:0 0 10px}
.bars{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.bars li{display:grid;grid-template-columns:minmax(120px,48%) 1fr 30px;gap:10px;align-items:center}
.bar-label{font-size:13px;line-height:1.3;overflow-wrap:anywhere}
.bar-track{height:10px;background:var(--bg);border-radius:4px;overflow:hidden}
.bar-fill{display:block;height:100%;background:var(--accent);border-radius:0 4px 4px 0}
.bar-value{text-align:right;font-variant-numeric:tabular-nums;font-weight:600}
.meter{display:inline-block;width:90px;height:8px;background:var(--bg);border:1px solid var(--line);border-radius:4px;overflow:hidden;vertical-align:middle}
.meter-fill{display:block;height:100%;background:var(--ok)}
.stage{display:inline-block;padding:1px 8px;border-radius:999px;font-size:12px;border:1px solid var(--line);white-space:nowrap}
.stage.s0{color:var(--muted)}.stage.s1{color:var(--info);border-color:var(--info);background:var(--info-bg)}
.stage.s2,.stage.s3{color:var(--warn);border-color:var(--warn);background:var(--warn-bg)}.stage.s4{color:var(--ok);border-color:var(--ok);background:var(--ok-bg)}
.table-wrap{overflow-x:auto}.progress-table td{vertical-align:middle}
.activity{margin:0;padding-left:18px}.activity li{margin:3px 0}
.empty{text-align:left;max-width:640px}
.danger-zone{border-color:var(--viol)}.danger-zone h3{margin:0;font-size:15px}
.w0{width:0%}.w5{width:5%}.w10{width:10%}.w15{width:15%}.w20{width:20%}.w25{width:25%}.w30{width:30%}.w35{width:35%}.w40{width:40%}.w45{width:45%}.w50{width:50%}.w55{width:55%}.w60{width:60%}.w65{width:65%}.w70{width:70%}.w75{width:75%}.w80{width:80%}.w85{width:85%}.w90{width:90%}.w95{width:95%}.w100{width:100%}

.client-title{display:flex;align-items:center;gap:12px}.client-title h1{margin:0}
.logo-lg{height:48px;max-width:140px;object-fit:contain;border-radius:8px;background:#fff;padding:4px;border:1px solid var(--line)}
.logo-sm{height:28px;width:28px;object-fit:contain;border-radius:6px;background:#fff;border:1px solid var(--line);flex:none}
.client-cell{display:flex;gap:10px;align-items:center}
td.client-td{vertical-align:middle}
.logo-field{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.logo-preview{height:56px;max-width:160px;object-fit:contain;border:1px solid var(--line);border-radius:8px;background:#fff;padding:4px}
.grid-form > h2{margin:0}.grid-form > h2 + p{margin:-6px 0 0}
.question.followup{border-left:3px solid var(--accent)}
.logo-preview{max-height:36px;max-width:140px;object-fit:contain;background:#fff;border-radius:4px;padding:2px}
/* question status markers */
.question header{display:flex;align-items:center;flex-wrap:wrap;gap:6px}
.qstatus{flex:none;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;font-size:13px;font-weight:700;line-height:1}
.qstatus.done{background:#1e8e3e;color:#fff}
.qstatus.todo{width:14px;height:14px;margin:0 3px;background:#fbbc04;box-shadow:0 0 0 3px rgba(251,188,4,.35)}
.qstatus.open{width:14px;height:14px;margin:0 3px;border:2px solid var(--line);background:transparent}
.badge.required{color:#fff;background:#d93025;border-color:#d93025;font-weight:600}

/* (i) help next to each question: hover, keyboard focus or tap */
.qinfo-wrap{position:relative;display:inline-block;vertical-align:middle;margin-left:4px}
.qinfo{width:20px;height:20px;padding:0;border-radius:50%;border:1.5px solid #1a73e8;background:#fff;color:#1a73e8;
  font:italic 700 12px/1 Georgia,"Times New Roman",serif;cursor:help;display:inline-flex;align-items:center;justify-content:center}
.qinfo:hover,.qinfo:focus-visible,.qinfo[aria-expanded=true]{background:#1a73e8;color:#fff;outline:none}
.qinfo:focus-visible{box-shadow:0 0 0 3px rgba(26,115,232,.35)}
.qhelp{display:none;position:absolute;z-index:30;top:calc(100% + 8px);left:-12px;width:min(440px,calc(100vw - 48px));
  background:#202124;color:#f1f3f4;font-weight:400;font-size:13px;line-height:1.5;padding:12px 14px;border-radius:8px;
  box-shadow:0 6px 24px rgba(0,0,0,.25);white-space:normal;text-align:left}
.qhelp::before{content:"";position:absolute;top:-6px;left:16px;border:6px solid transparent;border-top:0;border-bottom-color:#202124}
.qhelp-p{display:block}.qhelp-p+.qhelp-p{margin-top:8px}
.qinfo-wrap:hover .qhelp,.qinfo:focus-visible+.qhelp,.qinfo[aria-expanded=true]+.qhelp{display:block}
.qhelp.flip{left:auto;right:-12px}.qhelp.flip::before{left:auto;right:16px}
@media (prefers-reduced-motion:no-preference){.qhelp{animation:qhelp-in .12s ease-out}}
@keyframes qhelp-in{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:none}}

/* automatic Terraform check panel on the design page */
.tfcheck{border-left:4px solid #9aa0a6}.tfcheck.passed{border-left-color:#1e8e3e}.tfcheck.warnings{border-left-color:#f9ab00}
.tfcheck.failed,.tfcheck.error{border-left-color:#d93025}.tfcheck.running{border-left-color:#1a73e8}
.tfcheck h2{display:flex;align-items:center;gap:8px;margin:0}
.tfc-icon{display:inline-flex;width:24px;height:24px;border-radius:50%;align-items:center;justify-content:center;font-size:14px;color:#fff;background:#9aa0a6}
.tfcheck.passed .tfc-icon{background:#1e8e3e}.tfcheck.warnings .tfc-icon{background:#f9ab00}
.tfcheck.failed .tfc-icon,.tfcheck.error .tfc-icon{background:#d93025}.tfcheck.running .tfc-icon{background:#1a73e8}
.tfc-steps{list-style:none;padding:0;margin:8px 0}.tfc-steps li{margin:4px 0}.tfc-steps li.ok{color:#1e8e3e}
.tfc-steps li.bad{color:#d93025}.tfc-steps li.warn{color:#b06000}
.tfc-steps pre{white-space:pre-wrap;color:#202124;background:#f8f9fa;border:1px solid #e0e0e0;padding:8px;max-height:260px;overflow:auto;font-size:12px}
.spin{width:12px;height:12px;border:2px solid rgba(255,255,255,.5);border-top-color:#fff;border-radius:50%;display:inline-block}
@media (prefers-reduced-motion:no-preference){.spin{animation:tfc-spin .8s linear infinite}}
@keyframes tfc-spin{to{transform:rotate(360deg)}}

/* client form: optional data centres */
.dc-rows{display:flex;flex-direction:column;gap:10px}
.dc-row{display:grid;grid-template-columns:96px minmax(0,1.2fr) minmax(0,1fr) minmax(0,1.35fr) minmax(0,1.2fr);gap:10px;align-items:end;padding:10px;border:1px solid #e0e0e0;border-radius:8px;background:#fafbfc}
.dc-row label{min-width:0;margin:0}.dc-row input,.dc-row select{width:100%;min-width:0;box-sizing:border-box}
.dc-row[hidden]{display:none}.dc-tag{font-weight:600;font-size:13px;align-self:center}
@media (max-width:760px){.dc-row{grid-template-columns:1fr 1fr}.dc-tag{grid-column:1/-1}}

progress.req,progress.opt{-webkit-appearance:none;appearance:none;width:110px;height:10px;border:0;border-radius:5px;background:#e8eaed;vertical-align:middle}
progress.req::-webkit-progress-bar,progress.opt::-webkit-progress-bar{background:#e8eaed;border-radius:5px}
progress.req::-webkit-progress-value{background:#1a73e8;border-radius:5px}progress.req::-moz-progress-bar{background:#1a73e8;border-radius:5px}
progress.opt::-webkit-progress-value{background:#34a853;border-radius:5px}progress.opt::-moz-progress-bar{background:#34a853;border-radius:5px}

.report-panel{border-left:4px solid #1a73e8}.report-panel h2{margin:0}
/* two-step sign-in */
.tabs-inline{display:flex;gap:16px;margin:0 0 8px;font-size:14px}
.setup-steps{padding-left:20px;line-height:1.5}.setup-steps li{margin:0 0 10px}
.qr{margin:10px 0;display:inline-block;padding:6px;background:#fff;border:1px solid var(--line);border-radius:8px}
.qr svg{display:block;width:180px;height:auto}
.setup-key{word-break:break-all;font-size:13px}
pre.recovery{font-size:16px;line-height:1.7;padding:12px 16px;columns:2;background:var(--bg,#f6f7f9);border:1px solid var(--line);border-radius:8px}
.sec-block{border-top:1px solid var(--line);padding-top:14px;margin-top:20px}
.auth-card code{white-space:nowrap}

/* ---- v0.10 review fixes: phones, dark mode, history */
@media (max-width:860px){
  .sidenav{position:static;max-height:none}
  .sidenav ul{max-height:40vh;overflow:auto}
  table.grid{display:block;overflow-x:auto;white-space:normal}
  main{overflow-x:hidden}
}
.history-value{white-space:pre-line}
.skip-link{position:absolute;left:-9999px;top:0;background:var(--card);color:var(--ink);padding:8px 12px;border:2px solid var(--accent);z-index:100}
.skip-link:focus{left:8px;top:8px}
html{scroll-padding-bottom:96px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .dc-row,:root:not([data-theme="light"]) .tfc-steps pre{background:var(--card);color:var(--ink);border-color:var(--line)}
  :root:not([data-theme="light"]) .qinfo{background:var(--card);color:var(--ink)}
  :root:not([data-theme="light"]) progress{background:var(--line)}}
:root[data-theme="dark"] .dc-row,:root[data-theme="dark"] .tfc-steps pre{background:var(--card);color:var(--ink);border-color:var(--line)}
:root[data-theme="dark"] .qinfo{background:var(--card);color:var(--ink)}
.nowrap{white-space:nowrap}
.mfa-switch{white-space:nowrap}.mfa-switch select{width:auto;padding:3px 6px;font-size:13px;margin-right:4px}

/* questions that shape the landing zone */
.impacts{display:inline-flex;gap:4px;margin:0 4px;vertical-align:middle}
.impact{display:inline-flex;align-items:center;gap:3px;font-size:11px;font-weight:600;line-height:1;padding:3px 6px 3px 4px;border-radius:10px;white-space:nowrap;cursor:help}
.impact svg{width:12px;height:12px;stroke:currentColor;stroke-width:1.4;stroke-linejoin:round;stroke-linecap:round}
.impact.design{color:#1a56a8;background:#e6effb}.impact.design svg path:first-child{fill:currentColor;fill-opacity:.18}
.impact.rules{color:#8a4b00;background:#fdf0dc}.impact.rules svg path:first-child{fill:currentColor;fill-opacity:.18}
.impact-legend .impact{cursor:default;margin-right:2px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .impact.design{color:#a9c8f5;background:#1d2d44}:root:not([data-theme="light"]) .impact.rules{color:#f3c98a;background:#3a2a14}}
:root[data-theme="dark"] .impact.design{color:#a9c8f5;background:#1d2d44}:root[data-theme="dark"] .impact.rules{color:#f3c98a;background:#3a2a14}
/* client indicators */
.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:4px 0 16px}
.kpi{display:flex;flex-direction:column;gap:4px;padding:12px 14px;border:1px solid var(--line);border-left:4px solid var(--line);border-radius:8px;background:var(--card);color:var(--ink);text-decoration:none}
.kpi:hover{border-top-color:var(--accent);border-right-color:var(--accent);border-bottom-color:var(--accent)}.kpi:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.kpi.good{border-left-color:var(--ok)}.kpi.attn{border-left-color:var(--warn)}.kpi.bad{border-left-color:var(--viol)}
.kpi-label{font-size:12px;color:var(--muted)}
.kpi-value{font-size:28px;font-weight:700;line-height:1.1;font-variant-numeric:tabular-nums}.kpi-value.small{font-size:18px;padding:5px 0 4px}
.kpi-sub{font-size:12px;color:var(--muted)}
.kpi-bar{display:block;height:6px;border-radius:3px;background:var(--line);overflow:hidden}.kpi-bar span{display:block;height:100%;background:var(--accent);border-radius:3px}
.badge.design-open{background:#e6effb;color:#1a56a8;border-color:#9dbbe8}
.todo-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 12px}
.todo-tabs a{padding:5px 10px;border:1px solid var(--line);border-radius:999px;font-size:13px;text-decoration:none;color:var(--ink);background:var(--card)}
.todo-tabs a[aria-current=page]{background:var(--accent);color:var(--accent-ink);border-color:var(--accent)}
table.todo td:first-child a{text-decoration:none;color:var(--ink)}table.todo td:first-child a:hover{text-decoration:underline}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .badge.design-open{background:#1d2d44;color:#a9c8f5;border-color:#3b5a85}}
:root[data-theme="dark"] .badge.design-open{background:#1d2d44;color:#a9c8f5;border-color:#3b5a85}
.todo-sec-m{display:none}@media (max-width:640px){table.todo .todo-sec{display:none}.todo-sec-m{display:inline}}
.accept-btn{margin-left:2px;padding:2px 10px}
.review-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;margin:0 0 12px;border:1px solid var(--warn);background:var(--warn-bg);border-radius:8px;font-size:14px}
