/* ===========================================================================
   Lanmen információbiztonsági érettségmérő — stílus.
   Forrás: erettsegmero/referencia/lanmen-erettsegmero.html <style> blokkja,
   változatlanul. Minden szabály a .lme alá van hatókörözve, így nem ér
   hozzá az oldal többi részéhez. Csak az /erettsegmero oldalon töltjük be.
   =========================================================================== */
/* =========================================================================
   Lanmen – Információbiztonsági érettségmérő
   Minden stílus a .lme wrapper alá van hatókörözve, hogy ne ütközzön
   a weboldal saját CSS-ével. Színek: a --lme-* változók a .lme-n.
   ========================================================================= */
.lme{
  /* világos paletta (alap) */
  --lme-ground:#F2F5F8;
  --lme-surface:#FFFFFF;
  --lme-surface-2:#F7F9FB;
  --lme-ink:#14202B;
  --lme-ink-2:#4C5F70;
  --lme-ink-3:#7A8A98;
  --lme-line:#DBE3EA;
  --lme-line-2:#C3D0DA;
  --lme-accent:#0E5C8A;
  --lme-on-accent:#FFFFFF;
  --lme-accent-deep:#093C5C;
  --lme-accent-soft:#E2EDF4;
  --lme-track:#E6EBF0;
  --lme-good:#2E7355;
  --lme-warn:#8A6410;
  --lme-crit:#9E3B36;
  --lme-focus:#2C86C0;
  --lme-radius:10px;
  --lme-shadow:0 1px 2px rgba(20,32,43,.06), 0 8px 24px -12px rgba(20,32,43,.18);

  color:var(--lme-ink);
  background:var(--lme-ground);
  font-family:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,"Noto Sans",sans-serif;
  font-size:16px;
  line-height:1.55;
  -webkit-font-smoothing:antialiased;
  padding:24px 16px 32px;
  box-sizing:border-box;
}
.lme *,.lme *::before,.lme *::after{box-sizing:border-box}

/* sötét mód – csak ott, ahol a wrapper data-theme="auto" (az oldalba ágyazott
   változat data-theme="light", az mindig világos marad) */
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .lme[data-theme="auto"]{
    --lme-ground:#0E161E;
    --lme-surface:#16212C;
    --lme-surface-2:#1B2833;
    --lme-ink:#E8EEF3;
    --lme-ink-2:#A9BAC7;
    --lme-ink-3:#7C8E9C;
    --lme-line:#2A3A47;
    --lme-line-2:#3A4D5C;
    --lme-accent:#5AAEDC;
    --lme-on-accent:#0E161E;
    --lme-accent-deep:#8FCBEC;
    --lme-accent-soft:#1C3040;
    --lme-track:#243441;
    --lme-good:#6FBF96;
    --lme-warn:#D6A64A;
    --lme-crit:#E08C86;
    --lme-focus:#7CC3EC;
    --lme-shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px -12px rgba(0,0,0,.6);
  }
}
:root[data-theme="dark"] .lme[data-theme="auto"]{
  --lme-ground:#0E161E;
  --lme-surface:#16212C;
  --lme-surface-2:#1B2833;
  --lme-ink:#E8EEF3;
  --lme-ink-2:#A9BAC7;
  --lme-ink-3:#7C8E9C;
  --lme-line:#2A3A47;
  --lme-line-2:#3A4D5C;
  --lme-accent:#5AAEDC;
  --lme-on-accent:#0E161E;
  --lme-accent-deep:#8FCBEC;
  --lme-accent-soft:#1C3040;
  --lme-track:#243441;
  --lme-good:#6FBF96;
  --lme-warn:#D6A64A;
  --lme-crit:#E08C86;
  --lme-focus:#7CC3EC;
  --lme-shadow:0 1px 2px rgba(0,0,0,.4), 0 8px 24px -12px rgba(0,0,0,.6);
}

.lme-wrap{max-width:740px;margin:0 auto}

