/* Keel — Harjutaja ühine palett, aktsent lilla (papagoi). Aluseks teisendaja.css. */
:root{
  --accent:#b89cf0;
  --accent-edge:#8e6ad8;
  --accent-ink:#2a1650;
  --warm:#6a44b8;
  --warm-soft:#f1eafe;
}

/* papagoi */
.kpapagoi{width:100%;height:auto;overflow:visible}
.mascot .kpapagoi{animation:kp-bob 3.4s ease-in-out infinite}
.kpapagoi .kp-eye{transform-box:fill-box;transform-origin:center;animation:kp-blink 5s infinite}
.kpapagoi .kp-head{transform-box:fill-box;transform-origin:30% 80%;animation:kp-tilt 6s ease-in-out infinite}
.mascot .kpapagoi.hop{animation:kp-hop .5s ease}
@keyframes kp-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes kp-blink{0%,93%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}
@keyframes kp-tilt{0%,70%,100%{transform:rotate(0)}80%{transform:rotate(-8deg)}90%{transform:rotate(4deg)}}
@keyframes kp-hop{0%,100%{transform:translateY(0)}40%{transform:translateY(-14px)}}
@media (prefers-reduced-motion:reduce){.mascot .kpapagoi,.kpapagoi .kp-eye,.kpapagoi .kp-head,.mascot .kpapagoi.hop{animation:none}}

/* ---------- Keele oma osad ---------- */

/* lava: ülesande osad üksteise all, nupud täislaiuses */
.lava{display:flex;flex-direction:column;align-items:center;gap:12px;width:100%}
.lava > .primary{width:100%}
.lava .hint-small{text-align:center;margin:0}
.lava .en + .et{margin-top:-2px}

/* sammu nimi ülesande kohal */
.samm{font-size:13px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--warm);text-align:center;margin:4px 0 0}

/* ingliskeelne rida: suur ja selge, sõnad on puudutatavad */
.en{font-family:var(--display);font-weight:600;font-size:28px;line-height:1.3;text-align:center;margin:0;display:flex;flex-wrap:wrap;justify-content:center;gap:2px 8px}
.en .w{font:inherit;color:inherit;background:none;border:0;border-bottom:2px dotted var(--accent-edge);padding:0 1px;cursor:pointer;border-radius:4px}
.en .w:active,.en .w.soob{background:var(--warm-soft)}
.en .w.halb{color:var(--bad);border-bottom:3px solid var(--bad)}
.en .gap{display:inline-block;min-width:4.2ch;border-bottom:3px solid var(--accent-edge);color:var(--warm)}
.en .gap.taidetud{border-bottom-style:solid}

/* eestikeelne tähendus */
.et{font-size:19px;font-weight:700;text-align:center;margin:0;color:var(--ink-soft)}
.et.suur{font-family:var(--display);font-weight:600;font-size:26px;line-height:1.3;color:var(--ink);margin-top:6px}
.lugu{font-size:15px;color:var(--ink-soft);text-align:center;margin:0;font-style:italic}
.lugu b{font-style:normal;font-weight:800;color:var(--ink-soft);margin-right:4px}

/* kuulamise nupud */
.kuula{display:flex;width:100%;gap:10px;justify-content:center;flex-wrap:wrap}
.kuula .ghost{display:inline-flex;align-items:center;gap:6px}

/* sõnakaardid */
.rida-koht{min-height:56px;display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center;padding:10px;border:2px dashed var(--edge);border-radius:16px;width:100%}
.kaardid{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;width:100%}
.kaart{font:inherit;font-weight:800;font-size:19px;color:var(--ink);background:var(--card);border:2px solid var(--edge);border-radius:12px;padding:8px 12px;cursor:pointer;box-shadow:0 2px 0 var(--edge)}
.kaart:disabled{opacity:.25;cursor:default;box-shadow:none}
.kaart.pandud{border-color:var(--accent-edge);background:var(--warm-soft)}
.opts.kolm{grid-template-columns:1fr}

