body{margin:0;background:var(--paper);color:var(--ink);font:1.1rem system-ui}main{max-width:760px;margin:auto;padding:16px}a{color:var(--ink);display:inline-flex;align-items:center;min-height:48px}h1{font-size:clamp(1.6rem,5vw,2.2rem);margin:8px 0}h2{font-size:1.2rem;margin-bottom:6px}p{margin:8px 0 14px}select,button{font:inherit;min-height:56px;min-width:56px}select{background:var(--paper);color:var(--ink);max-width:100%;margin:6px}button{touch-action:manipulation}button[aria-pressed=true]{outline:3px solid var(--focus);background:var(--picked)}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.mat{background:var(--sage);border:2px solid var(--picked-edge);border-radius:28px;margin-top:12px;height:300px;display:grid;place-items:center;background-image:radial-gradient(ellipse at center,var(--glow),transparent 70%)}#figure{width:100%;height:100%;overflow:visible}#result{min-height:3em;font-weight:700;margin-top:12px}.actions,#widths,#found{display:flex;flex-wrap:wrap;gap:10px;margin:12px 0}.actions button{flex:1}#found button{min-width:70px}#again{margin-top:10px}@media(max-width:360px){main{padding:12px}.mat{height:260px}.actions{gap:6px}}@media(prefers-reduced-motion:no-preference){#figure .body{animation:pose .3s ease-out}@keyframes pose{from{opacity:.65;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}}
.mat{min-width:0;overflow:hidden}.mat #figure{display:block;min-width:0;min-height:0;max-width:100%;max-height:100%;overflow:hidden}button{border:1px solid var(--edge);border-bottom:3px solid var(--edge-dark);border-radius:14px;padding:10px 14px;background:var(--paper);color:var(--ink);font-weight:700}button:disabled{opacity:.55}button:active{transform:translateY(1px)}
.entry{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0}.entry input{box-sizing:border-box;min-height:56px;width:150px;min-width:0;border:2px solid var(--edge);border-radius:12px;background:var(--paper);color:var(--ink);font:inherit;padding:8px}#numberHint,#scaleNote{font-size:.95rem}#numberError:empty,#widthError:empty,#scaleNote:empty{display:none}#numberError,#widthError{font-weight:700}#found button{overflow-wrap:anywhere}#result,#found{overflow-wrap:anywhere}
