/* cleverprep-Rahmen fuer eingebettete Seiten. Erzeugt von deploy/dach.py, nicht von Hand aendern. */
:root{
 --cp-blau:#1c6ab7;--cp-blau-h:#155a9e;--cp-blau-d:#0f3f6e;--cp-blau-l:#e8f1fa;
 --cp-teal:#00a3a8;--cp-teal-l:#e5f6f7;--cp-gruen:#1aa568;--cp-gruen-l:#e7f7ef;
 --cp-tinte:#131b2b;--cp-text:#48566b;--cp-grau:#8494a7;--cp-linie:#e6eaf0;--cp-linie-l:#eef2f7;
 --cp-grund:#f6f8fc;--cp-karte:#fff;
 --cp-r:18px;--cp-rs:12px;
 --cp-sh-s:0 1px 3px rgba(15,40,80,.05),0 1px 2px rgba(15,40,80,.04);
 --cp-sh-m:0 6px 20px rgba(15,40,80,.08),0 2px 6px rgba(15,40,80,.05);
 --cp-font:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,system-ui,sans-serif;
}
.cp-voll{margin-left:calc(50% - 50vw)!important;margin-right:calc(50% - 50vw)!important;
 width:auto!important;max-width:none!important;box-sizing:border-box}
.cp-voll *,.cp-voll *::before,.cp-voll *::after{box-sizing:border-box}

/* ---------- Kopfzeile ---------- */
.cp-kopf{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.94);
 backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);
 border-bottom:1px solid var(--cp-linie);font-family:var(--cp-font);margin-top:0;padding:0}
.cp-kopf-in{max-width:1140px;margin:0 auto;padding:0 18px;height:60px;display:flex;
 align-items:center;gap:8px}
.cp-wort{font:800 21px/1 var(--cp-font);letter-spacing:-.03em;color:var(--cp-tinte)!important;
 text-decoration:none!important;margin-right:auto;display:inline-flex;align-items:center;gap:8px;
 white-space:nowrap}
.cp-wort i{font-style:normal;color:var(--cp-blau)}
.cp-wort-punkt{width:9px;height:9px;border-radius:3px;background:linear-gradient(135deg,var(--cp-blau),var(--cp-teal));
 display:inline-block;transform:translateY(1px)}
.cp-maerkte{position:relative;font:600 14px/1 var(--cp-font)}
.cp-maerkte>summary{list-style:none;cursor:pointer;padding:10px 12px;border-radius:10px;
 color:var(--cp-text);display:flex;align-items:center;gap:6px;white-space:nowrap;user-select:none}
.cp-maerkte>summary::-webkit-details-marker{display:none}
.cp-maerkte>summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;
 border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);margin-left:2px}
