:root{--bg:#f7f6f2;--card:#ffffff;--ink:#1c2433;--mut:#5a6272;--line:#e3e1da;--acc:#0e7c86;--acc2:#e4572e;--code:#eef3f3;
--r:14px;font-family:ui-sans-serif,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif}
@media (prefers-color-scheme:dark){:root{--bg:#121821;--card:#19212c;--ink:#e8ebf0;--mut:#a3acba;--line:#2a3442;--acc:#3cc4ce;--acc2:#ff8a65;--code:#1f2a36}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-size:17px;line-height:1.6}
a{color:var(--acc)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--acc2);outline-offset:2px}
.skip{position:absolute;left:-999px}.skip:focus{left:12px;top:12px;background:var(--acc);color:#fff;padding:8px 12px;border-radius:8px;z-index:9}
header.top{border-bottom:1px solid var(--line);background:var(--card)}
.wrap{max-width:1040px;margin:0 auto;padding:0 16px}
.bar{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:60px;flex-wrap:wrap}
.brand{display:flex;align-items:center;gap:8px;font-weight:800;color:var(--ink);text-decoration:none;letter-spacing:-.01em}
.brand svg{width:26px;height:26px}
nav.main{display:flex;gap:2px;flex-wrap:wrap}nav.main a{color:var(--ink);text-decoration:none;padding:8px 10px;border-radius:10px;font-size:15px}
nav.main a[aria-current=page]{background:var(--code);color:var(--acc)}
main{padding:28px 0 64px}
.crumbs{font-size:14px;color:var(--mut);margin:0 0 14px}.crumbs a{color:var(--mut)}
h1{font-size:clamp(28px,5vw,42px);line-height:1.12;letter-spacing:-.02em;margin:0 0 12px}
h2{font-size:clamp(21px,3vw,27px);line-height:1.2;margin:36px 0 10px}h3{font-size:19px;margin:22px 0 6px}
.lead{font-size:19px;color:var(--mut);max-width:62ch}
.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));margin:18px 0}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:18px}
.card h3{margin-top:0}.card p{margin:.3em 0;color:var(--mut)}.card a.go{font-weight:700;text-decoration:none}
.tag{display:inline-block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--acc);margin-bottom:4px}
table{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--line);border-radius:var(--r);overflow:hidden;font-size:15px}
th,td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:var(--code)}
.tablewrap{overflow-x:auto;margin:14px 0}
sup a{text-decoration:none;font-size:12px}
.sources{font-size:14px;color:var(--mut);border-top:1px solid var(--line);margin-top:40px;padding-top:12px}.sources li{margin:4px 0}
.note{background:var(--code);border-left:4px solid var(--acc);padding:12px 14px;border-radius:8px;margin:16px 0}
label{display:block;font-weight:600;margin:12px 0 4px}input,select{font:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--card);color:var(--ink);width:100%;max-width:340px}
button{font:inherit;font-weight:700;background:var(--acc);color:#fff;border:0;border-radius:10px;padding:11px 18px;cursor:pointer;margin-top:14px}
.out{font-size:18px;margin-top:16px}.out b{color:var(--acc)}
footer{border-top:1px solid var(--line);background:var(--card);font-size:14px;color:var(--mut);padding:22px 0 40px}
footer .cols{display:flex;gap:28px;flex-wrap:wrap}footer a{color:var(--mut)}
.stage{position:relative;max-width:360px;margin:16px 0;background:#000;border-radius:10px;overflow:hidden;aspect-ratio:9/16}
.stage img{width:100%;height:100%;object-fit:cover;display:block}
.zone{position:absolute;background:rgba(228,87,46,.35);border:1px dashed #fff;color:#fff;font-size:11px;display:flex;align-items:center;justify-content:center;text-align:center}
@media (max-width:640px){table.stack thead{position:absolute;left:-9999px}table.stack,table.stack tbody,table.stack tr,table.stack th,table.stack td{display:block;width:100%}table.stack{border:0;background:none}table.stack tr{background:var(--card);border:1px solid var(--line);border-radius:var(--r);margin:0 0 12px;overflow:hidden}table.stack th[scope=row]{background:var(--code);font-size:17px}table.stack td{display:grid;grid-template-columns:96px 1fr;gap:8px}table.stack td::before{content:attr(data-label);font-weight:700;color:var(--mut)}}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
