:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--bg:#f1f5fa;--panel:#fff;--text:#182438;--muted:#6b7a90;--line:#e0e7f0;--blue:#1768ed}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);display:flex;min-height:100vh}aside{width:220px;flex-shrink:0;padding:30px 18px;background:var(--panel);border-right:1px solid var(--line)}aside h2{margin:0}small{color:var(--muted)}nav{display:grid;gap:10px;margin-top:40px}nav a{padding:12px;border-radius:9px;text-decoration:none;color:var(--muted)}nav a:hover,nav a[aria-current=page]{background:#2277ee18;color:var(--blue)}main{padding:42px;max-width:1250px;width:100%;margin:auto}header{display:flex;justify-content:space-between;gap:20px}h1{font-size:34px}p{color:var(--muted);line-height:1.6}select,button{border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:8px;padding:10px}.stats,.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:26px 0}.grid{grid-template-columns:1fr 1fr}.panel,.stats article{padding:25px;border-radius:15px;background:var(--panel);border:1px solid var(--line);box-shadow:0 4px 24px #1a3b6208}.stats span,.stats small{display:block;color:var(--muted);font-size:12px}.stats strong{display:block;font-size:30px;margin:12px 0}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.steps div{border:1px solid var(--line);border-radius:10px;padding:18px;color:var(--blue)}.steps b{display:block;color:var(--text);font-size:13px;margin-top:12px}.status{background:#e9a32b1b;padding:12px;border-radius:9px;color:#bc831d;font-size:12px}a{color:var(--blue)}footer{font-size:12px;color:var(--muted);padding:25px 0}body.dark{--bg:#111922;--panel:#1d2934;--text:#edf4fb;--muted:#a5b4c5;--line:#324251;--blue:#77acff;color-scheme:dark}@media(max-width:850px){body{display:block}aside{width:100%}nav{display:flex;overflow:auto;margin:15px 0}main{padding:20px}header{flex-direction:column}.stats,.grid,.steps{grid-template-columns:1fr}}

.tablewrap{overflow-x:auto;margin-top:12px}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;padding:8px 10px;border-bottom:1px solid var(--line);vertical-align:top}td.mono{font-family:ui-monospace,Menlo,monospace;word-break:break-all}.lv{font-weight:600}.lv-ERROR{color:#b3261e}.lv-WARNING{color:#8a5a00}.lv-INFO{color:#1b6e3c}#rules,#log{margin-bottom:26px}

:root{--ok:#2f6df0;--bad:#e5484d;--grid:#e6ecf4}body.dark{--grid:#2a3446}
.act-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.act-head h2{margin:0}.act-ctl{display:flex;align-items:center;gap:14px}.lg{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.sw{width:10px;height:10px;border-radius:2px;display:inline-block}.sw.ok{background:var(--ok)}.sw.bad{background:var(--bad)}
.tiles{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0}.tile{border:1px solid var(--line);border-radius:12px;padding:14px 16px}.tile small{display:block}.tile strong{font-size:26px;display:block;margin:4px 0}.delta{font-size:12px;font-weight:600;padding:2px 7px;border-radius:999px;background:#2f6df01a;color:var(--ok)}.delta.neg{background:#e5484d1a;color:#b3261e}
#act-chart svg{width:100%;height:auto;display:block}#act-chart text{fill:var(--muted);font-size:11px}#act-chart .gl{stroke:var(--grid);stroke-width:1}#act-chart .b-ok{fill:var(--ok)}#act-chart .b-bad{fill:var(--bad)}#act-chart rect:hover{opacity:.75}
details{margin-top:12px}summary{cursor:pointer;color:var(--muted);font-size:13px}
@media(max-width:800px){.tiles{grid-template-columns:1fr 1fr}}

/* --- catalog, releases, transparency, accessibility --- */
:root{--mod:#d9942b;--rem:#8a94a6}body.dark{--mod:#f0b45c;--rem:#a5b0c2}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:-999px;top:0;background:var(--blue);color:#fff;padding:10px 14px;z-index:10}.skip:focus{left:8px;top:8px}
a:focus-visible,button:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:2px}
.muted,.sub{color:var(--muted);font-size:12px}.okmsg{color:#1b6e3c}.badmsg{color:#b3261e;font-weight:600}body.dark .okmsg{color:#6fd39a}body.dark .badmsg{color:#ff8a80}
.toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:12px 0}.toolbar label{display:grid;gap:4px;font-size:12px;color:var(--muted)}.toolbar input{min-width:220px;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:8px;padding:10px}
.pager{display:flex;gap:14px;align-items:center;margin:14px 0}button:disabled{opacity:.5;cursor:default}
.dl{padding-left:18px;line-height:1.9}.dl li{color:var(--muted)}.verbox{border:1px solid var(--line);border-left:4px solid var(--blue);border-radius:10px;padding:12px 16px;margin:12px 0;font-size:13px}.verbox p,.verbox li{color:var(--text);margin:4px 0}
.facts{display:grid;grid-template-columns:max-content 1fr;gap:6px 18px;font-size:13px}.facts dt{color:var(--muted)}.facts dd{margin:0;word-break:break-all}.facts dd.mono,td.mono{font-family:ui-monospace,Menlo,monospace}
#checks{list-style:none;padding:0}#checks li{padding:6px 0;border-bottom:1px solid var(--line);font-size:13px}
.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:26px 0}.grid3 h2{margin-top:0;font-size:18px}
.legend{display:flex;flex-wrap:wrap;gap:16px;margin-top:10px}.sw.mod{background:var(--mod)}.sw.rem{background:var(--rem)}.sw.none{background:repeating-linear-gradient(45deg,var(--grid),var(--grid) 2px,transparent 2px,transparent 4px);border:1px solid var(--grid)}
#act-chart .b-mod{fill:var(--mod)}#act-chart .b-rem{fill:var(--rem)}#act-chart .hatch-line{stroke:var(--muted);stroke-width:1.2}#act-chart .nodata{opacity:.55}
.tiles{grid-template-columns:repeat(3,1fr)}
@media(max-width:800px){.grid3{grid-template-columns:1fr}.tiles{grid-template-columns:1fr 1fr}.facts{grid-template-columns:1fr}.toolbar input{min-width:0;width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

main{min-width:0}td.sha{font-family:ui-monospace,Menlo,monospace;font-size:11px;min-width:34ch;word-break:break-all}
.dl li,.verbox,.facts dd,.muted{overflow-wrap:anywhere}

.block{margin:18px 0}.block h3{margin:0 0 6px;font-size:15px}.tiles{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}
