
  :root{color-scheme:dark;--bg:#0b0a14;--surface-1:#16142a;--surface-2:#201d3b;--surface-3:#2b2750;--text:#f3f1ff;--muted:#b9b4d6;--faint:#958eb5;--accent:#9580ff;--cyan:#22e6ff;--border:#3a355e;--strong:#847cb4;--focus:#ffd54a}
  *{box-sizing:border-box}
  html{min-height:100%;background:var(--bg)}
  body{min-height:100vh;margin:0;background:radial-gradient(circle at 14% -12%,rgba(34,230,255,.15),transparent 28rem),radial-gradient(circle at 90% 5%,rgba(143,123,255,.2),transparent 32rem),var(--bg);color:var(--text);font:15px/1.6 ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}
  body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.22;background-image:radial-gradient(circle,#8f7bff 1px,transparent 1.5px);background-size:38px 38px;mask-image:linear-gradient(to bottom,#000,transparent 48%)}
  main{position:relative;z-index:1;max-width:1120px;margin:0 auto;padding:28px 20px 64px}
  h1{font-size:clamp(2rem,5vw,3.35rem);line-height:1.02;letter-spacing:-.045em;margin:0 0 10px;background:linear-gradient(100deg,#fff 25%,#aaf6ff 62%,#b9adff);-webkit-background-clip:text;background-clip:text;color:transparent}
  h2{line-height:1.18;letter-spacing:-.015em}
  p.sub{color:var(--muted);margin:0 0 24px;max-width:76ch}
  a{color:#b6a9ff;text-underline-offset:3px}
  a:hover{color:#d4ccff}
  /* Was :where(a,button) only, so the search inputs and selects on the register, the
     evidence pages and the policy index fell back to whatever the browser happened to
     draw — on some, nothing at all. Every focusable control is covered now. */
  :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--focus);outline-offset:3px}
  :where(input,select,textarea):focus-visible{outline-offset:1px}
  .site-header{position:relative;z-index:2;max-width:1160px;margin:0 auto;padding:18px 20px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}
  .brand{display:flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;min-width:max-content}
  .brand svg{width:56px;height:34px;filter:drop-shadow(0 7px 13px rgba(34,230,255,.22))}
  .brand-copy{display:grid;line-height:1.05}.brand-copy strong{font-size:.94rem;letter-spacing:.06em;text-transform:uppercase}.brand-copy small{margin-top:4px;color:var(--muted);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
  nav{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}
  nav a{min-height:38px;display:inline-flex;align-items:center;padding:6px 11px;border:1px solid var(--border);border-radius:999px;background:rgba(22,20,42,.72);color:var(--muted);font-size:.8rem;font-weight:800;text-decoration:none;backdrop-filter:blur(14px)}
  nav a:hover{border-color:var(--strong);background:var(--surface-2);color:var(--text)}
  .eyebrow{margin:0 0 8px;color:var(--cyan);font-size:.72rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
  .page-intro{margin:12px 0 28px}.page-intro .sub{font-size:1rem}
  .hero-card{position:relative;overflow:hidden;border-color:#514a81!important;background:linear-gradient(145deg,rgba(32,29,59,.94),rgba(15,14,29,.96))!important;box-shadow:0 22px 70px rgba(0,0,0,.3)}
  .hero-card:after{content:"";position:absolute;right:-50px;top:-80px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(34,230,255,.17),transparent 68%);pointer-events:none}
  .action-link{display:inline-flex;align-items:center;min-height:42px;padding:8px 15px;border:1px solid var(--strong);border-radius:999px;background:var(--surface-2);font-weight:800;text-decoration:none}
  table{width:100%;border-collapse:collapse}
  .table-scroll{width:100%;max-width:100%;margin:0 0 24px;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
  .table-scroll table{display:table;width:100%;min-width:var(--table-min,620px);margin:0;table-layout:auto}
  .table-scroll:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
  th,td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border);vertical-align:top}
  th{color:var(--muted);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
  thead th{background:#17152c}
  tbody tr{transition:background .15s ease}tbody tr:hover{background:rgba(143,123,255,.055)}
  .events-table,.capture-table,.history-table{table-layout:fixed!important}.events-table{--table-min:860px}.capture-table{--table-min:900px}.history-table{--table-min:1160px}.billing-table{--table-min:760px}.capacity-table{--table-min:650px}.api-table{--table-min:680px}.schema-table{--table-min:420px}
  .events-table :is(th,td):nth-child(1){width:15.5rem}.events-table :is(th,td):nth-child(2){width:6.5rem}.events-table :is(th,td):nth-child(3){width:12rem}.events-table :is(th,td):nth-child(4){width:11rem}
  .capture-table :is(th,td):nth-child(1){width:15.5rem}.capture-table :is(th,td):nth-child(2){width:6.5rem}.capture-table :is(th,td):nth-child(3){width:5.5rem}.capture-table :is(th,td):nth-child(4){width:11rem}.capture-table :is(th,td):nth-child(5){width:9rem}
  .history-table :is(th,td):nth-child(1){width:4.5rem}.history-table :is(th,td):nth-child(2){width:13rem}.history-table :is(th,td):nth-child(3){width:15rem}.history-table :is(th,td):nth-child(4){width:25rem}.history-table :is(th,td):nth-child(5){width:14rem}.history-table :is(th,td):nth-child(6){width:17rem}.history-table :is(th,td):nth-child(7){width:11rem}
  .cell-time,.cell-code,.cell-key,.cell-seq{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cell-code code{display:inline-block;max-width:100%;overflow:hidden;text-overflow:ellipsis;vertical-align:top}.cell-detail>span{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow-wrap:anywhere}.table-note{margin:-14px 0 24px;color:var(--faint);font-size:.72rem}#history-integrity{max-width:100%;overflow-wrap:anywhere;word-break:break-word}
  code{background:var(--surface-2);padding:2px 6px;border-radius:6px;font-family:ui-monospace,monospace}
  .m{font-weight:700;font-family:ui-monospace,monospace;font-size:.85rem}
  .g{color:#57ff5a}.o{color:#ff8a1f}.c{color:#22e6ff}.v{color:#a78bff}
  .card{background:rgba(22,20,42,.92);border:1px solid var(--border);border-radius:14px;padding:18px 20px;margin:0 0 14px;box-shadow:0 10px 30px rgba(0,0,0,.12);backdrop-filter:blur(10px)}
  .api-card{position:relative;padding-left:24px;color:var(--text);min-width:0}
  .api-card p,.api-card li,.api-summary,.api-card :is(h2,h3){overflow-wrap:anywhere}.api-card h3{margin:16px 0 8px;font-size:.82rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--muted)}.api-index{display:block}.api-index ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(266px,1fr));gap:2px;margin:0;padding:0;list-style:none}.api-index li{min-width:0}.api-index a{min-height:36px;display:flex;gap:9px;align-items:center;padding:5px 8px;border:1px solid transparent;border-radius:9px;background:none;color:var(--text);text-decoration:none;overflow-wrap:anywhere}.api-index a:hover,.api-index a:focus-visible{border-color:var(--strong);background:var(--surface-2);color:var(--text)}.api-index code{font-size:.82rem;color:#b6a9ff}.api-index .method-pill{min-width:54px;flex:none}.api-card:before{content:"";position:absolute;left:0;top:16px;bottom:16px;width:4px;border-radius:4px}.api-card.g:before{background:#57ff5a}.api-card.o:before{background:#ff8a1f}.api-card.c:before{background:#22e6ff}.api-card.v:before{background:#a78bff}.api-route{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0;font-size:1rem;font-weight:800}.api-summary{margin:10px 0 0;font-size:1rem;font-weight:800}.method-pill{display:inline-flex;align-items:center;justify-content:center;min-width:62px;padding:3px 8px;border:1px solid currentColor;border-radius:999px;background:rgba(255,255,255,.035);font-size:.72rem;letter-spacing:.08em}
  .grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px}
  .kpi{font-size:1.6rem;font-weight:800}
  .kpi small{display:block;font-size:.75rem;color:#b9b4d6;font-weight:600}
  .metric-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin:0 0 14px}.metric-grid>*{min-width:0}.stat-grid{grid-template-columns:repeat(6,minmax(0,1fr))}.status-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.showcase-metrics{grid-template-columns:repeat(5,minmax(0,1fr))}.spend-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.spend-metrics .metric-value{display:-webkit-box;min-height:2.15em;overflow:hidden;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}
  .metric-card{position:relative;display:grid;grid-template-rows:auto auto auto 1fr;align-content:start;overflow:hidden;min-width:0;min-height:124px;padding:15px 16px;border:1px solid #3a355e;border-radius:14px;background:linear-gradient(145deg,#19172f,#121123)}
  .metric-card:after{content:"";position:absolute;right:-35px;bottom:-45px;width:110px;height:110px;border-radius:50%;background:color-mix(in srgb,currentColor 10%,transparent)}
  .metric-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.metric-icon{width:30px;height:30px;color:#a78bff}.metric-icon svg{display:block;width:100%;height:100%}
  .metric-value{max-width:100%;margin-top:10px;overflow:hidden;font-size:clamp(1.25rem,2.6vw,2rem);font-weight:900;line-height:1.08;font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap}.metric-label,.metric-detail{display:-webkit-box;max-width:100%;overflow:hidden;-webkit-box-orient:vertical}.metric-label{min-height:2.3em;margin-top:7px;color:#d8d4ef;font-size:.72rem;font-weight:800;line-height:1.15;letter-spacing:.07em;text-transform:uppercase;-webkit-line-clamp:2}.metric-detail{color:#8f89ae;font-size:.7rem;line-height:1.25;-webkit-line-clamp:2;overflow-wrap:anywhere}
  .tone-green{color:#4ade80}.tone-yellow{color:#f6c445}.tone-red{color:#ff5f66}.tone-cyan{color:#22e6ff}.tone-violet{color:#a78bff}
  .gauge-card{padding:18px 20px}.gauge-layout{display:grid;grid-template-columns:minmax(260px,1.1fr) minmax(220px,.9fr);gap:24px;align-items:center}.gauge-svg{display:block;width:100%;max-width:430px;margin:auto}.gauge-needle{transition:transform .45s cubic-bezier(.2,.8,.2,1)}.gauge-readout{text-align:center}.gauge-readout strong{display:block;font-size:2.1rem;line-height:1;font-variant-numeric:tabular-nums}.gauge-readout span{display:block;color:#b9b4d6;font-size:.78rem}.meter-pill{display:inline-flex!important;width:max-content;margin:8px auto 0;padding:3px 9px;border:1px solid currentColor;border-radius:999px;font-weight:900;letter-spacing:.08em}
  .seat-bar{width:100%;height:8px;margin-top:5px;overflow:hidden;border-radius:999px;background:#292544}.seat-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#22e6ff,#a78bff)}
  button{min-height:44px;font:inherit;font-weight:900;border:0;border-radius:10px;padding:10px 16px;cursor:pointer;box-shadow:0 5px 0 rgba(0,0,0,.22)}
  button:active{transform:translateY(2px);box-shadow:0 3px 0 rgba(0,0,0,.22)}
  button.danger{background:#ff6b6b;color:#1a0606}button.restore{background:#4ade80;color:#07130b}button.secondary{background:#8f7bff;color:#0b0a14}button:disabled{cursor:wait;opacity:.65}
  .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;border:0}
  .live-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 18px}
  .live-controls .sub{margin:0}
  .server-controls{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap}.server-controls>*{flex:1 1 240px}.security-report-button{background:linear-gradient(100deg,#ff8a1f,#ffd54a);color:#170d02}.security-receipt{margin-top:12px;white-space:pre-wrap;overflow-wrap:anywhere}.alert-test{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}.alert-code{width:8rem;min-height:44px;border:1px solid var(--strong);border-radius:10px;background:var(--surface-1);color:var(--text);font:900 1rem ui-monospace,monospace;letter-spacing:.18em;text-transform:uppercase;padding:8px 12px}.report-confetti{position:fixed;z-index:9999;top:-24px;width:9px;height:16px;border-radius:2px;pointer-events:none;animation:report-fall 1.5s cubic-bezier(.2,.7,.3,1) forwards}@keyframes report-fall{to{transform:translate3d(var(--drift),105vh,0) rotate(720deg);opacity:.1}}
  @media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
  .gov-doc{margin:0 0 14px}.gov-head h2{margin:2px 0 0;font-size:1.2rem}.gov-purpose{margin:8px 0 12px}.gov-satisfies{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin:0 0 16px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:rgba(11,10,20,.48)}.gov-satisfies-label{color:var(--faint);font:900 .66rem/1 ui-monospace,monospace;letter-spacing:.08em;text-transform:uppercase}.gov-satisfies ul{display:flex;gap:6px;flex-wrap:wrap;margin:0;padding:0;list-style:none}.gov-satisfies code{font-size:.72rem}.gov-section{margin:0 0 14px}.gov-section h3{margin:0 0 6px;font-size:.98rem}.gov-section p{margin:0 0 8px;color:var(--muted)}.gov-review{margin:14px 0 0;padding:10px 12px;border-left:2px solid var(--cyan);color:var(--muted);font-size:.86rem}.gov-index{display:block}.gov-index ul{margin:0;padding:0 0 0 2px;list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr));gap:7px 14px}.gov-index a{color:var(--text)}.gov-index a>code{flex:0 0 auto;white-space:nowrap}.skip-link{position:absolute;left:-9999px;top:0;z-index:100;padding:10px 16px;border-radius:0 0 10px 0;background:var(--cyan);color:#07131a;font-weight:800;text-decoration:none}.skip-link:focus{left:0}main:focus{outline:none}table caption{caption-side:top;padding:0 0 8px;color:var(--muted);font-size:.78rem;text-align:left}[hidden]{display:none!important}.history-list{display:grid;gap:10px;margin-top:14px}.history-item{display:grid;grid-template-columns:7.2rem 1fr auto;gap:14px;align-items:start;padding:14px;border:1px solid var(--border);border-radius:12px;background:rgba(11,10,20,.48)}.history-sequence{color:var(--cyan);font:800 .76rem/1.4 ui-monospace,monospace}.history-copy strong{display:block}.history-copy p{margin:3px 0;color:var(--muted)}.history-meta{color:var(--faint);font-size:.75rem}.history-receipt{max-width:11rem;overflow:hidden;color:var(--faint);font:700 .72rem/1.4 ui-monospace,monospace;text-overflow:ellipsis;white-space:nowrap}.history-item--focus{border-color:var(--cyan);box-shadow:0 0 0 2px rgba(34,230,255,.28)}.history-pager{display:flex;gap:12px;align-items:center;justify-content:center;margin:16px 0 0;color:var(--muted);font-size:.8rem}.pager-btn{padding:7px 14px;border:1px solid var(--strong);border-radius:999px;background:rgba(11,10,20,.52);color:var(--text);font:inherit;font-weight:700;cursor:pointer}.pager-btn:disabled{opacity:.4;cursor:default}.pager-btn[aria-disabled="true"]{background:none;color:var(--faint);cursor:default}.integrity-line{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--muted)}.status-incident-list{display:grid;gap:8px}.status-incident{display:grid;grid-template-columns:auto auto 1fr auto;gap:10px;align-items:center;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:rgba(11,10,20,.48);color:var(--text);text-decoration:none}.status-incident:hover,.status-incident:focus-visible{border-color:var(--cyan)}.status-incident--active{border-color:#ff8a1f}.status-incident-state{color:var(--faint);font:900 .66rem/1 ui-monospace,monospace;letter-spacing:.08em}.status-incident-title{min-width:0;font-weight:700;overflow-wrap:anywhere}.status-incident-cause{color:var(--muted);font-size:.74rem;white-space:nowrap}@media(max-width:560px){.status-incident{grid-template-columns:auto auto 1fr}.status-incident-cause{grid-column:2/-1}}.incident-card{margin:0 0 12px}.incident-card--active{border-color:#ff8a1f}.incident-dot{display:inline-block;width:9px;height:9px;margin-right:7px;border-radius:3px;vertical-align:middle}.integrity-line code{overflow-wrap:anywhere}.integrity-badge{display:inline-flex;padding:3px 8px;border:1px solid #4ade80;border-radius:999px;color:#4ade80;font-size:.7rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase}.integrity-badge.verdict-pass{border-color:#4ade80;color:#4ade80}.integrity-badge.verdict-fail{border-color:#ff6b6b;color:#ff6b6b}.integrity-badge.verdict-idle{border-color:var(--strong);color:var(--muted)}
  /* ── Spend ── */
  .spend-hero{display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);gap:14px;margin:0 0 14px}
  .spend-hero>.card{margin:0;min-width:0}
  .spend-hero .gauge-layout{grid-template-columns:1fr;gap:8px}
  .spend-hero .gauge-svg{max-width:260px}
  .spend-hero .gauge-readout>strong{font-size:clamp(1.6rem,4vw,2.2rem)}
  .trend-card{display:grid;align-content:start;gap:2px}
  .trend-card h2{margin:2px 0 10px;font-size:1.05rem}
  .trend-card .sub{margin:10px 0 0;font-size:.78rem}
  .trend-scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin}
  .trend-scroll:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
  .trend-scroll svg{display:block;min-width:420px;width:100%;height:auto}
  .trend-empty{display:grid;gap:4px;place-content:center;min-height:150px;padding:14px;border:1px dashed var(--border);border-radius:12px;text-align:center}
  .trend-empty strong{color:var(--cyan);font:800 1.35rem/1 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}
  .trend-empty span{color:var(--muted);font-size:.78rem}
  /* One shape for every meter: service, used to date, limit, today, daily average. */
  .meter-table{--table-min:940px;table-layout:fixed!important}
  .meter-table :is(th,td){vertical-align:top}
  .meter-table :is(th,td):nth-child(1){width:15rem}
  .meter-table :is(th,td):nth-child(2){width:8rem}
  .meter-table :is(th,td):nth-child(3){width:9.5rem}
  .meter-table :is(th,td):nth-child(4){width:13rem}
  .meter-service{text-align:left;font-weight:400}
  .meter-service strong{display:block;color:var(--text);overflow-wrap:anywhere}
  .meter-service span{display:block;margin-top:2px;color:var(--faint);font-size:.74rem;overflow-wrap:anywhere}
  .meter-usage,.meter-limit{color:var(--muted);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
  /* The stack lives in a wrapper, never on the cell: a td with display:grid stops being a
     table-cell and the browser wraps it in an anonymous row of its own. */
  .meter-stack{display:grid;gap:5px;min-width:0}
  .meter-daily__value{color:var(--text);font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
  /* The track is a five-decade log axis: ticks at 0.001 / 0.01 / 0.1 / 1 / 10 / 100 % of
     the limit. On a linear axis every real row sits in the bottom tenth and a meter a
     thousand times heavier than its neighbour looks identical to it. */
  .meter-bar{position:relative;display:block;height:9px;border-radius:999px;background:#292544;background-image:repeating-linear-gradient(90deg,rgba(233,230,255,.22) 0 1px,transparent 1px 20%)}
  .meter-bar>i{display:block;height:100%;border-radius:999px;background:#4ade80}
  .meter-bar.is-amber>i{background:#f6c445}.meter-bar.is-red>i{background:#ff5f66}
  .meter-bar>b{position:absolute;top:-3px;width:2px;height:15px;border-radius:1px;background:#e9e6ff;transform:translateX(-1px)}
  .meter-share{color:var(--faint);font-size:.72rem;font-variant-numeric:tabular-nums}
  .meter-share b{color:var(--muted);font-weight:700}
  .meter-legend{display:flex;gap:14px;align-items:center;flex-wrap:wrap;margin:0 0 12px;color:var(--faint);font-size:.72rem}
  .meter-legend span{display:inline-flex;gap:6px;align-items:center}
  .meter-legend i{display:inline-block;width:22px;height:9px;border-radius:999px;background:#4ade80}
  .meter-legend b{display:inline-block;width:2px;height:13px;border-radius:1px;background:#e9e6ff}
  .meter-none,.meter-note{color:var(--faint);font-style:italic}
  @media(max-width:860px){.spend-hero{grid-template-columns:1fr}}
  .roadmap-hero{padding:clamp(22px,5vw,42px);border:1px solid var(--border);border-radius:18px;background:linear-gradient(135deg,rgba(34,230,255,.1),rgba(143,123,255,.14))}.roadmap-row--bonus{opacity:.85}.roadmap-row--bonus .cell-code code{border-color:#ffe14d;color:#ffe14d}.roadmap-row--hotfix .cell-code code{border-color:#ff6b6b;color:#ff6b6b}.roadmap-ref{display:block;margin-top:5px;color:var(--cyan);font-size:.76rem;font-weight:700}.mission-card{border-color:#5d54a0}.mission-card h2{max-width:30ch;font-size:clamp(1.5rem,3vw,2.25rem);margin:6px 0}.mission-card p{max-width:72ch;margin:0;color:var(--muted);font-size:1.02rem}.goal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.goal-grid .card{min-width:0}.goal-grid strong{display:block;color:var(--cyan);font-size:1.05rem}.goal-grid p{margin:5px 0 0;color:var(--muted)}.goal-status{max-width:31rem;padding:7px 11px;border:1px solid #f6c445;border-radius:999px;color:#f6c445;font-size:.74rem;font-weight:850}.delivery-velocity{display:grid;gap:2px;text-align:right}.delivery-velocity strong{color:var(--cyan)}.delivery-velocity span{color:var(--muted);font-size:.74rem}.timeline-scroll{width:100%;max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.timeline-scroll:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.timeline-scroll svg{display:block;min-width:520px;width:100%;height:112px}.incident-chart svg{min-width:768px}.availability-chart svg{min-width:768px}.timeline-key{display:grid;gap:8px;margin:10px 0 0;color:var(--muted);font-size:.76rem}.timeline-key__group{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.timeline-key__label{min-width:9.5rem;color:var(--faint);font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.timeline-key :is(span,a){display:inline-flex;align-items:center;gap:6px}.timeline-key :is(span,a)>b{color:var(--text);font-variant-numeric:tabular-nums}.timeline-key a{padding:2px 8px;border:1px solid var(--border);border-radius:999px;color:inherit;text-decoration:none}.timeline-key a:hover,.timeline-key a:focus-visible{border-color:var(--cyan);color:var(--text)}.timeline-key i{width:10px;height:10px;border-radius:3px;flex:none}.timeline-key-note{grid-column:1/-1;margin:2px 0 0;color:var(--faint);font-size:.72rem;font-style:italic}svg a{cursor:pointer}svg a:focus-visible{outline:2px solid var(--focus)}@media(max-width:560px){.timeline-key__label{min-width:100%}}.showcase-chart svg{display:block;min-width:2400px;width:100%;height:auto}.showcase-chart svg+svg{margin-top:14px}.showcase-chart svg a:focus-visible{outline:none}.showcase-chart svg a:focus-visible :is(rect,path,circle){stroke:var(--focus);stroke-width:2.5;paint-order:stroke}.key-green{background:#4ade80}.key-violet{background:#8f7bff}.key-red{background:#ff6b6b}.key-indigo{background:#6d8bff}.key-amber{background:#ff8a1f}.key-crimson{background:#e5484d}.key-yellow{background:#ffe14d}.portal-signoff{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}.portal-signoff strong{font-size:1.1rem}.roadmap-table{--table-min:820px;table-layout:fixed!important}.roadmap-table :is(th,td){vertical-align:top}.roadmap-table :is(th,td):nth-child(1){width:6.5rem}.roadmap-table :is(th,td):nth-child(2){width:8rem}.roadmap-table :is(th,td):nth-child(4){width:6.5rem}.roadmap-table :is(th,td):nth-child(5){width:7.5rem}.roadmap-table td:nth-child(3){white-space:normal}.roadmap-table td:nth-child(3)>strong{display:block;margin-bottom:3px;overflow-wrap:anywhere}.roadmap-summary{display:block;color:var(--muted);font-size:.82rem;line-height:1.45;white-space:normal;overflow-wrap:anywhere}.roadmap-table .cell-key{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}
  .log-room{padding:0;overflow:hidden}.log-room>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:14px 18px;cursor:pointer;list-style:none}.log-room>summary::-webkit-details-marker{display:none}.log-room>summary:after{content:"+";color:var(--cyan);font-size:1.35rem;font-weight:900}.log-room[open]>summary{border-bottom:1px solid var(--border)}.log-room[open]>summary:after{content:"−"}.log-summary{display:flex;align-items:center;gap:10px;min-width:0;flex-wrap:wrap}.log-count{padding:2px 8px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.72rem;font-weight:800}.log-room-body{padding:16px 18px 4px}.log-actions{display:flex;justify-content:flex-end;margin-bottom:10px}.log-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) minmax(150px,.42fr) auto;gap:10px;align-items:end;margin:0 0 14px}.log-toolbar label{display:grid;gap:4px;color:var(--muted);font-size:.7rem;font-weight:850;letter-spacing:.06em;text-transform:uppercase}.log-toolbar :is(input,select){width:100%;min-height:42px;border:1px solid var(--strong);border-radius:9px;background:var(--surface-1);color:var(--text);padding:8px 10px;font:inherit}.log-visible-count{padding:10px 0;color:var(--faint);font-size:.74rem;white-space:nowrap}.table-sort{min-height:0;padding:0;border-radius:0;background:none;color:inherit;font:inherit;letter-spacing:inherit;text-transform:inherit;box-shadow:none}.table-sort:active{transform:none;box-shadow:none}.table-sort:after{content:" ↕";color:var(--faint)}.table-sort[data-direction="asc"]:after{content:" ↑";color:var(--cyan)}.table-sort[data-direction="desc"]:after{content:" ↓";color:var(--cyan)}
  pre{background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:14px;overflow:auto}
  /* ── Conformance register (/audit/) ──────────────────────────────────────────
     One pill shape for every status, one table shape for every register. The
     status colours are text-on-transparent with a matching border rather than
     filled chips: a filled amber chip cannot clear 4.5:1 against this surface
     without turning the text near-black, and these pills sit next to body copy. */
  .iso-pill{display:inline-block;padding:3px 10px;border:1px solid currentColor;border-radius:999px;font-size:.7rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
  .iso-pill.is-met{color:#4ade80}.iso-pill.is-partial{color:#f6c445}.iso-pill.is-gap{color:#ff8080}.iso-pill.is-supplier{color:#b6a9ff}.iso-pill.is-excluded{color:#a49dc4}
  .iso-section{margin:36px 0 10px;font-size:clamp(1.25rem,3vw,1.7rem);scroll-margin-top:18px}
  .iso-readiness-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
  .iso-readiness{display:grid;gap:6px;min-width:0}
  .iso-readiness__head{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
  .iso-readiness__head a{font-size:.82rem;font-weight:800;text-decoration:none;overflow-wrap:anywhere}
  .iso-readiness__head strong{color:var(--text);font-variant-numeric:tabular-nums}
  .iso-track{display:flex;height:10px;border-radius:999px;background:#292544;overflow:hidden}
  .iso-track>i{display:block;height:100%}.iso-track>i.is-met{background:#4ade80}.iso-track>i.is-partial{background:#f6c445}
  .iso-readiness__foot{margin:0;color:var(--faint);font-size:.72rem}
  .iso-key-table{--table-min:520px}
  .iso-key-table :is(th,td):nth-child(1){width:9rem}
  .iso-lock{display:inline-block;padding:1px 6px;border:1px solid var(--strong);border-radius:999px;color:var(--muted);font-size:.62rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;vertical-align:1px}
  .iso-evidence{margin:0;padding:0;list-style:none;display:grid;gap:5px}
  .iso-evidence li{min-width:0}
  .iso-evidence a{font-size:.78rem;font-weight:700;overflow-wrap:anywhere}
  .iso-missing{color:var(--faint);font-size:.78rem;font-style:italic;overflow-wrap:anywhere}
  .iso-none{color:var(--faint);font-size:.78rem;font-style:italic}
  .iso-toolbar-card{margin-bottom:18px}
  .iso-toolbar{margin:0;grid-template-columns:minmax(220px,1.4fr) minmax(150px,.6fr) minmax(150px,.6fr) auto}
  .iso-toolbar button{align-self:end;min-height:42px}
  .iso-register{padding-bottom:6px}
  .iso-register__head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}
  .iso-register__head h3{margin:0 0 6px;font-size:1.1rem}
  .iso-count{padding:3px 10px;border:1px solid var(--border);border-radius:999px;color:var(--muted);font-size:.72rem;font-weight:800;white-space:nowrap}
  .iso-empty{margin:0 0 12px;color:var(--faint);font-size:.78rem;font-style:italic}
  .iso-table{--table-min:1200px;table-layout:fixed!important}
  .iso-table :is(th,td){vertical-align:top}
  .iso-table :is(th,td):nth-child(1){width:6.5rem}
  .iso-table :is(th,td):nth-child(2){width:15rem}
  .iso-table :is(th,td):nth-child(3){width:19rem}
  .iso-table :is(th,td):nth-child(4){width:8.5rem}
  .iso-table :is(th,td):nth-child(6){width:14rem}
  /* The register's control names must wrap; the global one-line rule is for identifiers. */
  .iso-table .cell-key{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere;font-weight:700}
  .iso-ask,.iso-note{color:var(--muted);font-size:.82rem;line-height:1.5;overflow-wrap:anywhere}
  .iso-clauses{margin:0;font-size:.74rem;line-height:2;overflow-wrap:anywhere}
  .iso-doc-table{--table-min:1160px}
  .iso-doc-table :is(th,td):nth-child(3){width:11rem}
  .iso-evidence-table{--table-min:900px}
  .iso-evidence-table :is(th,td):nth-child(1){width:17rem}
  .iso-evidence-table :is(th,td):nth-child(2){width:7.5rem}
  .iso-evidence-table :is(th,td):nth-child(3){width:auto}
  .iso-evidence-table :is(th,td):nth-child(4){width:13rem}
  .iso-process{display:grid;gap:10px}
  .iso-process__head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;flex-wrap:wrap}
  .iso-process__head h3{margin:0;font-size:1.08rem}
  .iso-process__purpose{margin:0;color:var(--text);max-width:88ch}
  .iso-trigger{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap;margin:0;padding:8px 12px;border:1px solid var(--border);border-radius:10px;background:rgba(11,10,20,.42)}
  .iso-trigger span{color:var(--faint);font-size:.66rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
  .iso-trigger strong{min-width:0;color:var(--muted);font-weight:600;font-size:.86rem;overflow-wrap:anywhere}
  .iso-process__grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:20px}
  .iso-process__grid h4{margin:0 0 6px;color:var(--faint);font-size:.68rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
  .iso-process__grid h4+*{margin-bottom:14px}
  .iso-steps{margin:0;padding-left:1.2em;display:grid;gap:5px;color:var(--muted);font-size:.85rem}
  .iso-records{margin:0;padding-left:1.2em;display:grid;gap:4px;color:var(--muted);font-size:.85rem}
  .iso-path{margin:0;padding-left:1.2em;display:grid;gap:10px;color:var(--muted);max-width:92ch}
  .iso-path strong{color:var(--text)}
  @media(max-width:900px){.iso-readiness-grid{grid-template-columns:1fr}.iso-process__grid{grid-template-columns:1fr;gap:10px}}
  @media(max-width:760px){.iso-toolbar{grid-template-columns:1fr 1fr}.iso-toolbar button{grid-column:1/-1}}
  @media(max-width:420px){.iso-toolbar{grid-template-columns:1fr}}
  @media(max-width:900px){.goal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
  @media(max-width:760px){.site-header{align-items:flex-start;flex-direction:column}.site-header nav{justify-content:flex-start}.brand svg{width:48px}.site-header{padding:14px 12px 0}main{padding:22px 12px 48px}.gauge-layout{grid-template-columns:1fr}.metric-grid,.stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.status-metrics,.spend-metrics,.showcase-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric-card{min-height:112px;padding:12px}.metric-icon{width:25px;height:25px}.metric-value{font-size:clamp(1.05rem,5vw,1.45rem)}th,td{padding:8px}.history-item{grid-template-columns:1fr}.history-receipt{max-width:100%}.delivery-velocity{text-align:left}.log-toolbar{grid-template-columns:1fr 1fr}.log-visible-count{grid-column:1/-1;padding:0}}
  @media(max-width:420px){nav a{padding:5px 9px}.brand-copy small{display:none}.goal-grid{grid-template-columns:1fr}.spend-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.spend-metrics .metric-value{font-size:clamp(.95rem,4.4vw,1.2rem)}.log-room>summary{padding:12px}.log-room-body{padding:12px 12px 2px}.log-toolbar{grid-template-columns:1fr}}

  /* ── Trust overview ── */
  .trust-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 20px}
  .trust-tile{position:relative;display:grid;gap:4px;min-height:132px;padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface-1);color:var(--text);text-decoration:none}
  .trust-tile:hover{border-color:var(--strong);background:var(--surface-2)}
  .trust-tile__label{color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
  .trust-tile__value{font-size:clamp(1.4rem,3.4vw,2rem);font-weight:800;letter-spacing:-.02em;line-height:1.1;overflow-wrap:anywhere}
  .trust-tile__detail{color:var(--muted);font-size:.82rem}
  .trust-tile__go{position:absolute;right:14px;bottom:12px;color:var(--faint);font-weight:900}
  .trust-tile.tone-green .trust-tile__value{color:#4ade80}.trust-tile.tone-cyan .trust-tile__value{color:#22e6ff}.trust-tile.tone-violet .trust-tile__value{color:#c4b5fd}.trust-tile.tone-red .trust-tile__value{color:#ff8c92}
  .trust-what{display:grid;grid-template-columns:minmax(0,10rem) minmax(0,1fr);gap:8px 18px;margin:0}
  .trust-what dt{font-weight:800}.trust-what dd{margin:0;color:var(--muted)}
  .page-intro dfn{font-style:normal;font-weight:800;color:var(--text);border-bottom:1px dotted var(--strong)}
  .action-links{display:flex;flex-wrap:wrap;gap:14px;margin:0}

  /* ── Policy index and documents ── */
  .gov-breadcrumb{margin:0 0 8px;color:var(--muted);font-size:.8rem;font-weight:700}
  .gov-list{display:grid;gap:10px;margin:14px 0 0;padding:0;list-style:none}
  .gov-card{padding:14px;border:1px solid var(--border);border-radius:12px;background:rgba(11,10,20,.42)}
  .gov-card__link{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;font-size:1.02rem;text-decoration:none}
  .gov-card__link strong{color:var(--text)}
  .gov-card__link:hover strong{color:#d4ccff}
  .gov-card .sub{margin:6px 0 8px;font-size:.86rem}
  .gov-card__clauses{margin:0;font-size:.72rem;line-height:2}
  .gov-body{display:grid;gap:4px}
  .gov-body .gov-section h2{margin:22px 0 8px;font-size:1.08rem}
  .gov-body .gov-section:first-child h2{margin-top:0}
  .gov-steps{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:18px 0 0}

  /* ── The register on a phone ──
     .iso-table pins a 1200px minimum at every width, which is 3.1x horizontal scroll on a
     390px viewport across all 184 rows. Below 760px the rows become cards: each cell prints
     the column name it belongs to from data-label, so the header association survives the
     table losing its shape. The filter stays on screen while they scroll, so narrowing the
     set is always one reach away rather than five screens back up. */
  @media(max-width:760px){
    .iso-toolbar-card{position:sticky;top:0;z-index:3;backdrop-filter:blur(14px);background:rgba(11,10,20,.94)}
    /* Doubled class throughout: the base layout rules are written as ".table-scroll table",
       which outranks a single ".iso-table" on specificity no matter which comes last. */
    .iso-table.iso-table{--table-min:0;min-width:0;width:100%;display:block;table-layout:auto}
    .iso-table.iso-table :is(tbody,tr){display:block;width:100%}
    .iso-table.iso-table thead{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
    .iso-table.iso-table tr{margin:0 0 10px;padding:12px;border:1px solid var(--border);border-radius:12px;background:rgba(11,10,20,.42)}
    /* The per-table column pins (.iso-doc-table :is(th,td):nth-child(3){width:11rem} and
       friends) carry a pseudo-class, so they outrank a plain class pair. Nothing here is a
       column any more, so the pins are simply cancelled. */
    .iso-table.iso-table :is(th,td){display:block;width:auto!important;min-width:0;padding:6px 0;border:0;text-align:left;overflow-wrap:anywhere}
    .iso-table.iso-table :is(th,td):empty{display:none}
    .iso-table.iso-table :is(th,td)[data-label]:before{content:attr(data-label);display:block;margin:0 0 3px;color:var(--faint);font-size:.65rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
    .iso-table.iso-table .cell-key{font-size:1rem;white-space:normal}
    .table-scroll:has(.iso-table){overflow-x:visible}
    .trust-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .trust-what{grid-template-columns:1fr;gap:2px 0}
    .trust-what dd{margin:0 0 10px}
  }
  @media(max-width:420px){.trust-grid{grid-template-columns:1fr}}

  /* ── Contrast preferences ──
     The game's theme implements prefers-contrast three times; these nine pages implemented
     it zero times. On a portal whose whole purpose is to demonstrate conformance, that
     asymmetry is the finding. Borders and muted text move to values that clear 4.5:1
     against the surfaces they sit on, and forced-colors hands every one of them back to the
     system palette rather than fighting it. */
  @media(prefers-contrast:more){
    :root{--muted:#ded9f5;--faint:#cdc7e8;--border:#8079ad;--strong:#c3bce4;--surface-1:#100e20;--surface-2:#191634}
    a{color:#cfc4ff}
    .metric-detail,.sub,.timeline-key-note{color:var(--muted)}
    :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline-width:4px}
  }
  @media(forced-colors:active){
    .metric-card,.card,.trust-tile,.gov-card,.iso-table tr{border:1px solid CanvasText}
    .iso-pill,.meter-pill,.integrity-badge,.status-pill{border:1px solid CanvasText;forced-color-adjust:none;background:Canvas;color:CanvasText}
    :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid Highlight;outline-offset:2px}
    .key-dot,.incident-dot,.meter-bar i{forced-color-adjust:none}
    svg a:focus-visible{outline:3px solid Highlight}
  }
  /* Estate footer. The top nav stays six items for the common path; this carries the
     whole estate so that no page is a dead end. Overrides the bare "nav a" pill rules
     above by specificity (0,1,2 against 0,0,2), not by order. */
  .site-footer{position:relative;z-index:1;max-width:1120px;margin:0 auto;padding:0 20px 56px}
  .site-footer-inner{border-top:1px solid var(--border);padding-top:22px}
  .site-footer nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 24px;justify-content:stretch}
  .footer-col{display:grid;gap:8px;align-content:start}
  .footer-head{color:var(--cyan);font-size:.68rem;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
  .site-footer ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
  .site-footer nav a{min-height:26px;display:inline-flex;align-items:center;padding:3px 2px;border:0;border-radius:6px;background:none;color:var(--muted);font-size:.82rem;font-weight:700;text-decoration:none;backdrop-filter:none}
  .site-footer nav a:hover{border-color:transparent;background:none;color:var(--text);text-decoration:underline}
  .footer-note{margin:20px 0 0;color:var(--muted);font-size:.76rem;max-width:76ch}
  @media(max-width:760px){.site-footer{padding:0 12px 44px}.site-footer nav{grid-template-columns:1fr 1fr}}
