:root{font-family:system-ui,sans-serif;color:#203b32;background:#f5f3eb;line-height:1.55}*{box-sizing:border-box}body{margin:0}header{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1rem 5%;background:#e0e9dd}a{display:inline-flex;align-items:center;min-height:44px;color:#174f74;font-weight:700}main{max-width:1000px;margin:auto;padding:1.2rem}#intro{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:1rem}#intro svg{width:100%;max-width:350px}h1{font-size:clamp(1.8rem,4vw,2.5rem);line-height:1.25}h2{font-size:1.25rem}.eyebrow{color:#516a55;font-weight:700}.heading,.actions{display:flex;flex-wrap:wrap;align-items:center;gap:.7rem}.heading{justify-content:space-between}.card{background:#fff;border:1px solid #c4d0bf;border-radius:18px;padding:1rem;margin:1rem 0}.controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.counter{border:1px solid #a5b9a9;border-radius:12px;padding:.7rem}.counter h3{margin:.2rem 0}.counter output{display:inline-block;min-width:3em;text-align:center;font-size:1.2rem;font-weight:700}button{font:inherit;font-weight:650;color:#203b32;background:#edf3eb;border:2px solid #55705f;border-radius:10px;padding:.55rem .8rem;min-width:44px;min-height:44px;cursor:pointer}button:disabled{opacity:.58;cursor:default}.primary{background:#2b5b46;color:white;border-color:#2b5b46}:focus-visible{outline:3px solid #ad4e22;outline-offset:3px}dialog{max-width:min(90vw,480px);border:2px solid #55705f;border-radius:16px;padding:1.4rem;color:#203b32}dialog::backdrop{background:#10251ab3}footer{padding:2rem 5%;color:#42574a}[hidden]{display:none!important}@media(max-width:650px){#intro,.controls{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
#redo{min-height:48px}#ladder-host{margin:0 auto;max-width:1000px;padding:0 1.2rem}