/* ===========================================================================
   A(z) 02-express blokk MINDEN oldalán érvényes stílus.
   A közös alap: ../assets/style.css — ez az után töltődik be.
   =========================================================================== */

:root{
    --bg:#0e1512; --panel:#182420; --panel2:#213029; --panel3:#1e2c27;
    --ink:#e6ece9; --ink-strong:#ffffff; --muted:#9aa8a1; --line:#2f4239;
    --accent:#5fbf72; --accent2:#8ee79a; --accent-ink:#0e1512;
    --green:#34d399; --violet:#a78bfa; --orange:#fb923c; --red:#f87171; --blue:#82aaff;
    --code-bg:#0a100d; --code-ink:#e6ece9;
    --icode-bg:#0a100d; --icode-ink:#8ee79a;
    --card-in:#0a100d; --card-in-ink:#e6ece9; --opt-bg:rgba(255,255,255,.045);
    --ok-bg:rgba(52,211,153,.18); --ok-ink:#d1fae5;
    --bad-bg:rgba(248,113,113,.16); --bad-ink:#fecaca;
    --tip-bg:rgba(52,211,153,.09);  --tip-line:rgba(52,211,153,.40);
    --info-bg:rgba(167,139,250,.11); --info-line:rgba(167,139,250,.45);
    --warn-bg:rgba(251,146,60,.11);  --warn-line:rgba(251,146,60,.45);
    --dgr-bg:rgba(248,113,113,.11);  --dgr-line:rgba(248,113,113,.50);
    --shadow:0 10px 30px rgba(0,0,0,.35); --shadow-sm:0 2px 8px rgba(0,0,0,.25);
    --hero-from:#68c05a; --hero-to:#3f9160;
    --zebra:rgba(255,255,255,.025);
  }
:root[data-theme="light"]{
    --bg:#f2f6f3; --panel:#ffffff; --panel2:#eaf1ec; --panel3:#f6faf7;
    --ink:#17231d; --ink-strong:#0b120e; --muted:#5d6d64; --line:#d2ded6;
    --accent:#2a7a42; --accent2:#1f7340; --accent-ink:#ffffff;
    --green:#157a3d; --violet:#6d3fd4; --orange:#ba3e0c; --red:#c81e1e; --blue:#2b5bd7;
    --code-bg:#0f1714; --code-ink:#e6ece9;
    --icode-bg:#e6efe9; --icode-ink:#1c6b3c;
    --card-in:#f6faf7; --card-in-ink:#17231d; --opt-bg:#ffffff;
    --ok-bg:rgba(21,128,61,.12); --ok-ink:#14532d;
    --bad-bg:rgba(220,38,38,.10); --bad-ink:#7f1d1d;
    --tip-bg:rgba(21,128,61,.07);   --tip-line:rgba(21,128,61,.32);
    --info-bg:rgba(109,63,212,.07); --info-line:rgba(109,63,212,.30);
    --warn-bg:rgba(194,65,12,.07);  --warn-line:rgba(194,65,12,.30);
    --dgr-bg:rgba(220,38,38,.06);   --dgr-line:rgba(220,38,38,.30);
    --shadow:0 8px 24px rgba(23,53,38,.10); --shadow-sm:0 1px 4px rgba(23,53,38,.10);
    --hero-from:#57b56a; --hero-to:#3f9160;
    --zebra:rgba(20,60,40,.028);
  }
:root{color-scheme:dark;}
:root[data-theme="light"]{color-scheme:light;}
.progress{height:3px;}
nav.toc ol{margin:0; padding-left:0; list-style:none; counter-reset:toc; columns:2; column-gap:34px;}
nav.toc li{margin:4px 0; break-inside:avoid; counter-increment:toc; position:relative; padding-left:30px;}
nav.toc li::before{content:counter(toc) "."; position:absolute; left:0; top:0; width:24px; text-align:right; color:var(--muted); font-size:.88em; font-weight:700;}
pre .out{color:#9aa8a1;}
pre .err{color:#f87171;}
pre .cmd{color:#8ee79a; font-weight:700;}
pre.term{border-left-color:var(--muted);}
pre.bad{border-left-color:var(--red);}
kbd{background:var(--code-bg); border:1px solid var(--line); border-bottom-width:3px; border-radius:6px; padding:2px 8px; font-family:"Consolas",monospace; font-size:.84em; color:var(--code-ink); white-space:nowrap;}
a.ref{color:inherit; text-decoration:none; border-bottom:1px dotted var(--accent); white-space:nowrap;}
a.ref:hover{color:var(--accent2); border-bottom-style:solid;}
a.ref::after{content:"↓"; font-size:.72em; vertical-align:super; color:var(--accent); margin-left:1px;}
.meta-row{display:flex; justify-content:space-between; gap:10px; font-size:.82rem; color:var(--muted); margin-bottom:10px;}
/* gyakorlók */
  .drill .q{background:var(--card-in); border:1px solid var(--line); border-radius:12px; padding:18px; color:var(--card-in-ink);}
.drill .item{font-size:1.02rem; font-weight:600; line-height:1.5; text-align:center;}
.drill .opts{display:flex; gap:9px; margin-top:14px; flex-wrap:wrap;}
.drill .opts button:hover:not(:disabled){border-color:var(--accent); color:var(--accent2);}
.drill .opts button.correct{background:var(--ok-bg); border-color:var(--green); color:var(--ok-ink);}
.drill .opts button.wrong{background:var(--bad-bg); border-color:var(--red); color:var(--red);}
.drill .opts button:disabled{cursor:default;}
.drill .fb{margin-top:12px; font-size:.92rem; min-height:52px; line-height:1.55;}
.quiz-q .qkod{font-family:Consolas,monospace; font-size:.84rem; background:var(--opt-bg); border:1px solid var(--line); border-radius:8px; padding:9px 12px; margin-bottom:10px; white-space:pre; overflow-x:auto;}
.task pre{font-size:.82rem; margin:8px 0;}
