:root{--bg:#EEF1F4;--surface:#FFFFFF;--ink:#1D2B3A;--muted:#5B6B7B;--line:#C9D2DB;--tape:#F2B705;--tape-ink:#2A2100;--plan:#2F5D86;color-scheme:light}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#121820;--surface:#1B232D;--ink:#E4EAF0;--muted:#9AA9B8;--line:#34414F;--tape:#F5C02E;--plan:#8FB5DA;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#121820;--surface:#1B232D;--ink:#E4EAF0;--muted:#9AA9B8;--line:#34414F;--tape:#F5C02E;--plan:#8FB5DA;color-scheme:dark}
:root{box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px)}
*,*::before,*::after{box-sizing:inherit}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Barlow,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;font-size:17px;line-height:1.6}
h1,h2{font-family:"Barlow Condensed","Arial Narrow",Barlow,sans-serif;line-height:1.1}
a{color:var(--plan)}
a:focus-visible{outline:2px solid var(--plan);outline-offset:2px}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
header.site{padding:18px 0}
.logo{font-family:"Barlow Condensed","Arial Narrow",sans-serif;font-weight:700;font-size:1.45rem;color:var(--ink);text-decoration:none;display:inline-flex;align-items:center;gap:10px}
.logo i{display:inline-block;width:26px;height:26px;border-radius:50%;background:var(--tape);box-shadow:inset 0 0 0 6px var(--tape),inset 0 0 0 8px var(--tape-ink)}
.tape{height:14px;margin:0 0 30px;background-color:var(--tape);background-image:repeating-linear-gradient(90deg,var(--tape-ink) 0 1px,transparent 1px 10px);background-size:100% 6px;background-repeat:no-repeat;border-radius:2px}
article{max-width:720px;padding-bottom:30px}
article h1{font-size:clamp(2.6rem,7vw,4rem);margin:10px 0 6px}
article h2{font-size:1.6rem;margin:32px 0 6px}
.updated{color:var(--muted);margin:0 0 20px}
.card{background:var(--surface);border-radius:10px;padding:18px 22px;margin:18px 0}
.btn{display:inline-block;background:var(--ink);color:var(--surface);text-decoration:none;font-weight:600;padding:10px 18px;border-radius:7px}
footer{padding:28px 0 40px;color:var(--muted);font-size:.92rem;border-top:1px solid var(--line);margin-top:20px}
footer nav{display:flex;flex-wrap:wrap;gap:6px 20px;margin-bottom:8px}
footer a{color:var(--muted)}
