
:root{--bg:#f6f8fa;--card:#fff;--tx:#1d2830;--mut:#5c6b76;--ac:#2f6f9f;--ac2:#245a82;--bd:#dde4ea;--r:12px}
@media (prefers-color-scheme:dark){:root{--bg:#12181d;--card:#192128;--tx:#e6edf2;--mut:#93a4b1;--ac:#6fb0de;--ac2:#8cc4ea;--bd:#2b3640}}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--tx);font:17px/1.6 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--ac)}.w{max-width:900px;margin:0 auto;padding:0 20px}
header.site{background:var(--card);border-bottom:1px solid var(--bd)}header.site .w{display:flex;flex-wrap:wrap;gap:10px 26px;justify-content:space-between;align-items:center;padding-top:14px;padding-bottom:14px}
.brand{font-weight:700;text-decoration:none;color:var(--tx);font-size:1.15rem}.brand span{color:var(--ac)}
nav a{margin-right:16px;text-decoration:none;color:var(--tx);font-size:.95rem}nav a:hover,nav a[aria-current]{color:var(--ac)}nav a.login{border:1px solid var(--ac);border-radius:8px;padding:5px 12px;margin:0;color:var(--ac)}
h1{font-size:2rem;line-height:1.2;margin:1.1em 0 .3em}h2{font-size:1.3rem;margin:1.6em 0 .4em}p,li{max-width:46em}
.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:30px;align-items:center;padding:30px 0 10px}@media(max-width:720px){.hero{grid-template-columns:1fr}}
.hero p{color:var(--mut)}.btn{display:inline-block;background:var(--ac);color:#fff;text-decoration:none;padding:10px 18px;border-radius:9px;font-weight:600;border:0;font:inherit;font-weight:600;cursor:pointer}.btn:hover{background:var(--ac2)}.btn.alt{background:transparent;color:var(--ac);border:1px solid var(--ac);margin-left:8px}
.feat{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:26px 0;padding:0;list-style:none}.feat li{background:var(--card);border:1px solid var(--bd);border-radius:var(--r);padding:16px}.feat b{display:block;margin-bottom:4px}
.card{background:var(--card);border:1px solid var(--bd);border-radius:var(--r);padding:16px 18px;margin:12px 0}.card a{text-decoration:none;color:var(--tx)}.card a:hover h3{color:var(--ac)}.card h3{margin:.1em 0;font-size:1.08rem}
.meta{color:var(--mut);font-size:.85rem}.tag{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--ac)}
code{overflow-wrap:anywhere;background:var(--card);border:1px solid var(--bd);border-radius:6px;padding:1px 6px;font:.88em ui-monospace,SFMono-Regular,Consolas,monospace;word-break:break-word}
form.login{background:var(--card);border:1px solid var(--bd);border-radius:var(--r);padding:20px;max-width:380px;margin:20px 0}label{display:block;font-size:.88rem;color:var(--mut);margin:12px 0 4px}input{width:100%;padding:10px 12px;border:1px solid var(--bd);border-radius:8px;background:var(--bg);color:var(--tx);font:inherit}
.err{border-left:3px solid #b3422d;padding:2px 12px;color:#b3422d;background:var(--card)}
table{border-collapse:collapse;width:100%;background:var(--card);border:1px solid var(--bd);border-radius:var(--r)}td,th{padding:10px 14px;border-bottom:1px solid var(--bd);text-align:left}.ok{color:#2a7d3f;font-weight:600}
footer{border-top:1px solid var(--bd);margin-top:46px;padding:20px 0 40px;font-size:.85rem;color:var(--mut)}footer a{margin-right:14px;display:inline-block}li{overflow-wrap:anywhere}nav{display:flex;flex-wrap:wrap;gap:6px 14px;align-items:center}nav a{white-space:nowrap;margin:0!important}img{max-width:100%;height:auto}.hero>*{min-width:0}
a:focus-visible,input:focus-visible,button:focus-visible{outline:2px solid var(--ac);outline-offset:2px}.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:var(--card);padding:6px}
