:root{--teal:#43c6c5;--teal-dark:#2aaeb0;--teal-pale:#e5f8f8;--ink:#353e5b;--ink-soft:#6b7598;--purple:#2f236d;--green:#a8e98e;--coral:#ed7780;--yellow:#ffd166;--page:#dceff1;--white:#fff;--line:#dfe7ec;--panel-shadow:#c7dbe3;color:var(--ink);background:var(--page);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Trebuchet MS,Avenir Next,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{min-width:320px;min-height:100%}body{background:var(--page);margin:0}button,input{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible{outline:4px solid var(--yellow);outline-offset:3px}button:disabled{cursor:not-allowed}h1,h2,p{margin-top:0}.app-shell{background:var(--page);min-height:100vh;padding:clamp(1rem,3vw,2.5rem)}.lesson-stage{width:min(78rem,100%);min-height:calc(100vh - 5rem);margin:0 auto;position:relative;overflow:hidden}.app-header{text-align:center;padding:.2rem 1rem 1.2rem}.app-header h1{letter-spacing:-.035em;margin-bottom:.45rem;font-size:clamp(2rem,5vw,3.4rem);line-height:1.05}.app-header p{color:var(--ink-soft);margin-bottom:0;font-size:clamp(.95rem,2vw,1.08rem);font-weight:700}.number-entry,.alignment-workspace{width:min(69rem,100%);box-shadow:0 8px 0 var(--panel-shadow);background:#fffffff7;border:1px solid #fffffff2;border-radius:1.6rem;margin-inline:auto}.number-entry{justify-content:space-between;align-items:center;gap:1.5rem;padding:1.15rem 1.8rem;display:flex}.number-entry h2,.workspace-heading h2{margin-bottom:0;font-size:clamp(1.35rem,3vw,1.75rem);line-height:1.15}.step-label{color:var(--teal-dark);letter-spacing:.09em;text-transform:uppercase;margin-bottom:.35rem;font-size:.76rem;font-weight:900;display:block}.entry-equation{justify-content:flex-end;align-items:end;gap:.65rem;display:flex}.entry-equation label{color:var(--ink-soft);letter-spacing:.07em;text-transform:uppercase;gap:.3rem;font-size:.7rem;font-weight:900;display:grid}.entry-equation input{width:8rem;min-height:3.4rem;color:var(--purple);background:var(--white);text-align:center;border:2px solid #d9d9e7;border-radius:.85rem;padding:.45rem .7rem;font-size:1.25rem;font-weight:900}.entry-equation .exponent-entry input{border-radius:999px;width:4.4rem}.entry-times{color:var(--ink);padding-bottom:.83rem;font-size:1.35rem;font-weight:900}.primary-button{min-height:3.4rem;color:var(--white);background:var(--teal);box-shadow:0 5px 0 var(--teal-dark);border:0;border-radius:.85rem;padding:.65rem 1.15rem;font-weight:900}.primary-button:hover{transform:translateY(-1px)}.primary-button:active{box-shadow:0 2px 0 var(--teal-dark);transform:translateY(3px)}.entry-message{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.entry-message.error{clip:auto;color:#c64c55;width:auto;height:auto;margin:.7rem 0 0;font-size:.82rem;font-weight:800;position:static;overflow:visible}.alignment-workspace{min-height:19rem;margin-top:1rem;padding:clamp(1.15rem,2.5vw,1.8rem)}.workspace-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.alignment-badge{min-height:2.1rem;color:var(--ink-soft);background:#eef1f4;border:0;border-radius:999px;flex:none;padding:.45rem .8rem;font-size:.76rem;font-weight:900}.alignment-badge.complete{color:#34772a;background:#e5f7dd}.reset-position:disabled{opacity:.5}.alignment-stack{width:min(52rem,100% - 1rem);margin:2.1rem auto 0}.slider-row{grid-template-columns:2rem minmax(0,1fr);align-items:center;min-height:7.7rem;display:grid}.row-operation{color:var(--purple);align-self:end;padding-bottom:1.65rem;font-size:2.1rem;font-weight:900}.notation-rail{height:7rem;margin:0 4rem;position:relative}.rail-line{background:repeating-linear-gradient(90deg,#0000 0 calc(25% - 1px),#353e5b33 calc(25% - 1px) calc(25% + 1px),#0000 calc(25% + 1px) 25%),#dce8ec;border-radius:999px;height:.55rem;position:absolute;top:3.15rem;left:0;right:0}.moving-number{z-index:4;border:2px solid var(--purple);background:var(--white);touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;border-radius:1rem;place-items:center;min-width:8rem;min-height:4.45rem;padding:.75rem .85rem;display:grid;position:absolute;top:.7rem;transform:translate(-50%);box-shadow:0 6px #2f236d33}.moving-number.dragging{cursor:grabbing}.exponent-slider{z-index:3;opacity:.001;cursor:grab;direction:rtl;width:100%;height:4.4rem;margin:0;position:absolute;inset:1.1rem 0 auto}.exponent-slider:active{cursor:grabbing}.rail-end{color:var(--ink-soft);font-size:.78rem;font-weight:800;position:absolute;top:5rem}.rail-left{left:0;transform:translate(-50%)}.rail-right{right:0;transform:translate(50%)}.scientific-number{white-space:nowrap;color:var(--ink);font-size:clamp(1.25rem,3.4vw,2rem);font-weight:900}.scientific-number sup{margin-left:.05em;font-size:.62em;line-height:0;position:relative;top:-.3em}.times-symbol{color:var(--purple)}.equivalent-value{color:var(--ink-soft);justify-content:center;align-items:center;gap:1.2rem;margin:.2rem auto 0;display:flex}.equivalent-value .scientific-number{font-size:1rem}.equivalent-value>span:not(.scientific-number){font-weight:900}@media (max-width:760px){.number-entry{display:block}.entry-equation{justify-content:flex-start;margin-top:1rem}}@media (max-width:660px){.app-shell{padding:.9rem .65rem 1.5rem}.lesson-stage{min-height:calc(100vh - 2rem)}.app-header{padding-bottom:.75rem}.workspace-heading{flex-direction:column;gap:.65rem}.number-entry,.alignment-workspace{border-radius:1.25rem}.notation-rail{margin:0 3.2rem}.moving-number{min-width:6.8rem;padding-inline:.45rem}.scientific-number{font-size:1.22rem}}@media (max-width:470px){.entry-equation{grid-template-columns:minmax(0,1fr) auto 4.4rem;display:grid}.entry-equation input{width:100%}.primary-button{grid-column:1/-1}.equivalent-value{flex-wrap:wrap;gap:.7rem}}@media (max-width:390px){.number-entry,.alignment-workspace{padding-inline:.7rem}.notation-rail{margin-inline:2.6rem}.row-operation{width:1.4rem}.slider-row{grid-template-columns:1.4rem minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}
.equivalent-value{display:none}
