/* Kapitel nach dem Ergebnis */
.chapter-top{padding-block:var(--space-3)}
.chapter-top .wrap{display:flex;justify-content:space-between;align-items:center;gap:var(--space-4);min-height:44px}
.chapter{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-5);padding-block:var(--space-3) var(--section-y);animation:enter var(--dur-slow) var(--ease-out) both}
.chapter section{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}
.chapter section h2{margin-top:var(--space-5)}
.chapter>h2{margin-top:var(--space-5)}
.chapter blockquote{margin:0;padding:var(--space-4);background:var(--bg-section);border-radius:var(--radius-md);font-style:italic}
.chapter>.eyebrow+h1{margin-top:calc(var(--space-3) * -1)}
.no-print{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}

.statement{margin-block:var(--space-3);padding:var(--space-6) var(--space-5);background:var(--surface-card-accent);color:var(--text-on-accent);border-radius:var(--radius-md);text-align:center}
.statement p{font:var(--fw-extrabold) var(--type-h3)/1.25 var(--font-display);text-wrap:balance}

.two{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}
.chapter .card h3{font-size:var(--type-body);line-height:1.3}
.bignum{font:var(--fw-extrabold) clamp(2.75rem,2.2rem + 2.6vw,var(--fs-h1))/1 var(--font-display);color:var(--text-headline)}

/* Formularfelder */
.field{display:grid;gap:var(--space-2)}
.field label,.field__label{font-weight:var(--fw-bold);line-height:1.4}
.field__hint{font-size:var(--fs-small);color:var(--text-muted);line-height:1.4}
.field textarea,.field input{width:100%;min-height:52px;padding:var(--space-3);background:var(--bg-page);color:var(--text-body);border:1px solid var(--border-strong);border-radius:var(--radius-md);font:inherit;line-height:1.5;color-scheme:dark;transition:border-color var(--dur-fast) var(--ease-out)}
.field textarea{resize:vertical}
.field textarea:focus,.field input:focus{outline:none;border-color:var(--border-accent);box-shadow:var(--focus-ring)}
.field textarea::placeholder,.field input::placeholder{color:var(--text-muted)}

.exercise{padding:var(--space-5);background:var(--bg-section);border-radius:var(--radius-md)}
.exercise h2,.chapter section.exercise h2{margin-top:0}
.exercise h3{margin-top:var(--space-3);font-size:var(--type-h3)}
.chapter section.exercise{gap:var(--space-4)}
.result-box{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4);padding:var(--space-5);border:2px solid var(--border-accent);border-radius:var(--radius-md)}
.result-box h2{font-size:var(--type-h3)}

/* Sekundärbutton */
.btn-ghost{justify-self:start;min-height:48px;padding:var(--space-2) var(--space-4);background:transparent;color:var(--kgl-orange);border:1px solid var(--border-accent);border-radius:var(--radius-md);font:var(--fw-bold) var(--fs-small)/1.3 var(--font-body);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}
.btn-ghost:hover{background:var(--accent);color:var(--text-on-accent)}
.row-btns{display:flex;flex-wrap:wrap;gap:var(--space-3);align-items:center;margin-top:var(--space-4)}

/* Satzbaukasten */
.draft{padding:var(--space-4);background:var(--bg-page);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:var(--type-lead);line-height:1.6}
.slot{color:var(--text-muted);border-bottom:2px dashed var(--border-strong)}
.slot-filled{color:var(--text-headline);font-weight:var(--fw-bold)}

/* Umschalter */
.compare{display:grid;gap:var(--space-4)}
.compare__tabs{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-1);padding:var(--space-1);background:var(--bg-section);border-radius:var(--radius-md)}
.compare__tab{min-height:48px;padding:var(--space-2);background:transparent;color:var(--text-body);border:0;border-radius:var(--radius-sm);font:var(--fw-semibold) var(--fs-small)/1.25 var(--font-body);cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out)}
.compare__tab.is-on{background:var(--accent);color:var(--text-on-accent);font-weight:var(--fw-bold)}
.compare__panel{display:grid;gap:var(--space-4);animation:enter var(--dur-base) var(--ease-out) both}
.compare__panel[hidden]{display:none}

/* Aufklapper */
.acc{border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-page)}
.acc summary{display:flex;align-items:center;gap:var(--space-3);min-height:52px;padding:var(--space-3) var(--space-4);font-weight:var(--fw-bold);line-height:1.35;cursor:pointer;list-style:none}
.acc summary::-webkit-details-marker{display:none}
.acc summary::after{content:'+';margin-left:auto;color:var(--kgl-orange);font-size:1.5em;line-height:1;transition:transform var(--dur-base) var(--ease-out)}
.acc[open] summary::after{transform:rotate(45deg)}
.acc__body{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);padding:0 var(--space-4) var(--space-4)}

