/* =========================================================
   Eduway - uj dizajn reteg ("A baratsagos" sablon)
   Kulon fajl; a meglevo app.css UTAN toltodik, azt felulirja.
   Csak vizualis tulajdonsagok (szin, hatter, radius, arnyek,
   betu, terkoz) - a szerkezetet (position/float/width) nem valtoztatja.
   Keszult: 2026-10-09
   ========================================================= */

:root{
  --uj-brand:#4f46e5;      /* fo szin - indigo */
  --uj-brand-dark:#4338ca; /* hover */
  --uj-brand-2:#06b6d4;    /* masodlagos - cian */
  --uj-accent:#22c55e;     /* kiemeles / siker - zold */
  --uj-soft:#eef0fe;       /* halvany indigo hatter */
  --uj-bg:#f5f7fb;         /* oldal hatter */
  --uj-ink:#1a2433;
  --uj-ink-soft:#5a6679;
  --uj-line:#e6eaf1;
  --uj-shadow:0 2px 4px rgba(16,30,54,.06), 0 8px 24px rgba(16,30,54,.07);
  --uj-shadow-sm:0 1px 3px rgba(16,30,54,.08);
}

/* ---- Alap: betu es hatter ---- */
body{
  font-family:-apple-system,"Segoe UI",Roboto,system-ui,Arial,sans-serif !important;
  color:var(--uj-ink);
}
.sb2{ background:var(--uj-bg) !important; }

/* ---- Fejlec sav ---- */
.sb1{ box-shadow:var(--uj-shadow-sm) !important; }

/* ---- Gombok (Materialize .btn + login gomb) ---- */
.btn, .btn-large, .btn-small, .btn-log-in,
button[type="submit"].waves-effect{
  background-color:var(--uj-brand) !important;
  border-radius:10px !important;
  box-shadow:var(--uj-shadow-sm) !important;
  text-transform:none !important;
  letter-spacing:.2px;
  font-weight:600;
}
.btn:hover, .btn-large:hover, .btn-small:hover, .btn-log-in:hover{
  background-color:var(--uj-brand-dark) !important;
}
.btn-log-in{
  width:100%;
  padding:0 2rem;
  height:46px; line-height:46px;
  border-radius:12px !important;
}
/* "sikeres / pozitiv" jellegu gombok maradjanak zoldek, ha vannak */
.btn.green, .btn-large.green, .btn.btn-success{
  background-color:var(--uj-accent) !important;
}

/* ---- Urlapmezok (Materialize input-field a loginon) ---- */
.input-field input[type=text]:focus,
.input-field input[type=email]:focus,
.input-field input[type=password]:focus,
.input-field input:focus{
  border-bottom:2px solid var(--uj-brand) !important;
  box-shadow:0 1px 0 0 var(--uj-brand) !important;
}
.input-field input:focus + label{ color:var(--uj-brand) !important; }

/* ---- Linkek (jelszo-visszaallitas / regisztracio a loginon) ---- */
.for-pass{ color:var(--uj-brand) !important; }
.for-pass:hover{ color:var(--uj-brand-dark) !important; }

/* ---- Bejelentkezo kartya levegosebb ---- */
.blog-login-in .card, .blog-login-in > .row,
.blog-login-in{ border-radius:16px; }

/* ---- Kezdolap statisztika-kartyak ---- */
.ad-hom-box{
  border-radius:14px !important;
  box-shadow:var(--uj-shadow) !important;
  border:1px solid var(--uj-line);
}

/* ---- Tartalom-dobozok ---- */
.box-inn-sp{
  border-radius:14px !important;
  box-shadow:var(--uj-shadow) !important;
  border:1px solid var(--uj-line);
}
.inn-title{
  border-radius:14px 14px 0 0 !important;
  border-bottom:1px solid var(--uj-line) !important;
  font-weight:600;
}

/* ---- Tablazatok ---- */
.table-desi thead th, .table thead th, table.table-hover thead th{
  background:#f3f5f9 !important;
  color:var(--uj-ink-soft) !important;
  border-bottom:1px solid var(--uj-line) !important;
  font-weight:600;
}
.table-hover tbody tr:hover, .table-desi tbody tr:hover{
  background:var(--uj-soft) !important;
}

/* ---- Materialize teal akcentus -> indigo ---- */
.teal, .teal.lighten-1, .btn-floating{ background-color:var(--uj-brand) !important; }
.teal-text{ color:var(--uj-brand) !important; }
nav .brand-logo, .dropdown-content li>a, .dropdown-content li>span{ color:var(--uj-brand); }

/* ---- Haladasjelzo ---- */
.progress{ background-color:var(--uj-line) !important; }
.progress .determinate, .progress .indeterminate{ background-color:var(--uj-accent) !important; }

/* ---- Szoveg-segedosztalyok finomitasa ---- */
.txt-success{ color:var(--uj-accent) !important; }

/* ---- Ures allapot (pl. "Nincs elerheto oktatas") ---- */
.ures-allapot{
  text-align:center; padding:46px 20px; max-width:440px; margin:26px auto;
}
.ures-allapot .ures-ikon{
  width:86px; height:86px; border-radius:50%;
  background:var(--uj-soft); color:var(--uj-brand);
  display:flex; align-items:center; justify-content:center;
  font-size:38px; margin:0 auto 18px;
}
.ures-allapot p, .ures-allapot h3{
  font-size:16px; color:var(--uj-ink-soft); margin:0 0 6px; font-weight:600;
}
.ures-allapot p.alcim{ font-size:13.5px; font-weight:400; }

