:root{--blueprint:#183c46;--draft:#c4e0dc;--tape:#f4cc73;--mist:#89b3b3}.measure-app{max-width:1450px;margin:auto;padding:30px 5% 0}.studio-intro{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin:0 0 30px}.studio-intro h1{font:400 clamp(2rem,3.6vw,3.25rem)/1.14 var(--serif);margin:.35rem 0 0;letter-spacing:-.05em}.studio-intro h1 em{color:var(--rust);font-weight:400}.studio-intro>p{max-width:300px;font-size:1rem;margin:0 0 .25rem}.picker-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.picker-heading h2{font:600 1rem var(--sans);margin:0}.picker-heading>span{font-size:.85rem;color:#626761}.scene-picker{display:flex;gap:9px;overflow:auto;padding-bottom:12px;scroll-snap-type:x proximity}.scene-choice{flex:0 0 134px;border:1px solid #c9c9bc;background:transparent;padding:12px 9px 10px;cursor:pointer;scroll-snap-align:start;color:var(--ink)}.scene-choice svg{height:45px;display:block;width:100%;margin-bottom:7px}.scene-choice span{font-size:.875rem;font-weight:600}.scene-choice[aria-pressed=true]{border-color:var(--rust);background:#efe5d4;box-shadow:inset 0 -3px var(--rust)}.scene-choice:hover{background:#eee9dc}.lesson{margin-top:14px}.lesson-heading{display:flex;justify-content:space-between;gap:18px;align-items:center}.lesson-heading h2{font:400 1.8rem var(--serif);margin:3px 0 16px}.lesson-heading .eyebrow{margin:0;font-size:.75rem}.play-control{border:1px solid #b5b7a9;background:transparent;padding:10px 14px;cursor:pointer;font-size:.9rem}.step-nav{display:flex;gap:0;border-top:1px solid var(--line);padding:12px 0}.step-tab{background:transparent;border:0;border-bottom:3px solid transparent;flex:1;padding:9px 4px;text-align:left;font-size:.875rem;cursor:pointer;white-space:nowrap}.step-tab b{color:#85897f;margin-right:8px;font-weight:400}.step-tab[aria-current=step]{border-bottom-color:var(--rust);font-weight:700}.step-tab[aria-current=step] b{color:var(--rust)}.lesson-workspace{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(280px,.9fr);background:#edeade}.drawing-column{background:var(--blueprint);color:var(--draft);min-width:0}.drawing-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:16px 20px;font-size:.75rem;letter-spacing:.09em;border-bottom:1px solid #507077}.drawing-tools label{font-size:.75rem;letter-spacing:0;display:flex;gap:8px;align-items:center}.drawing-tools select{font-size:.85rem;background:#244b55;color:#f6f3e9;border:1px solid #6a8b90;padding:6px;max-width:145px}.drawing{position:relative;aspect-ratio:760/510;background-image:linear-gradient(#98c7c50b 1px,transparent 1px),linear-gradient(90deg,#98c7c50b 1px,transparent 1px);background-size:22px 22px;overflow:hidden}.drawing>svg{display:block;width:100%;height:100%}.drawing-caption{display:flex;justify-content:space-between;padding:13px 20px;border-top:1px solid #507077;font-size:.75rem;gap:15px}.line-key{display:flex;align-items:center;gap:9px}.line-key i{width:24px;height:2px;background:var(--tape)}.instruction-column{padding:28px 28px 22px;display:flex;flex-direction:column}.step-counter{font:400 .85rem var(--sans);color:var(--rust);letter-spacing:.13em}.instruction-column h3{font:400 clamp(1.6rem,2.5vw,2.3rem)/1.14 var(--serif);letter-spacing:-.035em;margin:17px 0 13px}.instruction-column>p{font-size:1rem;line-height:1.55;margin:0 0 20px}.lesson-nav{display:flex;gap:9px;margin-top:auto;padding-top:24px}.lesson-nav button{border:1px solid var(--ink);background:var(--ink);color:var(--paper);padding:12px;cursor:pointer;font-size:.9rem}.lesson-nav button:first-child{background:transparent;color:var(--ink);min-width:44px}.lesson-nav button:disabled{opacity:.3;cursor:default}.lesson-nav button:last-child{flex:1}.step-feedback{font-size:.9rem;color:#375e55;margin-top:13px}.lesson-foot{display:flex;gap:22px;justify-content:space-between;padding:14px 0;border-bottom:1px solid var(--line);font-size:.9rem}.lesson-foot p{margin:0;max-width:70%}.lesson-foot a{white-space:nowrap;font-weight:600}.visual-reminder{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:50px 0 35px}.visual-reminder>.eyebrow{grid-column:1/-1}.visual-reminder>div{border-top:1px solid var(--line);padding-top:14px}.visual-reminder>div>span{font-size:.8rem;color:var(--rust)}.visual-reminder h2{font:400 1.7rem/1.2 var(--serif);margin:14px 0 0}.visual-reminder>p{grid-column:1/-1;max-width:670px;margin:0;font-size:1rem}.lesson-references{padding:20px 0;border-top:1px solid var(--line);font-size:.9rem}.lesson-references summary{cursor:pointer}.lesson-references>div a{display:block;margin:8px 0}.choice-stack{display:grid;gap:8px}.choice-stack button,.reading-button,.try-button{background:transparent;border:1px solid #afb6a7;text-align:left;padding:12px;color:var(--ink);cursor:pointer;font-size:.95rem}.choice-stack button[aria-pressed=true],.reading-button[aria-pressed=true]{background:#e0e5d9;border-color:#446d60;box-shadow:inset 3px 0 #446d60}.choice-stack button small{display:block;font-size:.8rem;margin-top:3px;color:#646c60}.draft-line{fill:none;stroke:var(--draft);stroke-width:2;stroke-linejoin:round}.draft-muted{fill:none;stroke:#6b9599;stroke-width:1.5;stroke-dasharray:6 6}.draft-label{font:18px var(--sans);fill:var(--draft)}.measure-line{stroke:var(--tape);stroke-width:3;fill:none;stroke-dasharray:1000;stroke-dashoffset:1000;animation:draw-tape .8s ease forwards}.dimension-label{font:500 21px var(--sans);fill:var(--tape)}.ghost-sash{transition:opacity .5s,transform .7s}.revealed .ghost-sash{opacity:.12;transform:translate(45px,22px)}.reveal-frame{transition:opacity .5s}.drawing .focus-plane{stroke:var(--tape);stroke-width:3;fill:#f4cc7308}.moving-tip{animation:tip-in .8s ease both}.hotspot{position:absolute;background:var(--paper);border:2px solid var(--blueprint);color:var(--ink);padding:7px 11px;font-size:.85rem;cursor:pointer;box-shadow:0 2px 8px #0a24254d;transform:translate(-50%,-50%);max-width:45%}.hotspot:before{content:'+';margin-right:6px;color:var(--rust)}.reading-list{display:grid;gap:7px}.reading-button{display:flex;justify-content:space-between;gap:10px}.reading-button strong{white-space:nowrap}.small-note{font-size:.85rem;line-height:1.5;color:#5b655d;margin:12px 0}.range-control label{display:block;font-size:.9rem}.range-control input{width:100%;accent-color:var(--rust);margin:12px 0}.tick-pair{display:flex;gap:10px}.tick-pair button{flex:1}.example-pill{border:1px solid #9bbcba;padding:6px 9px;font-size:12px;color:#bfd6d3;letter-spacing:.08em}.check-answer{font-size:1rem!important;font-weight:600}.inline-link{background:transparent;border:0;text-decoration:underline;cursor:pointer;color:var(--ink);padding:6px 0}.measure-app button:focus-visible,.measure-app select:focus-visible{outline:3px solid var(--rust);outline-offset:3px}.drawing button:focus-visible{outline-color:var(--tape)}.drawing .sliding-sash{animation:slide-sash 2.4s ease-in-out infinite alternate}.drawing .swing-sash{transform-origin:260px 270px;animation:swing-sash 2.4s ease-in-out infinite alternate}.shape-trace{stroke-dasharray:1400;stroke-dashoffset:1400;animation:trace 2.5s linear forwards}@keyframes draw-tape{to{stroke-dashoffset:0}}@keyframes tip-in{from{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes trace{to{stroke-dashoffset:0}}@keyframes slide-sash{to{transform:translateY(-70px)}}@keyframes swing-sash{to{transform:skewY(-8deg) scaleX(.8)}}@media(max-width:1050px){.instruction-column{padding:22px}.drawing-tools{flex-wrap:wrap}.lesson-workspace{grid-template-columns:minmax(0,1.4fr) minmax(260px,1fr)}}@media(max-width:760px){.measure-app{padding-top:22px}.studio-intro{display:block;margin-bottom:22px}.studio-intro>p{margin-top:14px}.studio-intro h1{font-size:2.15rem}.scene-choice{flex-basis:115px}.scene-choice span{font-size:.8rem}.picker-heading>span{display:none}.lesson-heading h2{font-size:1.5rem}.play-control{padding:8px;font-size:.8rem}.lesson-workspace{display:block}.drawing{aspect-ratio:760/550}.drawing-tools{padding:12px;font-size:.7rem}.drawing-tools label{font-size:.7rem}.drawing-caption{padding:10px 12px;font-size:.7rem}.instruction-column{padding:22px}.instruction-column h3{font-size:1.8rem;margin:10px 0}.step-nav{overflow-x:auto;gap:9px}.step-tab{padding:8px 5px;min-width:65px;font-size:.8rem}.step-tab b{margin-right:4px}.lesson-foot{display:block}.lesson-foot p{max-width:none;margin-bottom:10px}.visual-reminder{gap:14px;padding-top:35px}.visual-reminder h2{font-size:1.2rem}.hotspot{font-size:.75rem;padding:5px 7px}.instruction-column>p{margin-bottom:15px}.lesson-nav{padding-top:20px}.drawing .draft-label{font-size:23px}.drawing .dimension-label{font-size:25px}}@media(prefers-reduced-motion:reduce){.measure-app *{animation:none!important;transition:none!important}.measure-line,.shape-trace{stroke-dashoffset:0}}@media print{.measure-app .scene-picker,.play-control,.lesson-nav,.step-nav,.drawing-tools select,.hotspot{display:none}.lesson-workspace{display:block}.drawing-column{print-color-adjust:exact;-webkit-print-color-adjust:exact}.drawing{max-height:430px}.instruction-column{padding:20px 0}.visual-reminder{display:none}.drawing svg{min-width:0}}
.measure-static{fill:none;stroke:var(--tape);stroke-width:2.5;stroke-linejoin:round}.plane-sweep{stroke:#8cbabd;stroke-width:1;stroke-dasharray:5 6}.range-labels{display:flex;justify-content:space-between;font-size:.8rem;color:#5b655d}.step-feedback[data-correct=false]{color:#8d3525}.hotspot[data-answer="0"]{border-color:#f4cc73}.horizontal-sash{animation:slide-horizontal 2.4s ease-in-out infinite alternate}.awning-sash{transform-origin:380px 112px;animation:awning-motion 2.4s ease-in-out infinite alternate}@keyframes slide-horizontal{to{transform:translateX(-85px)}}@keyframes awning-motion{to{transform:skewX(-6deg) scaleY(.87)}}
.contact-leader{stroke:#c4e0dc;stroke-width:1.4;fill:none}.contact-dot{fill:#f4cc73;stroke:#183c46;stroke-width:2}.tick-pair>.choice-stack{display:flex;width:100%;margin-bottom:10px}.tick-pair>.choice-stack>button{flex:1}.hotspot[data-answer="0"]{border-color:var(--blueprint)}

.drawing .sliding-sash,.drawing .horizontal-sash,.drawing .swing-sash,.drawing .awning-sash{animation-iteration-count:1;animation-fill-mode:forwards}
@media(max-width:760px){.drawing .draft-label{font-size:28px}.drawing .dimension-label{font-size:29px}.studio-intro{margin-bottom:18px}.studio-intro>p{font-size:.95rem}.scene-choice{flex-basis:119px}.picker-heading{gap:15px}.picker-heading>span{display:block;font-size:.75rem}.drawing-caption{font-size:.75rem}.hotspot{max-width:32%;font-size:.75rem;line-height:1.25}.step-tab{min-width:72px}.instruction-column{scroll-margin-top:20px}}
.revealed .ghost-sash{animation:reveal-opening .85s ease both}@keyframes reveal-opening{from{opacity:1;transform:translate(0,0)}to{opacity:.12;transform:translate(45px,22px)}}
@media(prefers-reduced-motion:reduce){.measure-app *{animation:none!important;transition:none!important}.measure-line,.shape-trace{stroke-dashoffset:0}}
