:root{--bg: #f4f6fa;--surface: #ffffff;--ink: #16202e;--muted: #5d6b80;--line: #d9dfe8;--primary: #1f5eff;--primary-ink: #ffffff;--good: #12994a;--bad: #d13b3b;--radius: 10px}@media (prefers-color-scheme: dark){:root{--bg: #0f151f;--surface: #182130;--ink: #eef2f8;--muted: #9aa8bd;--line: #2b384c;--primary: #5b86ff;--primary-ink: #0b1220}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font:400 1rem/1.55 Manrope,system-ui,-apple-system,Segoe UI,sans-serif}h1{font-size:clamp(1.5rem,5vw,2.1rem);line-height:1.2;font-weight:800;margin:.5rem 0 1rem}h2{font-size:1.1rem;line-height:1.3;margin:0 0 .4rem}a{color:var(--primary)}:focus-visible{outline:3px solid var(--primary);outline-offset:2px}.muted{color:var(--muted)}.small{font-size:.9rem}.center{text-align:center;padding:3rem 1rem}.error{color:var(--bad);margin:0}.success{color:var(--good);margin:0}.container{max-width:1040px;margin:0 auto;padding:1rem}.header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}.brand{font-weight:800;font-size:1.25rem;color:var(--ink);text-decoration:none}.header-right{display:flex;align-items:center;gap:.75rem}.hide-sm{display:none}@media (min-width: 560px){.hide-sm{display:inline}}.btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:var(--radius);cursor:pointer;background:var(--primary);color:var(--primary-ink);font:600 1rem Manrope,sans-serif;padding:.8rem 1.1rem;min-height:44px}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line);padding:.5rem .9rem;min-height:40px}input:not([type=radio]){width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:.75rem .85rem;min-height:44px}label{display:block;font-weight:600;font-size:.95rem}label input:not([type=radio]){margin-top:.35rem;font-weight:400}.auth{min-height:100dvh;display:grid;place-items:center;padding:1rem}.auth-card{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:1.5rem;display:grid;gap:1rem}.auth-card h1,.auth-card p{margin:0}.row{display:grid;gap:1rem}@media (min-width: 480px){.row{grid-template-columns:1fr 1fr}}.grid{list-style:none;padding:0;margin:0;display:grid;gap:1rem;grid-template-columns:1fr}@media (min-width: 600px){.grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 900px){.grid{grid-template-columns:repeat(3,1fr)}}.card{display:block;height:100%;text-decoration:none;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden}.card:hover{border-color:var(--primary)}.card img,.thumb-empty{width:100%;aspect-ratio:16 / 9;object-fit:cover;display:block;background:var(--line)}.card-body{padding:.9rem 1rem 1rem;display:grid;gap:.5rem}.card-body p{margin:0}.clamp{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.tag{justify-self:start;font-size:.8rem;font-weight:600;color:var(--good)}.bar{height:6px;background:var(--line);border-radius:99px;overflow:hidden;margin-top:.5rem}.bar span{display:block;height:100%;background:var(--primary);transition:width .3s}.back{display:inline-block;margin-bottom:.25rem;text-decoration:none;font-weight:600}.video{width:100%;aspect-ratio:16 / 9;background:#000;border-radius:12px;display:block}.desc{max-width:70ch}.locked{padding:1rem;border:1px dashed var(--line);border-radius:var(--radius);color:var(--muted)}.quiz{margin-top:1.5rem;display:grid;gap:1rem;max-width:720px}fieldset{border:1px solid var(--line);border-radius:12px;padding:.9rem 1rem 1rem;margin:0;background:var(--surface)}fieldset.ok{border-color:var(--good)}fieldset.bad{border-color:var(--bad)}legend{font-weight:700;padding:0 .4rem}.option{display:flex;gap:.7rem;align-items:flex-start;padding:.65rem .2rem;font-weight:400;cursor:pointer}.option input{margin-top:.35rem;width:1.1rem;height:1.1rem;flex:none;accent-color:var(--primary)}.result{padding:1rem;border-radius:var(--radius);background:var(--surface);border:1px solid var(--line);display:grid;gap:.75rem}.result p{margin:0}
