body{font-family:ui-monospace,"Cascadia Code","Liberation Mono",monospace}
h1,h2,h3{font-family:Georgia,"Times New Roman",serif}
code{font-family:inherit}
.eyebrow{margin:0 0 5px;font-size:.73rem;font-weight:800;letter-spacing:.13em;color:var(--red)}
.step-heading{display:flex;align-items:start;justify-content:space-between;gap:20px}
.call-meter{flex:none;background:var(--ink);color:#fff;border:2px solid var(--ink);padding:10px 13px;font-weight:800;transform:rotate(1deg)}
.call-tree{overflow-x:auto;margin:22px 0;padding:12px 8px 20px;min-height:132px;background:#fff9e8;border:2px dashed #9f9480}
.tree-list{display:flex;justify-content:center;gap:12px;list-style:none;margin:0;padding:0;min-width:max-content}
.tree-list .tree-list{position:relative;margin-top:22px}
.tree-list .tree-list::before{content:"";position:absolute;top:-14px;left:25%;right:25%;border-top:2px solid var(--ink)}
.tree-node{display:flex;flex-direction:column;align-items:center;min-width:55px;position:relative}
.tree-node>.node-button{width:48px;height:48px;padding:0;border:2px solid var(--ink);border-radius:50%;background:var(--sun);box-shadow:3px 3px 0 var(--ink);cursor:pointer;font-weight:800}
.tree-node>.node-button:hover,.tree-node>.node-button:focus-visible{transform:translate(-2px,-2px);outline:3px solid var(--blue);outline-offset:3px}
.tree-node>.node-button.leaf{background:#d8f0df;cursor:default;box-shadow:none}
.tree-node>.node-button.expanded{background:var(--cream);box-shadow:none}
.tree-node>.node-button.expanded::after{content:"✓";display:block;font-size:.62rem;color:var(--green)}
.tree-node>.node-button:not(.leaf)+.tree-list::after{content:"";position:absolute;top:-22px;left:50%;height:8px;border-left:2px solid var(--ink)}
.button-row{display:flex;flex-wrap:wrap;gap:11px;margin-top:14px}
.quiet{background:transparent;box-shadow:none}
.locked{opacity:.53;filter:grayscale(.55)}
.locked>*{pointer-events:none}
.locked::after{content:"Noch gesperrt · zuerst den Schritt darüber lösen";display:block;margin-top:12px;color:var(--muted);font-size:.76rem}
.print-placement{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.print-placement article{border:2px solid var(--ink);padding:17px;background:#fffdf7}
.print-placement h3{font-size:1.5rem;margin-bottom:6px}
.hint-button{margin-top:12px}
.level-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:18px 0}
.level-strip span{display:flex;flex-direction:column;align-items:center;gap:7px;padding:11px 4px;border:2px solid var(--ink);background:#fff;font-size:1.45rem}
.level-strip b{font-size:.7rem;text-transform:uppercase}
.exam-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.exam-grid label{display:flex;flex-direction:column;gap:8px;font-weight:800}
.short-answer{width:100%;border:2px solid var(--ink);background:#fffdf7;padding:14px;font-size:1.1rem}
.sequence{min-height:86px}
.solution{margin-top:18px;padding:18px;border:3px double var(--ink);background:#d8f0df;line-height:1.65}
.formula{font-size:1.05rem;background:#fff;padding:12px;border-left:5px solid var(--green)}
.source-note{text-align:center;margin-top:24px}
.feedback.show{display:block}
.choice[aria-pressed="true"],.state-btn[aria-pressed="true"]{outline:4px solid var(--blue);outline-offset:3px}
button:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid var(--blue);outline-offset:3px}
@media(max-width:760px){.print-placement,.exam-grid{grid-template-columns:1fr}.step-heading{display:block}.call-meter{display:inline-block;margin-bottom:10px}.level-strip{grid-template-columns:1fr 1fr}.topbar{flex-wrap:wrap}.brand{order:-1;width:100%}}
@media(max-width:460px){.call-tree{margin-left:-12px;margin-right:-12px}.level-strip{grid-template-columns:1fr 1fr}.nav-bottom{flex-direction:column}.nav-bottom a{text-align:center}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
