/* Aquastock design layer v4 — loaded after the inline critical CSS, overrides it. */
:root{
  --as-bg:#f4f7f9;--as-surface:#ffffff;--as-surface-2:#f8fafc;--as-ink:#0d1b2a;--as-ink-soft:#3f5566;
  --as-mut:#64748b;--as-line:#dfe7ec;--as-line-soft:#eaf0f4;
  --as-brand:#0e7490;--as-brand-ink:#0b5566;--as-accent:#22c3d6;--as-accent-soft:#e6f7fa;
  --as-deep:#062b38;--as-deep-2:#0a4256;
  --as-ok:#15803d;--as-ok-bg:#e7f7ed;--as-warn:#a16207;--as-warn-bg:#fdf6e3;--as-no:#b91c1c;--as-no-bg:#fdeceb;
  --as-radius:14px;--as-radius-sm:10px;
  --as-shadow:0 1px 2px rgba(6,43,56,.06),0 6px 18px rgba(6,43,56,.05);
  --as-shadow-lg:0 2px 6px rgba(6,43,56,.08),0 18px 40px rgba(6,43,56,.10);
  --as-maxw:1180px;
}
:root[data-theme="dark"]{
  --as-bg:#0b1418;--as-surface:#131f25;--as-surface-2:#17262d;--as-ink:#eef6f8;--as-ink-soft:#c3d4da;
  --as-mut:#94a9b1;--as-line:#22343d;--as-line-soft:#1b2a31;
  --as-brand:#3fc0d8;--as-brand-ink:#7ad9ea;--as-accent:#4ad4e6;--as-accent-soft:#12303a;
  --as-deep:#081f28;--as-deep-2:#0d3140;
  --as-ok:#5fd08a;--as-ok-bg:#12301f;--as-warn:#e0b552;--as-warn-bg:#2f2612;--as-no:#f08a80;--as-no-bg:#33191a;
  --as-shadow:0 1px 2px rgba(0,0,0,.35),0 6px 18px rgba(0,0,0,.30);
  --as-shadow-lg:0 2px 8px rgba(0,0,0,.4),0 18px 44px rgba(0,0,0,.42);
}
/* ---------- base ---------- */
html{-webkit-text-size-adjust:100%}
body{background:var(--as-bg);color:var(--as-ink);font:16.5px/1.68 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;overflow-x:hidden}
a{color:var(--as-brand)}
a:hover{color:var(--as-brand-ink)}
::selection{background:var(--as-accent);color:#04222b}
img{max-width:100%}
.muted,.byline,.crumb{color:var(--as-mut)}
/* ---------- reading progress ---------- */
.as-progress{position:fixed;inset:0 0 auto 0;height:3px;background:transparent;z-index:60;pointer-events:none}
.as-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--as-brand),var(--as-accent));transition:width .08s linear}
/* ---------- header ---------- */
header.top{position:sticky;top:0;z-index:50;background:linear-gradient(120deg,var(--as-deep) 0%,var(--as-deep-2) 55%,#0e5f74 100%);color:#fff;padding:0;border-bottom:1px solid rgba(255,255,255,.10);backdrop-filter:saturate(140%) blur(6px)}
header.top>a,header.top nav{max-width:var(--as-maxw);margin:0 auto}
.as-bar{max-width:var(--as-maxw);margin:0 auto;display:flex;align-items:center;gap:14px;padding:10px 20px}
.as-brand{display:flex;align-items:center;gap:9px;font-weight:800;font-size:19px;letter-spacing:-.01em;color:#fff!important;text-decoration:none!important;flex:0 0 auto}
.as-brand svg{width:30px;height:30px;flex:0 0 auto;filter:drop-shadow(0 1px 2px rgba(0,0,0,.25))}
.as-brand small{display:block;font-size:10.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;opacity:.72;margin-top:-3px}
header.top nav{display:flex;flex-wrap:wrap;align-items:center;gap:2px;margin:0;font-size:14.2px;padding:0 20px 9px;max-width:var(--as-maxw)}
header.top nav a{margin:0;padding:6px 11px;border-radius:99px;opacity:1;color:#dff4f8!important;font-weight:600;transition:background .15s,color .15s}
header.top nav a:hover{background:rgba(255,255,255,.14);color:#fff!important;text-decoration:none}
header.top nav a[aria-current="page"]{background:rgba(255,255,255,.18);color:#fff!important}
.as-tools{margin-left:auto;display:flex;align-items:center;gap:8px;flex:0 0 auto}
.as-iconbtn{appearance:none;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.18);color:#fff;width:36px;height:36px;border-radius:10px;display:grid;place-items:center;cursor:pointer;font-size:15px;line-height:1}
.as-iconbtn:hover{background:rgba(255,255,255,.22)}
.as-cta{background:var(--as-accent);color:#04222b!important;padding:8px 14px;border-radius:99px;font-weight:700;font-size:14px;white-space:nowrap;text-decoration:none!important}
.as-cta:hover{filter:brightness(1.07)}
@media(max-width:700px){.as-cta{display:none}.as-bar{padding:9px 14px}header.top nav{padding:0 14px 8px;font-size:13.6px;overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}header.top nav::-webkit-scrollbar{display:none}header.top nav a{white-space:nowrap}}
/* ---------- layout ---------- */
.wrap{max-width:var(--as-maxw);gap:38px;padding:26px 20px 10px;grid-template-columns:minmax(0,1fr) 316px}
@media(max-width:980px){.wrap{grid-template-columns:minmax(0,1fr);gap:22px;padding:16px 14px}}
main{min-width:0}
aside{align-self:start}
@media(min-width:981px){aside.as-sticky{position:sticky;top:104px;max-height:calc(100vh - 120px);overflow-y:auto;scrollbar-width:thin;padding-right:2px}}
/* ---------- typography ---------- */
h1{font-size:clamp(27px,3.4vw,38px);line-height:1.18;letter-spacing:-.022em;font-weight:800;margin:.15em 0 .3em}
h2{font-size:clamp(21px,2.2vw,26px);line-height:1.25;letter-spacing:-.014em;font-weight:750;margin:1.9em 0 .5em;padding-top:.15em;scroll-margin-top:112px}
h2::after{content:"";display:block;width:52px;height:3px;margin-top:.42em;border-radius:3px;background:linear-gradient(90deg,var(--as-brand),var(--as-accent))}
h3{font-size:18px;font-weight:700;margin:1.5em 0 .35em;scroll-margin-top:112px}
p{margin:.75em 0}
.crumb{font-size:12.8px;letter-spacing:.01em;margin-bottom:10px}
.crumb a{color:var(--as-mut)}
.crumb a:hover{color:var(--as-brand)}
/* ---------- cards & surfaces ---------- */
.card,.tile,details,.toc,.kv div{background:var(--as-surface);border-color:var(--as-line)}
.card{border-radius:var(--as-radius);padding:16px 18px;box-shadow:var(--as-shadow)}
.tile{border-radius:var(--as-radius-sm);box-shadow:var(--as-shadow)}
a.tile:hover{border-color:var(--as-accent);box-shadow:var(--as-shadow-lg);transform:translateY(-1px)}
.tile{transition:box-shadow .16s,transform .16s,border-color .16s}
details{border-radius:var(--as-radius-sm);box-shadow:var(--as-shadow)}
details summary{color:var(--as-ink)}
.grid{gap:14px}
/* ---------- hero image ---------- */
figure.hero{position:relative;margin:18px 0 6px}
.hero img{border-radius:var(--as-radius);border:1px solid var(--as-line);box-shadow:var(--as-shadow-lg);aspect-ratio:auto;cursor:zoom-in}
.hero figcaption{font-size:11.6px;color:var(--as-mut);margin-top:7px}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}
.duo figure{margin:0}
.duo img{width:100%;height:auto;border-radius:var(--as-radius-sm);border:1px solid var(--as-line);box-shadow:var(--as-shadow);cursor:zoom-in}
.duo .duo-name{display:block;font-weight:700;margin-top:7px;font-size:15.5px}
.duo figcaption{font-size:11px;color:var(--as-mut)}
@media(max-width:520px){.duo{grid-template-columns:1fr}}
/* ---------- key-value spec tiles ---------- */
.kv{grid-template-columns:repeat(auto-fit,minmax(142px,1fr));gap:12px;margin:18px 0}
.kv div{position:relative;border-radius:var(--as-radius-sm);padding:13px 14px 12px;box-shadow:var(--as-shadow);overflow:hidden}
.kv div::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:linear-gradient(180deg,var(--as-brand),var(--as-accent))}
.kv b{font-size:22px;font-weight:800;letter-spacing:-.02em;color:var(--as-brand);line-height:1.15}
:root[data-theme="dark"] .kv b{color:var(--as-brand-ink)}
.kv span{font-size:11.6px;text-transform:uppercase;letter-spacing:.06em;color:var(--as-mut);font-weight:600}
/* ---------- answer / notice / verdict ---------- */
.answer{background:linear-gradient(135deg,var(--as-accent-soft),var(--as-surface));border-left:4px solid var(--as-brand);border-radius:var(--as-radius-sm);padding:16px 18px;box-shadow:var(--as-shadow);font-size:16.8px}
.notice{background:var(--as-warn-bg);border:1px solid rgba(161,98,7,.28);color:var(--as-ink);border-radius:var(--as-radius-sm)}
.verdict{border-radius:var(--as-radius-sm);font-size:19px;padding:14px 18px;box-shadow:var(--as-shadow);display:flex;align-items:center;gap:10px}
.verdict::before{font-size:22px;line-height:1}
.verdict.ok::before{content:"\2713"}
.verdict.caution::before{content:"\26A0"}
.verdict.no::before{content:"\2715"}
.ok{background:var(--as-ok-bg);color:var(--as-ok)}
.caution{background:var(--as-warn-bg);color:var(--as-warn)}
.no{background:var(--as-no-bg);color:var(--as-no)}
.badge{background:var(--as-accent-soft);color:var(--as-brand-ink);font-size:12.2px;padding:3px 10px;font-weight:700}
.badge.ok{background:var(--as-ok-bg);color:var(--as-ok)}
.badge.caution{background:var(--as-warn-bg);color:var(--as-warn)}
.badge.no{background:var(--as-no-bg);color:var(--as-no)}
/* ---------- byline / author ---------- */
.byline{font-size:13.4px;border-bottom:1px solid var(--as-line);padding-bottom:13px;gap:9px}
.byline .av{background:linear-gradient(140deg,var(--as-brand),var(--as-deep));box-shadow:var(--as-shadow)}
.as-author{display:flex;gap:15px;align-items:flex-start;background:var(--as-surface);border:1px solid var(--as-line);border-radius:var(--as-radius);padding:17px 19px;margin:30px 0 6px;box-shadow:var(--as-shadow)}
.as-author .av{width:52px;height:52px;border-radius:14px;background:linear-gradient(140deg,var(--as-brand),var(--as-deep));color:#fff;display:grid;place-items:center;font-weight:800;font-size:19px;flex:0 0 auto}
.as-author p{margin:.3em 0 0;font-size:14.4px;color:var(--as-ink-soft)}
.as-author strong{font-size:15.5px}
.as-author .as-rev{display:inline-flex;align-items:center;gap:6px;margin-top:9px;font-size:12.4px;font-weight:700;color:var(--as-ok);background:var(--as-ok-bg);padding:4px 10px;border-radius:99px}
/* ---------- table of contents ---------- */
.toc{border-radius:var(--as-radius);box-shadow:var(--as-shadow);padding:15px 19px}
.toc strong{font-size:11.8px;letter-spacing:.08em;color:var(--as-mut)}
.toc ol{font-size:14.6px}
.toc a{color:var(--as-ink-soft);text-decoration:none}
.toc a:hover{color:var(--as-brand)}
.toc li.as-on>a{color:var(--as-brand);font-weight:700}
/* mobile TOC drawer */
.as-tocbtn{display:none}
@media(max-width:980px){
  main>nav.toc{display:none}
  .as-tocbtn{display:inline-flex;position:fixed;right:14px;bottom:16px;z-index:55;align-items:center;gap:8px;background:var(--as-deep);color:#fff;border:none;border-radius:99px;padding:12px 17px;font:700 14.5px/1 system-ui,sans-serif;box-shadow:var(--as-shadow-lg);cursor:pointer}
  .as-sheet{position:fixed;inset:auto 0 0 0;z-index:56;background:var(--as-surface);border-radius:18px 18px 0 0;box-shadow:var(--as-shadow-lg);max-height:72vh;overflow-y:auto;padding:16px 18px 26px;transform:translateY(101%);transition:transform .22s ease}
  .as-sheet.as-open{transform:translateY(0)}
  .as-sheet h4{margin:.2em 0 .6em;font-size:15px}
  .as-sheet ol{margin:0;padding-left:20px;font-size:15.5px}
  .as-sheet li{margin:8px 0}
  .as-scrim{position:fixed;inset:0;background:rgba(4,26,33,.45);z-index:55;opacity:0;pointer-events:none;transition:opacity .2s}
  .as-scrim.as-open{opacity:1;pointer-events:auto}
}
/* ---------- tables ---------- */
table{width:100%;border-collapse:separate;border-spacing:0;background:var(--as-surface);border:1px solid var(--as-line);border-radius:var(--as-radius-sm);overflow:hidden;box-shadow:var(--as-shadow);font-size:15.2px;margin:16px 0}
th,td{border:none;border-bottom:1px solid var(--as-line-soft);padding:11px 13px;text-align:left;vertical-align:top}
thead th{background:var(--as-accent-soft);color:var(--as-brand-ink);font-size:13.4px;text-transform:uppercase;letter-spacing:.04em;position:relative}
tbody th{background:var(--as-surface-2);font-weight:700;color:var(--as-ink)}
tbody tr:last-child th,tbody tr:last-child td{border-bottom:none}
tbody tr:hover td,tbody tr:hover th{background:var(--as-surface-2)}
table.srt thead th{cursor:pointer;user-select:none}
table.srt thead th::after{content:"\2195";opacity:.35;margin-left:6px;font-size:11px}
table.srt thead th.as-asc::after{content:"\2191";opacity:.9}
table.srt thead th.as-desc::after{content:"\2193";opacity:.9}
.as-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
/* ---------- figures / diagrams ---------- */
svg.fig{background:var(--as-surface);border:1px solid var(--as-line);border-radius:var(--as-radius-sm);box-shadow:var(--as-shadow);margin:16px 0;padding:2px}
figure.as-fig{margin:18px 0;padding:0}
figure.as-fig figcaption{font-size:12.4px;color:var(--as-mut);margin-top:6px}
.as-figrow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:640px){.as-figrow{grid-template-columns:1fr}}
/* ---------- buttons ---------- */
.btn{background:linear-gradient(135deg,var(--as-brand),var(--as-deep-2));border-radius:11px;padding:12px 20px;box-shadow:var(--as-shadow);font-weight:700;color:#fff}
.btn:hover{background:linear-gradient(135deg,var(--as-brand-ink),var(--as-deep));color:#fff}
.btn.as-ghost{background:transparent;border:1.5px solid var(--as-brand);color:var(--as-brand)}
.btn.as-ghost:hover{background:var(--as-accent-soft);color:var(--as-brand-ink)}
/* ---------- sidebar modules ---------- */
aside .card{margin-bottom:16px}
aside .card strong{display:block;font-size:12.4px;letter-spacing:.07em;text-transform:uppercase;color:var(--as-mut);margin-bottom:8px}
aside ul.clean{padding-left:0;list-style:none;margin:0}
aside ul.clean li{margin:0;border-top:1px solid var(--as-line-soft)}
aside ul.clean li:first-child{border-top:none}
aside ul.clean a{display:block;padding:8px 0;font-size:14.6px;font-weight:600;color:var(--as-ink-soft)}
aside ul.clean a:hover{color:var(--as-brand);text-decoration:none}
/* ---------- ad slots (reserved, zero CLS) ---------- */
.adslot{position:relative;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(135deg,var(--as-surface-2),var(--as-surface-2) 10px,var(--as-surface) 10px,var(--as-surface) 20px);border:1px dashed var(--as-line);border-radius:var(--as-radius-sm);color:var(--as-mut);font-size:11.5px;letter-spacing:.09em;text-transform:uppercase;margin:26px 0;overflow:hidden}
.adslot.as-inline{min-height:280px}
.adslot.as-side{min-height:600px;margin:0 0 16px}
@media(max-width:980px){.adslot.as-side{min-height:280px}}
.adslot[data-filled="1"]{background:none;border:none;color:transparent}
/* ---------- email capture ---------- */
.as-email{background:linear-gradient(140deg,var(--as-deep),var(--as-deep-2) 60%,#10617a);color:#eaf9fc;border-radius:var(--as-radius);padding:20px 22px;margin:30px 0;box-shadow:var(--as-shadow-lg)}
.as-email h3{margin:0 0 6px;color:#fff;font-size:19.5px}
.as-email p{margin:0 0 13px;font-size:14.6px;color:#cfeaf1}
.as-email form{display:flex;gap:9px;flex-wrap:wrap}
.as-email input{flex:1 1 210px;width:auto;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.10);color:#fff;border-radius:10px;padding:11px 13px}
.as-email input::placeholder{color:#a9cfd9}
.as-email button{background:var(--as-accent);color:#04222b;border:none;border-radius:10px;padding:11px 20px;font:700 15px/1 system-ui,sans-serif;cursor:pointer}
.as-email button:hover{filter:brightness(1.08)}
.as-email small{display:block;margin-top:9px;font-size:11.8px;color:#a9cfd9}
aside .as-email{padding:16px 17px;margin:0 0 16px}
aside .as-email h3{font-size:16.5px}
aside .as-email form{flex-direction:column}
aside .as-email input,aside .as-email button{flex:1 1 auto;width:100%}
/* ---------- calculator widget (embedded) ---------- */
.as-calc{background:var(--as-surface);border:1px solid var(--as-line);border-radius:var(--as-radius);box-shadow:var(--as-shadow-lg);padding:18px 20px;margin:26px 0}
.as-calc h3{margin:0 0 4px;font-size:19px}
.as-calc .as-calc-sub{font-size:13.8px;color:var(--as-mut);margin:0 0 14px}
.as-calc-row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}
.as-calc-row label{margin:0 0 5px;font-size:12.6px;letter-spacing:.04em;text-transform:uppercase;color:var(--as-mut)}
.as-calc-f{flex:1 1 150px;min-width:0}
.as-calc select,.as-calc input{background:var(--as-surface-2);color:var(--as-ink);border:1px solid var(--as-line);border-radius:10px;padding:10px 11px}
.as-out{display:flex;align-items:baseline;gap:10px;margin:16px 0 4px}
.as-out b{font-size:40px;font-weight:800;letter-spacing:-.03em;color:var(--as-brand);line-height:1}
:root[data-theme="dark"] .as-out b{color:var(--as-brand-ink)}
.as-out span{font-size:14.6px;color:var(--as-mut)}
.as-gauge{height:14px;border-radius:99px;background:var(--as-line-soft);overflow:hidden;margin:12px 0 8px}
.as-gauge i{display:block;height:100%;width:0;border-radius:99px;background:linear-gradient(90deg,var(--as-ok),#4fbf8b);transition:width .3s}
.as-gauge.as-warn i{background:linear-gradient(90deg,#e0a72e,var(--as-warn))}
.as-gauge.as-over i{background:linear-gradient(90deg,#e4675b,var(--as-no))}
.as-note{font-size:13.8px;color:var(--as-ink-soft);margin:8px 0 0}
.as-chips{display:flex;flex-wrap:wrap;gap:7px;margin:12px 0 0}
.as-chip{background:var(--as-accent-soft);color:var(--as-brand-ink);border:1px solid transparent;border-radius:99px;padding:5px 12px;font-size:13.2px;font-weight:600;cursor:pointer}
.as-chip:hover{border-color:var(--as-brand)}
/* full calculator page */
.as-calcpage{display:grid;grid-template-columns:1fr 1fr;gap:18px}
@media(max-width:760px){.as-calcpage{grid-template-columns:1fr}}
.as-stock-list{margin:12px 0 0;padding:0;list-style:none}
.as-stock-list li{display:flex;align-items:center;gap:10px;border-top:1px solid var(--as-line-soft);padding:9px 0;font-size:15px}
.as-stock-list li b{font-weight:700}
.as-stock-list .as-x{margin-left:auto;background:none;border:none;color:var(--as-no);font-size:17px;cursor:pointer;line-height:1;padding:2px 6px;border-radius:8px}
.as-stock-list .as-x:hover{background:var(--as-no-bg)}
.as-qty{display:inline-flex;align-items:center;border:1px solid var(--as-line);border-radius:9px;overflow:hidden}
.as-qty button{background:var(--as-surface-2);border:none;color:var(--as-ink);width:30px;height:32px;font-size:16px;cursor:pointer}
.as-qty button:hover{background:var(--as-accent-soft)}
.as-qty span{min-width:32px;text-align:center;font-weight:700;font-size:15px}
.as-warnlist{margin:14px 0 0;padding:0;list-style:none;font-size:14.2px}
.as-warnlist li{border-left:3px solid var(--as-warn);background:var(--as-warn-bg);color:var(--as-ink);border-radius:0 9px 9px 0;padding:8px 12px;margin:7px 0}
.as-warnlist li.as-bad{border-left-color:var(--as-no);background:var(--as-no-bg)}
.as-tankviz{width:100%;height:auto;display:block;border-radius:var(--as-radius-sm);border:1px solid var(--as-line);background:var(--as-surface)}
/* ---------- compatibility matrix ---------- */
.as-matrix-tools{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end;margin:14px 0}
.as-matrix-wrap{overflow:auto;max-height:76vh;border:1px solid var(--as-line);border-radius:var(--as-radius-sm);background:var(--as-surface);box-shadow:var(--as-shadow)}
table.as-matrix{border:none;border-radius:0;box-shadow:none;margin:0;font-size:12.4px;border-collapse:separate;border-spacing:0}
table.as-matrix th,table.as-matrix td{padding:0;border:none}
table.as-matrix thead th{position:sticky;top:0;z-index:3;background:var(--as-surface-2);color:var(--as-ink-soft);font-size:11px;text-transform:none;letter-spacing:0;height:118px;vertical-align:bottom;padding:0 0 6px;text-align:left}
table.as-matrix thead th div{transform:rotate(-60deg);transform-origin:left bottom;width:118px;white-space:nowrap;font-weight:600}
table.as-matrix tbody th{position:sticky;left:0;z-index:2;background:var(--as-surface);border-right:1px solid var(--as-line);padding:0 10px;white-space:nowrap;font-size:13px;font-weight:600;max-width:190px;overflow:hidden;text-overflow:ellipsis}
table.as-matrix thead th:first-child{position:sticky;left:0;z-index:4;background:var(--as-surface-2);vertical-align:bottom;padding:0 10px 8px;min-width:150px}
table.as-matrix thead th:first-child div{transform:none;width:auto;font-size:12px;font-weight:700;color:var(--as-mut)}
.as-cell{display:block;width:26px;height:26px;border-radius:6px;margin:1px;text-decoration:none!important;position:relative}
.as-cell.ok{background:#3fb27a}
.as-cell.caution{background:#e0a72e}
.as-cell.no{background:#e0685c}
.as-cell.self{background:var(--as-line-soft)}
.as-cell.none{background:var(--as-line-soft);opacity:.45}
.as-cell:hover{outline:2px solid var(--as-ink);outline-offset:1px;z-index:5}
.as-legend{display:flex;gap:16px;flex-wrap:wrap;font-size:13.6px;margin:12px 0;color:var(--as-ink-soft)}
.as-legend i{display:inline-block;width:14px;height:14px;border-radius:4px;margin-right:6px;vertical-align:-2px}
/* ---------- misc ---------- */
.as-pillrow{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.as-pill{display:inline-flex;align-items:center;gap:7px;background:var(--as-surface);border:1px solid var(--as-line);border-radius:99px;padding:7px 14px;font-size:14px;font-weight:600;color:var(--as-ink-soft);box-shadow:var(--as-shadow);text-decoration:none}
.as-pill:hover{border-color:var(--as-accent);color:var(--as-brand);text-decoration:none}
.as-related{display:grid;grid-template-columns:repeat(auto-fill,minmax(215px,1fr));gap:12px;margin:14px 0}
.as-related a{display:block;background:var(--as-surface);border:1px solid var(--as-line);border-radius:var(--as-radius-sm);padding:12px 14px;font-size:14.6px;font-weight:600;color:var(--as-ink-soft);box-shadow:var(--as-shadow);text-decoration:none}
.as-related a:hover{border-color:var(--as-accent);color:var(--as-brand);transform:translateY(-1px)}
.as-related a small{display:block;font-weight:600;font-size:12px;margin-top:4px}
.as-related a small.ok{color:var(--as-ok)}
.as-related a small.caution{color:var(--as-warn)}
.as-related a small.no{color:var(--as-no)}
footer{border-top:1px solid var(--as-line);color:var(--as-mut);background:var(--as-surface);margin-top:44px;padding:30px 20px 34px}
footer nav a{color:var(--as-ink-soft);font-weight:600}
.as-lightbox{position:fixed;inset:0;background:rgba(4,20,26,.86);z-index:70;display:grid;place-items:center;padding:22px;cursor:zoom-out;opacity:0;pointer-events:none;transition:opacity .18s}
.as-lightbox.as-open{opacity:1;pointer-events:auto}
.as-lightbox img{max-width:min(1100px,96vw);max-height:92vh;border-radius:12px;box-shadow:0 20px 60px rgba(0,0,0,.5)}
@media print{header.top,aside,.adslot,.as-tocbtn,.as-email,.as-progress{display:none!important}.wrap{display:block;max-width:none}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