/* oma tähtklaviatuur (keel/klaviatuur.js) */
#kthost{width:100%;display:flex;flex-direction:column;gap:10px}
.taheklaviatuur input{font:inherit;font-family:var(--display);font-weight:500;font-size:24px;padding:10px 14px;border:2px solid var(--edge);border-radius:14px;background:var(--card);color:var(--ink);width:100%;box-sizing:border-box;caret-color:var(--accent-edge)}
.taheklaviatuur input:focus{outline:none;border-color:var(--accent-edge)}
.taheklaviatuur input.ok{border-color:var(--ok);background:var(--ok-bg)}
.taheklaviatuur input.bad{border-color:var(--bad);background:var(--bad-bg)}
.taheklaviatuur input:disabled{color:var(--ink);-webkit-text-fill-color:var(--ink);opacity:1}
.taheklaviatuur input.peidus{position:absolute;opacity:0;width:1px;height:1px;padding:0;border:0;pointer-events:none}
.kt-pad{display:flex;flex-direction:column;gap:6px;width:100%;touch-action:manipulation;user-select:none;-webkit-user-select:none}
/* Klaviatuur on ekraani allservas nagu telefoni oma (Silver 16. sept: ülaosas
   oli ebamugav trükkida). Lava saab all ruumi, et midagi klahvide alla ei jääks. */
#s-game .kt-pad{position:fixed;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,520px);z-index:5;
  padding:10px 8px calc(10px + env(safe-area-inset-bottom,0px));background:var(--paper);
  border-top:1.5px solid var(--edge);box-shadow:0 -6px 18px rgba(29,47,79,.08)}
#s-game:has(.taheklaviatuur:not(.lukus)) .stage{padding-bottom:250px}
.kt-rida{display:flex;gap:4px;justify-content:center}
.kt{font:inherit;font-weight:800;font-size:19px;color:var(--ink);background:var(--card);border:1.5px solid var(--edge);border-radius:9px;height:48px;flex:1 1 0;min-width:0;max-width:48px;padding:0;cursor:pointer;box-shadow:0 2px 0 var(--edge)}
.kt:active{background:var(--warm-soft);transform:translateY(1px);box-shadow:none}
.kt-kustuta{max-width:62px;flex-grow:1.5}
.kt-ulakoma{max-width:42px}
.kt-tyhik{max-width:none;flex-grow:4;font-size:15px;color:var(--ink-soft)}
.kt-vastan{max-width:none;flex-grow:3;background:var(--accent);border-color:var(--accent-edge);box-shadow:0 3px 0 var(--accent-edge);color:var(--accent-ink);font-size:17px}
.taheklaviatuur.lukus .kt-pad{display:none}
.gap.oige{color:var(--ok);border-bottom-color:var(--ok)}
.gap.vale{color:var(--bad);border-bottom-color:var(--bad)}

