/* AGYEDZŐ-KÖZPONT – közös stíluslap */
:root{
  /* színvilág a „Fejleszd az eszed!” plakát alapján */
  --bg:#fff8ee; --kartya:#ffffff; --szoveg:#1c2541; --halvany:#6b7280; --vonal:#efe3cf;
  --kek:#1b3a8c; --kek2:#1e6fd9; --kek-hatter:#e8f1fd;
  --narancs:#f26a1b; --sarga-plakat:#ffc93c; --lila:#8e3fb5; --turkiz:#14a9cf;
  --k1:#2a9d3a; --k1-hatter:#e7f6e9; --k2:#e8650f; --k2-hatter:#fff1e3;
  --siker:#2a9d3a; --hiba:#dc2626; --sarga:#f59e0b;
  --arnyek:0 6px 24px rgba(27,58,140,.12);
  --kerek:18px;
}
*{box-sizing:border-box}
[hidden]{display:none !important}
html,body{margin:0}
body{font-family:'Nunito',system-ui,'Segoe UI',Arial,sans-serif;background:linear-gradient(170deg,#fff6e6 0%,#fffaf2 45%,#eef5ff 100%);color:var(--szoveg);line-height:1.45;min-height:100vh}
h1,h2,h3,.fredoka{font-family:'Nunito',sans-serif;font-weight:800;line-height:1.2}
a{color:var(--kek2)}
.wrap{max-width:1040px;margin:0 auto;padding:20px 16px 48px}
.fejlec{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}
.fejlec h1{margin:0;font-size:1.9rem;color:var(--kek)}
.fejlec .alcim{color:var(--halvany);font-size:.95rem;margin-top:2px}
.kartya{background:var(--kartya);border-radius:var(--kerek);box-shadow:var(--arnyek);padding:20px;border:1px solid var(--vonal)}
.racs{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.gomb{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;padding:11px 22px;font:700 1rem 'Nunito',sans-serif;cursor:pointer;background:var(--kek2);color:#fff;text-decoration:none;transition:transform .12s,box-shadow .12s,opacity .12s}
.gomb:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(0,0,0,.12)}
.gomb:active{transform:translateY(0)}
.gomb.masodlagos{background:#fff;color:var(--kek);border:2px solid var(--vonal)}
.gomb.zold{background:var(--siker)} .gomb.narancs{background:var(--narancs)} .gomb.piros{background:var(--hiba)}
.gomb.nagy{font-size:1.2rem;padding:15px 34px}
.gomb.kicsi{padding:6px 14px;font-size:.88rem}
.gomb[disabled]{opacity:.45;cursor:not-allowed;transform:none;box-shadow:none}
.cimke{display:inline-block;border-radius:999px;padding:3px 10px;font-size:.8rem;font-weight:800}
.cimke.k1{background:var(--k1-hatter);color:var(--k1)} .cimke.k2{background:var(--k2-hatter);color:var(--k2)}
.cimke.nyitott{background:#dcfce7;color:#166534} .cimke.zart{background:#f1f5f9;color:#64748b}
.cimke.hamarosan{background:#f1f5f9;color:#64748b}
.halvany{color:var(--halvany)}
.uzenet{padding:12px 16px;border-radius:12px;margin:12px 0;font-weight:600}
.uzenet.ok{background:#dcfce7;color:#14532d} .uzenet.hiba{background:#fee2e2;color:#7f1d1d} .uzenet.info{background:var(--kek-hatter);color:var(--kek)}
input[type=text],input[type=password],input[type=number],select,textarea{font:inherit;padding:10px 12px;border:2px solid var(--vonal);border-radius:12px;background:#fff;width:100%}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--kek2)}
label{font-weight:700}
table.adat{width:100%;border-collapse:collapse;font-size:.95rem}
table.adat th,table.adat td{padding:9px 10px;border-bottom:1px solid var(--vonal);text-align:left;vertical-align:top}
table.adat th{background:#f8fafc;font-weight:800;color:#334155}

/* --- kategóriaválasztó --- */
.katvalaszto{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.katgomb{border:3px solid transparent;border-radius:var(--kerek);padding:22px 14px;cursor:pointer;text-align:center;font:700 1.15rem 'Nunito',sans-serif;transition:transform .12s}
.katgomb:hover{transform:translateY(-2px)}
.katgomb small{display:block;font:600 .95rem 'Nunito',sans-serif;margin-top:4px;opacity:.85}
.katgomb.k1{background:var(--k1-hatter);color:var(--k1)} .katgomb.k2{background:var(--k2-hatter);color:var(--k2)}
.katgomb.valasztva{border-color:currentColor}
.katsav{display:flex;align-items:center;gap:10px;flex-wrap:wrap}

/* --- hub: hetek --- */
.het{margin-top:18px}
.het-fej{display:flex;align-items:center;gap:10px;margin:0 0 10px}
.het-fej h2{margin:0;font-size:1.25rem;color:var(--kek)}
.het-szam{width:38px;height:38px;border-radius:12px;background:var(--kek);color:#fff;display:grid;place-items:center;font:700 1.1rem 'Nunito',sans-serif;flex:none}
.het.zarva .het-szam{background:#cbd5e1}
.het.zarva h2{color:#94a3b8}
.jatek{display:flex;gap:12px;align-items:flex-start;text-decoration:none;color:inherit;background:#fff;border:1px solid var(--vonal);border-radius:16px;padding:14px;box-shadow:0 2px 8px rgba(31,78,121,.06);transition:transform .12s,box-shadow .12s}
a.jatek:hover{transform:translateY(-2px);box-shadow:var(--arnyek)}
.jatek .ikon{font-size:2rem;line-height:1;flex:none}
.jatek b{display:block;font-family:'Nunito',sans-serif;font-weight:600;font-size:1.08rem}
.jatek span{font-size:.9rem;color:var(--halvany)}
.jatek.inaktiv{opacity:.55}
.kerdoiv-sav{display:flex;flex-direction:column;gap:10px}
.kerdoiv-link{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#fffbeb;border:2px solid #fde68a;border-radius:14px;padding:12px 16px;text-decoration:none;color:#78350f;font-weight:800}

/* --- kérdőív --- */
.kerdes{padding:16px 0;border-bottom:1px dashed var(--vonal)}
.kerdes:last-child{border-bottom:0}
.kerdes-szoveg{font-weight:800;margin-bottom:10px;font-size:1.05rem}
.skala{display:flex;gap:8px;flex-wrap:wrap}
.skala label{flex:1;min-width:54px;text-align:center;cursor:pointer;border:2px solid var(--vonal);border-radius:14px;padding:8px 4px;font-weight:700;user-select:none}
.skala label .emo{display:block;font-size:1.6rem}
.skala label small{display:block;font-size:.72rem;color:var(--halvany);font-weight:600}
.skala input,.valaszto input{position:absolute;opacity:0;pointer-events:none}
.skala input:checked + label{border-color:var(--kek2);background:var(--kek-hatter)}
.valaszto label{display:block;border:2px solid var(--vonal);border-radius:12px;padding:10px 14px;margin:6px 0;cursor:pointer;font-weight:700}
.valaszto input:checked + label{border-color:var(--kek2);background:var(--kek-hatter)}
.kotelezo-jel{color:var(--hiba)}

/* --- játékok --- */
.jatek-fej{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.jatek-fej h1{margin:0;font-size:1.7rem;color:var(--kek)}
.vissza{text-decoration:none;font-weight:800}
.beallitas-racs{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:12px 0 18px}
.opciok{display:flex;gap:8px;flex-wrap:wrap}
.opciok input{position:absolute;opacity:0;pointer-events:none}
.opciok label{border:2px solid var(--vonal);border-radius:12px;padding:8px 14px;cursor:pointer;font-weight:700;background:#fff;user-select:none}
.opciok input:checked + label{border-color:var(--kek2);background:var(--kek-hatter);color:var(--kek)}
.statsor{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:12px}
.stat{background:#fff;border:1px solid var(--vonal);border-radius:14px;padding:8px 16px;text-align:center;min-width:110px}
.stat b{display:block;font:700 1.5rem 'Nunito',sans-serif;color:var(--kek)}
.stat span{font-size:.8rem;color:var(--halvany);font-weight:700;text-transform:uppercase;letter-spacing:.03em}
.eredmeny-nagy{font:700 3rem 'Nunito',sans-serif;color:var(--kek);margin:6px 0}
.grafikon{width:100%;max-width:520px;height:auto;display:block;margin:10px auto}
.rejtett{display:none !important}
.kozep{text-align:center}
.lablec{margin-top:28px;text-align:center;color:var(--halvany);font-size:.85rem}

/* --- tanári felület --- */
.tanar-nav{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.tanar-nav a{padding:8px 16px;border-radius:999px;background:#fff;border:1px solid var(--vonal);text-decoration:none;font-weight:800;color:var(--kek)}
.tanar-nav a.aktiv{background:var(--kek);color:#fff;border-color:var(--kek)}
.sav{height:14px;background:#eef2f7;border-radius:999px;overflow:hidden}
.sav > i{display:block;height:100%;background:var(--kek2);border-radius:999px}
.oszlopok{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:14px}
.qrdoboz{display:inline-block;background:#fff;padding:10px;border-radius:12px;border:1px solid var(--vonal)}

@media (max-width:560px){
  .fejlec h1{font-size:1.5rem}
  .katvalaszto{grid-template-columns:1fr}
  .skala label{min-width:48px}
  .skala label small{display:none}
  .stat{min-width:90px;padding:6px 10px}
}
@media print{
  body{background:#fff}
  .nyomtatas-nelkul{display:none !important}
}

/* --- kezdőoldal: plakát és színes hetek --- */
.plakat{display:block;width:100%;height:auto;border-radius:22px;box-shadow:0 10px 30px rgba(27,58,140,.18);border:4px solid #fff;margin:0 0 18px}
.fejlec h1 .eszed{color:var(--narancs)}
.het-szam{box-shadow:0 3px 0 rgba(0,0,0,.15)}
.het:nth-of-type(5n+1) .het-szam{background:var(--kek2)}
.het:nth-of-type(5n+2) .het-szam{background:var(--k1)}
.het:nth-of-type(5n+3) .het-szam{background:var(--narancs)}
.het:nth-of-type(5n+4) .het-szam{background:var(--lila)}
.het:nth-of-type(5n+5) .het-szam{background:var(--turkiz)}
.het.zarva .het-szam{background:#d8dde6 !important;box-shadow:none}
.kerdoiv-link{background:#fff7d6;border-color:var(--sarga-plakat)}

/* --- Admin felület: egyszerű, jól olvasható betűtípus (ő, ű biztosan szép) --- */
body.admin, body.admin h1, body.admin h2, body.admin h3, body.admin .fredoka,
body.admin input, body.admin select, body.admin textarea, body.admin button, body.admin .gomb,
body.admin table.adat, body.admin .stat b, body.admin .cimke, body.admin label {
  font-family: Cambria, 'Cambria Math', Georgia, 'Times New Roman', serif;
}
body.admin select, body.admin input, body.admin textarea { font-size: 1rem; }

/* --- kezdőoldal: technikák és gyakorlatok hetenként --- */
.tk-sav{margin-top:12px;background:#fff;border:1px dashed #c7d4ea;border-radius:16px;padding:12px 14px}
.tk-sav-fej{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px;color:var(--kek)}
.tk-ora-sor{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:8px}
.tk-ora-cimke{font-weight:800;color:var(--narancs);font-size:.9rem;min-width:52px}
.tk-mini{display:flex;align-items:center;gap:8px;background:#f8fafc;border:1px solid var(--vonal);border-radius:12px;padding:4px 10px 4px 4px;text-decoration:none;color:inherit;font-weight:700;font-size:.92rem;transition:transform .12s,box-shadow .12s}
.tk-mini:hover{transform:translateY(-1px);box-shadow:0 3px 10px rgba(0,0,0,.08)}
.tk-mini-abra{width:58px;height:35px;background:#fff;border-radius:8px;flex:none;overflow:hidden}
.tk-mini-abra svg{width:100%;height:100%;display:block}

.ora-cimke{font-style:normal;font-weight:800;font-size:.75rem;color:var(--narancs);background:#fff1e3;border-radius:999px;padding:1px 7px;margin-right:2px}
