:root{
  --teal:#25bcbe; --teal-d:#0b6b6e; --green:#8dc63f; --green-d:#4a7a10; --orange:#f7941d; --yellow:#fdb913;
  --ink:#1c2a2f; --ink-2:#44545a; --bg:#ffffff; --bg-2:#f4faf9; --bg-3:#fff8e8; --line:#d8e5e3;
  --ok:#1b7a3a; --ok-bg:#e6f6ea; --bad:#a72b2b; --bad-bg:#fdeaea; --focus:#0b4fd6;
  --r:16px; --shadow:0 6px 24px rgba(11,107,110,.12); --max:1120px;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#111b1e; --bg-2:#172428; --bg-3:#221e12; --ink:#eaf3f2; --ink-2:#b5c7c9; --line:#2b3d41;
    --teal-d:#5fd9db; --green-d:#a9dc62; --ok:#6fdc90; --ok-bg:#12301c; --bad:#ff9a9a; --bad-bg:#3a1919; --focus:#8ab4ff;
    --shadow:0 6px 24px rgba(0,0,0,.4);
  }
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
body{margin:0;background:var(--bg);color:var(--ink);font:1.0625rem/1.65 "Segoe UI",system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif}
img{max-width:100%;height:auto}
a{color:var(--teal-d);text-underline-offset:3px}
a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px;border-radius:4px}
.skip{position:absolute;left:-999px;top:0;background:var(--ink);color:var(--bg);padding:.6rem 1rem;z-index:100}
.skip:focus{left:8px;top:8px}
.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 16px}
h1,h2,h3{font-family:"Trebuchet MS","Segoe UI",system-ui,sans-serif;line-height:1.2;margin:1.6em 0 .5em;letter-spacing:-.01em}
h1{font-size:clamp(1.9rem,4.5vw,3rem);margin-top:.2em}
h2{font-size:clamp(1.4rem,3vw,1.9rem)}
h3{font-size:1.2rem}
p,ul,ol{margin:0 0 1em}
.lead{font-size:1.2rem;color:var(--ink-2)}
/* header */
.site-header{border-bottom:4px solid var(--teal);background:var(--bg);position:sticky;top:0;z-index:50}
.site-header .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 20px;padding-top:10px;padding-bottom:10px}
.brand img{height:44px;width:auto;display:block}
.nav ul{display:flex;flex-wrap:wrap;gap:4px 6px;list-style:none;margin:0;padding:0}
.nav a{display:block;padding:.45rem .8rem;border-radius:999px;text-decoration:none;color:var(--ink);font-weight:600;font-size:.98rem}
.nav a:hover{background:var(--bg-2)}
.nav a[aria-current="page"]{background:var(--teal-d);color:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .nav a[aria-current="page"]{color:#0c1a1c}}
/* buttons */
.btn{display:inline-block;background:var(--teal-d);color:#fff;border:2px solid var(--teal-d);padding:.75rem 1.4rem;border-radius:999px;font:700 1.05rem "Trebuchet MS","Segoe UI",sans-serif;text-decoration:none;cursor:pointer;transition:transform .12s}
.btn:hover{transform:translateY(-2px);text-decoration:none}
.btn.alt{background:transparent;color:var(--teal-d)}
.btn.warm{background:var(--yellow);border-color:var(--yellow);color:#20180a}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .btn{color:#0c1a1c}:root:not([data-theme="light"]) .btn.alt{color:var(--teal-d)}}
.btn[disabled]{opacity:.55;cursor:not-allowed;transform:none}
/* hero */
.hero{background:linear-gradient(135deg,var(--bg-2),var(--bg-3));position:relative;overflow:hidden;padding:48px 0 56px}
.hero .wrap{display:grid;gap:32px;grid-template-columns:1.3fr .7fr;align-items:center}
.hero .art{display:block;width:100%;max-width:300px;justify-self:center}
.hero .cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.eyebrow{display:inline-block;background:var(--yellow);color:#20180a;font-weight:700;font-size:.85rem;padding:.2rem .8rem;border-radius:999px;letter-spacing:.03em;text-transform:uppercase}
@media (max-width:760px){.hero .wrap{grid-template-columns:1fr}.hero .art{max-width:180px;order:-1}}
/* sections & cards */
section.block{padding:40px 0}
section.alt{background:var(--bg-2)}
.grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}
.card{background:var(--bg);border:2px solid var(--line);border-radius:var(--r);padding:20px;display:flex;flex-direction:column;gap:8px;text-decoration:none;color:var(--ink);transition:transform .12s,box-shadow .12s,border-color .12s}
a.card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--teal)}
.card h3{margin:0;font-size:1.15rem}
.card p{margin:0;color:var(--ink-2);font-size:.98rem}
.card .meta{font-size:.85rem;color:var(--ink-2);margin-top:auto}
.hex{width:52px;height:58px;clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%);display:grid;place-items:center;font-size:1.6rem;background:var(--teal)}
.hex.c1{background:var(--teal)}.hex.c2{background:var(--green)}.hex.c3{background:var(--orange)}.hex.c4{background:var(--yellow)}
.steps{counter-reset:s;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));list-style:none;padding:0}
.steps li{counter-increment:s;background:var(--bg);border:2px solid var(--line);border-radius:var(--r);padding:20px 20px 20px 20px}
.steps li::before{content:counter(s);display:inline-grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--orange);color:#20180a;font-weight:800;margin-bottom:8px}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px;padding:0;list-style:none}
.chip{display:inline-block;padding:.15rem .7rem;border-radius:999px;background:var(--bg-2);border:1px solid var(--line);font-size:.85rem;font-weight:600;color:var(--ink)}
.chip.lv-iniciante{background:#e6f6d0;color:#2c4a05;border-color:#bcdc8a}
.chip.lv-intermediario{background:#fff1cc;color:#5a3d00;border-color:#f0d27a}
.chip.lv-avancado{background:#ffe1c4;color:#6a2f00;border-color:#f2b57c}
.breadcrumb{font-size:.92rem;color:var(--ink-2);padding:16px 0 0}
.breadcrumb ol{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:0;gap:6px}
.breadcrumb li+li::before{content:"›";margin-right:6px}
/* page/article */
.page{padding-top:8px;padding-bottom:56px}
.prose{max-width:760px}
.prose h2{margin-top:1.8em}
.prose li{margin-bottom:.35em}
.prose ul,.prose ol{padding-left:1.4em}
.byline{color:var(--ink-2);font-size:.95rem;margin-bottom:1.4rem}
.toc{background:var(--bg-2);border:2px solid var(--line);border-radius:var(--r);padding:14px 20px;margin:0 0 1.6rem;max-width:760px}
.toc strong{display:block;margin-bottom:4px}
.toc ol{margin:0;padding-left:1.2em}
.box{background:var(--bg-3);border:2px solid var(--yellow);border-radius:var(--r);padding:18px 20px;margin:1.6rem 0;max-width:760px}
.box h2,.box h3{margin-top:0}
details.qa{border:2px solid var(--line);border-radius:12px;padding:10px 16px;margin-bottom:10px;background:var(--bg)}
details.qa summary{cursor:pointer;font-weight:600}
.src-list li{word-break:break-word}
table.data{border-collapse:collapse;width:100%;max-width:760px;margin-bottom:1.4rem}
table.data th,table.data td{border:1px solid var(--line);padding:8px 10px;text-align:left;vertical-align:top}
table.data th{background:var(--bg-2)}
/* footer */
.site-footer{background:#12292c;color:#e6f2f1;padding:40px 0 24px;margin-top:40px}
.site-footer a{color:#bff1f2}
.site-footer .cols{display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.site-footer h2{font-size:1rem;margin:0 0 8px;color:#fff}
.site-footer ul{list-style:none;padding:0;margin:0}
.site-footer li{margin-bottom:6px}
.site-footer .fine{margin-top:24px;padding-top:16px;border-top:1px solid #2f4b4e;font-size:.9rem;color:#b9cfcf}
.foot-logo{background:#fff;border-radius:10px;padding:6px 10px;display:inline-block;margin-bottom:10px}
.foot-logo img{height:34px;display:block}
/* quiz */
.quiz{max-width:820px;margin:0 auto}
.panel{background:var(--bg);border:2px solid var(--line);border-radius:var(--r);padding:22px;box-shadow:var(--shadow)}
fieldset{border:0;padding:0;margin:0 0 20px}
legend{font-weight:700;font-size:1.1rem;padding:0;margin-bottom:8px}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opts label{position:relative}
.opts input{position:absolute;opacity:0;inset:0;width:100%;height:100%;cursor:pointer;margin:0}
.opts span{display:inline-block;padding:.55rem 1rem;border:2px solid var(--line);border-radius:999px;font-weight:600;background:var(--bg)}
.opts input:checked+span{background:var(--teal-d);border-color:var(--teal-d);color:#fff}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .opts input:checked+span{color:#0c1a1c}}
.opts input:focus-visible+span{outline:3px solid var(--focus);outline-offset:2px}
.qhead{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px;font-weight:700;margin-bottom:8px}
.bar{height:16px;background:var(--bg-2);border:2px solid var(--line);border-radius:999px;overflow:hidden}
.bar>div{height:100%;background:linear-gradient(90deg,var(--green),var(--teal));transition:width .3s}
.qtext{font-size:1.3rem;font-weight:700;margin:18px 0 14px;line-height:1.35}
.answers{list-style:none;padding:0;margin:0;display:grid;gap:10px}
.ans{width:100%;text-align:left;display:flex;gap:12px;align-items:flex-start;font:inherit;font-weight:600;color:var(--ink);background:var(--bg);border:2px solid var(--line);border-radius:14px;padding:12px 14px;cursor:pointer}
.ans:hover:not([disabled]){border-color:var(--teal);background:var(--bg-2)}
.ans .k{flex:0 0 auto;display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--bg-2);border:2px solid var(--line);font-size:.85rem}
.ans[disabled]{cursor:default;opacity:1}
.ans.right{border-color:var(--ok);background:var(--ok-bg)}
.ans.wrong{border-color:var(--bad);background:var(--bad-bg)}
.ans .tag{display:block;font-size:.85rem;font-weight:700;margin-top:2px}
.ans.right .tag{color:var(--ok)}.ans.wrong .tag{color:var(--bad)}
.feedback{margin-top:16px;border-left:6px solid var(--teal);background:var(--bg-2);border-radius:8px;padding:14px 16px}
.feedback.ok{border-color:var(--ok)}.feedback.no{border-color:var(--bad)}
.feedback h3{margin:0 0 6px;font-size:1.1rem}
.feedback p{margin:0 0 8px}
.qactions{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-top:16px}
.linklike{background:none;border:0;color:var(--teal-d);text-decoration:underline;font:inherit;cursor:pointer;padding:.3rem}
.score-big{font-size:3rem;font-weight:800;font-family:"Trebuchet MS",sans-serif;line-height:1}
.subj{display:grid;gap:10px;margin:12px 0 20px}
.subj .row{display:grid;grid-template-columns:minmax(120px,220px) 1fr auto;gap:10px;align-items:center}
.subj .b{height:14px;background:var(--bg-2);border:1px solid var(--line);border-radius:999px;overflow:hidden}
.subj .b i{display:block;height:100%;background:var(--green)}
@media (max-width:560px){.subj .row{grid-template-columns:1fr auto}.subj .b{grid-column:1/-1;order:3}}
.miss{border:2px solid var(--line);border-radius:12px;padding:12px 16px;margin-bottom:10px}
.notice{background:var(--bg-3);border:2px solid var(--yellow);border-radius:12px;padding:10px 14px;margin:0 0 16px;font-size:.95rem}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media print{.site-header,.site-footer,.btn,.skip{display:none}}
