:root{--bg:#f6f7fb;--card:#fff;--ink:#141a2b;--mute:#5d6680;--line:#e2e5ee;--blue:#326ce5;--green:#18a058;--red:#d03050;--amber:#e09b16;--violet:#7c4dff;--soft:#eef2fd}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0e1220;--card:#161b2e;--ink:#e8ebf5;--mute:#98a1bd;--line:#2a3150;--soft:#1c2440}}
:root[data-theme="dark"]{--bg:#0e1220;--card:#161b2e;--ink:#e8ebf5;--mute:#98a1bd;--line:#2a3150;--soft:#1c2440}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--blue);text-decoration:none}a:hover{text-decoration:underline}
.wrap{max-width:1040px;margin:0 auto;padding:0 16px}
header.top{border-bottom:1px solid var(--line);background:var(--card)}
header.top .wrap{display:flex;align-items:center;gap:12px;height:56px}
.logo{font-weight:800;color:var(--ink)}.logo b{color:var(--blue)}
header.top nav{margin-left:auto;font-size:14px;color:var(--mute)}
h1{font-size:clamp(28px,5vw,40px);line-height:1.15;margin:32px 0 8px}
h2{font-size:22px;margin:40px 0 12px}h3{margin:0 0 6px;font-size:17px}
.lead{color:var(--mute);font-size:18px;max-width:720px}
.grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}
.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:16px}
.card p{margin:4px 0;color:var(--mute);font-size:14px}
.tag{display:inline-block;font-size:12px;font-weight:600;padding:2px 8px;border-radius:99px;background:var(--soft);color:var(--blue)}
.tag.off{color:var(--mute)}
.topic{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-top:1px dashed var(--line);font-size:15px}
.topic.off{color:var(--mute)}
.bar{height:8px;border-radius:99px;background:var(--soft);overflow:hidden;margin:8px 0}.bar i{display:block;height:100%;background:var(--blue)}
.pill{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}
.pill button{border:1px solid var(--line);background:var(--card);color:var(--ink);padding:6px 14px;border-radius:99px;cursor:pointer;font:inherit;font-size:14px}
.pill button.on{background:var(--blue);border-color:var(--blue);color:#fff}
pre{background:#0b1020;color:#d7e0ff;border-radius:12px;padding:14px;overflow:auto;font-size:13.5px;line-height:1.5}
code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.k{color:#7fb4ff}.c{color:#7b86a8}.s{color:#9be7a8}
.icon{width:40px;height:40px;border-radius:10px;display:grid;place-items:center;font-size:22px;margin-bottom:8px}
footer{color:var(--mute);font-size:13px;padding:40px 0}
table{width:100%;border-collapse:collapse;font-size:14px}td,th{padding:8px;border-bottom:1px solid var(--line);text-align:left}
input[type=range]{width:100%;accent-color:var(--blue)}
label{font-size:14px;color:var(--mute);display:block}label b{color:var(--ink)}
.q button{display:block;width:100%;text-align:left;margin:6px 0;padding:10px 12px;border-radius:10px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:inherit;cursor:pointer}
.q button.ok{border-color:var(--green);background:color-mix(in srgb,var(--green) 14%,transparent)}
.q button.no{border-color:var(--red);background:color-mix(in srgb,var(--red) 14%,transparent)}
.why{font-size:14px;color:var(--mute);min-height:1.5em}