/* Kreislauf */
.ring{position:relative;width:min(320px,100%);aspect-ratio:1;margin:var(--space-3) auto}
.ring__circle{position:absolute;inset:10%;border:2px solid var(--border-strong);border-radius:50%}
.ring__node{position:absolute;width:48px;height:48px;margin:-24px 0 0 -24px;padding:0;background:var(--surface-card);color:var(--text-body);border:0;border-radius:50%;font:var(--fw-extrabold) var(--type-body)/1 var(--font-display);cursor:pointer;transition:background-color var(--dur-base) var(--ease-out),color var(--dur-base) var(--ease-out),box-shadow var(--dur-base) var(--ease-out)}
.ring__node.is-on{background:var(--accent);color:var(--text-on-accent);box-shadow:var(--shadow-cta)}
.ring__center{position:absolute;inset:27%;display:flex;align-items:center;justify-content:center;text-align:center;font:var(--fw-extrabold) var(--type-body)/1.25 var(--font-display);color:var(--text-headline)}
.ring__list{margin:0;padding-left:var(--space-5);display:grid;gap:var(--space-1)}
.ring__list li{transition:color var(--dur-base) var(--ease-out)}
.ring__list li.is-on{color:var(--text-headline);font-weight:var(--fw-bold)}

/* Auswahl */
.pr-q{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);padding-block:var(--space-3)}
.pr-q h3{font-size:var(--type-body);line-height:1.35;color:var(--text-body)}
.opts{display:grid;gap:var(--space-2)}
.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:var(--space-2)}
.seg__btn{min-height:48px;padding:var(--space-2) var(--space-3);background:var(--surface-card);color:var(--text-body);border:2px solid transparent;border-radius:var(--radius-md);font:var(--fw-semibold) var(--fs-small)/1.3 var(--font-body);text-align:center;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out)}
.seg__btn:hover{background:var(--kgl-blue-600)}
.seg__btn.is-on{background:var(--accent);color:var(--text-on-accent);font-weight:var(--fw-bold)}
.opt{text-align:left;font-size:var(--type-body)}

/* Übersicht */
.hub{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-3)}
.hub-item{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:var(--space-3);align-items:center;padding:var(--space-4);background:var(--surface-card);border-radius:var(--radius-md);color:var(--text-body);text-decoration:none;transition:background-color var(--dur-fast) var(--ease-out)}
.hub-item:hover{background:var(--kgl-blue-600);color:var(--text-body)}
.hub-item__mark{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:2px solid var(--border-strong);border-radius:50%}
.hub-item__mark.is-done{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}
.hub-item__mark svg{width:16px;height:16px}
.hub-item__text{display:grid;gap:2px}
.hub-item__text strong{font-family:var(--font-display);line-height:1.3}
.hub-item__text>span:not(.tag){font-size:var(--fs-small);color:var(--text-muted);line-height:1.35}
.hub-item__go{color:var(--kgl-orange);font-size:1.5em;line-height:1}
.tag.tag--on{display:block;margin:0 0 var(--space-1)}

/* Bremse 2 */
.scale{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}
.scale strong{display:inline-block;width:1.5em;color:var(--text-headline);font-family:var(--font-display)}
.contacts{display:grid;gap:var(--space-2)}
.contact__score{margin-left:auto;color:var(--text-headline);font-family:var(--font-display);white-space:nowrap}
.contact summary::after{margin-left:0}
.contact__name{min-width:0;overflow-wrap:anywhere}
.crit{display:grid;gap:var(--space-1)}
.crit__label{font-size:var(--fs-small);font-weight:var(--fw-semibold)}

/* Bremse 5 und Plan */
.steps{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}
.step{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2);padding:var(--space-4) var(--space-5);background:var(--surface-card);border-top:4px solid var(--border-accent);border-radius:var(--radius-md)}
.step h3{font-size:var(--type-body);line-height:1.3}
.step__n{font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:var(--ls-eyebrow);color:var(--text-muted)}
.funnel{display:grid;gap:var(--space-2);padding:var(--space-4);background:var(--bg-page);border-radius:var(--radius-md)}
.funnel__row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-1) var(--space-3);align-items:center}
.funnel__label{grid-column:1/-1;font-size:var(--fs-small)}
.funnel__track{display:block;height:14px;background:var(--surface-card);border-radius:var(--radius-sm);overflow:hidden}
.funnel__track i{display:block;height:100%;background:var(--accent);transition:width var(--dur-slow) var(--ease-out)}
.focus-row{display:grid;gap:var(--space-2);padding-block:var(--space-3);border-top:1px solid var(--border-subtle)}
.focus-row h3{font-size:var(--type-body)}
.timeline{gap:0!important;margin-top:var(--space-5)}
.phase{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3);padding:0 0 var(--space-6) var(--space-6);border-left:2px solid var(--border-strong);margin-left:var(--space-2)}
.phase::before{content:'';position:absolute;left:-9px;top:4px;width:16px;height:16px;background:var(--accent);border-radius:50%}
.phase h2{margin-top:0!important;font-size:var(--type-h3)}
.phase__days{font-weight:var(--fw-bold);font-size:var(--fs-small);color:var(--text-muted)}
.routine{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2)}
.routine__block{display:grid;gap:2px;padding:var(--space-3) var(--space-4);background:var(--surface-card);border-radius:var(--radius-md)}
.routine__block strong{font-family:var(--font-display);color:var(--text-headline);font-size:var(--fs-small)}