/* ---- Fokusz-lathatosag (akadalymentesseg) ----
   Az input mezoknel a Materialize also vonala jelzi a fokuszt,
   ezert ott nem teszunk teljes keretet (dobozos hatas elkerulese). */
a:focus-visible, button:focus-visible, select:focus-visible, .btn:focus-visible{
  outline:3px solid var(--uj-soft); outline-offset:2px; border-radius:8px;
}

/* =========================================================
   LATVANYTERV KOMPONENSEK (uj, kulon nezetek - pl. home-manager-uj)
   A regi nezetek ezeket nem hasznaljak, igy nem erinti oket.
   ========================================================= */
.lt-wrap{ padding:22px 26px; max-width:1180px; }
.lt-breadcrumb{ color:var(--uj-ink-soft); font-size:13.5px; margin-bottom:16px; }
.lt-hello{ background:var(--hero,linear-gradient(135deg,#4f46e5,#06b6d4)); color:#fff; border-radius:16px; padding:18px 20px; margin-bottom:18px; }
.lt-hello h3{ font-size:18px; margin:0; } .lt-hello p{ margin:5px 0 0; opacity:.92; font-size:13.5px; }
.lt-note{ border-radius:12px; padding:12px 15px; margin-bottom:16px; font-size:13.5px; }
.lt-note-warn{ background:#fdeee7; border-left:4px solid #e8602c; }
.lt-stats{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:18px; }
.lt-stat{ background:#fff; border:1px solid var(--uj-line); border-radius:16px; padding:18px; box-shadow:var(--uj-shadow); }
.lt-stat .ic{ width:44px; height:44px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:20px; color:#fff; margin-bottom:12px; }
.lt-stat .ic-1{ background:#22c55e; } .lt-stat .ic-2{ background:#4f46e5; }
.lt-stat .ic-3{ background:#06b6d4; } .lt-stat .ic-4{ background:#f59e0b; }
.lt-stat .num{ font-size:26px; font-weight:800; color:var(--uj-ink); line-height:1; }
.lt-stat .lbl{ font-size:12.5px; color:var(--uj-ink-soft); margin-top:5px; }
.lt-grid{ display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.lt-card{ background:#fff; border:1px solid var(--uj-line); border-radius:16px; box-shadow:var(--uj-shadow); overflow:hidden; }
.lt-card-head{ padding:16px 18px; font-weight:700; font-size:15px; border-bottom:1px solid var(--uj-line); }
.lt-card-body{ padding:6px 8px; max-height:520px; overflow:auto; }
.lt-table{ width:100%; border-collapse:collapse; font-size:13.5px; }
.lt-table th{ text-align:left; padding:10px 12px; font-size:11.5px; text-transform:uppercase; letter-spacing:.4px; color:var(--uj-ink-soft); border-bottom:1px solid var(--uj-line); }
.lt-table td{ padding:11px 12px; border-bottom:1px solid #f0f3f7; color:var(--uj-ink); }
.lt-table tbody tr:hover{ background:var(--uj-soft); }
.lt-table a{ color:var(--uj-brand); font-weight:600; }
.lt-badge{ display:inline-block; padding:4px 11px; border-radius:999px; font-size:12px; font-weight:600; }
.lt-badge.ok{ background:#e7f7ee; color:#15a35b; }
.lt-badge.bad{ background:#fdecea; color:#e5533c; }
@media(max-width:900px){ .lt-stats{grid-template-columns:repeat(2,1fr);} .lt-grid{grid-template-columns:1fr;} }

/* =========================================================
   MENU + FEJLEC modernizalas (globalis, a layoutra hat)
   Csak vizualis; a HTML-szerkezetet es a mukodest nem valtoztatja.
   ========================================================= */
/* Oldalsav user-info */
.sb2-12{ padding:14px 12px 6px; }
.sb2-12 img{ border-radius:12px; }
.sb2-12 h5{ font-size:13.5px; line-height:1.75; color:var(--uj-ink); }

/* Bal menu pontok */
.sb2-13 ul.collapsible{ border:0 !important; box-shadow:none !important; margin:4px 8px; }
.sb2-13 li a{
  display:flex !important; align-items:center; gap:11px;
  padding:11px 14px !important; margin:2px 0; border-radius:11px;
  color:var(--uj-ink) !important; font-size:14px; font-weight:500;
  transition:background .15s ease, color .15s ease;
}
.sb2-13 li a i, .sb2-13 li a .fa{ width:20px; text-align:center; color:var(--uj-brand) !important; font-size:16px; }
.sb2-13 li a:hover{ background:var(--uj-soft) !important; color:var(--uj-brand) !important; }

/* Fejlec: Fiokom dropdown + nyelvvalaszto */
.top-user-pro{ display:inline-flex; align-items:center; gap:7px; color:var(--uj-ink) !important; font-weight:600; font-size:13.5px; }
.top-user-pro img{ width:30px; height:30px; border-radius:50%; object-fit:cover; }
.dropdown-content.top-menu-sty{ border-radius:12px; box-shadow:var(--uj-shadow); overflow:hidden; border:1px solid var(--uj-line); }
.dropdown-content.top-menu-sty li a{ color:var(--uj-ink) !important; display:flex; align-items:center; gap:9px; }
.dropdown-content.top-menu-sty li a i, .dropdown-content.top-menu-sty li a .fa{ color:var(--uj-brand); }

/* =========================================================
   RESZPONZIVITAS
   ========================================================= */
@media(max-width:760px){
  .lt-wrap{ padding:16px 14px; }
  .lt-stats{ grid-template-columns:repeat(2,1fr); gap:10px; }
  .lt-grid{ grid-template-columns:1fr; gap:12px; }
  .lt-stat{ padding:15px; }
  .lt-stat .num{ font-size:22px; }
  .lt-card-body{ max-height:none; }
  .ures-allapot{ padding:34px 14px; }
}
@media(max-width:460px){
  .lt-stats{ grid-template-columns:1fr; }
  .lt-table th, .lt-table td{ padding:9px 8px; font-size:12.5px; }
}

/* ===== Tanuloi oktatas-kartya (project-card) ===== */
.lt-course{
  background:#fff; border:1px solid var(--uj-line); border-radius:16px;
  box-shadow:var(--uj-shadow); padding:18px; display:flex; gap:14px;
  align-items:flex-start; margin-bottom:20px;
}
.lt-course-ic{
  width:48px; height:48px; border-radius:13px; background:var(--uj-soft);
  color:var(--uj-brand); display:flex; align-items:center; justify-content:center;
  font-size:22px; flex:none;
}
.lt-course-body{ flex:1; min-width:0; }
.lt-course-top{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:6px; }
.lt-course-top h4{ font-size:16px; margin:0; }
.lt-course-meta{ font-size:12.5px; color:var(--uj-ink-soft); margin-bottom:4px; }
.lt-course-tags{ font-size:13px; color:var(--uj-ink-soft); margin:4px 0 12px; }
.lt-course-btn{ display:inline-block; margin:0 !important; }
.lt-badge.warn{ background:#fdf4e1; color:#9a6a0a; }

/* ===== Kerdesoldal (project-answer-employee) ===== */
.lt-quiz-top{ display:flex; align-items:center; gap:12px; margin:12px 0 4px; }
.lt-quiz-step{ font-size:13px; color:var(--uj-ink-soft); font-weight:600; white-space:nowrap; }
.lt-quiz-bar{ flex:1; height:8px; background:var(--uj-line); border-radius:999px; overflow:hidden; }
.lt-quiz-bar>b{ display:block; height:100%; background:var(--uj-brand); border-radius:999px; transition:width .3s ease; }
.question{ border:1px solid var(--uj-line) !important; border-radius:12px !important; box-shadow:var(--uj-shadow-sm) !important; padding:16px 18px !important; margin-bottom:16px !important; }
.question h4.validate, .question .validate{ font-size:16px; }
.inner_question{ border:1px solid var(--uj-line); border-radius:10px; padding:7px 12px !important; margin:7px 0 7px 40px; transition:background .15s; }
.inner_question:hover{ background:var(--uj-soft); }

/* ===== Siker-kepernyo (project-finish-employee) ===== */
.lt-finish{ max-width:520px; margin:30px auto; background:#fff; border:1px solid var(--uj-line); border-radius:18px; box-shadow:var(--uj-shadow); padding:36px 30px; text-align:center; }
.lt-finish-medal{ width:92px; height:92px; border-radius:50%; margin:0 auto 18px; display:flex; align-items:center; justify-content:center; font-size:40px; color:#fff; }
.lt-finish-medal.ok{ background:linear-gradient(135deg,#4f46e5,#06b6d4); }
.lt-finish-medal.warn{ background:linear-gradient(135deg,#e0a82e,#e8602c); }
.lt-finish h3{ font-size:22px; margin-bottom:10px; color:var(--uj-ink); }
.lt-finish-score{ color:var(--uj-ink-soft); font-size:14px; margin:4px 0; }
.lt-finish-status{ font-size:20px; font-weight:800; margin:8px 0; }
.lt-finish-status.ok{ color:var(--uj-accent); }
.lt-finish-status.bad{ color:#e5533c; }
.lt-finish-msg{ color:var(--uj-ink-soft); font-size:14px; margin:10px auto 18px; max-width:380px; }
.lt-finish-reward{ display:inline-block; margin-bottom:10px !important; }
.lt-finish-rewardinfo{ font-size:12.5px; color:var(--uj-ink-soft); }
.lt-finish .btn-large{ margin-top:8px; }

/* ===== LATVANYTERV-ELRENDEZES MINTA: felso menusav + hero ===== */
.lt-topnav{ background:#fff; border-bottom:1px solid var(--uj-line); padding:0 22px; display:flex; align-items:center; gap:16px; height:62px; position:sticky; top:0; z-index:100; box-shadow:var(--uj-shadow-sm); }
.lt-topnav .brand img{ max-width:128px; display:block; }
.lt-topnav nav{ display:flex; gap:3px; background:transparent !important; box-shadow:none !important; height:auto !important; line-height:normal !important; }
.lt-topnav nav a{ padding:9px 13px; border-radius:10px; color:var(--uj-ink); font-size:13.5px; font-weight:500; text-decoration:none; display:flex; align-items:center; gap:7px; white-space:nowrap; }
.lt-topnav nav a i{ color:var(--uj-brand); font-size:14px; }
.lt-topnav nav a:hover{ background:var(--uj-soft); color:var(--uj-brand); }
.lt-topnav nav a.on{ background:var(--uj-brand); color:#fff; }
.lt-topnav nav a.on i{ color:#fff; }
.lt-topnav .right{ margin-left:auto; display:flex; align-items:center; gap:14px; }
.lt-topnav .acc{ display:flex; align-items:center; gap:8px; font-size:13.5px; font-weight:600; color:var(--uj-ink); cursor:pointer; }
.lt-topnav .acc .pic{ width:32px; height:32px; border-radius:50%; background:var(--uj-soft); color:var(--uj-brand); display:flex; align-items:center; justify-content:center; font-weight:700; }
.lt-dropdown{ position:relative; }
.lt-dropdown-menu{ position:absolute; right:0; top:calc(100% + 8px); background:#fff; border:1px solid var(--uj-line); border-radius:12px; box-shadow:var(--uj-shadow); min-width:210px; padding:6px; display:none; z-index:200; }
.lt-dropdown-menu.open{ display:block; }
.lt-hamburger{ display:none; width:42px; height:42px; border-radius:11px; background:var(--uj-soft); color:var(--uj-brand); align-items:center; justify-content:center; font-size:18px; cursor:pointer; border:0; }
.lt-dropdown-menu a{ display:flex; align-items:center; gap:9px; padding:9px 12px; border-radius:8px; color:var(--uj-ink); text-decoration:none; font-size:13.5px; }
.lt-dropdown-menu a i{ color:var(--uj-brand); width:16px; text-align:center; }
.lt-dropdown-menu a:hover{ background:var(--uj-soft); color:var(--uj-brand); }
.lt-hero{ background:linear-gradient(135deg,#4f46e5,#06b6d4); color:#fff; border-radius:18px; padding:26px 28px; margin:24px auto 20px; max-width:1100px; }
.lt-hero h2{ margin:0; font-size:23px; } .lt-hero p{ margin:7px 0 0; opacity:.93; font-size:15px; }
.lt-page{ max-width:1100px; margin:0 auto; padding:0 20px 50px; }
.lt-page .row{ display:flex; flex-wrap:wrap; margin:0 -10px; }
.lt-page .col-md-6{ padding:0 10px; }
@media(max-width:760px){
  .lt-hamburger{ display:flex; }
  .lt-topnav nav{ display:none; position:absolute; top:62px; left:0; right:0; background:#fff !important; flex-direction:column; padding:10px; gap:3px; box-shadow:0 14px 28px rgba(16,30,54,.20); border-top:1px solid var(--uj-line); border-bottom:1px solid var(--uj-line); z-index:150; }
  .lt-topnav nav.open{ display:flex !important; }
  .lt-topnav nav a{ width:100%; background:#fff !important; color:var(--uj-ink) !important; padding:12px 14px !important; }
  .lt-topnav nav a.on{ background:var(--uj-brand) !important; color:#fff !important; }
  .lt-hero{ margin:16px 14px; }
  .lt-page{ padding:0 14px 40px; }
}


/* === Felso-menus mod: a regi .sb2-2 tartalomdobozt kozepre, teljes szelesseggel (nincs bal menu) === */
body.lt-top-mode .sb2-2{ float:none !important; width:auto !important; max-width:1180px !important; margin:0 auto !important; padding:26px 24px 56px !important; background:transparent !important; }
body.lt-top-mode .sb2{ margin-top:0 !important; background:transparent !important; }
body.lt-top-mode{ background:#f6f7fb; }


/* === Felso menusav: uzenet-csengo, lenyilo fejlec (minden szerepkor) === */
.lt-topnav .lt-bell{ position:relative; display:flex; align-items:center; color:var(--uj-ink); font-size:17px; padding:6px; border-radius:9px; }
.lt-topnav .lt-bell:hover{ background:var(--uj-soft); color:var(--uj-brand); }
.lt-topnav .lt-badge{ position:absolute; top:-2px; right:-4px; min-width:17px; height:17px; padding:0 4px; background:var(--uj-accent); color:#fff; font-size:10px; font-weight:700; line-height:17px; text-align:center; border-radius:9px; }
.lt-dropdown-head{ padding:10px 12px 11px; border-bottom:1px solid var(--uj-line); margin-bottom:5px; }
.lt-dropdown-head strong{ display:block; font-size:14px; color:var(--uj-ink); }
.lt-dropdown-head span{ display:block; font-size:12px; color:var(--uj-ink-soft); margin-top:2px; }
.lt-dropdown-menu a.lt-logout{ border-top:1px solid var(--uj-line); margin-top:5px; }
.lt-dropdown-menu a.lt-logout i{ color:#e11d48; }


.lt-dropdown-head .lt-dd-row{ margin-top:5px; }
.lt-dropdown-head .lt-dd-row a{ color:var(--uj-brand); text-decoration:underline; }

/* === Ceges sav: menusor alatt, kozepen a ceg logoja/helyorzoje + cegnev === */
.lt-cegsav{ text-align:center; padding:18px 16px 4px; }
.lt-cegsav img{ max-height:56px; max-width:220px; width:auto; object-fit:contain; display:inline-block; }
.lt-cegsav .nev{ margin:9px 0 0; font-size:13px; font-weight:600; color:var(--uj-ink-soft); letter-spacing:.02em; }
.lt-cegsav.ures .ph{ display:inline-flex; align-items:center; justify-content:center; width:54px; height:54px; border-radius:14px; background:var(--uj-soft); color:var(--uj-brand); font-size:22px; font-weight:800; }
.lt-cegsav .hint{ display:block; margin-top:6px; font-size:12px; color:var(--uj-ink-soft); }
.lt-cegsav .hint a{ color:var(--uj-brand); text-decoration:underline; }


/* === Nyelvvalaszto legordulo a felso savban === */
.lt-topnav .lt-lang .acc{ gap:6px; }
.lt-topnav .lt-lang .lt-lang-code{ font-weight:600; font-size:13px; }
.lt-dropdown-menu .lt-lang-opt{ display:flex; align-items:center; gap:9px; width:100%; padding:9px 12px; border:0; background:none; border-radius:8px; color:var(--uj-ink); font-size:13.5px; cursor:pointer; text-align:left; font-family:inherit; }
.lt-dropdown-menu .lt-lang-opt:hover{ background:var(--uj-soft); color:var(--uj-brand); }
.lt-dropdown-menu .lt-lang-opt.on{ background:var(--uj-soft); color:var(--uj-brand); font-weight:600; }


.lt-minta-sav{ display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; background:#fff7ed; border:1px solid #fed7aa; color:#9a3412; border-radius:14px; padding:13px 16px; margin-bottom:18px; font-size:13.5px; }
.lt-minta-sav i{ color:#ea580c; }
.lt-minta-btn{ border:0; background:#ea580c; color:#fff; font-weight:700; font-size:13px; padding:8px 14px; border-radius:9px; cursor:pointer; white-space:nowrap; }
.lt-minta-btn:hover{ background:#c2410c; }

/* ===== AI onboarding (oktatasi terv asszisztens) 2026-10-13 ===== */
.lt-ai-head{margin:6px 0 14px}
.lt-ai-head h2{font-size:22px;font-weight:800;color:#1e293b;margin:0 0 6px}
.lt-ai-head h2 .fa{color:var(--uj-brand,#4f46e5);margin-right:6px}
.lt-ai-sub{color:#475569;font-size:14px;line-height:1.55;max-width:780px;margin:0 0 10px}
.lt-ai-privacy{display:flex;align-items:flex-start;gap:8px;background:#eef2ff;border:1px solid #c7d2fe;color:#3730a3;border-radius:10px;padding:10px 12px;font-size:13px;line-height:1.5;max-width:820px}
.lt-ai-privacy .fa{margin-top:2px}
.lt-ai-warn{background:#fef3c7;border:1px solid #fcd34d;color:#92400e;border-radius:10px;padding:10px 12px;font-size:14px;margin:10px 0}

.lt-ai-chat{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:18px;max-width:900px;min-height:220px;max-height:52vh;overflow-y:auto;box-shadow:0 2px 10px rgba(15,23,42,.05)}
.lt-msg{display:flex;margin:10px 0}
.lt-msg-user{justify-content:flex-end}
.lt-msg-ai{justify-content:flex-start}
.lt-msg-b{max-width:76%;padding:11px 15px;border-radius:16px;font-size:14.5px;line-height:1.55;white-space:normal;word-wrap:break-word}
.lt-msg-ai .lt-msg-b{background:#f1f5f9;color:#1e293b;border-bottom-left-radius:5px}
.lt-msg-user .lt-msg-b{background:var(--uj-brand,#4f46e5);color:#fff;border-bottom-right-radius:5px}

.lt-ai-typing{display:flex;gap:5px;padding:12px 6px;max-width:900px}
.lt-ai-typing span{width:8px;height:8px;border-radius:50%;background:#94a3b8;opacity:.5;animation:ltblink 1.2s infinite}
.lt-ai-typing span:nth-child(2){animation-delay:.2s}
.lt-ai-typing span:nth-child(3){animation-delay:.4s}
@keyframes ltblink{0%,80%,100%{opacity:.3;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}

.lt-ai-form{display:flex;gap:10px;max-width:900px;margin:12px 0 0}
.lt-ai-form textarea{flex:1;border:1px solid #cbd5e1;border-radius:12px;padding:11px 14px;font-size:14.5px;font-family:inherit;resize:vertical;min-height:46px;outline:none}
.lt-ai-form textarea:focus{border-color:var(--uj-brand,#4f46e5);box-shadow:0 0 0 3px rgba(79,70,229,.15)}
.lt-ai-btn{display:inline-flex;align-items:center;gap:7px;border:none;border-radius:12px;padding:11px 18px;font-size:14.5px;font-weight:700;cursor:pointer;background:var(--uj-brand,#4f46e5);color:#fff;transition:filter .15s,transform .05s}
.lt-ai-btn:hover{filter:brightness(1.07)}
.lt-ai-btn:active{transform:translateY(1px)}
.lt-ai-btn:disabled{opacity:.5;cursor:not-allowed}
.lt-ai-actions{display:flex;gap:10px;align-items:center;max-width:900px;margin:14px 0 0;flex-wrap:wrap}
.lt-ai-btn-plan{background:var(--uj-accent,#22c55e)}
.lt-ai-btn-ghost{background:#fff;color:#475569;border:1px solid #cbd5e1}
.lt-ai-btn-ghost:hover{filter:none;background:#f8fafc}

.lt-ai-plan{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:22px 24px;max-width:900px;margin:22px 0 0;box-shadow:0 2px 10px rgba(15,23,42,.05)}
.lt-ai-plan-title{font-size:19px;font-weight:800;color:#1e293b;margin:0 0 14px}
.lt-ai-plan-title .fa{color:var(--uj-accent,#22c55e);margin-right:6px}
.lt-ai-plan-body{color:#334155;font-size:14.5px;line-height:1.65}
.lt-ai-plan-body h3{font-size:17px;font-weight:800;color:var(--uj-brand,#4f46e5);margin:20px 0 8px;padding-top:10px;border-top:1px solid #eef2f7}
.lt-ai-plan-body h3:first-child{border-top:none;padding-top:0;margin-top:0}
.lt-ai-plan-body h4{font-size:15px;font-weight:700;color:#1e293b;margin:14px 0 6px}
.lt-ai-plan-body ul,.lt-ai-plan-body ol{margin:6px 0 12px;padding-left:22px}
.lt-ai-plan-body li{margin:4px 0}
.lt-ai-plan-body p{margin:8px 0}

@media (max-width:620px){
  .lt-msg-b{max-width:88%}
  .lt-ai-form{flex-direction:column}
  .lt-ai-btn{justify-content:center}
}


/* ===== Journey (oktatasi ut) szerkeszto - idovonal 2026-10-13 ===== */
.jny-head{display:flex;flex-direction:column;gap:8px;margin:6px 0 2px}
.jny-title{display:flex;align-items:center;gap:10px}
.jny-title h1{font-size:23px;font-weight:800;margin:0;color:#1e293b}
.jny-pen{border:1px solid #e2e8f0;background:#fff;border-radius:9px;padding:6px 10px;color:#64748b;cursor:pointer}
.jny-pen:hover{background:#f1f5f9;color:#1e293b}
.jny-rename{display:none;gap:8px;align-items:center;margin-top:4px}
.jny-rename.open{display:flex}
.jny-rename input{border:1px solid #cbd5e1;border-radius:9px;padding:8px 11px;font-size:15px;min-width:260px}

.jny-summary{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0 22px}
.jny-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:9px 13px;font-size:13.5px;color:#1e293b;font-weight:600}
.jny-ic{width:22px;height:22px;border-radius:7px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:12px;font-weight:700}

.jny-cols{display:grid;grid-template-columns:1fr 330px;gap:26px;align-items:start}

.jny-tl{position:relative;padding-left:46px}
.jny-tl::before{content:"";position:absolute;left:19px;top:14px;bottom:28px;width:3px;background:linear-gradient(var(--uj-brand,#4f46e5),#c7d2fe)}
.jny-node{position:relative;margin:0 0 6px}
.jny-marker{position:absolute;left:-46px;top:2px;width:40px;height:40px;border-radius:50%;background:#fff;border:3px solid var(--uj-brand,#4f46e5);color:var(--uj-brand,#4f46e5);display:flex;align-items:center;justify-content:center;font-weight:800;font-size:15px;z-index:2}
.jny-start .jny-marker,.jny-end .jny-marker{background:var(--uj-brand,#4f46e5);color:#fff;font-size:16px}
.jny-end .jny-marker{background:var(--uj-accent,#22c55e);border-color:var(--uj-accent,#22c55e)}
.jny-endpoint{display:flex;align-items:center;min-height:40px;font-weight:700;color:#64748b}
.jny-endpoint b{color:#1e293b}

.jny-step{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:14px 16px;box-shadow:0 2px 10px rgba(15,23,42,.05);display:flex;align-items:center;gap:14px;transition:box-shadow .15s,border-color .15s}
.jny-step:hover{box-shadow:0 6px 20px rgba(79,70,229,.12);border-color:#c7d2fe}
.jny-grip{color:#cbd5e1;cursor:grab;font-size:18px;line-height:1;user-select:none;letter-spacing:-2px}
.jny-body{flex:1;min-width:0}
.jny-body h3{margin:0 0 6px;font-size:16px;font-weight:700;color:#1e293b}
.jny-types{display:flex;gap:6px;flex-wrap:wrap}
.jny-t{display:inline-flex;align-items:center;gap:5px;font-size:12px;font-weight:700;color:#fff;border-radius:7px;padding:3px 8px}
.jny-t.v{background:#6366f1}.jny-t.k{background:#0ea5e9}.jny-t.s{background:#14b8a6}
.jny-meta{color:#64748b;font-size:12.5px;margin-top:7px}
.jny-tools{display:flex;gap:6px}
.jny-tools form{margin:0}
.jny-tool{border:1px solid #e2e8f0;background:#fff;border-radius:9px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#64748b;font-size:14px}
.jny-tool:hover{background:#f1f5f9;color:#1e293b}
.jny-tool.del:hover{background:#fee2e2;color:#dc2626;border-color:#fecaca}

.jny-delay{position:relative;margin:4px 0 4px -46px;padding-left:46px;min-height:50px;display:flex;align-items:center;flex-wrap:wrap;gap:10px}
.jny-pill{display:inline-flex;align-items:center;gap:8px;background:#fff7ed;border:1px dashed #fdba74;color:#9a3412;border-radius:20px;padding:7px 14px;font-size:13px;font-weight:700;cursor:pointer}
.jny-pill:hover{background:#ffedd5}
.jny-pill.now{background:#eef2ff;border-color:#c7d2fe;color:#3730a3}
.jny-clk{font-weight:600;font-size:12px;opacity:.8}
.jny-delay-edit{display:none;align-items:center;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:8px 12px;box-shadow:0 4px 14px rgba(15,23,42,.08)}
.jny-delay-edit.open{display:flex;flex-wrap:wrap}
.jny-delay-edit input{width:58px;border:1px solid #e2e8f0;border-radius:8px;padding:6px 8px;font-size:14px;text-align:center}
.jny-delay-edit label{font-size:12.5px;color:#64748b}
.jny-ok{background:var(--uj-brand,#4f46e5);color:#fff;border:none;border-radius:8px;padding:7px 12px;font-weight:700;cursor:pointer}

.jny-add{margin:12px 0 0 -46px;padding-left:46px}
.jny-add-btn{display:inline-flex;align-items:center;gap:8px;background:#eef2ff;border:1px solid #c7d2fe;color:#4338ca;border-radius:12px;padding:11px 16px;font-weight:700;font-size:14px;cursor:pointer;text-decoration:none}
.jny-add-btn:hover{background:#e0e7ff}

.jny-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:none;border-radius:12px;padding:11px 18px;font-size:14.5px;font-weight:700;cursor:pointer;background:var(--uj-brand,#4f46e5);color:#fff;text-decoration:none}
.jny-btn:hover{filter:brightness(1.07);color:#fff}
.jny-btn-sm{padding:8px 13px;font-size:13.5px}
.jny-btn-block{width:100%;margin-top:12px}

.jny-empty{background:#fff;border:1px dashed #cbd5e1;border-radius:16px;padding:34px 20px;text-align:center;color:#64748b}
.jny-empty-ic{width:56px;height:56px;border-radius:50%;background:#eef2ff;color:var(--uj-brand,#4f46e5);display:flex;align-items:center;justify-content:center;font-size:22px;margin:0 auto 12px}
.jny-empty h3{margin:0 0 6px;color:#1e293b;font-size:17px}
.jny-empty p{margin:0 0 16px}

.jny-legend{display:flex;gap:14px;flex-wrap:wrap;margin:24px 0 0;color:#64748b;font-size:12.5px}
.jny-legend i{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:5px;vertical-align:middle}

.jny-panel{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:16px 16px 18px;box-shadow:0 2px 10px rgba(15,23,42,.05)}
.jny-panel + .jny-panel{margin-top:18px}
.jny-panel h2{font-size:15px;font-weight:800;margin:0 0 4px}
.jny-sub{color:#64748b;font-size:12.5px;margin:0 0 12px}
.jny-grp-quick{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:12px}
.jny-qlabel{font-size:12px;color:#64748b;width:100%}
.jny-qbtn{border:1px solid #e2e8f0;background:#f8fafc;border-radius:8px;padding:5px 10px;font-size:12.5px;font-weight:600;color:#334155;cursor:pointer}
.jny-qbtn:hover{background:#eef2ff;border-color:#c7d2fe;color:#4338ca}
.jny-users{display:flex;flex-direction:column;gap:7px;max-height:360px;overflow-y:auto}
.jny-user{display:flex;align-items:center;gap:10px;padding:8px 10px;border:1px solid #e2e8f0;border-radius:11px;cursor:pointer}
.jny-user input{display:none}
.jny-user.on{border-color:var(--uj-accent,#22c55e);background:#f0fdf4}
.jny-av{width:30px;height:30px;border-radius:9px;background:#e0e7ff;color:#4338ca;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex:none}
.jny-nm{flex:1;font-weight:600;font-size:14px;color:#1e293b}
.jny-tick{width:20px;height:20px;border-radius:6px;border:2px solid #e2e8f0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:11px;flex:none}
.jny-user.on .jny-tick{background:var(--uj-accent,#22c55e);border-color:var(--uj-accent,#22c55e)}
.jny-tip{background:#eef2ff;border:1px solid #c7d2fe;border-radius:11px;padding:11px 12px;font-size:12.5px;color:#3730a3;line-height:1.5}

@media (max-width:900px){ .jny-cols{grid-template-columns:1fr} }


/* journey huzasos atrendezes 2026-10-13 */
.jny-node.jny-sortable .jny-step{cursor:default}
.jny-tl.jny-dragging .jny-delay{display:none}
.jny-tl.jny-dragging .jny-step{cursor:grabbing}
.jny-node.jny-drag .jny-step{opacity:.55;border-style:dashed;box-shadow:none}


/* journey huzas-javitas + fel/le nyilak 2026-10-13 (keso szabaly = felulir) */
.jny-tl.jny-dragging .jny-delay{display:flex;opacity:.25;pointer-events:none}
.jny-move{display:flex;flex-direction:column;gap:3px}
.jny-move .jny-tool{width:30px;height:23px;font-size:12px}
.jny-tool[disabled]{opacity:.3;cursor:not-allowed}
.jny-tool[disabled]:hover{background:#fff;color:#64748b}


/* === Oktatas / tananyag kartyak ujraarculat 2026-10-13 === */
.okt-toolbar{display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;margin:0 0 18px}
.okt-search{flex:1;min-width:180px;display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:8px 12px}
.okt-search input{border:0;outline:0;width:100%;font-size:14px;font-family:inherit;background:transparent}
.okt-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;text-align:left;margin-top:6px}
.okt-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;display:flex;flex-direction:column;transition:.15s}
.okt-card:hover{box-shadow:0 8px 24px rgba(15,23,42,.08);transform:translateY(-2px);border-color:#c7d2fe}
.okt-chead{padding:16px 16px 10px;display:flex;gap:12px;align-items:flex-start;cursor:pointer}
.okt-ic{flex:0 0 auto;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-size:20px;background:#eef2ff;color:var(--uj-brand,#4f46e5)}
.okt-ic.green{background:#dcfce7;color:#16a34a}
.okt-title{font-weight:700;font-size:15px;margin:0;line-height:1.35;color:#1e293b}
.okt-sub{color:#64748b;font-size:12.5px;margin:2px 0 0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.okt-caret{margin-left:auto;color:#94a3b8;font-size:13px;flex:0 0 auto}
.okt-cbody{padding:0 16px 14px}
.okt-chips{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 10px}
.okt-chip{font-size:11.5px;font-weight:600;padding:3px 9px;border-radius:999px;background:#f1f5f9;color:#475569}
.okt-chip.ok{background:#dcfce7;color:#15803d}.okt-chip.warn{background:#fef3c7;color:#b45309}.okt-chip.info{background:#e0f2fe;color:#0369a1}
.okt-bar{height:8px;border-radius:999px;background:#eef2f6;overflow:hidden;display:flex}
.okt-bar i{display:block;height:100%}
.okt-legend{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px;font-size:11.5px;color:#64748b}
.okt-legend span{display:inline-flex;align-items:center;gap:5px}
.okt-dot{width:9px;height:9px;border-radius:3px;display:inline-block}
.okt-detail{margin-top:10px;font-size:12.5px;color:#475569;line-height:1.55}
.okt-detail p{margin:0 0 6px}
.okt-foot{border-top:1px solid #e2e8f0;padding:10px 12px;display:flex;gap:8px;align-items:center;background:#fcfcfe;margin-top:auto}
.okt-btn{border:0;border-radius:10px;padding:7px 11px;font-size:12.5px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;text-decoration:none;line-height:1}
.okt-btn.primary{background:var(--uj-brand,#4f46e5);color:#fff}
.okt-btn.primary:hover{background:var(--uj-brand-d,#4338ca);color:#fff}
.okt-btn.ghost{background:#fff;color:var(--uj-brand,#4f46e5);border:1px solid #e2e8f0}
.okt-btn.ghost:hover{border-color:var(--uj-brand,#4f46e5);background:#f5f7ff}
.okt-btn.danger{background:#fff;color:#ef4444;border:1px solid #fecaca}
.okt-btn.danger:hover{background:#fef2f2}
.okt-foot .okt-spacer{flex:1}

/* --- Tartalomkeszito (project-page-manager) szepites 2026-10-13 --- */
.sb2-2 .sb2-2-3 > a.btn-large{display:inline-flex;align-items:center;gap:6px;background:#eef2ff !important;color:var(--uj-brand,#4f46e5) !important;border:1px solid #c7d2fe;border-radius:999px;padding:6px 14px !important;font-size:12.5px !important;font-weight:600;text-transform:none;height:auto !important;line-height:1.7 !important;box-shadow:none !important;margin:3px !important;letter-spacing:0}
.sb2-2 .sb2-2-3 > a.btn-large:hover{background:#e0e7ff !important}
.type-select{background:#fff !important;border:2px solid #e2e8f0 !important;color:#1e293b !important;border-radius:14px !important;width:150px;height:auto !important;padding:18px 10px !important;margin:8px !important;font-weight:700;font-size:13.5px !important;vertical-align:top;line-height:1.3 !important;text-transform:none;letter-spacing:0;transition:.15s;cursor:pointer}
.type-select:hover{border-color:#c7d2fe !important;background:#f8f9ff !important}
.type-select i{font-size:34px !important;margin-top:10px;display:block}
#szoveg_select i{color:#f59e0b !important}
#video_select i{color:#d65108 !important}
#kep_select i{color:#0ea5e9 !important}
.ql-toolbar.ql-snow{border-color:#e2e8f0 !important;border-top-left-radius:12px;border-top-right-radius:12px;background:#f8fafc}
.ql-container.ql-snow{border-color:#e2e8f0 !important;border-bottom-left-radius:12px;border-bottom-right-radius:12px;min-height:140px;font-size:14px}
#page_description{min-height:120px}
.label.label-success{background:var(--uj-accent,#22c55e) !important;border-radius:8px;padding:7px 13px !important;font-weight:600;cursor:pointer;color:#fff;display:inline-block}

/* --- Kepvalasztos kerdes (tanuloi oldal) 2026-10-13 --- */
.kv-option{cursor:pointer;border:2px solid #e2e8f0;border-radius:12px;padding:8px;margin:8px;text-align:center;transition:.15s;display:inline-block;vertical-align:top}
.kv-option:hover{border-color:#c7d2fe;background:#f8f9ff}
.kv-option.kv-selected{border-color:var(--uj-accent,#22c55e);background:#f0fdf4;box-shadow:0 0 0 3px rgba(34,197,94,.25)}
.kv-img{max-width:100%;max-height:220px;border-radius:8px;display:block;margin:0 auto}

/* --- AI szabadvalasz (tanuloi oldal) 2026-10-13 --- */
.ai-answer{width:100%;min-height:140px;border:1px solid #e2e8f0;border-radius:12px;padding:12px;font-size:14px;font-family:inherit;box-sizing:border-box}
.ai-answer:focus{outline:none;border-color:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,.15)}
.ai-hint{color:#64748b;font-size:12.5px;margin-top:8px}

/* 2026-10-25: bongeszo sajat legordulo menuje (js/legordulo-javitas.js) a Materialize-fele helyett */
select.browser-default.ew-select{ display:block; width:100%; height:44px; padding:0 10px; margin:4px 0 12px; border:1px solid var(--uj-line); border-radius:10px; background:#fff; color:var(--uj-ink); font-size:15px; }
select.browser-default.ew-select[multiple]{ height:auto; min-height:44px; padding:6px 10px; }
select.browser-default.ew-select:focus{ outline:none; border-color:var(--uj-brand); box-shadow:0 0 0 3px rgba(79,70,229,.15); }
label.ew-sel-label{ position:static !important; transform:none !important; display:block; font-size:13px; color:var(--uj-ink-soft); margin-top:6px; }

/* 2026-10-25: csomag figyelmezteto sav */
.ew-csomag-sav{max-width:1100px;margin:12px auto;padding:12px 16px;border-radius:10px;background:#fff7e6;border:1px solid #f5c26b;color:#5c3d00;font-size:14px;line-height:1.5}
.ew-csomag-sav.piros{background:#fdecec;border-color:#e99;color:#6b1111}
.ew-csomag-sav p{margin:4px 0}
.ew-csomag-sav a{font-weight:600;text-decoration:underline;margin-left:6px}