/* --- tipográfia --- */
.lme h1,.lme h2,.lme h3,.lme p,.lme ul,.lme ol,.lme figure{margin:0}
.lme h1{
  font-size:clamp(24px,4.2vw,31px);line-height:1.18;font-weight:600;
  letter-spacing:-.018em;text-wrap:balance;color:var(--lme-ink);
}
.lme h2{font-size:19px;font-weight:600;letter-spacing:-.01em;line-height:1.3;text-wrap:balance}
.lme h3{font-size:15px;font-weight:600;line-height:1.4}
.lme-eyebrow{
  font-size:11.5px;font-weight:600;letter-spacing:.11em;text-transform:uppercase;
  color:var(--lme-accent);
}
.lme-lead{font-size:17px;line-height:1.55;color:var(--lme-ink-2)}
.lme-small{font-size:13.5px;line-height:1.5;color:var(--lme-ink-2)}
.lme-fine{font-size:12.5px;line-height:1.5;color:var(--lme-ink-3)}
.lme-num{
  font-family:ui-monospace,"SF Mono",SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;
  font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;
}

/* --- kártya --- */
.lme-card{
  background:var(--lme-surface);border:1px solid var(--lme-line);
  border-radius:var(--lme-radius);box-shadow:var(--lme-shadow);
  padding:clamp(20px,3.4vw,30px);
}

/* --- adatvédelmi sáv --- */
.lme-privacy{
  display:flex;gap:10px;align-items:flex-start;
  border-left:3px solid var(--lme-accent);
  background:var(--lme-accent-soft);
  padding:11px 14px;border-radius:0 6px 6px 0;
  font-size:13.5px;line-height:1.5;color:var(--lme-ink-2);
}
.lme-privacy b{color:var(--lme-ink);font-weight:600}
.lme-lock{flex:none;width:16px;height:16px;margin-top:2px;color:var(--lme-accent)}

/* --- gombok --- */
.lme-btn{
  font:inherit;font-weight:600;font-size:15px;cursor:pointer;
  border-radius:8px;padding:11px 20px;border:1px solid transparent;
  transition:background .15s,border-color .15s,color .15s;
  display:inline-flex;align-items:center;gap:8px;justify-content:center;
}
.lme-btn-primary{background:var(--lme-accent);color:var(--lme-on-accent);border-color:var(--lme-accent);text-decoration:none}
.lme-btn-primary:hover:not(:disabled){background:var(--lme-accent-deep);border-color:var(--lme-accent-deep)}
.lme-btn-ghost{background:transparent;color:var(--lme-ink-2);border-color:var(--lme-line-2)}
.lme-btn-ghost:hover{background:var(--lme-surface-2);color:var(--lme-ink)}
.lme-btn:disabled{opacity:.42;cursor:not-allowed}
.lme-btn:focus-visible,.lme-opt input:focus-visible+span,.lme select:focus-visible{
  outline:2px solid var(--lme-focus);outline-offset:2px;
}

/* --- haladás --- */
.lme-prog{display:flex;align-items:center;gap:12px;margin-bottom:22px}
.lme-prog-track{flex:1;height:5px;background:var(--lme-track);border-radius:3px;overflow:hidden}
.lme-prog-fill{height:100%;background:var(--lme-accent);border-radius:3px;transition:width .3s ease}
.lme-prog-label{font-size:12.5px;color:var(--lme-ink-3);white-space:nowrap}

/* --- kérdés --- */
.lme-q{padding:18px 0;border-top:1px solid var(--lme-line)}
.lme-q:first-of-type{border-top:0;padding-top:4px}
.lme-q-text{font-size:15.5px;line-height:1.45;font-weight:500;margin-bottom:4px;text-wrap:pretty}
.lme-q-hint{font-size:13px;color:var(--lme-ink-3);line-height:1.45;margin-bottom:11px}
.lme-opts{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}
@media (max-width:560px){.lme-opts{grid-template-columns:repeat(2,1fr)}}
.lme-opt{position:relative;display:block}
.lme-opt input{position:absolute;opacity:0;width:0;height:0}
.lme-opt span{
  display:block;text-align:center;padding:9px 6px;font-size:13.5px;font-weight:500;
  border:1px solid var(--lme-line-2);border-radius:7px;cursor:pointer;
  background:var(--lme-surface);color:var(--lme-ink-2);
  transition:background .12s,border-color .12s,color .12s;
}
.lme-opt span:hover{border-color:var(--lme-accent);color:var(--lme-ink)}
.lme-opt input:checked+span{
  background:var(--lme-accent);border-color:var(--lme-accent);color:var(--lme-on-accent);
}

