  /* A teszt stílusai. A színváltozókat a gyökérkonténerre tesszük, a
     kérdéskártyák és az eredménypanel mind ezen belül élnek. */
  .kvt { --tl:#113537; --rust:#e14f36; --mute:#2e797c; --mint:#e8f5f5; --line:rgba(17,53,55,.14); }
  .kvt, .kvt * { box-sizing:border-box; }
  .kvt { margin:1.8em 0; }

  /* Halk jogi nyilatkozat a felvezetőben — kisebb, tompított, könnyű bal sávval. */
  .kvt-disc { margin:1.5em 0; padding:12px 16px; font-size:13px; line-height:1.6; font-weight:500; color:rgba(0,0,0,.5); background:rgba(17,53,55,.035); border-left:3px solid rgba(17,53,55,.18); border-radius:0 10px 10px 0; }

  /* A forma rövid ismertetője a kártyán belül nyílik le. */
  .kvr-desc { margin-top:10px; }
  .kvr-desc summary { cursor:pointer; list-style:none; font-family:var(--font-mono); font-size:10.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--mute); }
  .kvr-desc summary::-webkit-details-marker { display:none; }
  .kvr-desc summary::before { content:"▸ "; }
  .kvr-desc[open] summary::before { content:"▾ "; }
  .kvr-desc summary:hover { color:var(--rust); }
  .kvr-desc .body { margin-top:10px; padding:13px 16px; background:var(--mint); border-radius:12px; }
  .kvr-desc .body p { margin:0 0 .7em; font-size:13.5px; line-height:1.6; font-weight:500; color:rgba(0,0,0,.75); }
  .kvr-desc .body p:last-child { margin:0; }
  .kvr-desc .body ul { margin:0 0 .7em; padding-left:1.2em; list-style:disc; }
  .kvr-desc .body li { font-size:13.5px; line-height:1.55; margin-bottom:.25em; font-weight:500; color:rgba(0,0,0,.75); }
  .kvr-desc .body li::marker { color:var(--mute); font-weight:700; }
  .kvr-desc .body b { color:var(--tl); }

  /* Lépésjelző csipek — a fejléc mindig látszódjon (sticky, a fix nav alatt 80px). */
  .kvt-head { position:sticky; top:80px; z-index:4; background:#fff; padding:12px 0 10px; margin-bottom:6px; border-bottom:1px solid var(--line); }
  .kvt-chips { display:flex; flex-wrap:wrap; gap:8px; }
  .kvt-chip { border:1.5px solid var(--line); background:#fff; border-radius:999px; padding:7px 14px; font-family:var(--font-mono); font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:var(--mute); cursor:pointer; transition:all .15s ease; }
  .kvt-chip:hover { border-color:var(--mute); color:var(--tl); }
  .kvt-chip.on { background:var(--tl); border-color:var(--tl); color:#fff; }
  .kvt-chip.done:not(.on) { border-color:var(--mute); color:var(--tl); }
  .kvt-chip.done:not(.on)::after { content:" ✓"; color:#0da35e; }
  .kvt-prog { font-family:var(--font-mono); font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--mute); margin:9px 0 0; }

  /* Kérdéskártya */
  .kvq { border:1px solid var(--line); border-radius:16px; background:#fff; padding:18px 20px; margin-bottom:14px; }
  .kvq.flash { animation:kvtflash 1.6s ease; }
  @keyframes kvtflash { 0%,40% { box-shadow:0 0 0 3px rgba(225,79,54,.4); } 100% { box-shadow:none; } }
  .kvq h4 { margin:0; font-family:var(--font-display); font-size:16.5px; font-weight:600; color:var(--tl); line-height:1.35; }
  .kvq .qn { margin:5px 0 0; font-size:13.5px; line-height:1.55; color:rgba(0,0,0,.6); font-weight:500; }
  /* Több-választós jelzés — feltűnő címke a kérdés alatt */
  .kvq-multi { display:inline-flex; align-items:center; gap:6px; margin:8px 0 0; padding:4px 11px; border-radius:999px; background:var(--mint); color:var(--tl); font-family:var(--font-mono); font-size:10.5px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
  /* Válaszok egymás alatt, teljes szélességben */
  .kvq .opts { display:flex; flex-direction:column; align-items:stretch; gap:8px; margin-top:13px; }
  .kvq .opt { display:flex; align-items:center; gap:11px; width:100%; border:1.5px solid var(--line); background:#fff; border-radius:12px; padding:12px 16px; font-size:14.5px; font-weight:600; color:var(--tl); cursor:pointer; transition:all .12s ease; font-family:inherit; line-height:1.35; text-align:left; }
  .kvq .opt:hover { border-color:var(--mute); }
  .kvq .opt.sel { background:var(--tl); border-color:var(--tl); color:#fff; }
  /* Több-választós opciók: bal oldali jelölőnégyzet, hogy egyértelmű legyen a többszörös választás */
  .kvq .opt.multi::before { content:""; flex:0 0 19px; height:19px; border:2px solid var(--mute); border-radius:5px; background:#fff; display:inline-flex; align-items:center; justify-content:center; font-size:12px; font-weight:800; color:#fff; box-sizing:border-box; }
  .kvq .opt.multi.sel { background:var(--mute); border-color:var(--mute); color:#fff; }
  .kvq .opt.multi.sel::before { content:"✓"; background:#fff; border-color:#fff; color:var(--mute); }
  .kvq textarea, .kvq input[type="text"] { width:100%; margin-top:13px; border:1.5px solid var(--line); border-radius:12px; padding:11px 14px; font:500 14.5px/1.5 inherit; font-family:inherit; color:var(--tl); background:#fff; }
  .kvq textarea:focus, .kvq input[type="text"]:focus { outline:none; border-color:var(--mute); }

  /* TEÁOR-választó: kiválasztott tevékenységek csipekben, gépelésre találati lista */
  .kvq .chips { display:flex; flex-wrap:wrap; gap:7px; margin-top:12px; }
  .kvq .chip { display:inline-flex; align-items:center; gap:8px; background:var(--mint); border:1px solid var(--line); border-radius:999px; padding:6px 8px 6px 13px; font-size:13.5px; font-weight:600; color:var(--tl); }
  .kvq .chip button { border:0; background:rgba(17,53,55,.1); color:var(--tl); width:20px; height:20px; border-radius:50%; cursor:pointer; font-size:13px; line-height:1; flex:0 0 auto; }
  .kvq .chip button:hover { background:var(--rust); color:#fff; }
  .kvq .sug { margin-top:6px; border:1px solid var(--line); border-radius:12px; background:#fff; overflow:hidden; box-shadow:0 18px 40px -24px rgba(17,53,55,.45); }
  .kvq .shead { padding:9px 14px 6px; font-family:var(--font-mono); font-size:10px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; color:var(--mute); }
  .kvq .sitem { display:block; width:100%; text-align:left; border:0; background:none; padding:9px 14px; font:500 14px/1.4 inherit; font-family:inherit; color:rgba(0,0,0,.78); cursor:pointer; }
  .kvq .sitem:hover { background:var(--mint); }
  .kvq .sitem b { font-family:var(--font-mono); color:var(--mute); margin-right:6px; }
  .kvq details { margin-top:12px; }
  .kvq details summary { cursor:pointer; list-style:none; font-family:var(--font-mono); font-size:10.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--mute); }
  .kvq details summary::-webkit-details-marker { display:none; }
  .kvq details summary::before { content:"▸ "; }
  .kvq details[open] summary::before { content:"▾ "; }
  .kvq details .qi { margin-top:8px; padding:12px 14px; background:var(--mint); border-radius:12px; font-size:13.5px; line-height:1.6; color:rgba(0,0,0,.72); font-weight:500; }
  .kvq details .qi p { margin:0 0 .7em; } .kvq details .qi p:last-child { margin-bottom:0; }
  .kvq details .qi ul { margin:.4em 0 .7em; padding-left:1.2em; list-style:disc; } .kvq details .qi li { margin-bottom:.25em; }
  .kvq details .qi li::marker { color:var(--mute); font-weight:700; }
  .kvq details .qi b { color:var(--tl); }

  /* Léptető gombok */
  .kvt-nav { display:flex; gap:10px; margin-top:18px; }
  .kvt-btn { position:relative; border:0; border-radius:999px; padding:12px 22px; font:700 14px/1 inherit; font-family:inherit; cursor:pointer; background:var(--tl); color:#fff; transition:transform .3s cubic-bezier(.16,1,.3,1), background-color .2s ease, border-color .2s ease; }
  .kvt-btn:hover { background:var(--mute); }
  @media (hover:hover){ .kvt-btn:hover { transform:translateY(-2px); } .kvt-btn:hover::after { content:""; position:absolute; left:0; right:0; top:100%; height:2px; } }
  .kvt-btn:active { transform:translateY(0) scale(.98); transition-duration:.1s; }
  @media (prefers-reduced-motion:reduce){ .kvt-btn, .kvt-btn:hover, .kvt-btn:active { transition:none; transform:none; } }
  .kvt-btn.ghost { background:#fff; color:var(--tl); border:1.5px solid var(--line); }
  .kvt-btn.ghost:hover { border-color:var(--mute); }

  /* Eredmény */
  .kvr-banner { margin:0 0 14px; padding:14px 18px 14px 46px; position:relative; background:rgba(225,79,54,.06); border:1px solid rgba(225,79,54,.3); border-left:4px solid var(--rust); border-radius:0 14px 14px 0; font-size:14px; line-height:1.6; color:rgba(0,0,0,.78); font-weight:500; }
  .kvr-banner::before { content:"⚠"; position:absolute; left:16px; top:13px; color:var(--rust); font-size:16px; }
  .kvr-banner b { color:var(--tl); }
  .kvr-banner .kvr-warnlist { margin:8px 0 0; padding-left:18px; list-style:disc; }
  .kvr-banner .kvr-warnlist li { margin:0 0 7px; }
  .kvr-banner .kvr-warnlist li:last-child { margin-bottom:0; }
  .kvr-banner .kvr-warnlist li::marker { color:var(--rust); font-weight:700; }
  .kvr-card { border:1px solid var(--line); border-left:4px solid var(--mute); border-radius:0 16px 16px 0; background:#fff; padding:16px 20px; margin-bottom:12px; }
  .kvr-card.top { border-left-color:var(--tl); }
  .kvr-card.ex { border-left-color:rgba(17,53,55,.2); opacity:.72; }
  .kvr-card .hd { display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
  .kvr-card .hd b { font-family:var(--font-display); font-size:17px; font-weight:600; color:var(--tl); }
  .kvr-pts { font-family:var(--font-mono); font-size:12px; font-weight:700; color:var(--mute); margin-left:auto; }
  .kvr-badge { padding:3px 11px; border-radius:999px; font-family:var(--font-mono); font-size:10px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; }
  .kvr-badge.ok { background:rgba(13,163,94,.13); color:#0a7a46; }
  .kvr-badge.low { background:rgba(17,53,55,.07); color:var(--mute); }
  .kvr-badge.ex { background:rgba(225,79,54,.1); color:var(--rust); }
  .kvr-badge.neg { background:rgba(225,79,54,.12); color:var(--rust); }
  .kvr-badge.tax { background:rgba(13,163,94,.13); color:#0a7a46; }
  .kvr-bar { height:6px; border-radius:3px; background:rgba(17,53,55,.08); margin-top:12px; overflow:hidden; }
  .kvr-bar i { display:block; height:100%; border-radius:3px; background:var(--tl); }
  .kvr-card.ex .kvr-bar i { background:rgba(17,53,55,.25); }
  .kvr-card.neg { border-left-color:var(--rust); }
  .kvr-card.neg .kvr-bar i { background:var(--rust); }
  .kvr-why { margin-top:10px; }
  .kvr-why summary { cursor:pointer; list-style:none; font-family:var(--font-mono); font-size:10.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--mute); }
  .kvr-why summary::-webkit-details-marker { display:none; }
  .kvr-why summary::before { content:"▸ "; } .kvr-why[open] summary::before { content:"▾ "; }
  .kvr-why ul { margin:8px 0 0; padding-left:1.2em; list-style:disc; font-size:13.5px; line-height:1.55; color:rgba(0,0,0,.72); }
  .kvr-why li { margin-bottom:.3em; }
  .kvr-why li::marker { color:var(--mute); font-weight:700; }
  .kvr-why .p { font-family:var(--font-mono); font-weight:700; color:var(--mute); }
  .kvr-exr { margin-top:8px; font-size:13.5px; color:var(--rust); font-weight:600; }
  .kvr-cardnote { margin-top:8px; font-size:13.5px; line-height:1.5; color:var(--tl); font-weight:600; background:var(--mint); border-radius:10px; padding:9px 12px; }
  .kvr-box { border:1px solid var(--line); border-radius:16px; background:var(--mint); padding:16px 20px; margin:16px 0; }
  .kvr-box h5 { margin:0 0 8px; font-family:var(--font-display); font-size:15.5px; font-weight:600; color:var(--tl); }
  .kvr-box p, .kvr-box li { font-size:13.5px; line-height:1.6; color:rgba(0,0,0,.72); font-weight:500; }
  .kvr-box p { margin:0 0 .6em; } .kvr-box p:last-child { margin-bottom:0; }
  .kvr-box ul { margin:.3em 0 .5em; padding-left:1.2em; list-style:disc; }
  .kvr-box li::marker { color:var(--mute); font-weight:700; }
  .kvr-box b { color:var(--tl); }
  /* Kizárt, de egyébként a legkedvezőbb forma jelzése (bal oldali arany sáv). */
  .kvr-card.bestex { border-left-color:#d99a2b; opacity:1; box-shadow:0 12px 30px -24px rgba(217,154,43,.7); }
  .kvr-badge.best { background:rgba(217,154,43,.16); color:#8a5e12; }
  .kvr-bestnote { margin-top:8px; font-size:13px; line-height:1.5; font-weight:600; color:#8a5e12; background:rgba(217,154,43,.1); border-radius:10px; padding:9px 12px; }
  .kvr-edit { border:0; background:none; padding:0; font:700 12px/1 inherit; font-family:inherit; color:var(--rust); cursor:pointer; text-decoration:underline; text-underline-offset:2px; }
  .kvt-reset { margin-top:16px; text-align:right; }
  @media (max-width:520px){ .kvq { padding:15px 15px; } .kvr-card { padding:14px 15px; } }

  /* Kinyitható forma-ismertetők (a tevékenységi körök cikk GYIK-mintája) */
  .kvfaq { --tl:#113537; --rust:#e14f36; --mute:#2e797c; --line:rgba(17,53,55,.14); margin:1.5em 0; border:1px solid var(--line); border-radius:18px; background:#fff; overflow:hidden; }
  .kvfaq, .kvfaq * { box-sizing:border-box; }
  .kvfaq + .kvfaq { margin-top:-0.4em; }
  .kvfaq summary { cursor:pointer; list-style:none; padding:16px 52px 16px 20px; position:relative; font-family:var(--font-display); font-size:17px; font-weight:600; color:var(--tl); line-height:1.35; transition:color .2s ease; }
  .kvfaq summary::-webkit-details-marker { display:none; }
  .kvfaq summary:hover { color:var(--rust); }
  .kvfaq summary::after { content:"+"; position:absolute; right:20px; top:50%; transform:translateY(-50%); font-family:var(--font-mono); font-size:20px; font-weight:700; color:var(--mute); transition:transform .2s ease, color .2s ease; }
  .kvfaq[open] summary::after { transform:translateY(-50%) rotate(45deg); color:var(--rust); }
  .kvfaq .body { padding:0 20px 18px; border-top:1px solid var(--line); margin-top:-1px; }
  .kvfaq .body > *:first-child { margin-top:16px; }
  .kvfaq .body p { margin:0 0 .9em; font-size:15.5px; line-height:1.7; font-weight:500; color:rgba(0,0,0,.78); }
  .kvfaq .body p:last-child { margin-bottom:0; }
  .kvfaq .body ul { margin:0 0 .9em; padding-left:1.3em; list-style:disc; }
  .kvfaq .body li { margin-bottom:.35em; font-size:15.5px; line-height:1.65; font-weight:500; color:rgba(0,0,0,.78); }
  .kvfaq .body li::marker { color:var(--mute); font-weight:700; }
  .kvfaq .body b { color:var(--tl); font-weight:700; }

/* Galéria-mód (teszt oldal): minden eredménykombináció egy dobozban. */
.kvt-gallery-item { border:1px solid rgba(17,53,55,.14); border-radius:18px; padding:20px 22px; margin:0 0 28px; background:#fbfbfa; }
.kvt-gallery-item > h3 { margin:0 0 4px; font-family:var(--font-display,serif); font-size:19px; font-weight:600; color:#113537; }
.kvt-gallery-desc { margin:0 0 16px; font-family:var(--font-mono,monospace); font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:#2e797c; }
.kvt-gallery-intro { margin:0 0 24px; padding:14px 18px; border-radius:14px; background:#e8f5f5; font-size:14px; line-height:1.6; color:#113537; }
