:root{color-scheme:light;font-family:Inter,ui-rounded,"SF Pro Rounded",system-ui,sans-serif;background:#f4f7fb;color:#172033}*{box-sizing:border-box}html,body{min-width:0;min-height:100%;margin:0;overflow-x:hidden}body{background:radial-gradient(circle at 8% 7%,rgba(59,130,246,.17),transparent 32rem),radial-gradient(circle at 93% 42%,rgba(16,185,129,.14),transparent 28rem),#f4f7fb}button,input{font:inherit}.equivalence-shell{width:min(1120px,calc(100% - 2rem));margin:0 auto;padding:1.25rem 0 2rem}.equivalence-header{display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;margin:1rem 0 1.1rem}.eyebrow,.subtitle,.local-note{margin:0}.eyebrow{color:#1d4ed8;font-size:.84rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}h1{max-width:900px;margin:.4rem 0 .35rem;font-size:clamp(1.65rem,3.5vw,3.15rem);line-height:1.06}.subtitle{color:#5b6475;font-size:clamp(1rem,1.7vw,1.3rem);font-weight:750}.local-note{flex:none;padding:.55rem .75rem;border:1px solid rgba(15,118,110,.22);border-radius:999px;background:rgba(255,255,255,.8);color:#0f766e;font-size:.82rem;font-weight:750;white-space:nowrap}.equivalence-board{min-height:470px;display:grid;grid-template-rows:auto 1fr;align-items:center;justify-items:center;gap:.8rem;padding:clamp(1rem,3vw,2rem);border:1px solid rgba(86,97,118,.17);border-radius:28px;background:rgba(255,255,255,.94);box-shadow:0 22px 60px rgba(44,54,83,.12);overflow:hidden}.hero-equation{display:flex;align-items:center;justify-content:center;gap:clamp(.8rem,3vw,2rem);margin:0;color:#1e3a8a;font-size:clamp(2rem,6vw,4.4rem);font-weight:920;letter-spacing:-.04em}.scale-stage{position:relative;width:min(100%,820px);min-height:205px;display:grid;align-items:end;padding-bottom:1rem}.scale-beam{position:relative;display:grid;grid-template-columns:1fr 5rem 1fr;align-items:start;width:100%;transform:rotate(var(--balance-tilt));transform-origin:center;will-change:transform}.scale-beam::before{content:"";position:absolute;left:7%;right:7%;top:1.4rem;height:.8rem;border-radius:999px;background:#334155;box-shadow:0 .25rem .5rem rgba(15,23,42,.2)}.scale-pan{position:relative;z-index:1;display:grid;justify-items:center;gap:.25rem;margin-top:2.1rem;padding:.8rem;border:3px solid #2563eb;border-radius:18px 18px 28px 28px;background:#eff6ff;box-shadow:0 .6rem 1.2rem rgba(37,99,235,.12)}.scale-pan strong{font-size:clamp(1.8rem,4vw,3rem)}.equation-side{color:#475569;font-size:.78rem;font-weight:820;text-transform:uppercase;letter-spacing:.08em}.scale-pivot{position:relative;z-index:2;width:0;height:0;justify-self:center;margin-top:1.45rem;border-left:2.25rem solid transparent;border-right:2.25rem solid transparent;border-bottom:7rem solid #64748b}.scale-base{width:10rem;height:1rem;justify-self:center;border-radius:999px;background:#475569}.operation-card,.explore-card,.conclusion-card,.group-card{width:min(100%,720px);border-radius:17px}.operation-card{display:flex;justify-content:space-between;gap:1rem;padding:.75rem 1rem}.operation-card strong{font-size:1.08rem}.warning-card{background:#fee2e2;color:#991b1b}.restore-card{background:#f1f5f9;color:#334155}.equal-card{background:#dcfce7;color:#166534}.group-card{display:grid;grid-template-columns:repeat(3,1fr) auto repeat(3,1fr);gap:.45rem;padding:.65rem;background:#eff6ff}.group-card span{display:grid;place-items:center;min-height:2.5rem;border-radius:10px;background:#2563eb;color:white;font-weight:900}.group-card b{align-self:center;color:#64748b}.explore-card{display:grid;gap:.35rem;padding:.75rem 1rem;background:#f8fafc}.explore-card label{display:flex;justify-content:space-between;gap:1rem;font-weight:760}.explore-card input{width:100%;min-height:44px;accent-color:#2563eb}.range-scale{display:flex;justify-content:space-between;color:#64748b}.conclusion-card{padding:.85rem 1rem;background:#ede9fe;color:#4c1d95;text-align:center}.conclusion-card h2,.conclusion-card p{margin:0}.conclusion-card h2{margin-bottom:.25rem;font-size:1rem;text-transform:uppercase;letter-spacing:.12em}.conclusion-card p{font-size:clamp(1.05rem,2.2vw,1.4rem);font-weight:820}.equivalence-insight{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:1rem;margin-top:1rem;padding:.85rem 1rem;border:1px solid rgba(86,97,118,.16);border-radius:20px;background:rgba(255,255,255,.88)}.insight-text{margin:0;color:#334155;font-weight:760}.equivalence-controls{display:flex;gap:.6rem}.primary-button,.reset-button{min-height:48px;padding:.7rem 1rem;border:0;border-radius:14px;cursor:pointer;font-weight:820}.primary-button{background:#2563eb;color:#fff}.reset-button{background:#e2e8f0;color:#334155}.primary-button:disabled{cursor:wait;opacity:.48}button:focus-visible,input:focus-visible,a:focus-visible{outline:4px solid rgba(37,99,235,.25);outline-offset:3px}[hidden]{display:none!important}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media (max-width: 640px){.equivalence-shell{width:min(100% - 1rem,1120px);padding-top:.7rem}.equivalence-header{display:grid;gap:.7rem}.local-note{justify-self:start}.equivalence-board{min-height:500px;border-radius:20px}.hero-equation{gap:.55rem}.scale-beam{grid-template-columns:1fr 3.7rem 1fr}.scale-pivot{border-left-width:1.7rem;border-right-width:1.7rem}.operation-card{display:grid;gap:.25rem}.equivalence-insight{grid-template-columns:1fr}.equivalence-controls{width:100%}.equivalence-controls button{flex:1}}
@media (max-width: 360px){.equivalence-board{min-height:520px;padding:.75rem}.scale-pan{padding:.55rem}.group-card{gap:.25rem;padding:.45rem}.equivalence-controls{display:grid}}
@media (orientation: landscape) and (max-height: 820px){.equivalence-shell{padding-top:.55rem}.equivalence-header{margin-block:.55rem .7rem}.equivalence-board{min-height:350px;padding:.75rem 1rem}.scale-stage{min-height:155px}.scale-pivot{border-bottom-width:5rem}.scale-pan{margin-top:1.8rem;padding:.45rem}.operation-card{padding:.55rem .8rem}}
@media (min-width: 1500px){.equivalence-shell{width:min(1280px,calc(100% - 4rem))}.equivalence-board{min-height:540px}.scale-stage{width:min(100%,940px)}}
@media (prefers-reduced-motion: reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important}}