/* Mein Plan */
.sheet{padding:var(--space-5);background:var(--bg-section);border-radius:var(--radius-md);display:grid;gap:var(--space-5)}
.sheet__head{font:var(--fw-extrabold) var(--type-h2)/1.2 var(--font-display);color:var(--text-headline)}
.sheet__sec{gap:var(--space-3)!important}
.sheet__sec h2{margin-top:0!important;font-size:var(--type-body);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-strong)}
.sheet dl{margin:0;display:grid;gap:var(--space-3)}
.sheet dt{font-size:var(--fs-small);color:var(--text-muted)}
.sheet dd{margin:0;font-weight:var(--fw-semibold);white-space:pre-wrap;overflow-wrap:anywhere}
.sheet__open{font-weight:var(--fw-regular);font-size:var(--fs-small)}

/* Gespräch */
.vs{border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}
.vs__head,.vs__row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.vs__head{background:var(--surface-card);font:var(--fw-extrabold) var(--fs-small)/1.3 var(--font-display);color:var(--text-headline)}
.vs__head span,.vs__row p{padding:var(--space-3)}
.vs__row{border-top:1px solid var(--border-subtle);font-size:var(--fs-small);line-height:1.4}
.vs__row p:first-child{color:var(--text-muted)}
.vs__row p:last-child{display:grid;grid-template-columns:18px minmax(0,1fr);gap:var(--space-2);font-weight:var(--fw-semibold);background:var(--bg-section)}
.vs__row svg{width:18px;height:18px;margin-top:1px;color:var(--kgl-orange)}
.quotes{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}
.quote{display:grid;gap:var(--space-3);margin:0;padding:var(--space-5);background:var(--surface-card);border-radius:var(--radius-md);box-shadow:var(--shadow-card)}
.quote__stars{color:var(--kgl-orange);letter-spacing:.1em}
.chapter .quote blockquote{padding:0;background:none;font-style:normal}
.quote figcaption{font-size:var(--fs-small);color:var(--text-muted)}
.quote figcaption strong{color:var(--text-body)}
.chapter .cta-box{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-4)}
.chapter .cta-box>*+*{margin-top:0}
.chapter section.cta-box h2{margin-top:0}
.book-steps{margin:0;padding-left:var(--space-5);display:grid;gap:var(--space-1)}
.soft-cta{display:grid;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-4);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font-size:var(--fs-small)}
.soft-cta a{font-weight:var(--fw-bold)}

/* Ergebnis: alle Stufen und Auswertungen */
.result-more{display:grid;gap:var(--space-3);margin-top:var(--space-4)}
.stage-row{display:grid;gap:var(--space-1);padding-block:var(--space-3);border-top:1px solid var(--border-subtle);font-size:var(--fs-small);line-height:1.45}
.stage-row:first-child{border-top:0;padding-top:0}
.stage-row strong{font-family:var(--font-display);font-size:var(--type-body);color:var(--text-headline)}
.card .acc{background:transparent;border-color:var(--border-strong)}
.card .acc__body{font-size:var(--fs-small);line-height:1.5}
.self-next{margin-top:var(--space-6);display:grid;gap:var(--space-3)}

@media (min-width:700px){
  .two{grid-template-columns:repeat(2,minmax(0,1fr))}
  .routine{grid-template-columns:repeat(2,minmax(0,1fr))}
  .steps--wide{grid-template-columns:repeat(2,minmax(0,1fr))}
  .exercise,.result-box,.sheet{padding:var(--space-6)}
}

/* Druck: nur der Plan, dunkle Schrift auf Weiß */
@media print{
  html,body{background:var(--kgl-white);color:var(--text-ink);font-size:11pt}
  .no-print,.chapter-top,.sticky-cta,.site-footer{display:none!important}
  .chapter{padding:0;animation:none}
  .sheet{padding:0;background:none;gap:var(--space-4)}
  .sheet__head,.sheet__sec h2{color:var(--text-ink);border-color:var(--text-ink)}
  .sheet dt{color:var(--text-ink-muted)}
  .sheet dd{color:var(--text-ink)}
  .sheet__open{color:var(--text-ink-muted);text-decoration:none}
  .sheet__sec{break-inside:avoid}
}