/* --- űrlapmezők (kontextus lépés) --- */
.lme-field{margin-bottom:18px}
.lme-field label{display:block;font-size:14.5px;font-weight:500;margin-bottom:6px}
.lme select{
  font:inherit;font-size:15px;width:100%;padding:10px 12px;
  border:1px solid var(--lme-line-2);border-radius:7px;
  background:var(--lme-surface);color:var(--lme-ink);
}

/* --- eredmény --- */
.lme-score-row{display:flex;flex-wrap:wrap;gap:22px;align-items:baseline}
.lme-score-big{
  font-size:clamp(46px,9vw,62px);line-height:.95;font-weight:600;
  letter-spacing:-.03em;color:var(--lme-accent);
}
.lme-score-big sup{font-size:.42em;font-weight:500;margin-left:2px;vertical-align:super}

.lme-scale{margin:20px 0 4px}
.lme-scale-bar{display:grid;grid-template-columns:repeat(4,1fr);gap:2px}
.lme-scale-seg{height:8px;background:var(--lme-track);border-radius:2px}
.lme-scale-seg.on{background:var(--lme-accent)}
.lme-scale-names{display:grid;grid-template-columns:repeat(4,1fr);gap:2px;margin-top:7px}
.lme-scale-names span{font-size:11.5px;color:var(--lme-ink-3);line-height:1.25}
.lme-scale-names span.on{color:var(--lme-ink);font-weight:600}

.lme-bars{display:flex;flex-direction:column;gap:13px;margin-top:6px}
.lme-bar-row{display:grid;grid-template-columns:1fr auto;gap:4px 12px;align-items:center}
.lme-bar-name{font-size:14px;font-weight:500}
.lme-bar-val{font-size:13.5px;color:var(--lme-ink-2)}
.lme-bar-track{grid-column:1/-1;height:7px;background:var(--lme-track);border-radius:4px;overflow:hidden}
.lme-bar-fill{height:100%;background:var(--lme-accent);border-radius:4px}

.lme-split{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:6px}
@media (max-width:560px){.lme-split{grid-template-columns:1fr}}
.lme-split-cell{background:var(--lme-surface-2);border:1px solid var(--lme-line);border-radius:8px;padding:13px 14px}
.lme-split-name{font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--lme-ink-3);margin-bottom:7px}
.lme-split-val{font-size:25px;font-weight:600;letter-spacing:-.02em;line-height:1}
.lme-split-track{height:5px;background:var(--lme-track);border-radius:3px;overflow:hidden;margin-top:9px}
.lme-split-fill{height:100%;background:var(--lme-accent);border-radius:3px}

.lme-gaps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:0}
.lme-gaps li{padding:14px 0;border-top:1px solid var(--lme-line);display:grid;grid-template-columns:auto 1fr;gap:12px}
.lme-gaps li:first-child{border-top:0;padding-top:2px}
.lme-rank{
  font-size:13px;font-weight:600;color:var(--lme-ink-3);
  width:22px;text-align:right;padding-top:1px;
}
.lme-gap-title{font-size:15px;font-weight:600;line-height:1.35;margin-bottom:3px}
.lme-gap-do{font-size:13.5px;color:var(--lme-ink-2);line-height:1.5}
.lme-chip{
  display:inline-block;font-size:11px;font-weight:600;letter-spacing:.04em;
  text-transform:uppercase;padding:2px 7px;border-radius:4px;margin-left:8px;
  vertical-align:1px;border:1px solid currentColor;
}
.lme-chip.nincs{color:var(--lme-crit)}
.lme-chip.reszben{color:var(--lme-warn)}
.lme-chip.nemtudom{color:var(--lme-ink-3)}

.lme-note{
  border:1px solid var(--lme-line);border-left:3px solid var(--lme-line-2);
  background:var(--lme-surface-2);border-radius:0 7px 7px 0;padding:13px 15px;
}
.lme-note h3{margin-bottom:4px}

.lme-cta{
  background:var(--lme-accent-soft);border:1px solid var(--lme-line);
  border-radius:var(--lme-radius);padding:20px 22px;
  display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;
}
.lme-cta p{max-width:44ch}
.lme-actions{display:flex;flex-wrap:wrap;gap:10px}
.lme-stack{display:flex;flex-direction:column;gap:22px}
.lme-hr{border:0;border-top:1px solid var(--lme-line);margin:0}
.lme-hidden{display:none !important}
.lme-hint{font-size:13px;color:var(--lme-ink-3);min-height:1.4em}