.cp-maerkte[open]>summary,.cp-maerkte>summary:hover{background:var(--cp-linie-l);color:var(--cp-tinte)}
/* Auf Marktseiten zeigt der Knopf die gewaehlte Pruefung */
.cp-maerkte-gewaehlt>summary{color:var(--cp-blau-h);font-weight:800;background:var(--cp-blau-l)}
.cp-maerkte-vor{font:700 11px/1 var(--cp-font);letter-spacing:.04em;text-transform:uppercase;color:var(--cp-grau);margin-right:2px}
.cp-maerkte-liste a.aktiv{background:var(--cp-blau-l)}
@media (max-width:479px){.cp-maerkte-vor{display:none}}
.cp-maerkte-liste{position:absolute;right:0;top:calc(100% + 8px);width:290px;max-width:calc(100vw - 24px);
 background:#fff;border:1px solid var(--cp-linie);border-radius:14px;box-shadow:var(--cp-sh-m);padding:8px}
.cp-maerkte-liste a{display:block;padding:11px 12px;border-radius:10px;text-decoration:none!important;
 color:var(--cp-tinte)!important;font:700 15px/1.3 var(--cp-font)}
.cp-maerkte-liste a span{display:block;font-weight:500;font-size:13px;color:var(--cp-grau);margin-top:2px}
.cp-maerkte-liste a:hover{background:var(--cp-blau-l)}
.cp-maerkte-liste .cp-bald{padding:10px 12px 6px;font:500 12.5px/1.4 var(--cp-font);color:var(--cp-grau);
 border-top:1px solid var(--cp-linie-l);margin-top:4px}
.cp-anmelden{display:inline-flex;align-items:center;padding:9px 15px;border-radius:10px;
 border:1.5px solid var(--cp-blau);color:var(--cp-blau)!important;font:700 14px/1 var(--cp-font);
 text-decoration:none!important;white-space:nowrap;background:#fff}
.cp-anmelden:hover{background:var(--cp-blau);color:#fff!important}

/* ---------- Markt-Unternavigation ----------
   Breit (ab 1000px): eine Zeile mit allen Seiten, Marktname links fest (wird nie angeschnitten).
   Schmal: Marktname + aktuelle Seite als Klappknopf (details/summary, geht ohne JS), der eine
   senkrechte Liste aller Seiten oeffnet, rechts daneben der Knopf zur Angebotsseite. */
.cp-unter{background:#fff;border-bottom:1px solid var(--cp-linie);font-family:var(--cp-font);
 position:sticky;top:60px;z-index:79}
.cp-unter-in{max-width:1140px;margin:0 auto;padding:0 18px;display:flex;align-items:center;gap:4px;
 min-height:46px;position:relative}
.cp-unter-markt{font:800 13px/1 var(--cp-font);color:var(--cp-tinte)!important;text-decoration:none!important;
 padding:7px 12px 7px 0;margin-right:6px;border-right:1px solid var(--cp-linie);white-space:nowrap;flex:none}
.cp-unter-leiste{display:flex;align-items:center;gap:2px;flex:1 1 auto;min-width:0;overflow-x:auto;
 scrollbar-width:none}
.cp-unter-leiste::-webkit-scrollbar{display:none}
.cp-unter a.cp-u{color:var(--cp-text)!important;text-decoration:none!important;font:600 13px/1 var(--cp-font);
 padding:8px 10px;border-radius:9px;white-space:nowrap;flex:none}
.cp-unter a.cp-u:hover{background:var(--cp-linie-l);color:var(--cp-tinte)!important}
.cp-unter a.cp-u.aktiv{background:var(--cp-blau-l);color:var(--cp-blau-h)!important}
.cp-unter a.cp-u.cp-lern{margin-left:auto;color:#fff!important;background:var(--cp-teal);font-weight:700}
.cp-unter a.cp-u.cp-lern:hover{background:#008e93}
.cp-unter a.cp-u.cp-lern.aktiv{background:var(--cp-teal);box-shadow:0 0 0 3px var(--cp-teal-l)}
.cp-unter-klapp,.cp-uk-schnell{display:none}
@media (max-width:999px){
 .cp-unter-in{padding:7px 12px;gap:8px}
 .cp-unter-markt,.cp-unter-leiste{display:none}
 .cp-unter-klapp{display:block;flex:0 1 auto;min-width:0;position:static}
 .cp-unter-klapp>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;
  padding:7px 12px;border:1.5px solid var(--cp-linie);border-radius:11px;background:#fff;
  font:600 14px/1.2 var(--cp-font);color:var(--cp-tinte);user-select:none;min-height:46px}
 .cp-unter-klapp>summary::-webkit-details-marker{display:none}
 .cp-unter-klapp>summary:focus-visible{outline:3px solid var(--cp-blau-l);border-color:var(--cp-blau)}
 .cp-unter-klapp[open]>summary{border-color:var(--cp-blau);background:var(--cp-blau-l)}
 .cp-uk-text{display:flex;flex-direction:column;gap:2px;min-width:0}
 .cp-uk-markt{font:700 11.5px/1.2 var(--cp-font);letter-spacing:.04em;text-transform:uppercase;color:var(--cp-grau)}
 .cp-uk-akt{font:800 15.5px/1.2 var(--cp-font);color:var(--cp-tinte)}
 .cp-uk-pfeil{margin-left:10px;flex:none;width:8px;height:8px;border-right:2px solid var(--cp-blau);
  border-bottom:2px solid var(--cp-blau);transform:translateY(-2px) rotate(45deg);transition:transform .15s}
 .cp-unter-klapp[open] .cp-uk-pfeil{transform:translateY(2px) rotate(225deg)}
 .cp-unter-liste{position:absolute;left:0;right:0;top:100%;background:#fff;border-bottom:1px solid var(--cp-linie);
  box-shadow:0 14px 28px rgba(15,40,80,.14);padding:8px 12px 14px;max-height:calc(100vh - 130px);overflow-y:auto}
 .cp-unter a.cp-ul{display:block;padding:13px 12px;border-radius:10px;text-decoration:none!important;
  color:var(--cp-tinte)!important;font:600 16px/1.3 var(--cp-font);border-bottom:1px solid var(--cp-linie-l)}
 .cp-unter a.cp-ul:hover{background:var(--cp-linie-l)}
 .cp-unter a.cp-ul.aktiv{background:var(--cp-blau-l);color:var(--cp-blau-h)!important;font-weight:700}
 .cp-unter a.cp-ul.aktiv::after{content:"aktuelle Seite";float:right;font:600 12px/1.6 var(--cp-font);color:var(--cp-grau)}
 .cp-unter a.cp-ul.cp-lern{margin-top:10px;border:0;background:var(--cp-teal);color:#fff!important;
  text-align:center;font-weight:800}
 .cp-unter a.cp-ul.cp-lern.aktiv::after{content:none}
 /* Bewusst kein voller Knopf neben dem Menue: sonst liest er sich wie "Auswahl absenden".
    Als hell hinterlegter Link mit Pfeil steht er fuer sich (Simon, 02.10.2026). */
 .cp-uk-schnell{display:inline-flex;align-items:center;gap:5px;flex:none;margin-left:auto;padding:9px 12px;border-radius:999px;
  background:var(--cp-teal-l);color:#00787c!important;font:800 14px/1.2 var(--cp-font);text-decoration:none!important;
  white-space:nowrap;border:1.5px solid rgba(0,163,168,.35)}
}
@media (max-width:359px){.cp-uk-schnell{padding:10px 9px;font-size:13px}.cp-uk-akt{font-size:14px}}
/* ---------- Fuss ---------- */
.cp-fuss{background:#fff;border-top:1px solid var(--cp-linie);font-family:var(--cp-font);
 color:var(--cp-text);padding:34px 0 40px;margin-top:0}
.cp-fuss-in{max-width:1140px;margin:0 auto;padding:0 18px;display:grid;gap:18px}
.cp-fuss .cp-wort{font-size:18px}
.cp-fuss-links{display:flex;flex-wrap:wrap;gap:6px 18px;font:500 14px/1.5 var(--cp-font)}
.cp-fuss-links a{color:var(--cp-text)!important;text-decoration:none!important;font:500 14px/1.5 var(--cp-font)!important;letter-spacing:0!important}
.cp-fuss-links a:hover{color:var(--cp-blau)!important;text-decoration:underline!important}
.cp-fuss p.cp-fuss-klein{font:400 12.5px/1.6 var(--cp-font);color:var(--cp-grau);margin:0;max-width:62em}
/* Kopfzeile schmal */
@media (max-width:640px){
 .cp-kopf-in{padding:0 12px;gap:4px}
 .cp-wort{font-size:19px}
 .cp-maerkte>summary{padding:10px 8px}
 .cp-anmelden{padding:9px 12px}
 .cp-maerkte-liste{position:fixed;left:12px;right:12px;top:66px;width:auto;max-width:none}
}
@media (max-width:360px){.cp-maerkte>summary{font-size:13px}.cp-anmelden{font-size:13px}}
