/* Ergänzungen für die Abiturvorbereitung; Fachidentität ausschließlich aus fach.css. */
.abi-page{font-family:Inter,sans-serif;line-height:1.7}
.abi-page h1,.abi-page h2,.abi-page h3{font-family:Fredoka,sans-serif;line-height:1.18}
.abi-page .container{width:100%;max-width:1180px;padding-inline:28px}
.abi-page .topic-hero{padding:40px 0 48px;background-image:linear-gradient(100deg,var(--fach-hero),color-mix(in srgb,var(--fach-hero) 80%,transparent)),url('https://images.unsplash.com/photo-1465101162946-4377e57745c3?w=1600&q=80&fit=crop&auto=format');background-position:center;background-size:cover}
.abi-page .topic-hero h1{font-size:clamp(32px,4.6vw,56px);max-width:24ch;white-space:normal;margin:8px 0 16px;color:white}
.abi-page .topic-hero .subtitle{display:block;max-width:72ch;font:400 17px/1.7 Inter,sans-serif;color:white;overflow:visible; margin:0}
.abi-eyebrow{font-size:12px;letter-spacing:.12em;color:white}
.abi-page .breadcrumb{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px;font-size:13px;color:white}
.abi-page .breadcrumb a{color:white;text-decoration:none}
.abi-page .panel{padding:28px 0 70px}
.abi-stepper{display:block;margin-bottom:28px}
.abi-page main .abi-stepper ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:0;list-style:none;gap:10px}
.abi-page main .abi-stepper li{border:1px solid var(--rule);border-radius:12px;background:var(--bg-soft);font-size:14px}
.abi-stepper a,.abi-stepper li>span{display:block;padding:12px 16px;color:var(--fach-ink);font-weight:600}
.abi-stepper small{display:block;font-size:11px;font-weight:400;color:var(--ink-soft)}
.abi-stepper [aria-current]{background:var(--fach);border-radius:12px}
.abi-section,.abi-page .abschnitt{margin:0 0 28px;padding:26px;background:var(--bg-soft);border:1px solid var(--rule);border-radius:18px}
.abi-section h2,.abi-page .abschnitt h2{font-size:28px;color:var(--fach-ink);margin:0 0 14px}
.abi-section h3{font-size:21px;margin:20px 0 10px}
.abi-page main p{margin-bottom:14px}
.abi-page main ul,.abi-page main ol{padding-left:24px;margin:12px 0}
.abi-page main li{margin-bottom:8px}
.abi-page main a:not(.abi-card):not(.abi-button){text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.abi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.abi-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.abi-card{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:20px;border:1px solid var(--rule);border-radius:12px;background:white;color:var(--ink);min-width:0;text-decoration:none}
a.abi-card:hover{border-color:var(--fach-ink);box-shadow:0 4px 15px #0000000d}
.abi-card strong{font:500 22px/1.25 Fredoka,sans-serif;color:var(--fach-ink)}
.abi-card p{font-size:14px;margin:0!important}
.abi-card .abi-tag{margin-top:auto}
.abi-tag{display:inline-block;font-size:12px;font-weight:600;line-height:1.5;padding:4px 10px;border-radius:6px;background:var(--fach);color:var(--fach-ink)}
.abi-tag.available{background:#e5efd9;color:#304c1e}
.abi-tag.pending{background:#f8e8d0;color:#67421c}
.abi-note{padding:16px 20px;border-left:4px solid var(--fach-strong);background:var(--fach);color:var(--fach-ink);border-radius:0 10px 10px 0;margin:16px 0}
.abi-meta{font-size:13px;color:var(--ink-soft)}
.abi-actions,.abi-year-nav{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}
.abi-button,.abi-page button:not(.vw-opt):not(.ka-opt):not(.abi-menu-toggle){font:600 14px/1.5 Inter,sans-serif;cursor:pointer}
.abi-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border-radius:8px;border:1px solid var(--fach-ink);background:var(--fach-ink);color:white;text-decoration:none}
.abi-button.secondary{background:white;color:var(--fach-ink)}
.abi-page button:disabled{cursor:default;opacity:.6}
.abi-page :where(input,select,textarea){font:inherit;max-width:100%;border:1px solid var(--rule);border-radius:6px;padding:8px;background:white;color:var(--ink)}
.abi-page input[type=checkbox]{width:19px;height:19px;accent-color:var(--fach-ink)}
.abi-page details{border:1px solid var(--rule);border-radius:10px;background:white;padding:0 16px;margin:12px 0}
.abi-page summary{cursor:pointer;padding:12px 0;font-weight:600;color:var(--fach-ink)}
.abi-page details>div{padding-bottom:12px}
.abi-page :focus-visible{outline:3px solid var(--fach-ink);outline-offset:4px}
.abi-page .topic-hero :focus-visible{outline-color:white}
.abi-page table{width:100%;border-collapse:collapse;font-size:14px;margin:16px 0}
.abi-page th,.abi-page td{text-align:left;vertical-align:top;padding:12px;border-bottom:1px solid var(--rule)}
.abi-page th{background:var(--fach);color:var(--fach-ink)}
.abi-table-wrap{overflow-x:auto;max-width:100%}
.abi-page svg{max-width:100%;height:auto}
.abi-page .subs{display:grid;gap:12px}
.abi-page .sub-card{display:flex;gap:14px;align-items:center;padding:16px;background:white;border:1px solid var(--rule);border-radius:10px;overflow-wrap:anywhere}
.abi-page .sub-num{flex-shrink:0;background:var(--fach);color:var(--fach-ink);padding:4px 9px;border-radius:6px;font-size:12px}
.abi-page .sub-num svg{width:22px;height:22px}
.abi-page .sub-arrow{margin-left:auto}
.abi-page .platz-text{padding:16px;border:1px solid var(--rule);border-radius:10px;background:white}
.abi-menu-toggle{display:none}
.abi-page [hidden]{display:none!important}
.abi-page footer .row{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px}
.abi-page footer .links{display:flex;gap:20px}
.abi-page section[id]{scroll-margin-top:100px}
@media(max-width:760px){.abi-grid.three{grid-template-columns:1fr}.abi-page header .bar{flex-wrap:wrap;gap:16px;padding:14px 0}.abi-page header nav{display:block;width:100%}.abi-page header nav ul{display:flex;flex-wrap:wrap;gap:12px 20px}.abi-menu-toggle:not([hidden]){display:block;margin-left:auto;padding:9px 14px;background:var(--fach);color:var(--fach-ink);border:1px solid var(--rule);border-radius:8px}.abi-page header nav[data-collapsed=true]{display:none}.abi-page .container{padding-inline:18px}}
@media(max-width:560px){.abi-grid{grid-template-columns:1fr}.abi-section,.abi-page .abschnitt{padding:18px}.abi-page main .abi-stepper ol{grid-template-columns:1fr;gap:6px}.abi-stepper a,.abi-stepper li>span{padding:8px 12px}.abi-stepper small{display:inline;margin-right:8px}.abi-page .breadcrumb{display:flex}.abi-page .topic-hero{padding:26px 0 32px}.abi-page .sub-card{align-items:flex-start}.abi-page .topic-hero h1{font-size:32px}.abi-page header{position:relative}}
@media(prefers-reduced-motion:reduce){.abi-page,.abi-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
@media print{.abi-page{font-size:10pt;background:white;color:black}.abi-page header,.abi-page footer,.abi-stepper,.abi-actions,.abi-year-nav,.abi-page .breadcrumb,.abi-no-print{display:none!important}.abi-page .topic-hero{padding:0 0 12pt;background:none!important}.abi-page .topic-hero *{color:black!important}.abi-page .topic-hero h1{font-size:22pt}.abi-page .container{max-width:none;padding:0}.abi-page .panel{padding:0}.abi-section,.abi-page .abschnitt{border:1px solid #bbb;box-shadow:none;padding:12pt;margin:0 0 12pt}.abi-card, .abi-page tr{break-inside:avoid}.abi-page h2,.abi-page h3,.abi-page summary{break-after:avoid}.abi-page a{color:black}.abi-page .abi-grid{grid-template-columns:1fr 1fr}.abi-page .abi-tag{border:1px solid #aaa;background:white;color:black}.abi-page .abi-table-wrap{overflow:visible}}
.abi-page .abi-status{display:inline-block;padding:5px 12px;border-radius:7px;background:var(--fach);color:var(--fach-ink);font-size:13px;font-weight:600}
.abi-page .abi-material{padding:18px;margin:16px 0;border:1px solid var(--rule);border-radius:12px;background:white}
.abi-page .abi-material h3{font-size:23px;color:var(--fach-ink);margin:0 0 10px}
.abi-page .abschnitt h3{margin:20px 0 12px}
