/* Fahrschule Aschmann – Seite „Prüfung & Technik“ (/pruefung). Baut auf style.css, pages.css und standorte.css auf
   (Kopf der Seite, Auswahl-Knöpfe .car-filter, Abschluss-Aufruf) und ändert dort nichts.
   Mobile-first; bewusst kompakt: kleine Karten, mehrere auf einen Blick – der volle Text steht in der Großansicht. */
.exam-sr{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.exam-tools{display:grid;gap:10px;margin-block-end:16px}
.exam-tools[hidden]{display:none}
.exam-tools .car-filter{margin-block-end:0}
.exam-areas button{padding-block:10px;padding-inline:18px;font-size:calc(14.5px * var(--font-scale,1))}
.exam-row{display:grid;gap:10px}
.exam-search{position:relative;display:block}
.exam-search svg{position:absolute;inset-block-start:50%;inset-inline-start:13px;inline-size:17px;block-size:17px;transform:translateY(-50%);color:var(--home-muted);pointer-events:none}
.exam-search input{inline-size:100%;padding-block:11px;padding-inline:38px 14px;border-radius:999px;border:1px solid var(--home-line-strong);background:var(--field-bg,rgba(var(--home-tint,3,20,36),.6));color:var(--home-text);font:inherit;font-size:calc(15px * var(--font-scale,1));-webkit-appearance:none;appearance:none}
.exam-search input::placeholder{color:var(--home-muted);opacity:.85}
.exam-search input:focus-visible{outline:3px solid var(--brand-accent);outline-offset:1px;border-color:transparent}
.is-searching .exam-areas button,.is-searching .exam-sections button{opacity:.6}
.exam-progress{display:flex;flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0;font-size:calc(12.5px * var(--font-scale,1));font-weight:800;color:var(--home-muted)}
.exam-progress[hidden]{display:none}
.exam-bar{flex:1 1 120px;max-inline-size:260px;block-size:7px;border-radius:999px;background:rgba(151,198,235,.16);overflow:hidden}
.exam-bar i{display:block;block-size:100%;inline-size:0;border-radius:999px;background:linear-gradient(90deg,#4ade80,#22c55e);transition:inline-size .35s ease}
.exam-reset{padding:0;border:0;background:none;color:var(--home-muted);font:inherit;font-weight:700;text-decoration:underline;cursor:pointer}
.exam-reset:hover,.exam-reset:focus-visible{color:var(--home-text)}
.exam-reset[hidden]{display:none}
.exam-empty{margin:6px 0 18px;padding:16px;border-radius:calc(var(--rk,1px) * 16);border:1px dashed var(--home-line-strong);color:var(--home-muted);text-align:center}
.exam-empty[hidden]{display:none}

/* Rubrik */
.exam-sec{padding-block:6px 20px;scroll-margin-block-start:80px}
.exam-sec[hidden]{display:none}
.exam-sec-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 12px;margin-block-end:10px}
.exam-sec-head h2{margin:0;font-size:calc(20px * var(--font-scale,1));font-weight:900}
.exam-sec-head p{flex:1 1 100%;margin:0;color:var(--home-muted);font-size:calc(13.5px * var(--font-scale,1));max-inline-size:70ch}
.exam-sec-count{font-size:calc(11.5px * var(--font-scale,1));font-weight:900;letter-spacing:.04em;color:var(--accent-ink,var(--brand-accent))}
.exam-sec-count[hidden]{display:none}

/* Karten */
.exam-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.exam-card{position:relative;display:grid;grid-template-rows:auto 1fr;border-radius:calc(var(--rk,1px) * 16);overflow:hidden;border:1px solid var(--home-line);background:linear-gradient(150deg,var(--home-card),var(--home-panel));scroll-margin-block-start:90px;transition:transform .2s ease,border-color .2s ease}
.exam-card[hidden]{display:none}
.exam-js .exam-card{cursor:pointer}
.exam-js .exam-card:hover{border-color:var(--brand-accent);transform:translateY(-2px)}
.exam-card:target{border-color:var(--brand-accent);box-shadow:0 0 0 2px rgba(255,140,0,.35)}
.exam-card-media{position:relative;display:block;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(135deg,var(--home-deep-2,#0a3152),var(--home-deep,#031a2e))}
.exam-card-media img{inline-size:100%;block-size:100%;object-fit:cover}
.exam-card-media:focus-visible{outline:3px solid var(--brand-accent);outline-offset:-3px}
.exam-card-noimg{display:block;inline-size:100%;block-size:100%}
.exam-play{position:absolute;inset:0;margin:auto;display:grid;place-items:center;inline-size:40px;block-size:40px;border-radius:50%;color:#1a0f08;background:linear-gradient(135deg,var(--brand-accent),var(--pink));box-shadow:0 6px 18px rgba(0,0,0,.45)}
.exam-play svg{inline-size:20px;block-size:20px;margin-inline-start:2px}
.exam-badge{position:absolute;inset-block-end:7px;inset-inline-start:7px;padding:3px 8px;border-radius:999px;background:rgba(var(--home-tint,3,20,36),.82);font-size:calc(10.5px * var(--font-scale,1));font-weight:900;letter-spacing:.04em}
.exam-card-body{padding:9px 11px 11px;min-inline-size:0}
.exam-card-meta{display:flex;flex-wrap:wrap;gap:4px}
.exam-card-meta:empty{display:none}
.exam-chip{padding:2px 8px;border-radius:999px;border:1px solid var(--home-line);background:var(--field-bg,rgba(var(--home-tint,3,20,36),.4));font-size:calc(10.5px * var(--font-scale,1));font-weight:800}
.exam-js:not(.is-searching) .exam-grid .exam-chip-area{display:none} /* der Bereich ist oben gewählt – nur bei der Suche über alle Bereiche zeigen */
.exam-card-meta:not(:empty)+h3{margin-block-start:5px}
.exam-card h3{margin:0;font-size:calc(14px * var(--font-scale,1));font-weight:900;line-height:1.25;overflow-wrap:anywhere;hyphens:auto}
.exam-card-text{margin:5px 0 0;color:var(--home-muted);font-size:calc(12.5px * var(--font-scale,1));line-height:1.5;overflow-wrap:anywhere}
.exam-js .exam-card-text{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
/* „Gesehen“-Haken */
.exam-seen{position:absolute;inset-block-start:6px;inset-inline-end:6px;display:grid;place-items:center;inline-size:30px;block-size:30px;padding:0;border-radius:50%;border:1.5px solid rgba(255,255,255,.55);background:rgba(var(--home-tint,3,20,36),.72);color:rgba(255,255,255,.55);cursor:pointer}
.exam-seen[hidden]{display:none}
.exam-seen svg{inline-size:15px;block-size:15px}
.exam-seen:hover,.exam-seen:focus-visible{border-color:#4ade80;color:#4ade80}
.exam-seen:focus-visible{outline:3px solid var(--brand-accent);outline-offset:2px}
.exam-seen[aria-pressed="true"]{border-color:transparent;background:linear-gradient(135deg,#4ade80,#22c55e);color:#0d1a12}
.exam-card.is-seen .exam-card-media img{filter:saturate(.75) brightness(.85)}

/* Großansicht */
html.exam-open{overflow:hidden}
.exam-dialog{inline-size:min(100% - 20px,860px);max-inline-size:none;max-block-size:calc(100dvh - 20px);padding:0;border:1px solid var(--home-line-strong);border-radius:calc(var(--rk,1px) * 20);background:var(--home-night-2);color:var(--home-text);overflow:hidden}
.exam-dialog::backdrop{background:rgba(1,10,20,.82);backdrop-filter:blur(4px)}
.exam-dialog-box{position:relative;display:grid;grid-template-rows:auto 1fr auto;max-block-size:calc(100dvh - 22px);overflow-y:auto;overscroll-behavior:contain}
.exam-dialog-close{position:absolute;inset-block-start:8px;inset-inline-end:8px;z-index:2;display:grid;place-items:center;inline-size:38px;block-size:38px;padding:0;border-radius:50%;border:1px solid var(--home-line-strong);background:rgba(var(--home-tint,3,20,36),.85);color:#fff;font-size:24px;line-height:1;cursor:pointer}
.exam-dialog-close:hover,.exam-dialog-close:focus-visible{border-color:var(--brand-accent)}
.exam-dialog-stage{display:grid;place-items:center;background:#000}
.exam-dialog-stage[hidden]{display:none}
.exam-dialog-stage img,.exam-dialog-stage video{display:block;inline-size:100%;max-block-size:62dvh;object-fit:contain;background:#000}
.exam-video-error{margin:0;padding:10px 14px;inline-size:100%;background:#3a1420;color:#ffd9e0;font-size:calc(13px * var(--font-scale,1));font-weight:700}
.exam-video-error a{color:#fff}
.exam-dialog-body{padding:14px 16px 6px}
.exam-dialog-body h2{margin:6px 0 0;font-size:calc(20px * var(--font-scale,1));font-weight:900;line-height:1.2;overflow-wrap:anywhere}
.exam-dialog-body .exam-card-meta:empty+h2{margin-block-start:0}
.exam-dialog-text{margin:8px 0 0;color:var(--home-muted);font-size:calc(14.5px * var(--font-scale,1));line-height:1.6;overflow-wrap:anywhere}
.exam-dialog-text[hidden]{display:none}
.exam-dialog-foot{position:sticky;inset-block-end:0;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 16px 14px;background:linear-gradient(180deg,transparent,var(--home-night-2) 35%)}
.exam-nav{display:grid;place-items:center;inline-size:42px;block-size:42px;padding:0;border-radius:50%;border:1px solid var(--home-line-strong);background:var(--field-bg,rgba(var(--home-tint,3,20,36),.6));color:var(--home-text);font-size:18px;font-weight:900;cursor:pointer}
.exam-nav:hover:not(:disabled),.exam-nav:focus-visible{border-color:var(--brand-accent)}
.exam-nav:disabled{opacity:.3;cursor:default}
.exam-seen-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:999px;border:1.5px solid var(--home-line-strong);background:var(--field-bg,rgba(var(--home-tint,3,20,36),.6));color:var(--home-text);font:inherit;font-weight:900;font-size:calc(13.5px * var(--font-scale,1));cursor:pointer}
.exam-seen-btn svg{inline-size:16px;block-size:16px;opacity:.45}
.exam-seen-btn[aria-pressed="true"]{border-color:transparent;background:linear-gradient(135deg,#4ade80,#22c55e);color:#0d1a12}
.exam-seen-btn[aria-pressed="true"] svg{opacity:1}
.exam-seen-btn:focus-visible,.exam-nav:focus-visible,.exam-dialog-close:focus-visible{outline:3px solid var(--brand-accent);outline-offset:2px}

/* ===== ab 640 px ===== */
@media(min-width:640px){
  .exam-row{grid-template-columns:minmax(220px,320px) minmax(0,1fr);align-items:center}
  .exam-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
  .exam-sec-head h2{font-size:calc(22px * var(--font-scale,1))}
  .exam-dialog-body{padding:18px 22px 8px}
  .exam-dialog-foot{padding:12px 22px 18px}
  .exam-dialog-body h2{font-size:calc(24px * var(--font-scale,1))}
}
/* ===== ab 980 px ===== */
@media(min-width:980px){
  .exam-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
  .exam-sec{padding-block:8px 26px}
}
@media(min-width:1180px){
  .exam-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
}
@media(prefers-reduced-motion:reduce){
  .exam-card,.exam-bar i{transition:none}
  .exam-js .exam-card:hover{transform:none}
}
/* Link zur Seite „Prüfungsangst“ bei den Prüfungstipps: darf am Handy umbrechen */
.exam-sec-head .loc-link{white-space:normal}