/* Wegleiste: immer sichtbar, zeigt Schritt und führt zu allen Schritten */
.path{position:sticky;top:0;z-index:20;background:var(--bg-page);border-bottom:1px solid var(--border-subtle)}
.path[hidden]{display:none}
.path-bar{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:var(--space-1) var(--space-3);padding-block:var(--space-2) var(--space-1)}
.path-bar__home{display:block;width:32px;height:32px;border-radius:var(--radius-sm)}
.path-bar__home img{width:32px;height:32px}
.path-bar__toggle{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:44px;padding:0 var(--space-2);background:transparent;color:var(--text-body);border:1px solid var(--border-subtle);border-radius:var(--radius-md);font:var(--fw-semibold) var(--fs-small)/1.2 var(--font-body);text-align:left;cursor:pointer}
.path-bar__toggle:hover{border-color:var(--border-strong)}
.path-bar__step{flex:none;color:var(--text-headline);font-weight:var(--fw-bold)}
.path-bar__name{flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.path-bar__chev{flex:none;width:18px;height:18px;color:var(--kgl-orange);transition:transform var(--dur-base) var(--ease-out)}
.path.is-open .path-bar__chev{transform:rotate(180deg)}
.path-bar__track{grid-column:1/-1;display:grid;grid-template-columns:repeat(8,1fr);gap:2px}
.path-bar__track i{display:block;height:3px;background:var(--surface-card);border-radius:var(--radius-sm)}
.path-bar__track i.is-done{background:var(--accent-press)}
.path-bar__track i.is-now{background:var(--accent)}
.path-drawer{position:absolute;inset:100% 0 auto 0;max-width:var(--container-narrow);max-height:calc(100vh - 80px);max-height:calc(100svh - 80px);margin-inline:auto;overflow-y:auto;padding:var(--space-4);background:var(--bg-section);border-radius:0 0 var(--radius-md) var(--radius-md);box-shadow:var(--shadow-pop)}
.path-drawer[hidden]{display:none}
.path-drawer__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-3)}
.path-drawer__head strong{font-family:var(--font-display);color:var(--text-headline);font-size:var(--type-h3)}
.path-drawer__head a{font-size:var(--fs-small)}
.path-list{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.path-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:var(--space-3);align-items:center;min-height:48px;padding:var(--space-2);border-radius:var(--radius-md);color:var(--text-body);text-decoration:none;line-height:1.3}
.path-item:hover{background:var(--surface-card);color:var(--text-body)}
.path-item.is-now{background:var(--surface-card);font-weight:var(--fw-bold);box-shadow:inset 0 0 0 1px var(--border-accent)}
.path-item__mark{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:2px solid var(--border-strong);border-radius:50%;font-size:var(--fs-caption);font-weight:var(--fw-bold)}
.path-item__mark.is-done{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}
.path-item__mark svg{width:16px;height:16px}
.path-item--sub{padding-left:var(--space-5)}
.path-item--sub .path-item{min-height:44px;font-size:var(--fs-small)}
.path-back{display:block;padding:var(--space-2) var(--gutter);background:var(--surface-card);color:var(--text-body);font-size:var(--fs-small);font-weight:var(--fw-bold);text-decoration:none;text-align:center;border-top:1px solid var(--border-subtle)}
.path-back[hidden]{display:none}
.path-back:hover{color:var(--text-headline)}

/* Weiter und zurück am Ende jedes Schritts */
.path-foot{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-2);margin-top:var(--space-4)}
.path-foot__row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-1) var(--space-4)}
.path-foot .link-btn{min-height:44px;display:inline-flex;align-items:center;text-align:left}
.check__shortcut{align-self:center;min-height:44px;display:inline-flex;align-items:center}
.check{min-height:calc(100vh - 62px);min-height:calc(100svh - 62px)}
@media print{.path{display:none!important}}

/* Im Selbstcheck reicht ein Fortschrittsbalken, und die Frage bleibt ohne Scrollen sichtbar */
body[data-screen="frage"] .path-bar__track,body[data-screen="check"] .path-bar__track{display:none}
body[data-screen="frage"] .path-bar,body[data-screen="check"] .path-bar{padding-block:var(--space-1)}
body[data-screen="frage"] .check,body[data-screen="check"] .check{min-height:calc(100vh - 53px);min-height:calc(100svh - 53px);padding-block:var(--space-1) var(--space-4)}
body[data-screen="frage"] .check__body{gap:var(--space-4);padding-block:var(--space-4) var(--space-2)}
body[data-screen="frage"] .answers{gap:var(--space-2)}
