:root{font-family:system-ui,-apple-system,'Malgun Gothic',sans-serif;color:#203b2c;background:#f7f8f1;line-height:1.6}*{box-sizing:border-box}body{margin:0}header,footer{padding:1rem max(1.25rem,calc((100% - 1100px)/2));display:flex;justify-content:space-between;gap:1rem}header{border-bottom:1px solid #c8d5c8;font-weight:700}a{color:#254d38}main{max-width:1100px;margin:auto;padding:3rem 1.25rem}h1{font-size:clamp(2rem,5vw,3.4rem);line-height:1.17;margin:.3rem 0 1rem}h2{font-size:1.35rem;margin-top:0}p{margin:.7rem 0}.eyebrow{color:#506d59;font-weight:700;letter-spacing:.04em}.lead{font-size:1.2rem;max-width:32rem}.intro-grid,.layout{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}.illustration{width:100%;max-width:420px}.heading{display:flex;justify-content:space-between;gap:1rem;align-items:start}.card{background:#fff;border:1px solid #c8d5c8;border-radius:20px;padding:1.5rem;box-shadow:0 8px 24px #263e2a0c}.result{max-width:680px;margin:auto}.equation{font-size:clamp(1.45rem,3vw,2rem);font-weight:700;background:#eef4ec;padding:1rem;border-radius:12px;overflow-wrap:anywhere}.hint{color:#455c4c}button,summary{font:inherit}button{min-height:48px;min-width:48px;border:1px solid #526c59;border-radius:11px;background:#fff;color:#203b2c;padding:.65rem .9rem;font-weight:700;cursor:pointer}button:hover{background:#e8f0e7}button:focus-visible,summary:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #b35421;outline-offset:3px}.primary{background:#305c43;color:white;border-color:#305c43}.primary:hover{background:#204a33}.symbols,.numbers,.actions{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0}.symbols button[aria-pressed=true]{background:#dbead7;box-shadow:inset 0 0 0 2px #305c43}.selected{font-weight:700}.numbers button{min-width:52px}.actions button{flex:0 1 auto}button:disabled{cursor:not-allowed;opacity:.65}details{border-top:1px solid #c8d5c8;margin-top:1rem;padding-top:1rem}summary{cursor:pointer;min-height:44px;font-weight:700;color:#305c43}dialog{max-width:min(32rem,calc(100% - 2rem));border:1px solid #78917c;border-radius:18px;padding:1.5rem;color:#203b2c}dialog::backdrop{background:#142c1eb3}[hidden]{display:none!important}footer{font-size:.9rem;color:#455c4c}@media(max-width:700px){main{padding-top:2rem}.intro-grid,.layout{grid-template-columns:1fr}.illustration{max-width:280px;grid-row:1}.heading{flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
