/* kapitel/klassenarbeit.css — vollstaendiges Stylesheet dieses Seitentyps.
   Diese Seite gibt es genau einmal je Kapitel, deshalb ist die Leitvorlage
   mathematik/klasse-8/vielecke-prismen/klassenarbeit/index.html
   uebernommen worden (Stand 2026-09-08), unveraendert und in Originalreihenfolge.
   Fachfarben kommen aus kapitel/fach.css, das DANACH geladen wird. */
:root{--bg:#f4ede0;--bg-soft:#faf6ee;--bg-dark:#3d342b;--ink:#1a1612;--ink-soft:#5b4f43;--rule:#c9bb9a;--mathe:#d6e4f5;--mathe-deep:#a8c5e3;--mathe-strong:#3a5a8c;--mathe-ink:#15294a;--info-orange:#b86a2c;--safe:#4a7530;--danger:#b32d2d}
*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--ink);font-family:Inter,sans-serif;font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased}
h1,h2,h3{font-family:'Fredoka',sans-serif;font-weight:500;letter-spacing:-0.01em;line-height:1.1}
em{font-style:normal}a{color:inherit;text-decoration:none}
.container{max-width:1180px;margin:0 auto;padding:0 32px}
*:focus-visible{outline:3px solid var(--mathe-strong);outline-offset:2px;border-radius:4px}
button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid var(--mathe-strong);outline-offset:2px}
.skip-link{position:absolute;top:-40px;left:8px;background:var(--mathe-ink);color:#fff;padding:8px 16px;border-radius:6px;z-index:100;font-size:14px}
.skip-link:focus{top:8px}

header{position:sticky;top:0;z-index:50;background:rgba(244,237,224,0.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--rule)}
header .bar{display:flex;align-items:center;justify-content:space-between;padding:22px 0}
  .brand-img { height: 28px; width: auto; display: block; object-fit: contain; }
  @media (max-width: 560px) { .brand-img { height: 24px; } }

.brand{}
nav ul{display:flex;gap:36px;list-style:none;font-size:15px;align-items:center}
nav a{color:var(--ink-soft);transition:color .2s}nav a:hover{color:var(--ink)}nav a.active{color:var(--mathe-strong);font-weight:500}
nav .nav-sep{width:1px;height:18px;background:var(--rule);align-self:center;margin:0 4px}

.topic-hero{position:relative;padding:42px 0 30px;background-color:var(--bg-dark);color:#fff}
.breadcrumb{font-size:13px;color:rgba(255,255,255,0.85);margin-bottom:14px}
.breadcrumb a{color:rgba(255,255,255,0.85);text-decoration:none}
.breadcrumb a:hover{color:#fff}.breadcrumb .sep{margin:0 8px;opacity:0.6}
.topic-hero h1{font-size:clamp(32px,4vw,46px);color:#fff;margin-bottom:6px}
.topic-hero .subtitle{font-size:15px;color:rgba(255,255,255,0.8);font-style:normal}

.panel{padding:36px 0 80px}

.ka-header{background:#fff;border:2px solid var(--bg-dark);border-radius:14px;padding:22px 26px;margin-bottom:24px;display:grid;grid-template-columns:1fr 1fr;gap:18px;box-shadow:0 8px 24px rgba(61,52,43,0.12)}
@media(max-width:700px){.ka-header{grid-template-columns:1fr}}
.ka-field{display:flex;flex-direction:column;gap:6px}
.ka-field label{font-size:12px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}
.ka-field input{padding:9px 12px;border:1.5px solid var(--rule);border-radius:8px;font:inherit;font-size:15px;font-family:Inter;background:var(--bg-soft)}
.ka-field input:focus{outline:none;border-color:var(--mathe-strong);background:#fff}
.ka-score{display:flex;align-items:center;gap:18px;flex-wrap:wrap;padding-top:8px;border-top:1px dashed var(--rule);grid-column:1/-1;margin-top:8px}
.ka-score-item{display:flex;flex-direction:column;gap:2px}
.ka-score-label{font-size:11px;letter-spacing:0.12em;text-transform:uppercase;color:var(--ink-soft);font-weight:700}
.ka-score-val{font-family:inherit;font-size:26px;color:var(--mathe-ink);font-weight:600}
.ka-score-val.note{color:var(--info-orange)}
.ka-score-val.note.s1{color:var(--safe)}
.ka-score-val.note.s2{color:#3a7a1f}
.ka-score-val.note.s3{color:var(--info-orange)}
.ka-score-val.note.s4{color:#a85020}
.ka-score-val.note.s5{color:var(--danger)}
.ka-score-val.note.s6{color:#7a1010}


.aufgabe{background:#fff;border:1px solid var(--rule);border-radius:14px;padding:24px 28px;margin-bottom:14px;transition:border-color .2s,box-shadow .2s}
.aufgabe:hover{border-color:var(--mathe-deep);box-shadow:0 6px 18px rgba(0,0,0,0.05)}
.aufgabe.solved{border-color:var(--safe);background:linear-gradient(180deg,#fff 60%,#f4faec 100%)}
.aufgabe.partial{border-color:var(--info-orange);background:linear-gradient(180deg,#fff 60%,#fdf5eb 100%)}
.aufgabe.failed{border-color:var(--danger);background:linear-gradient(180deg,#fff 60%,#fce5e5 100%)}
.aufgabe-head{display:flex;align-items:center;gap:14px;margin-bottom:14px;flex-wrap:wrap}
.aufgabe-num{flex-shrink:0;width:36px;height:36px;border-radius:50%;background:#fff;border:2px solid var(--mathe-strong);color:var(--mathe-strong);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;line-height:1;transition:all .25s}
.aufgabe.solved .aufgabe-num{background:var(--safe);border-color:var(--safe);color:#fff}
.aufgabe.partial .aufgabe-num{background:var(--info-orange);border-color:var(--info-orange);color:#fff}
.aufgabe.failed .aufgabe-num{background:var(--danger);border-color:var(--danger);color:#fff}
.aufgabe-title{font-family:'Fredoka',sans-serif;font-style:normal;font-size:20px;color:var(--mathe-ink);flex:1;min-width:0}
.aufgabe-points{display:inline-block;font-size:12px;font-weight:700;letter-spacing:0.05em;padding:4px 12px;border-radius:999px;background:var(--bg-dark);color:#fff;font-family:Inter;flex-shrink:0}
.aufgabe-points .erreicht{color:#f4ede0;font-style:normal}
.afb{display:inline-block;font-size:11px;font-weight:700;letter-spacing:0.05em;padding:3px 10px;border-radius:999px;border:1.5px solid;font-family:Inter;flex-shrink:0}
.afb-1{color:#2e5e1f;border-color:var(--safe);background:#f4faec}
.afb-2{color:#6b3a14;border-color:var(--info-orange);background:#fdf5eb}
.afb-3{color:#7a1010;border-color:var(--danger);background:#fdf0f0}
.aufgabe-body{display:grid;grid-template-columns:1fr 260px;gap:24px;align-items:start}
.aufgabe-body.no-img{grid-template-columns:1fr}
.aufgabe-text p{font-size:15px;line-height:1.65;margin-bottom:8px}
.aufgabe-text p:last-of-type{margin-bottom:14px}
.aufgabe-fig svg{width:100%;height:auto;background:var(--bg-soft);border:1px solid var(--rule);border-radius:10px;padding:12px}
.aufgabe-fig .fig-cap{font-size:12px;color:var(--ink-soft);text-align:center;margin-top:6px;font-style:normal}
@media(max-width:700px){.aufgabe-body{grid-template-columns:1fr}.aufgabe-fig{width:100%;max-width:340px;margin:0 auto}}

/* ===== AFB-Bloecke ===== */
.afb-block{margin:0 0 34px}
.afb-block-head{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:0 0 12px;margin:0 0 20px;border-bottom:2px solid var(--mathe-strong)}
.afb-block-head h2{font-size:25px;color:var(--mathe-ink);margin:0;flex:1 1 auto;min-width:0}
.afb-block-pkt{font-size:12px;font-weight:600;color:var(--mathe-strong);background:var(--bg-soft);border:1px solid var(--rule);padding:4px 12px;border-radius:999px;white-space:nowrap}
@media(max-width:560px){.afb-block-head h2{font-size:21px;flex-basis:100%;order:3}}

/* ===== Auswahl-Aufgaben (Single / Multi) ===== */
.ka-mc,.ka-mcm{display:flex;flex-direction:column;gap:8px;margin:8px 0 4px}
.ka-opt{display:block;width:100%;text-align:left;font:inherit;font-size:14.5px;line-height:1.5;color:var(--ink);
  background:var(--bg-soft);border:1.5px solid var(--rule);border-radius:10px;padding:11px 14px 11px 40px;
  position:relative;cursor:pointer;transition:border-color .18s,background .18s,box-shadow .18s}
.ka-opt::before{content:"";position:absolute;left:14px;top:50%;transform:translateY(-50%);
  width:15px;height:15px;border:1.5px solid var(--rule);background:#fff;transition:all .18s}
.ka-mc .ka-opt::before{border-radius:50%}
.ka-mcm .ka-opt::before{border-radius:4px}
.ka-opt:hover:not(:disabled){border-color:var(--mathe-strong);background:#fff}
.ka-opt:focus-visible{outline:none;border-color:var(--mathe-strong);box-shadow:0 0 0 3px rgba(74,111,165,0.2)}
.ka-opt.sel{border-color:var(--mathe-strong);background:#fff;box-shadow:inset 0 0 0 1px var(--mathe-strong)}
.ka-opt.sel::before{background:var(--mathe-strong);border-color:var(--mathe-strong);box-shadow:inset 0 0 0 2.5px #fff}
.ka-opt:disabled{cursor:default}
.ka-opt.res-ok{border-color:var(--safe);background:#f4faec;box-shadow:inset 0 0 0 1px var(--safe)}
.ka-opt.res-ok::before{background:var(--safe);border-color:var(--safe);box-shadow:inset 0 0 0 2.5px #fff}
.ka-opt.res-bad{border-color:var(--danger);background:#fce5e5;box-shadow:inset 0 0 0 1px var(--danger)}
.ka-opt.res-bad::before{background:var(--danger);border-color:var(--danger);box-shadow:inset 0 0 0 2.5px #fff}
.ka-opt.res-miss{border-color:var(--safe);border-style:dashed;background:#fbfdf6}
.ka-opt.res-ok::after,.ka-opt.res-bad::after,.ka-opt.res-miss::after{
  position:absolute;right:13px;top:50%;transform:translateY(-50%);font-size:12px;font-weight:700;letter-spacing:.03em}
.ka-opt.res-ok::after{content:"richtig";color:var(--safe)}
.ka-opt.res-bad::after{content:"falsch";color:var(--danger)}
.ka-opt.res-miss::after{content:"fehlte";color:var(--safe)}

/* ===== Zuordnungs-Aufgaben ===== */
.ka-match{display:flex;flex-direction:column;gap:8px;margin:8px 0 4px}
.match-row{display:grid;grid-template-columns:1fr 210px;gap:12px;align-items:center;
  background:var(--bg-soft);border:1.5px solid var(--rule);border-radius:10px;padding:9px 13px}
.match-q{font-size:14.5px;color:var(--ink);font-weight:500}
.ka-match select{width:100%;padding:8px 10px;border:1.5px solid var(--rule);border-radius:8px;
  font:inherit;font-family:Inter;font-size:14px;background:#fff;color:var(--ink);cursor:pointer}
.ka-match select:focus{outline:none;border-color:var(--mathe-strong);box-shadow:0 0 0 3px rgba(74,111,165,0.2)}
.ka-match select.ok{border-color:var(--safe);background:#f4faec}
.ka-match select.wrong{border-color:var(--danger);background:#fce5e5}
.ka-match select:disabled{cursor:default;opacity:1}
@media(max-width:560px){.match-row{grid-template-columns:1fr}}

@media print{
  .ka-opt{border:1px solid #888 !important;background:#fff !important;box-shadow:none !important}
  .ka-opt::after{content:"" !important}
  .ka-match select{border:1px solid #888 !important;background:#fff !important}
  .afb-block{page-break-inside:auto}
  .afb-block-head{border-bottom:1px solid #999}
}
.teilaufg{margin:10px 0 6px;font-size:14px;color:var(--ink-soft);font-weight:600}
.teilaufg .tp{display:inline-block;background:var(--bg-soft);border:1px solid var(--rule);border-radius:999px;padding:2px 9px;margin-left:6px;font-size:11px;color:var(--ink-soft);font-weight:600}

.input-row{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:8px 0}
.input-row label{font-size:14px;color:var(--ink);font-weight:500;display:flex;align-items:center;gap:6px}
.input-row input{width:90px;padding:8px 12px;border:1.5px solid var(--rule);border-radius:8px;font:inherit;font-size:14px;text-align:center;transition:all .2s;font-family:Inter}
.input-row input:focus{outline:none;border-color:var(--mathe-strong);box-shadow:0 0 0 3px rgba(74,111,165,0.2)}
.input-row input.ok{border-color:var(--safe);background:#f4faec}
.input-row input.wrong{border-color:var(--danger);background:#fce5e5}
.input-row .unit{font-size:13px;color:var(--ink-soft)}
.input-row textarea{width:100%;min-height:90px;padding:10px 12px;border:1.5px solid var(--rule);border-radius:8px;font:inherit;font-size:14px;font-family:Inter;line-height:1.55;resize:vertical;background:var(--bg-soft)}
.input-row textarea:focus{outline:none;border-color:var(--mathe-strong);background:#fff}
.input-row textarea.ok{border-color:var(--safe);background:#f4faec}

.selfexplain{margin-top:14px;background:#fffaf2;border:1.5px solid #f0e2c0;border-radius:8px;padding:14px 18px}
.selfexplain[data-locked="true"]{opacity:0.55;pointer-events:none;filter:grayscale(0.4)}
.selfexplain summary{font-size:14px;color:#6b3a14;font-weight:600;cursor:pointer;display:flex;align-items:center;gap:8px;outline:none}
.selfexplain[data-locked="true"] summary::before{content:'';font-size:14px}
.selfexplain[data-locked="false"] summary::before{content:'✓';color:var(--safe)}
.selfexplain[open] summary{margin-bottom:10px}
.selfexplain .answer{font-size:14px;color:var(--ink);line-height:1.7;padding-left:24px}
.selfexplain .answer p{margin-bottom:6px}
.selfexplain .answer strong{color:var(--mathe-ink)}

.auswerten-block{background:linear-gradient(135deg,var(--bg-dark) 0%,#5a4a3a 100%);color:#fff;border-radius:16px;padding:32px 34px;margin:28px 0;text-align:center;box-shadow:0 12px 32px rgba(61,52,43,0.25)}
.auswerten-block h2{font-size:26px;color:#fff;margin-bottom:8px}
.auswerten-block p{font-size:14px;color:rgba(255,255,255,0.85);margin-bottom:18px}
.auswerten-btn{padding:14px 36px;background:var(--info-orange);color:#fff;border:0;border-radius:999px;font:inherit;font-size:16px;font-weight:700;cursor:pointer;transition:all .15s;min-height:48px;letter-spacing:0.02em}
.auswerten-btn:hover:not(:disabled){background:#9a5520;transform:translateY(-2px);box-shadow:0 8px 20px rgba(184,106,44,0.4)}
.auswerten-btn:disabled{opacity:0.6;cursor:not-allowed;transform:none;background:var(--safe)}

.ergebnis-card{display:none;background:#fff;color:var(--ink);border-radius:14px;padding:24px 28px;margin-top:22px;text-align:left}
.ergebnis-card.show{display:block}
.ergebnis-card h3{font-size:24px;color:var(--mathe-ink);margin-bottom:14px}
.ergebnis-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px;margin-bottom:16px}
.ergebnis-cell{background:var(--bg-soft);border:1px solid var(--rule);border-radius:10px;padding:14px 18px;text-align:center}
.ergebnis-cell .label{font-size:11px;letter-spacing:0.1em;text-transform:uppercase;color:var(--ink-soft);font-weight:700;margin-bottom:4px}
.ergebnis-cell .val{font-family:inherit;font-size:30px;color:var(--mathe-ink);font-weight:600}
.ergebnis-tbl{width:100%;border-collapse:collapse;font-size:14px;margin-top:10px}
.ergebnis-tbl th,.ergebnis-tbl td{padding:8px 12px;border-bottom:1px solid var(--rule);text-align:left}
.ergebnis-tbl th{background:var(--bg-soft);font-weight:700;color:var(--mathe-ink);font-size:12px;letter-spacing:0.05em;text-transform:uppercase}

.notentab{background:#fff;border:1px solid var(--rule);border-radius:14px;padding:22px 26px;margin:30px 0;box-shadow:0 4px 14px rgba(0,0,0,0.04)}
.notentab h2{font-size:22px;color:var(--mathe-ink);margin-bottom:12px;display:flex;align-items:center;gap:10px}
.notentab table{width:100%;border-collapse:collapse;font-size:14px}
.notentab th,.notentab td{padding:10px 14px;border-bottom:1px solid var(--rule);text-align:left}
.notentab th{background:var(--bg-soft);font-weight:700;color:var(--mathe-ink);font-size:12px;letter-spacing:0.08em;text-transform:uppercase}
.notentab .note-cell{font-family:inherit;font-size:18px;font-weight:600;width:60px;text-align:center}
.notentab .pkt-cell{font-family:Inter;font-weight:600;width:120px}
.notentab tr.n1 .note-cell{color:var(--safe)}
.notentab tr.n2 .note-cell{color:#3a7a1f}
.notentab tr.n3 .note-cell{color:var(--info-orange)}
.notentab tr.n4 .note-cell{color:#a85020}
.notentab tr.n5 .note-cell{color:var(--danger)}
.notentab tr.n6 .note-cell{color:#7a1010}

footer{background:var(--bg-dark);color:#d6c8a8;padding:60px 0 40px;font-size:14px}
footer .row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:20px}
footer .links{display:flex;gap:28px}footer a:hover{color:#fff}

@media print{
  nav,header,.skip-link,footer,.auswerten-block,.notentab{display:none !important}
  body{background:#fff;color:#000;font-size:11pt}
  .panel{padding:0}
  .topic-hero{background:#fff !important;color:#000;padding:0 0 12pt;border-bottom:3px solid #000;margin-bottom:14pt}
  .topic-hero h1{color:#000;font-size:22pt}
  .topic-hero .subtitle{color:#000}
  .breadcrumb{display:none}
  .ka-header{box-shadow:none;border:2px solid #000;page-break-inside:avoid}
  .ka-header input{background:#fff;border-bottom:1.5px solid #000;border-top:none;border-left:none;border-right:none;border-radius:0}
  .ka-score-val{color:#000 !important}
  .aufgabe{page-break-inside:avoid;border:1px solid #000;background:#fff !important;margin-bottom:10pt}
  .aufgabe-num{border-color:#000;color:#000;background:#fff !important}
  .aufgabe-title{color:#000}
  .aufgabe-points{background:#000;color:#fff}
  .afb{border-color:#000;background:#fff;color:#000}
  .aufgabe-fig svg{border:1px solid #000;background:#fff}
  .input-row input{border:1px solid #888 !important;background:#fff !important}
  .input-row input.ok,.input-row input.wrong{background:#fff !important}
  .input-row textarea{border:1px solid #888 !important;background:#fff !important;min-height:60pt}
  .selfexplain{display:none !important}
  .ergebnis-card{display:none !important}
  a{color:#000;text-decoration:underline}
  h1,h2,h3{color:#000 !important}
}

@media(max-width:560px){nav{display:none}.container{padding:0 22px}}
/* === PREMIUM EDITORIAL — SUB-CHAPTER LAYER === */
.topic-hero{padding:84px 0 64px;}
.topic-hero h1{font-size:clamp(44px,5.6vw,68px);letter-spacing:-0.015em;line-height:1.04;margin-bottom:14px}
.topic-hero h1 em{font-style:normal}
.topic-hero .subtitle, .topic-hero .untertitel{font-size:17px;line-height:1.7;color:rgba(255,255,255,0.92);max-width:62ch}

.panel{padding:64px 0 100px}

.lernziele{
  background:transparent;
  border:none;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);
  border-radius:0;
  padding:32px 0;margin-bottom:48px;box-shadow:none;
  display:grid;grid-template-columns:200px 1fr;gap:36px;align-items:start;
}
.lernziele::before{
  content:'Lernziele';
  font-family:Inter,sans-serif;font-size:11px;font-weight:600;
  letter-spacing:0.22em;text-transform:uppercase;
  color:var(--ink-soft);
  padding-top:6px;
}
.lernziele h2{display:none}
.lernziele ul{margin:0}
.lernziele li{font-size:17px;line-height:1.5;color:var(--ink)}
.lernziele li::before{content:'';display:inline-block;width:8px;height:8px;background:var(--safe);border-radius:50%;margin-right:14px;margin-top:8px;flex-shrink:0}
@media(max-width:720px){.lernziele{grid-template-columns:1fr;gap:14px}.lernziele::before{padding-top:0}}

.vorwissen{
  background:#fff;border:1px solid var(--rule);border-left:3px solid var(--info-orange);
  border-radius:0;box-shadow:none;
  padding:28px 32px;margin-bottom:48px;
}
.vorwissen h2{
  font-family:'Fredoka',sans-serif;font-style:normal;font-weight:500;
  font-size:28px;color:var(--mathe-ink);margin-bottom:8px;
}
.vorwissen .vw-intro{font-size:15px;color:var(--ink-soft);margin-bottom:22px}

.toc{background:transparent;border:none;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);border-radius:0;padding:24px 0;margin-bottom:56px;max-width:none}
.toc-label{margin-bottom:18px;letter-spacing:0.22em}
.toc-list a{padding:10px 0;border-radius:0;border-bottom:1px dashed transparent}
.toc-list a:hover{background:transparent;transform:translateX(4px);border-bottom-color:var(--rule)}
.toc-list .toc-num{
  width:auto;height:auto;background:transparent;border:none;
  font-family:inherit;font-style:normal;font-weight:500;
  font-size:22px;color:var(--mathe-strong);box-shadow:none;
}

.phase{margin-bottom:80px}
.phase-head{
  display:grid;grid-template-columns:120px 1fr;gap:32px;align-items:baseline;
  padding-bottom:24px;margin-bottom:32px;border-bottom:1px solid var(--rule);
}
.phase-num{
  width:auto;height:auto;
  background:transparent;border:none;border-radius:0;
  font-family:inherit;font-style:normal;font-weight:500;
  font-size:78px;line-height:0.82;letter-spacing:-0.03em;
  color:var(--mathe-strong);
  box-shadow:none;
  display:block;text-align:center;
}
.phase-head h2{
  font-size:clamp(30px,3.8vw,46px);letter-spacing:-0.01em;line-height:1.05;
  color:var(--mathe-ink);font-weight:500;
}
@media(max-width:720px){
  .phase-head{grid-template-columns:64px 1fr;gap:18px}
  .phase-num{font-size:48px}
}

.formel-box{
  background:linear-gradient(180deg,#faf6ee 0%,#f4ede0 100%);
  border:none;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);
  border-radius:0;
  padding:48px 24px;margin:32px 0;text-align:center;box-shadow:none;
  position:relative;
}
.formel-box::before{
  content:'';position:absolute;left:50%;top:14px;transform:translateX(-50%);
  width:32px;height:1px;background:var(--mathe-strong);opacity:0.4;
}
.formel-box .label{font-size:11px;letter-spacing:0.24em;margin-bottom:14px;color:var(--ink-soft)}
.formel-box .formel{font-size:clamp(28px,3.5vw,42px);margin:0;color:var(--mathe-ink);letter-spacing:-0.01em}
.formel-box .where{font-size:14px;color:var(--ink-soft);margin-top:18px;line-height:1.7;max-width:50ch;margin-left:auto;margin-right:auto}

.worked{
  background:#fff;border:1px solid var(--rule);
  border-radius:14px;
  padding:36px 40px;margin:28px 0;box-shadow:0 1px 0 rgba(0,0,0,0.02);
  position:relative;
}
.worked h3{
  font-family:'Fredoka',sans-serif;font-style:normal;font-weight:500;
  font-size:26px;color:var(--mathe-ink);margin-bottom:8px;letter-spacing:-0.005em;
}
.worked .intro{font-size:15px;color:var(--ink-soft);margin-bottom:24px;line-height:1.65}

.hinweis-card{
  background:transparent;border:1px solid var(--rule);
  border-left:3px solid var(--info-orange);border-radius:0;
  padding:22px 26px;
}
.hinweis-card h4{font-size:19px;margin-bottom:10px;letter-spacing:-0.005em}

.aufgabe{
  background:#fff;border:1px solid var(--rule);
  border-radius:14px;
  padding:32px 36px;margin-bottom:18px;
  transition:border-color .25s, box-shadow .25s;
}
.aufgabe:hover{border-color:var(--mathe-deep);box-shadow:0 4px 16px rgba(0,0,0,0.04)}
.aufgabe.solved{border-color:var(--safe);background:linear-gradient(180deg,#fff 50%,#f6fbef 100%)}
.aufgabe-num{
  background:transparent;border:none;
  font-family:inherit;font-style:normal;font-weight:500;
  font-size:34px;color:var(--mathe-strong);
  width:auto;height:auto;line-height:1;
}
.aufgabe.solved .aufgabe-num{background:transparent;color:var(--safe)}
.aufgabe-title{font-size:24px;letter-spacing:-0.005em;font-weight:500}


.video-item{border-radius:0;border:1px solid var(--rule)}
.video-item h4{font-size:22px;letter-spacing:-0.005em}
.video-item .v-source{letter-spacing:0.2em}

.glossar{
  background:transparent;border:none;
  border-top:1px solid var(--rule);
  border-radius:0;padding:32px 0 24px;margin-top:64px;
}
.glossar summary{font-size:22px;letter-spacing:-0.005em}

.intro-block{
  background:transparent;border:1px solid var(--rule);
  border-radius:0;padding:24px 28px;margin-bottom:40px;
}
.intro-block.is-afb1{border-left:3px solid var(--safe)}
.intro-block.is-afb2{border-left:3px solid var(--info-orange)}
.intro-block.is-afb3{border-left:3px solid var(--danger)}
.intro-block h2{
  font-family:'Fredoka',sans-serif;font-style:normal;font-weight:500;
  font-size:28px;color:var(--mathe-ink);margin-bottom:10px;
}

.info-block{
  background:#fff;border:1px solid var(--rule);
  border-left:3px solid var(--danger);
  border-radius:0;padding:28px 32px;margin-bottom:40px;box-shadow:none;
}
.info-block h2{
  font-family:'Fredoka',sans-serif;font-style:normal;font-weight:500;
  font-size:30px;color:var(--mathe-ink);margin-bottom:10px;
}

.progress-sticky{
  background:rgba(255,255,255,0.94);backdrop-filter:blur(6px);
  border:1px solid var(--rule);border-radius:999px;
  padding:12px 22px;box-shadow:0 4px 14px rgba(0,0,0,0.04);
}
.progress-text{font-family:Inter,sans-serif;font-size:11px;letter-spacing:0.18em;text-transform:uppercase}

.section-head{padding-bottom:18px;border-bottom:1px solid var(--rule)}
.section-head .badge{letter-spacing:0.18em;background:transparent;border:1px solid var(--mathe-strong);color:var(--mathe-strong);padding:5px 14px}
.section-head h2{font-size:clamp(28px,3.2vw,40px);letter-spacing:-0.005em}

.stats-bar{border-radius:999px;background:#fff}
.filter-btn{border-radius:999px;border-width:1.5px}

.fehler-toc{background:transparent;border:none;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);border-radius:0;padding:24px 0}

.topic-intro{font-size:17px;line-height:1.75;color:var(--ink-soft);max-width:68ch;margin-bottom:48px}

.check-btn, .vw-result button{
  border-radius:999px;padding:10px 22px;font-size:13px;letter-spacing:0.04em;
  background:var(--mathe-ink);
}
.check-btn:hover{background:var(--mathe-strong)}
.hilfe-btn{border-radius:999px;border-width:1.5px}

.subhead{
  font-family:inherit;font-style:normal;font-weight:700;
  font-size:26px;color:var(--mathe-ink);margin:36px 0 12px;letter-spacing:-0.005em;
}


/*footer-mint*/footer{background:#11241c;color:#a9c7b8;border-top:3px solid #3aa37a}footer a:hover{color:#7fe3b6}
/*premium-global*/
body{font-family:'Fredoka',Inter,-apple-system,sans-serif}
h1,h2,h3,h4{font-family:'Fredoka',sans-serif;font-weight:700;letter-spacing:-0.012em}
.eyebrow{font-family:'Fredoka',sans-serif;font-weight:600}
:root{--sh-sm:0 1px 2px rgba(40,30,25,.06),0 3px 8px rgba(40,30,25,.07);--sh-md:0 6px 14px -4px rgba(40,30,25,.12),0 16px 32px -12px rgba(40,30,25,.18)}
.subject-card,.grade-card,.topic-card,.sub-card,.phase,.feature,.hinweis-card,.aufgabe,.video-item{box-shadow:var(--sh-sm)!important;transition:transform .2s cubic-bezier(.16,1,.3,1),box-shadow .25s,border-color .2s,background .2s}
.subject-card:hover,.grade-card:hover,.topic-card:hover,.feature:hover{box-shadow:var(--sh-md)!important;transform:translateY(-4px)}
.reveal{opacity:1;transform:none}
.reveal.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1!important;transform:none!important}}
.subject-hero,.topic-hero{position:relative;background-color:#122236;}
.subject-hero::after,.topic-hero::after{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:22px 22px;opacity:.5;pointer-events:none}
.subject-hero .container,.topic-hero .container{position:relative;z-index:1}
/*m-nav*/
.m-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;background:none;border:0;cursor:pointer;padding:10px;border-radius:10px}
.m-burger span{display:block;height:2.5px;width:100%;background:#2b241d;border-radius:2px;transition:transform .25s,opacity .2s}
.m-burger.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.m-burger.open span:nth-child(2){opacity:0}
.m-burger.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.m-menu{display:none;position:absolute;top:100%;left:0;right:0;background:rgba(250,246,238,0.98);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(0,0,0,.08);box-shadow:0 18px 36px -12px rgba(40,25,40,.25);z-index:60}
.m-menu.open{display:block;animation:mDrop .22s ease}
@keyframes mDrop{from{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}
.m-menu ul{display:flex;flex-direction:column;list-style:none;margin:0;padding:6px 0 12px}
.m-menu li{opacity:0;transform:translateY(-7px)}
.m-menu.open li{animation:mItem .28s ease forwards}
.m-menu.open li:nth-child(1){animation-delay:.02s}.m-menu.open li:nth-child(2){animation-delay:.06s}.m-menu.open li:nth-child(3){animation-delay:.10s}.m-menu.open li:nth-child(4){animation-delay:.14s}.m-menu.open li:nth-child(5){animation-delay:.18s}.m-menu.open li:nth-child(6){animation-delay:.22s}.m-menu.open li:nth-child(7){animation-delay:.26s}
@keyframes mItem{to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.m-menu.open{animation:none}.m-menu li{opacity:1;transform:none}.m-menu.open li{animation:none}}
.m-menu a{display:block;padding:13px 26px;font-size:16px;font-family:'Fredoka',sans-serif;color:#2b241d;border-bottom:1px solid rgba(0,0,0,.04)}
.m-menu a:hover,.m-menu a.active{color:#3aa37a;background:rgba(58,163,122,.08)}
@media(max-width:560px){.m-burger{display:flex}}
@media(min-width:561px){.m-burger,.m-menu{display:none!important}}

/*typo-fix*/
em,i,cite,dfn{font-style:normal!important}
h1,h2,h3,h4{font-family:'Fredoka',sans-serif!important;font-weight:700;font-style:normal}
h1 em,h2 em,h3 em,h4 em{font-style:normal!important}
.subject-hero h1,.topic-hero h1,.hero h1{font-style:normal}

/*font-force*/
h1,h2,h3,h4,h5,h6,.section-head h2,.abschnitt-head h3,.sub-titel,.sub-num,.sub-arrow,.sub-meta,.topic-card h4,.grade-card h3,.subject-card h3,.subject-card h3 *,.aufgabe-title,.aufgabe-num,.worked h3,.applet h3,.hinweis-card h4,.glossar summary,.ausblick h3,.lernziele h2,.phase h4,.feature h4,.subtitle,.hero-lead,.lead,.topic-intro{font-family:'Fredoka',Inter,sans-serif!important;font-style:normal!important}

/*hero-white*/.subject-hero h1 em,.topic-hero h1 em,.hero h1 em{color:#fff!important;font-style:normal!important}
/*video-facade 2026-08-21 (Stil wie Reaktivierung 0.1-0.3)*/


.topic-hero .hero-grid{display:grid;grid-template-columns:1.35fr 1fr;gap:48px;align-items:center}
.topic-hero .subtitle{margin-top:14px;color:rgba(255,255,255,0.92);font-size:17px;line-height:1.7;max-width:54ch}
.topic-hero .hero-proof{display:flex;align-items:center;justify-content:center}
.topic-hero .hero-proof svg{width:100%;max-width:380px;height:auto;filter:drop-shadow(0 14px 30px rgba(0,0,0,0.35))}
@media(max-width:820px){.topic-hero .hero-grid{grid-template-columns:1fr}.topic-hero .hero-proof{order:-1;max-width:320px;margin:0 auto 8px}}
@keyframes hpFadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes hpScaleIn{from{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}
.hero-proof [data-anim]{transform-box:fill-box;transform-origin:center}
.hero-proof [data-anim="fadeIn"]{animation:hpFadeIn .9s cubic-bezier(.16,1,.3,1) both}
.hero-proof [data-anim="scaleIn"]{animation:hpScaleIn .9s cubic-bezier(.34,1.56,.64,1) both}
.hero-proof [data-delay="1"]{animation-delay:.4s}
.hero-proof [data-delay="2"]{animation-delay:.9s}
.hero-proof [data-delay="3"]{animation-delay:1.5s}
.hero-proof [data-delay="4"]{animation-delay:2.1s}
@media(prefers-reduced-motion:reduce){
  .hero-proof [data-anim="fadeIn"],.hero-proof [data-anim="scaleIn"]{animation:hpFadeIn 0s both;opacity:1!important;transform:none!important}
}

/*breite-text*/:root{--measure:none}.erklaer-text,.intro-lead,.stichliste,.topic-intro,.lead,.kontext,.fakten,.erklaer-text p{max-width:none!important}.erklaer-text,.erklaer-text p,.intro-lead,.topic-intro,.kontext{text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto;line-height:2.05}.stichliste{line-height:1.95}.stichliste li{line-height:1.85}.aufgabe-text,.aufgabe-text p,.worked-step,.glossar-item .def{line-height:1.95}
/*k10-angleichung 2026-08-18*/
/* --- Inhaltsverzeichnis: volle Breite, Karten-Look --- */
.toc{max-width:none!important;width:100%!important;background:var(--bg-soft)!important;border:1px solid var(--rule)!important;border-radius:16px!important;padding:26px 30px!important;margin:0 0 34px 0!important;box-shadow:var(--sh-sm)}
.toc-list{display:flex!important;flex-direction:column!important;gap:6px!important}
.toc-list a{font-size:15.5px!important;padding:11px 14px!important;border-radius:10px!important}
.toc-list .toc-num{width:28px!important;height:28px!important;font-size:13px!important}
@media(max-width:640px){.toc{padding:22px 20px!important}}

/* --- Einheitliche Schriftgrößen (Anlehnung Informatik K10 1.1/1.2) --- */
.topic-hero h1{font-size:clamp(28px,3.2vw,38px)!important;line-height:1.14!important;margin-bottom:12px!important;letter-spacing:-0.012em!important}
.topic-hero .subtitle,.topic-hero .untertitel{font-size:17px!important;line-height:1.65!important;max-width:62ch!important}
.panel{padding:44px 0 100px}

/* Phasen als Karten mit kleiner Nummer statt Riesenziffer */
.phase{background:var(--bg-soft);border:1px solid var(--rule);border-radius:20px;padding:32px 36px;margin:0 0 24px!important;box-shadow:var(--sh-sm)}
.phase-head{display:flex!important;align-items:center!important;gap:13px!important;grid-template-columns:none!important;border-bottom:0!important;padding-bottom:0!important;margin-bottom:14px!important}
.phase-num{width:28px!important;height:28px!important;flex-shrink:0;display:flex!important;align-items:center!important;justify-content:center!important;border-radius:9px!important;background:var(--mathe-strong,#3a5a8c)!important;color:#fff!important;font-family:'Fredoka',sans-serif!important;font-style:normal!important;font-weight:600!important;font-size:14px!important;line-height:1!important;letter-spacing:0!important;box-shadow:0 3px 8px -2px rgba(20,45,90,.45)!important;text-align:center!important}
.phase-head h2{font-size:27px!important;line-height:1.16!important;color:var(--mathe-ink)!important;letter-spacing:-0.012em!important;font-weight:700!important}
.phase-head h2 em{font-style:normal!important}
@media(max-width:640px){.phase{padding:24px 20px}.phase-head h2{font-size:23px!important}}

/* Fließtext einheitlich */
.erklaer-text,.phase p,.lead,.intro-lead,.topic-intro,.aufgabe-text,.aufgabe-text p,.stichliste li{font-size:17px!important;line-height:1.7!important}
.erklaer-text,.erklaer-text p,.intro-lead,.topic-intro,.kontext{text-align:left!important;line-height:1.7!important}
.stichliste{line-height:1.7!important}

/* Zwischenüberschriften / Karten */
.uebersicht-card h3,.bruecke-bonus h3,.selbst h3{font-size:20px!important;font-style:normal!important;letter-spacing:-0.008em!important}
.aufgabe-title{font-size:17px!important;font-style:normal!important;font-weight:600!important;letter-spacing:0!important}
.aufgabe-num{width:34px!important;height:34px!important;border-radius:9px!important;background:var(--accent,#dbe6f5)!important;border:1.5px solid var(--rule)!important;color:var(--mathe-ink,#15294a)!important;font-family:'Fredoka',sans-serif!important;font-style:normal!important;font-weight:600!important;font-size:13.5px!important;line-height:1!important;display:flex!important;align-items:center!important;justify-content:center!important}
.section-head h2{font-size:27px!important;letter-spacing:-0.012em!important}
.formel-box{padding:30px 24px!important;border-radius:16px!important;border:1px solid var(--rule)!important}
.formel-box .formel{font-size:26px!important}
.glossar summary,.video-item h4{font-size:17px!important;letter-spacing:0!important}
.lernziele li{font-size:17px!important;line-height:1.6!important}

/*idx-fix*/.input-row label sub,.aufgabe-text sub,.hilfe-content sub{font-size:0.72em;line-height:0;vertical-align:-0.28em;font-weight:inherit}
/*hero-einheitlich 2026-08-27: identische Hero-Hoehe im ganzen Kapitel*/
.topic-hero{height:calc(1.1 * (228.55px + 1.65 * clamp(44px, 6vw, 76px)));display:flex;align-items:center;overflow:hidden;padding:0 !important}
.topic-hero>.container{width:100%;position:relative;z-index:2}
.topic-hero>.wow-hero-glyphs{position:absolute;inset:0}
.topic-hero>.wow-scroll-cue{position:absolute;bottom:18px;left:50%}
@media(max-width:880px){.topic-hero{height:auto;display:block;padding:60px 0 50px !important}}
@media print{.topic-hero{height:auto !important;display:block !important;padding:0 0 12pt !important}}

/* typo-normalisierung 2026-08-27: Rest-Ausreisser aus Premium-v1 einfangen */
.subhead{font-size:21px!important;line-height:1.3!important;letter-spacing:-0.008em!important;margin:30px 0 10px!important}
.worked h3{font-size:20px!important;letter-spacing:-0.005em!important}
.vorwissen h2{font-size:22px!important;letter-spacing:-0.005em!important}
.bridge h3{font-size:20px!important;letter-spacing:-0.005em!important}
.uebersicht-card h3{font-size:20px!important}
.hinweis-card h4,.hinweis-card h3{font-size:17px!important;letter-spacing:-0.005em!important}
.formel-box .formel{font-size:26px!important;line-height:1.35!important}
.work-step .calc{font-size:19px!important}
.thema-head h2,.afb-block-head h2{font-size:21px!important}
.xlink .xt{font-size:16px!important}
@media(max-width:640px){.subhead{font-size:19px!important}.worked h3,.bridge h3,.vorwissen h2{font-size:18px!important}.formel-box .formel{font-size:22px!important}}

/*anum 2026-08-27*/.aufgabe-num{width:auto!important;min-width:40px!important;padding:0 10px!important;box-sizing:border-box}
/* HERO-2L v1 */
.subject-hero h1,.topic-hero h1,.hero h1{font-size:clamp(38px,5vw,58px)!important;line-height:1.06!important;letter-spacing:-0.015em!important;margin-bottom:0!important;white-space:normal!important}
.subject-hero .subtitle,.subject-hero .hero-lead,.subject-hero .lead,.subject-hero .untertitel,.subject-hero .topic-intro,.subject-hero .ah-lead,.subject-hero .sub,.topic-hero .subtitle,.topic-hero .hero-lead,.topic-hero .lead,.topic-hero .untertitel,.topic-hero .topic-intro,.topic-hero .ah-lead,.topic-hero .sub,.hero .subtitle,.hero .hero-lead,.hero .lead,.hero .untertitel,.hero .topic-intro,.hero .ah-lead,.hero .sub{font-family:'Fredoka',Inter,sans-serif!important;font-weight:400!important;font-size:16.5px!important;line-height:1.58!important;max-width:620px!important;margin-top:12px!important;margin-bottom:0!important;color:rgba(255,255,255,0.92)!important;display:-webkit-box!important;-webkit-box-orient:vertical!important;-webkit-line-clamp:2!important;overflow:hidden!important;text-wrap:initial!important}
.subject-hero .subtitle em,.subject-hero .hero-lead em,.subject-hero .lead em,.topic-hero .subtitle em,.topic-hero .hero-lead em,.topic-hero .lead em,.hero .subtitle em,.hero .hero-lead em,.hero .lead em,.subject-hero .subtitle strong,.topic-hero .subtitle strong,.hero .subtitle strong,.topic-hero .hero-lead strong,.topic-hero .lead strong{font-style:normal!important;font-weight:500!important;color:#fff!important}
.subject-hero .hero-grid,.topic-hero .hero-grid,.hero .hero-grid{grid-template-columns:620px minmax(0,1fr)!important}
@media(max-width:820px){.subject-hero .hero-grid,.topic-hero .hero-grid,.hero .hero-grid{grid-template-columns:1fr!important}}
@media(max-width:700px){.subject-hero .subtitle,.subject-hero .hero-lead,.subject-hero .lead,.topic-hero .subtitle,.topic-hero .hero-lead,.topic-hero .lead,.hero .subtitle,.hero .hero-lead,.hero .lead{max-width:100%!important;-webkit-line-clamp:4!important}}