/* vihjekaart: õige rida, valed sõnad esile */
.oigerida{font-family:var(--display);font-weight:600;font-size:22px;line-height:1.35;margin:4px 0}
.oigerida .halb{color:var(--bad);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.uuesti{display:flex;flex-direction:column;gap:8px;margin-top:8px}
.uuesti input{font:inherit;font-size:20px;padding:10px 12px;border:2px solid var(--edge);border-radius:12px;width:100%;box-sizing:border-box}
.uuesti .teade{font-weight:800;margin:0}
.uuesti .teade.ok{color:var(--ok)}
.uuesti .teade.bad{color:var(--bad)}

/* avalehe ridade kaart */
.readmap{display:flex;flex-direction:column;gap:6px;width:100%}
.rr{display:flex;align-items:center;gap:10px;padding:8px 12px;border:1.5px solid var(--edge);border-radius:14px;background:var(--card)}
.rr.g{border-color:var(--ok);background:var(--ok-bg)}
.rr .t{flex:1;min-width:0}
.rr .t b{display:block;font-size:16px}
.rr .t small{display:block;color:var(--ink-soft);font-size:14px}
.tapid{display:flex;gap:4px;flex:none}
.tapid i{width:9px;height:9px;border-radius:50%;background:var(--edge)}
.tapid i.on{background:var(--accent-edge)}
.rr.g .tapid i{background:var(--ok)}

/* paberil kontroll tulemuse ekraanil */
.paber{display:flex;flex-direction:column;gap:8px;width:100%}
.pb{border:1.5px solid var(--edge);border-radius:14px;background:var(--card);padding:10px 12px;display:flex;flex-direction:column;gap:6px}
.pb .et{text-align:left;font-size:18px;margin:0}
.pb .en2{font-family:var(--display);font-weight:600;font-size:20px;color:var(--warm)}
.pb .ghost{align-self:flex-start}

/* vigade nimekiri: siin on terved read, mitte lühikesed sõnad */
#resNext.words{flex-direction:column;align-items:stretch}
#resNext .vaeg{width:auto;text-align:left;align-items:flex-start;border:1.5px solid var(--edge);border-radius:12px;background:var(--card);padding:8px 12px}
#resNext .vaeg small{font-size:14px}
.uuesti input:focus{outline:none;border-color:var(--accent-edge)}
.pb .et{color:var(--ink)}

/* ---------- ekraanisõnad (keel/ekraanid.js, 16. sept) ---------- */

/* ülesanne papagoi mullis */
.ek-ul{display:flex;align-items:center;gap:8px;width:100%}
.ek-ul .kp-pea{flex:none;width:52px}
.ek-ul .mull{flex:1;margin:0;background:var(--warm-soft);border:1.5px solid var(--accent-edge);border-radius:16px;padding:10px 14px;font-size:19px;font-weight:800;line-height:1.3;position:relative}
.ek-ul .mull::before{content:"";position:absolute;left:-8px;top:50%;margin-top:-7px;border:7px solid transparent;border-right-color:var(--accent-edge);border-left:0}
.teeb{margin:0;font-size:16px;line-height:1.4;color:var(--ink);text-align:center}
.hinttext .teeb{text-align:left;margin:0 0 8px}
.teeb .markus{display:block;margin-top:4px;font-size:14px;color:var(--ink-soft)}
.teeb b{font-family:var(--display);font-weight:600}
.teema-silt{font-size:14px;color:var(--ink-soft);text-align:center;margin:-6px 0 0}
.et .tapsustus{color:var(--ink-soft);font-weight:600}

/* ühine ekraaniraam */
.ekraan{width:100%;max-width:340px;border:3px solid #22252b;border-radius:22px;overflow:hidden;box-shadow:0 4px 0 #22252b;position:relative;text-align:left}
.ek{font:inherit;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;transition:transform .12s}
.ek:active{transform:scale(.96)}
.ek:disabled{cursor:default}
.ek.vale{outline:3px solid var(--bad);outline-offset:2px;animation:ek-raputa .35s}
.ek.oige{outline:3px solid var(--ok);outline-offset:2px}
@keyframes ek-raputa{0%,100%{transform:translateX(0)}25%{transform:translateX(-4px)}75%{transform:translateX(4px)}}
@media (prefers-reduced-motion:reduce){.ek.vale{animation:none}}

/* YouTube (joonistus, mitte logo) */
.yt{background:#fff;color:#0f0f0f;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-weight:500}
.yt .ek{border:0;border-radius:999px;background:#f0f0f0;color:#0f0f0f;padding:6px 12px;font-size:14px;font-weight:600}
.yt-pais{display:flex;align-items:center;justify-content:space-between;padding:8px 10px}
.yt-nimi{font-size:18px;letter-spacing:-.02em}
.yt-otsirida{display:none;margin:0 10px 6px;height:32px;border-radius:999px;border:1.5px solid #bbb;padding:0 12px;align-items:center}
.yt-kursor{width:2px;height:18px;background:#0f0f0f;animation:ek-vilgu 1s steps(2) infinite}
@keyframes ek-vilgu{50%{opacity:0}}
.tehtud-yt-search .yt-otsirida{display:flex}
.yt-video{position:relative;aspect-ratio:16/9;background:#000}
.yt-pilt{display:block;width:100%;height:100%}
.yt-reklaam{position:absolute;inset:0;transition:opacity .3s}
.yt-ad{position:absolute;left:8px;bottom:8px;background:#ffd400;color:#000;font-size:12px;font-weight:800;border-radius:4px;padding:1px 6px}
.yt .yt-skip{position:absolute;right:8px;bottom:8px;border-radius:4px;background:rgba(20,20,20,.85);color:#fff}
.tehtud-yt-skip .yt-reklaam{opacity:0}
.yt-pealkiri{margin:8px 10px 4px;font-size:15px;font-weight:700}
.yt-kanal{display:flex;align-items:center;gap:8px;padding:4px 10px}
.yt-avatar{width:30px;height:30px;border-radius:50%;background:linear-gradient(135deg,#8e6ad8,#f3c445);flex:none}
.yt-kanalinimi{flex:1;font-size:13px;font-weight:700;display:flex;flex-direction:column}
.yt-kanalinimi small{color:#606060;font-weight:500}
.yt .yt-telli{background:#0f0f0f;color:#fff}
.yt-t2{display:none}
.tehtud-yt-subscribe .yt-telli{background:#f0f0f0;color:#0f0f0f}
.tehtud-yt-subscribe .yt-t1{display:none}
.tehtud-yt-subscribe .yt-t2{display:inline}
.yt-tegevused{display:flex;gap:6px;padding:8px 10px;flex-wrap:wrap}
.yt-arv{font-weight:500;color:#606060}
.tehtud-yt-like .yt-like .ek-taide{fill:currentColor}
.tehtud-yt-like .yt-like{background:#e5dcfb}
.tehtud-yt-share .yt-tegevused .ek.vajutatud,.tehtud-yt-download .yt-tegevused .ek.vajutatud{background:#e5dcfb}
.yt .yt-kommentaarid{display:flex;flex-direction:column;align-items:stretch;gap:4px;margin:0 10px 8px;width:calc(100% - 20px);border-radius:12px;padding:8px 10px}
.yt-kom-pais{display:flex;align-items:center;gap:6px}
.yt-kom-pais small{color:#606060}
.yt-kom-rida{display:none;align-items:center;gap:6px;font-weight:500}
.yt-kom-rida i{width:18px;height:18px;border-radius:50%;background:#9fd0a3}
.tehtud-yt-comments .yt-kom-rida{display:flex}
.yt-alla{display:flex;justify-content:space-around;align-items:center;border-top:1px solid #e5e5e5;padding:4px 6px}
.yt .yt-home{background:none;flex-direction:column;gap:0;font-size:11px;padding:4px 8px}
.tehtud-yt-home .yt-home{background:#f0f0f0}
.yt-tyhi{width:40px;display:grid;place-items:center}
.yt-tyhi i{width:20px;height:20px;border-radius:6px;border:2px solid #c9c9c9}

/* Minecraft (joonistus, mitte logo) */
.mc{background:#6b4a2e;background-image:linear-gradient(45deg,rgba(0,0,0,.12) 25%,transparent 25%,transparent 75%,rgba(0,0,0,.12) 75%),linear-gradient(45deg,rgba(0,0,0,.12) 25%,transparent 25%,transparent 75%,rgba(0,0,0,.12) 75%);background-size:24px 24px;background-position:0 0,12px 12px;color:#fff;font-family:"Courier New",ui-monospace,monospace;font-weight:700;padding:10px;display:flex;flex-direction:column;gap:8px;align-items:stretch}
.mc-nimi{margin:2px 0 0;text-align:center;font-size:24px;letter-spacing:.08em;color:#e0e0e0;text-shadow:3px 3px 0 #333}
.mc .ek{border:2px solid #111;border-radius:0;background:#8b8b8b;color:#fff;text-shadow:2px 2px 0 #3a3a3a;box-shadow:inset -2px -3px 0 #555,inset 2px 2px 0 #b5b5b5;padding:6px 10px;font-size:15px;font-weight:700;font-family:inherit}
.mc-menyy{display:flex;flex-direction:column;gap:6px;align-items:center}
.mc-menyy .ek{width:78%}
.mc .mc-suur{font-size:17px}
.mc-paneel{background:rgba(40,40,40,.72);border:2px solid #111;padding:8px;display:flex;flex-direction:column;gap:4px}
.mc-rida{display:flex;gap:6px}
.mc-rida .ek{flex:1}
.mc .mc-roheline{background:#3c8527;box-shadow:inset -2px -3px 0 #1d4d13,inset 2px 2px 0 #6cc349}
.mc-silt{font-size:12px;color:#d0d0d0;margin-top:4px}
.mc-surm{background:rgba(120,16,16,.8);border:2px solid #111;padding:8px;text-align:center;display:flex;flex-direction:column;gap:6px;align-items:center}
.mc-surm p{margin:0;font-size:18px}
.mc-surm .ek{width:70%}
.mc-sydamed{display:flex;gap:3px}
.mc-sydamed i{width:12px;height:11px;background:#3a3a3a;clip-path:polygon(50% 100%,0 40%,15% 5%,50% 25%,85% 5%,100% 40%)}
.tehtud-mc-respawn .mc-sydamed i{background:#e03030}
.mc .ek.vajutatud.mc-valik,.mc .ek.vajutatud{background:#5b5b5b;box-shadow:inset 2px 3px 0 #333}
.mc .ek.vajutatud.mc-roheline{background:#2c6a1c}

/* loe-samm: hallid nupud, ainult kiri */
.ek-nupud{display:grid;grid-template-columns:1fr 1fr;gap:10px;width:100%}
.ek-hall{border:1.5px solid #9aa3b2;border-radius:12px;background:#eef0f3;color:#1d2f4f;font-size:20px;font-weight:700;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;padding:12px 6px;min-height:52px}

/* avalehe sõnade kaart kasutab sama .rr kujundust */

/* Roblox (joonistus, mitte logo) */
.rb{background:#232527;color:#fff;font-family:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;font-weight:600;padding-bottom:8px}
.rb .ek{border:0;border-radius:8px;color:#fff;background:#393b3d;padding:6px 12px;font-size:14px;font-weight:700}
.rb-pais{display:flex;align-items:center;gap:6px;padding:8px}
.rb-tyhi{flex:1}
.rb-kaart{margin:0 8px;background:#2f3133;border-radius:10px;overflow:hidden;display:flex;flex-direction:column}
.rb-pilt{display:block;width:100%;height:auto}
.rb-nimi{margin:6px 10px 4px;font-size:15px}
.rb .rb-play{margin:0 10px 10px;background:#00a2ff;font-size:17px;min-height:44px}
.rb-sobrad{margin:8px;display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.rb .rb-link{background:none;padding:4px 2px}
.rb-sober{display:flex;align-items:center;gap:8px;width:100%;background:#2f3133;border-radius:10px;padding:6px 8px}
.rb-sober span{flex:1;display:flex;flex-direction:column;font-size:13px}
.rb-sober small{color:#9aa;font-weight:500}
.rb-avatar{width:34px;height:34px;border-radius:50%;background:linear-gradient(135deg,#ffd166,#ef476f);flex:none}
.rb .rb-join{background:#00b06f}
.rb-menyy{margin:8px;background:#1a1b1c;border:1px solid #444;border-radius:10px;padding:8px;display:flex;flex-direction:column;gap:6px}
.rb-menyy-nimi{margin:0 0 2px;font-size:13px;color:#bbb}
.rb .rb-sinine{background:#00a2ff}
.tehtud-rb-join .rb-join,.tehtud-rb-play .rb-play{background:#0a7a4f}

/* Ehitamine */
.eh{background:#dff0ff;font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
.eh-plats{position:relative;background:repeating-linear-gradient(0deg,#9fd08c 0 19px,#8cc278 19px 20px),#9fd08c;padding:14px 10px 6px;display:flex;justify-content:center}
.eh-maja{width:70%;height:auto;transition:transform .4s}
.eh-uus{opacity:0;transition:opacity .3s}
.eh-teade{position:absolute;top:8px;right:10px;background:#1d2f4f;color:#fff;border-radius:8px;padding:2px 8px;font-size:12px;font-weight:700;opacity:0}
.tehtud-eh-save .eh-teade{opacity:1}
.tehtud-eh-place .eh-uus{opacity:1}
.tehtud-eh-rotate .eh-maja{transform:scaleX(-1)}
.tehtud-eh-move .eh-maja{transform:translateX(-18%)}
.tehtud-eh-delete .eh-sein{opacity:.15}
.tehtud-eh-paint .eh-sein{fill:#e84a5f}
.tehtud-eh-undo .eh-katus{opacity:.3}
.eh-riba{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:6px;background:#2b3a55}
.eh .eh-riist{flex-direction:column;gap:2px;border:0;border-radius:10px;background:#3e5075;color:#fff;font-size:12px;font-weight:700;padding:6px 2px;min-height:52px}
.eh .eh-riist svg{width:20px;height:20px}
.tehtud-eh-build .eh-riist.vajutatud{background:#f3c445;color:#1d2f4f}

/* Tasemed ja auhinnad */
.ed{background:#2d1b4e;color:#fff;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:700;padding:8px;display:flex;flex-direction:column;gap:8px;align-items:stretch}
.ed .ek{border:0;border-radius:10px;color:#fff;font-size:13px;font-weight:800;padding:6px 8px}
.ed-hud{display:flex;gap:4px;justify-content:space-between}
.ed .ed-silt{background:#4b3279;gap:4px;flex:1 1 0;min-width:0;padding:6px 4px}
.ed .ed-silt b{color:#ffd166}
.ed .ed-kuld{background:#8a6a12}
.ed-munt{width:14px;height:14px;border-radius:50%;background:#f3c445;border:2px solid #b8860b;flex:none}
.ed .ed-banner{background:linear-gradient(90deg,#ff9f1c,#ffd166);color:#3a2000;font-size:20px;min-height:48px;border-radius:14px}
.ed-paneel{background:#3a2766;border-radius:12px;padding:6px 10px}
.ed .ed-pealkiri{background:none;padding:2px 0;font-size:15px}
.ed-tekst{margin:2px 0 0;font-size:13px;font-weight:600}
.ed-tekst b{color:#8ce99a}
.ed-rida{display:flex;gap:8px}
.ed-ese{flex:1;background:#3a2766;border-radius:12px;padding:6px;display:flex;flex-direction:column;align-items:center;gap:4px}
.ed-ese svg{width:44px;height:44px}
.ed .ed-nupp{background:#00a86b;width:100%}
.ed .ed-next{background:#5b8def;align-self:flex-end;padding:8px 16px}
.tehtud-ed-reward .ed-kuld.vajutatud,.tehtud-ed-equip .ed-nupp.vajutatud{background:#555}

/* Ettevaatust */
.oh{background:#f4f4f7;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:600;color:#1a1a1a;padding:8px;display:flex;flex-direction:column;gap:8px}
.oh .ek{border:0;border-radius:8px;font-size:14px;font-weight:800;padding:6px 12px}
.oh-reklaam{position:relative;background:linear-gradient(135deg,#ff006e,#8338ec);color:#fff;border-radius:12px;padding:10px;text-align:center}
.oh .oh-ad{position:absolute;left:6px;top:6px;background:#ffd400;color:#000;font-size:12px;min-height:28px;padding:2px 8px;border-radius:4px}
.oh-suur{margin:14px 0 2px;font-size:26px;font-weight:900;display:flex;align-items:center;justify-content:center;gap:6px}
.oh .oh-free{background:#ffd400;color:#000;font-size:24px;font-weight:900}
.oh-vaike{margin:0;font-size:12px;text-decoration:underline}
.oh-pood{display:flex;align-items:center;gap:8px;background:#fff;border-radius:12px;padding:6px 8px}
.oh-pood svg{width:40px;height:40px;flex:none}
.oh-ese{flex:1;display:flex;flex-direction:column;font-size:14px}
.oh-ese small{color:#666}
.oh .oh-osta{background:#00b06f;color:#fff}
.oh-kutse{background:#fff;border-radius:12px;padding:8px;display:flex;flex-direction:column;gap:6px}
.oh-kutse p{margin:0;font-size:13px}
.oh .oh-pealkiri{background:none;padding:0;font-size:17px;justify-content:flex-start;min-height:32px}
.oh-nupud{display:flex;gap:6px}
.oh-nupud .ek{flex:1}
.oh .oh-roheline{background:#00b06f;color:#fff}
.oh .oh-hall{background:#d9dce2;color:#1a1a1a}
.oh .oh-punane{background:#e03131;color:#fff}
.oh-mangija{display:flex;align-items:center;gap:6px;background:#fff;border-radius:12px;padding:6px 8px;font-size:13px}
.oh-mangija span{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis}
.oh-voor{width:28px;height:28px;background:linear-gradient(135deg,#555,#999)}
.tehtud-oh-block .oh-mangija{opacity:.45}

/* Juhised: ingliskeelne mängujuhis ja väli */
.ek-ul .mull.juhis{background:#1d2f4f;color:#fff;border-color:#1d2f4f}
.ek-ul .mull.juhis::before{border-right-color:#1d2f4f}
.ju{background:radial-gradient(circle at 50% 30%,#bfe3ff,#8cc6f0);padding:12px}
.ju-loendur{margin:0 0 8px;text-align:center;font-family:var(--display);font-size:20px;color:#1d2f4f}
.ju-vali{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.ju-vali.ju-rajad{grid-template-columns:1fr}
.jo{position:relative;border:2px solid rgba(29,47,79,.25);border-radius:16px;background:rgba(255,255,255,.55);padding:6px;cursor:pointer;aspect-ratio:1;display:grid;place-items:center;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}
.jo svg{width:72%;height:auto;pointer-events:none}
.jo.jo-rada{aspect-ratio:auto;padding:4px}
.jo.jo-rada svg{width:100%;border-radius:10px}
.jo:active{transform:scale(.95)}
.jo:disabled{cursor:default}
.jo.korjatud{opacity:.2;transform:scale(.7);transition:opacity .25s,transform .25s}
.jo.oige{outline:3px solid var(--ok);outline-offset:2px}
.jo.vale{outline:3px solid var(--bad);outline-offset:2px}
.jo-taitub{position:absolute;left:10%;right:10%;bottom:6px;height:6px;border-radius:3px;background:rgba(29,47,79,.2);overflow:hidden}
.jo-taitub::after{content:"";position:absolute;inset:0;width:0;background:var(--ok)}
.jo.hoian .jo-taitub::after{width:100%;transition:width .9s linear}
@media (prefers-reduced-motion:reduce){.jo.hoian .jo-taitub::after{transition:none}}
.juhis-et{margin:0;text-align:center;font-size:16px;color:var(--ink)}

#juhisNote.teade{color:var(--bad);font-weight:800}

/* küsimus mullis: silt + suur eesti tähendus (16. sept) */
.ek-ul .mull.kysimus,.ek-ul .mull.juhis{display:flex;flex-direction:column;gap:2px}
.k-silt{font-size:14px;font-weight:700;color:var(--ink-soft)}
.k-sona{font-family:var(--display);font-weight:600;font-size:28px;line-height:1.2;color:var(--ink)}
.mull.juhis .k-silt{color:#c9d6ee}
.mull.juhis .k-sona{color:#fff;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:900;font-size:24px}
.k-sona .tapsustus{font-family:var(--body);font-size:17px}
.k-juhend{margin:0;font-size:15px;font-weight:800;color:var(--warm);text-align:center}

/* Konsool (16. sept) */
.ps{background:#0b1026;color:#fff;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:700;padding:10px;display:flex;flex-direction:column;gap:8px}
.ps .ek{border:0;color:#fff;background:none;font-weight:800}
.ps-tv{background:radial-gradient(circle at 50% 20%,#27346e,#0b1026 75%);border:3px solid #2a2f45;border-radius:10px;padding:10px;display:flex;flex-direction:column;align-items:center;gap:8px}
.ps-nimi{margin:4px 0 0;font-size:22px;letter-spacing:.15em;color:#ffd166;text-shadow:0 2px 0 #7a4b00}
.ps-menyy{display:flex;flex-direction:column;gap:4px;width:80%}
.ps .ps-rida{background:rgba(255,255,255,.08);border-radius:8px;font-size:16px;min-height:38px}
.ps .ps-rida:first-child{background:rgba(255,255,255,.22)}
.ps-vajuta{margin:4px 0 0;font-size:15px;display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:center;color:#c9d6ff}
.ps .ps-sona{padding:2px 6px;min-height:34px;border-radius:6px;background:rgba(255,255,255,.12);color:#fff;font-size:15px}
.ps-x{font-style:normal;display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#dfe6ff;color:#3a55c8;font-size:13px}
.ps-over{background:#3a0d14;border:2px solid #7a1f2c;border-radius:10px;padding:8px;display:flex;align-items:center;justify-content:space-between}
.ps-over p{margin:0;color:#ff8c9a;letter-spacing:.1em}
.ps .ps-retry{background:#e84a5f;border-radius:8px;padding:6px 16px}
.ps-pult{width:55%;align-self:center;height:auto}
.tehtud-ps-retry .ps-over{background:#0d3a1f;border-color:#1f7a44}

/* Telefon küsib */
.tf{background:linear-gradient(#cfd9ea,#e9eef6);font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#111;padding:10px;display:flex;flex-direction:column;gap:8px}
.tf .ek{border:0;font-weight:600;font-size:15px}
.tf-aken{background:rgba(255,255,255,.92);border-radius:14px;overflow:hidden;text-align:center}
.tf-aken p{margin:0;padding:10px 12px;font-size:13.5px}
.tf-nupud{display:flex;border-top:1px solid #ccd}
.tf .tf-nupp{flex:1;background:none;color:#0a64d6;border-radius:0;min-height:42px}
.tf .tf-nupp + .tf-nupp{border-left:1px solid #ccd}
.tf .tf-paks{font-weight:800}
.tf .tf-punane{color:#d11}
.tf-pood{display:flex;align-items:center;gap:6px;background:#fff;border-radius:12px;padding:6px 8px}
.tf-ikoon{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,#7cc36b,#3c8527);flex:none}
.tf-ik2{background:linear-gradient(135deg,#ff9f1c,#e84a5f)}
.tf-app{flex:1;display:flex;flex-direction:column;font-size:13px;font-weight:700;min-width:0}
.tf-app small{color:#667;font-weight:500}
.tf .tf-pill{background:#e8eef8;color:#0a64d6;border-radius:999px;padding:4px 12px;font-weight:800;min-height:34px}
.tf .tf-sinine{background:#0a64d6;color:#fff}
.tf-riba{display:flex;align-items:center;justify-content:space-between;background:#fff;border-radius:12px;padding:6px 8px;font-size:13px}
.tehtud-te-turnon .tf-riba{background:#e3f5ec}

/* Veebileht */
.vb{background:#fff;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#1b1b1b;position:relative}
.vb .ek{border:0;font-weight:700;font-size:14px}
.vb-aadress{display:flex;align-items:center;gap:6px;background:#eceff4;padding:6px 10px;font-size:12px;color:#556}
.vb-aadress i{width:10px;height:12px;border:2px solid #556;border-radius:2px}
.vb-pais{display:flex;align-items:center;gap:6px;padding:6px 8px;border-bottom:1px solid #e3e6ec}
.vb .vb-menu{background:none;flex-direction:column;gap:1px;font-size:10px;padding:2px 6px}
.vb-burger{display:flex;flex-direction:column;gap:3px}
.vb-burger i{display:block;width:18px;height:2.5px;background:#1b1b1b;border-radius:2px}
.vb-logo{flex:1;text-align:center;font-size:18px;color:#6a44b8}
.vb .vb-link{background:none;color:#0a64d6;text-decoration:underline;font-size:13px}
.vb-vorm{padding:10px 14px 12px;display:flex;flex-direction:column;align-items:stretch;gap:3px}
.vb-pealkiri{margin:0 0 4px;font-size:18px;font-weight:800}
.vb .vb-silt{background:none;justify-content:flex-start;padding:2px 0;min-height:30px;font-size:13px;color:#333}
.vb-vali{border:1.5px solid #c9cdd6;border-radius:8px;padding:6px 8px;font-size:14px;color:#444;margin-bottom:4px}
.vb-nupud{display:flex;gap:6px;margin-top:6px}
.vb .vb-nupp{flex:1;background:#eceff4;color:#1b1b1b;border-radius:8px}
.vb .vb-sinine{background:#0a64d6;color:#fff}
.vb-kupsis{position:relative;margin:0 8px 8px;background:#222;color:#fff;border-radius:12px;padding:10px 10px 10px;display:flex;flex-direction:column;gap:6px}
.vb-kupsis p{margin:0 30px 0 0;font-size:13px}
.vb .vb-rist{position:absolute;top:4px;right:4px;background:none;color:#fff;flex-direction:column;gap:0;font-size:10px;padding:2px 4px;min-height:36px}
.vb .vb-rist span:first-child{font-size:16px}
.tehtud-ve-close .vb-kupsis,.tehtud-ve-acceptall .vb-kupsis{opacity:.35}

/* Kui midagi ei tööta */
.pr{background:#f3f4f7;font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#1b1b1b;padding:10px;display:flex;flex-direction:column;gap:8px}
.pr .ek{border:0;font-weight:800;font-size:14px}
.pr-riba{display:flex;gap:6px}
.pr .pr-teade{flex:1;background:#fff3cd;color:#6b4e00;border-radius:10px;gap:4px;padding:4px 6px}
.pr .pr-aku{background:#fde2e1;color:#8a1c1c}
.pr-akuikoon{width:22px;height:11px;border:2px solid currentColor;border-radius:2px;position:relative;flex:none}
.pr-akuikoon i{position:absolute;left:1px;top:1px;bottom:1px;width:3px;background:#d11}
.pr-kaart{background:#fff;border-radius:12px;padding:10px;display:flex;align-items:center;justify-content:space-between;gap:6px}
.pr .pr-lae{background:none;gap:8px;font-size:16px}
.pr-ring{width:20px;height:20px;border-radius:50%;border:3px solid #cfd6e4;border-top-color:#0a64d6;animation:pr-kei 1s linear infinite}
@keyframes pr-kei{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.pr-ring{animation:none}}
.pr .pr-link{background:#eceff4;border-radius:8px}
.pr-viga{flex-direction:column;align-items:stretch}
.pr .pr-pealkiri{background:none;justify-content:flex-start;color:#b3261e;font-size:17px;gap:6px}
.pr-viga p{margin:0;font-size:13px;color:#444}
.pr-nupud{display:flex;gap:6px}
.pr .pr-nupp{flex:1;background:#eceff4;border-radius:8px}
.pr .pr-sinine{background:#0a64d6;color:#fff}
.pr .pr-abi{align-self:flex-end;background:#fff;border:1.5px solid #c9cdd6;border-radius:999px;gap:6px;padding:4px 12px}
.pr .pr-abi span:first-child{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:#1b1b1b;color:#fff;font-size:12px}
.tehtud-pr-tryagain .pr-viga,.tehtud-pr-restart .pr-viga{background:#e3f5ec}
