:root{--bg:#fff;--text:#0e1621;--muted:#5b6678;--card:#f6f8fb;--primary:#0d6efd;--border:rgba(15,23,32,.12)}
[data-theme="dark"]{--bg:#0a1117;--text:#e6eef6;--muted:#99a8ba;--card:#0b141c;--primary:#66aaff;--border:rgba(230,238,246,.14)}
*{box-sizing:border-box}html,body{margin:0;padding:0}
body{font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.7}
.container{max-width:1120px;margin:0 auto;padding:16px}
header{position:sticky;top:0;z-index:50;background:linear-gradient(180deg,var(--card),transparent);border-bottom:1px solid var(--border);backdrop-filter:saturate(140%) blur(6px)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:12px}
.logo{font-weight:800;letter-spacing:.2px;color:var(--text);text-decoration:none}
.menu{display:flex;gap:16px;list-style:none;margin:0;padding:0}
.menu a{color:var(--text);text-decoration:none}
.menu a:hover{text-decoration:underline}
.controls{display:flex;gap:10px;align-items:center}
.btn{background:var(--primary);color:#fff;padding:10px 14px;border-radius:12px;border:0;cursor:pointer;text-decoration:none;display:inline-block}
.ghost{background:transparent;border:1px solid var(--border);padding:8px 10px;border-radius:12px;color:var(--text);cursor:pointer}
main{display:grid;grid-template-columns:1fr 320px;gap:20px}
@media (max-width:980px){.menu{display:none}main{grid-template-columns:1fr}}
.article{background:var(--card);padding:22px;border-radius:16px;border:1px solid var(--border)}
aside{background:var(--card);padding:16px;border-radius:16px;border:1px solid var(--border)}
h1{font-size:2rem;margin:8px 0 14px}
h2{margin:28px 0 10px;font-size:1.35rem}
.lead{color:var(--muted);font-size:1.06rem}
.small{font-size:.92rem;color:var(--muted)}
a{color:var(--primary)}
:focus-visible{outline:3px solid #8ab4f8;outline-offset:2px}
img{max-width:100%;height:auto;border-radius:12px}
blockquote{background:rgba(0,0,0,.04);padding:10px 12px;border-radius:10px}
[data-theme="dark"] blockquote{background:rgba(255,255,255,.06)}
ul.check>li{margin:6px 0}
.badge{display:inline-block;padding:3px 8px;border-radius:999px;background:rgba(13,110,253,.1);margin-right:6px}
footer{margin-top:32px;padding:16px 0;border-top:1px solid var(--border)}
.breadcrumbs{font-size:.9rem;color:var(--muted);margin-bottom:6px}
