:root{--bg:#f6f7f9;--card:#fff;--ink:#14161b;--ink2:#454b57;--muted:#646b78;--line:#e3e6eb;--accent:#2f5bea;--accent-soft:#eaf0ff}
@media (prefers-color-scheme:dark){:root{--bg:#0e1015;--card:#161a22;--ink:#eef0f4;--ink2:#c0c6d1;--muted:#8f97a6;--line:#262c38;--accent:#8aa8ff;--accent-soft:#1c2440}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.65 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--accent)}
.topo{max-width:1040px;margin:0 auto;padding:20px 16px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}
.marca{font-weight:800;font-size:20px;color:var(--ink);text-decoration:none;letter-spacing:-.02em;margin-right:auto}
.marca span{color:var(--accent)}
nav a{color:var(--ink2);text-decoration:none;margin-left:16px;font-weight:600;font-size:15px}
main{max-width:1040px;margin:0 auto;padding:0 16px 48px}
.hero{padding:40px 0 28px}
.hero h1{font-size:clamp(28px,5vw,44px);line-height:1.15;letter-spacing:-.03em;margin:0 0 14px}
.hero p{font-size:18px;color:var(--ink2);max-width:62ch;margin:0}
h2{font-size:24px;letter-spacing:-.02em;margin:40px 0 14px}
.grade{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:20px;text-decoration:none;color:inherit;display:block}
a.card:hover{border-color:var(--accent)}
.card h3{margin:0 0 6px;font-size:18px}.card p{margin:0;color:var(--ink2);font-size:15px}
.tag{display:inline-block;font-size:12px;font-weight:700;color:var(--accent);background:var(--accent-soft);border-radius:999px;padding:2px 10px;margin-bottom:10px}
dl{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:8px 20px;margin:0}
dt{font-weight:700;margin-top:12px}dd{margin:2px 0 12px;color:var(--ink2)}
article{max-width:760px}article h1{font-size:clamp(26px,4.5vw,38px);letter-spacing:-.03em;line-height:1.2;margin:28px 0 8px}
article .meta{color:var(--muted);font-size:14px;margin-bottom:24px}
article h2{font-size:21px;margin:30px 0 8px}
code,pre{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:14px}
pre{background:var(--card);border:1px solid var(--line);border-radius:12px;padding:14px 16px;overflow-x:auto}
code{background:var(--accent-soft);border-radius:5px;padding:1px 5px}pre code{background:none;padding:0}
footer{border-top:1px solid var(--line);max-width:1040px;margin:0 auto;padding:24px 16px 40px;color:var(--muted);font-size:14px}
@media (max-width:560px){nav a{margin:0 14px 0 0}.topo{gap:8px}}