/* --- hiánytétel (bővített) --- */
.lme-gap{padding:16px 0;border-top:1px solid var(--lme-line)}
.lme-gap:first-child{border-top:0;padding-top:2px}
.lme-gap-fej{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px;margin-bottom:6px}
.lme-gap-cim{font-size:15.5px;font-weight:600;line-height:1.35}
.lme-kov{
  font-size:13.5px;line-height:1.5;color:var(--lme-ink);
  border-left:2px solid var(--lme-line-2);padding-left:11px;margin-bottom:7px;
}
.lme-teendo{font-size:13.5px;line-height:1.5;color:var(--lme-ink-2)}
.lme-teendo b{color:var(--lme-ink);font-weight:600}
.lme-meta{
  display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:8px;
  font-size:11.5px;color:var(--lme-ink-3);
}
.lme-meta span{white-space:nowrap}
.lme-sablon{
  display:inline-flex;align-items:center;gap:5px;margin-top:9px;
  font-size:13px;font-weight:600;color:var(--lme-accent);text-decoration:none;
  border-bottom:1px solid currentColor;
}
.lme-sablon:hover{color:var(--lme-accent-deep)}

/* --- pontszámtól független figyelmeztetés --- */
.lme-krit{
  border:1px solid var(--lme-line);border-left:3px solid var(--lme-crit);
  background:var(--lme-surface-2);border-radius:0 8px 8px 0;padding:16px 18px;
}
.lme-krit ul{margin:0 0 0 18px;padding:0}
.lme-krit li{font-size:14px;line-height:1.5;margin-bottom:6px}
.lme-krit li b{font-weight:600}

/* --- gyors győzelmek --- */
.lme-gyors{
  border:1px solid var(--lme-line);border-left:3px solid var(--lme-good);
  background:var(--lme-surface-2);border-radius:0 8px 8px 0;padding:16px 18px;
}
.lme-gyors ol{margin:10px 0 0 20px;padding:0;font-size:14px;line-height:1.5}
.lme-gyors li{margin-bottom:6px}
.lme-gyors li b{font-weight:600}

/* --- lenyíló --- */
.lme-det{border-top:1px solid var(--lme-line);margin-top:2px}
.lme-det summary{
  cursor:pointer;padding:13px 0 0;font-size:14px;font-weight:600;color:var(--lme-accent);
  list-style:none;
}
.lme-det summary::-webkit-details-marker{display:none}
.lme-det summary::before{content:"▸ ";font-weight:400}
.lme-det[open] summary::before{content:"▾ "}
.lme-det summary:focus-visible{outline:2px solid var(--lme-focus);outline-offset:2px}

/* --- NIS2 lefedettség --- */
.lme-cs{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}
.lme-cs span{
  font-size:12px;padding:3px 9px;border-radius:12px;
  border:1px solid var(--lme-line-2);color:var(--lme-ink-2);background:var(--lme-surface);
}
.lme-cs span.hiany{border-color:var(--lme-crit);color:var(--lme-crit)}

/* --- összefoglaló szövegdoboz --- */
.lme-ta{
  width:100%;min-height:220px;margin-top:12px;font-size:12.5px;line-height:1.45;
  font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  border:1px solid var(--lme-line-2);border-radius:7px;padding:12px;
  background:var(--lme-surface-2);color:var(--lme-ink);resize:vertical;
}

/* --- felelősségkizárás --- */
.lme-jog{
  border:1px solid var(--lme-line);border-radius:var(--lme-radius);
  background:var(--lme-surface-2);padding:16px 18px;margin-top:18px;
}
.lme-jog h3{margin-bottom:7px;color:var(--lme-ink-2)}
.lme-jog ul{margin:0 0 0 18px;padding:0}
.lme-jog li{font-size:12.5px;line-height:1.5;color:var(--lme-ink-3);margin-bottom:4px}

@media print{
  .lme{background:#fff;padding:0}
  .lme-card{box-shadow:none;border:0;padding:0}
  .lme-cta,.lme-actions,.lme-prog,.lme-ta{display:none !important}
  .lme-det[open] summary{display:none}
  .lme-det>*{display:block !important}
}
@media (prefers-reduced-motion: reduce){
  .lme *{transition:none !important;animation:none !important}
}
