
  :root{color-scheme:light;--bg:#edf1f5;--paper:#fff;--ink:#152938;--muted:#526574;--line:#d9e2e8;--green:#087f63;--mint:#75efc7;--blue:#245fc5;--sky:#77b9ff;--navy:#102637;--orange:#efb958;--radius:16px}
  *{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}button{touch-action:manipulation}h1,h2,h3,p{margin:0}button,summary{-webkit-tap-highlight-color:transparent}.shell{max-width:1440px;margin:auto;padding:25px 34px 30px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:26px}.brand{display:flex;align-items:center;gap:12px;font-size:14px;font-weight:750;letter-spacing:.12em}.brand-symbol{background:var(--ink);color:var(--mint);border-radius:9px;width:35px;height:35px;display:grid;place-items:center;font-size:25px;line-height:1}.topic{color:var(--muted);font-size:14px}.masthead{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:23px}h1{font-size:clamp(27px,3vw,38px);font-weight:700;line-height:1.15;letter-spacing:-.04em}.intro{color:var(--muted);margin-top:8px}.concept-tags{display:flex;gap:9px;flex-shrink:0}.tag{font-size:14px;border:1px solid var(--line);background:var(--paper);border-radius:99px;padding:7px 12px}.tag b{font-weight:650}.tag.speed{color:var(--green)}.tag.velocity{color:var(--blue)}.layout{display:grid;grid-template-columns:285px minmax(0,1fr);gap:20px;align-items:start}.sidebar{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}.control-section{padding:20px;border-bottom:1px solid var(--line)}.control-section:last-child{border:0}.eyebrow{font-size:12px;text-transform:uppercase;font-weight:750;letter-spacing:.1em;color:var(--muted);margin-bottom:14px}.field{margin-top:21px}.field:first-of-type{margin-top:0}.label-row{display:flex;justify-content:space-between;align-items:baseline;gap:10px;font-size:14px;font-weight:600}.label-row output{font-family:ui-monospace,SFMono-Regular,PhisicosArabic,monospace;font-weight:600;white-space:nowrap}.range-ends{display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}input[type=range]{width:100%;height:24px;accent-color:var(--green);margin:10px 0 2px;cursor:pointer}.hint{font-size:13px;line-height:1.5;color:var(--muted);margin-top:9px}.segmented{display:grid;grid-template-columns:1fr 1fr;background:#edf2f5;padding:4px;border-radius:10px;gap:4px}.segmented button{font-size:14px;font-weight:600;border:0;border-radius:7px;background:transparent;padding:10px 4px;color:var(--muted)}.segmented button[aria-pressed=true]{background:var(--paper);color:var(--ink);box-shadow:0 1px 4px #142e3c15}.secondary{border:1px solid var(--line);background:var(--paper);border-radius:8px;color:var(--ink);padding:9px 13px;font-size:14px;font-weight:600}.secondary:hover{background:#f1f5f7}.direction-button{width:100%;display:flex;align-items:center;justify-content:space-between;margin-top:10px}.check{display:flex;gap:9px;align-items:flex-start;font-size:14px;cursor:pointer;margin-top:13px}.check input{accent-color:var(--green);width:17px;height:17px;margin:3px 0 0}.workspace{min-width:0}.scene{background:var(--navy);border-radius:var(--radius);overflow:hidden;color:#f3f8fc;border:1px solid #203d50}.scene-top{padding:17px 21px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid #284354}.scene-title{font-weight:600;font-size:15px}.scene-subtitle{font-size:12px;color:#a9becd;margin-top:2px}.status{display:flex;align-items:center;gap:7px;font-size:12px;letter-spacing:.05em;text-transform:uppercase;color:#b6c9d5}.status-dot{width:6px;height:6px;border-radius:100%;background:var(--orange)}.status.running .status-dot{background:var(--mint)}.canvas-wrap{position:relative}canvas{display:block;width:100%;height:338px}.canvas-caption{position:absolute;bottom:13px;left:20px;font-size:12px;color:#9fb6c7;pointer-events:none}.instant{position:absolute;top:15px;left:20px;pointer-events:none;color:#acc5d5;font-size:12px;max-width:75%}.instant strong{color:var(--mint);font-size:17px;font-family:ui-monospace,SFMono-Regular,PhisicosArabic,monospace;display:block;margin-top:3px}.legend{display:flex;flex-wrap:wrap;gap:17px;font-size:12px;color:#baceDB;padding:9px 20px 15px}.legend span{display:flex;align-items:center;gap:7px}.line-key{width:20px;height:3px;display:inline-block;background:var(--mint);border-radius:2px}.line-key.blue{background:var(--sky)}.line-key.white{background:#eef7ff}.transport{background:#163043;padding:14px 20px;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.transport button{min-height:40px;font-size:14px;font-weight:600;border:1px solid #416075;color:#e6eff5;border-radius:8px;padding:8px 14px;background:transparent}.transport .primary{background:var(--mint);border-color:var(--mint);color:#10362e;min-width:98px}.transport button:hover:enabled{filter:brightness(1.13)}.transport .reset{margin-inline-start:auto}.metrics{display:grid;grid-template-columns:.75fr 1fr 1.25fr 1fr 1.35fr;gap:0;background:var(--paper);border:1px solid var(--line);border-radius:13px;margin-top:14px;overflow:hidden}.metric{padding:16px 13px;min-width:0;border-inline-end:1px solid var(--line)}.metric:last-child{border:0}.metric-label{font-size:12px;color:var(--muted);font-weight:600;white-space:nowrap}.metric-value{font-family:ui-monospace,SFMono-Regular,PhisicosArabic,monospace;font-size:19px;font-weight:600;white-space:nowrap;margin:7px 0 2px}.metric-value small{font:12px -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--muted)}.metric-equation{font-size:12px;color:var(--muted)}.scalar .metric-value{color:var(--green)}.vector .metric-value{color:var(--blue)}.metric-components{font:12px ui-monospace,SFMono-Regular,PhisicosArabic,monospace;color:var(--muted);margin-top:4px;min-height:18px}.insight{display:flex;align-items:flex-start;gap:12px;border:1px solid #b7d9ce;background:#e4f3ed;border-radius:12px;padding:15px 17px;margin-top:14px;font-size:14px;line-height:1.5}.insight-icon{font-size:20px;color:var(--green);line-height:1.2}.insight strong{display:block;font-size:14px;margin-bottom:2px}.insight p{color:#365a50}.insight.return{background:#dbf7ec;border-color:#70cbae}.challenge{margin-top:19px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:20px}.challenge-top{display:flex;justify-content:space-between;align-items:center;gap:16px}.challenge-title{font-size:17px;letter-spacing:-.02em}.challenge-tag{font-size:12px;color:#876020;background:#fff3d8;border-radius:5px;padding:4px 7px;white-space:nowrap}.challenge-body{display:flex;align-items:center;gap:25px;justify-content:space-between;margin-top:10px}.challenge-copy{font-size:14px;color:var(--muted);max-width:580px}.challenge-steps{display:flex;gap:17px;flex-wrap:wrap;margin-top:13px;font-size:12px;color:var(--muted)}.challenge-steps span.done{color:var(--green);font-weight:650}.challenge-steps span:before{content:'○';margin-inline-end:6px}.challenge-steps span.done:before{content:'✓'}.challenge button{white-space:nowrap}.explain{margin-top:22px;border-top:1px solid #cdd8e0;padding-top:17px;color:var(--muted);font-size:14px}.explain summary{cursor:pointer;color:var(--ink);font-weight:650;width:fit-content}.explain-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:16px 0 0}.explain h3{font-size:15px;color:var(--ink);margin-bottom:7px}.equation{font:17px ui-monospace,SFMono-Regular,PhisicosArabic,monospace;color:var(--ink);margin:8px 0}.footer{margin-top:18px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted)}a{color:var(--blue)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap} [hidden]{display:none!important}
  @media(min-width:1250px){canvas{height:367px}.metric{padding:16px 18px}}
  @media(max-width:1100px){.shell{padding:20px}.layout{grid-template-columns:260px minmax(0,1fr);gap:15px}.concept-tags{display:none}.metrics{grid-template-columns:repeat(6,1fr)}.metric{grid-column:span 2}.metric:nth-child(3){border-inline-end:0}.metric:nth-child(4),.metric:nth-child(5){grid-column:span 3;border-top:1px solid var(--line)}.metric-value{font-size:20px}.challenge-body{align-items:flex-start}.transport{padding:12px}.transport button{padding:8px 10px}}
  @media(max-width:760px){.shell{padding:17px 12px}.topbar{margin-bottom:20px}.topic{font-size:12px}.masthead{margin-bottom:18px}.intro{font-size:14px}.layout{display:flex;flex-direction:column}.workspace{width:100%;order:0}.sidebar{width:100%;order:1;display:grid;grid-template-columns:1fr 1fr}.control-section{padding:17px}.control-section:nth-child(1){border-inline-end:1px solid var(--line)}.control-section:last-child{grid-column:1/-1;display:flex;flex-wrap:wrap;column-gap:20px}.control-section:last-child .eyebrow{width:100%;margin-bottom:0}.control-section:last-child .hint{width:100%}canvas{height:335px}.scene-top{padding:14px 16px}.challenge{padding:16px}.challenge-body{flex-direction:column;gap:14px}.challenge button{width:100%}.explain-grid{grid-template-columns:1fr;gap:17px}.scene-subtitle{max-width:230px}.transport .reset{margin-inline-start:0}.metric{padding:12px}.metric-value{font-size:19px}}
  @media(max-width:400px){.sidebar{display:block}.control-section:nth-child(1){border-inline-end:0}.transport{gap:6px}.transport button{font-size:13px;padding:8px}.transport .primary{min-width:75px}.scene-title{font-size:14px}.scene-subtitle{font-size:12px;max-width:210px}.legend{gap:10px;padding-inline-start:14px}.instant{left:14px}.canvas-caption{left:14px}.metric{padding:11px 8px}.metric-label{font-size:12px}}
  @media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
  .lab-tabs{display:flex;gap:5px;border-bottom:1px solid #cad7e1;margin:0 0 22px}.lab-tabs button{font-size:15px;font-weight:650;min-height:48px;padding:10px 20px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted)}.lab-tabs button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--green)}.lab-tabs button#chase-tab[aria-selected=true]{border-bottom-color:#c99608}.tab-pac{color:#bb8700;font-size:17px;margin-inline-end:7px}.mission-buttons{display:grid;gap:8px}.mission-buttons button{padding:12px;text-align:start;border:1px solid var(--line);border-radius:10px;background:white;color:var(--ink)}.mission-buttons button[aria-pressed=true]{background:#fff7d9;border-color:#d8b642}.mission-buttons b{display:block;font-size:14px}.mission-buttons span{display:block;font-size:12px;color:var(--muted);margin-top:4px}.chase-panel input[type=range],.chase-panel input[type=checkbox]{accent-color:#a87900}.arcade-scene{background:#0b1230;border-color:#27386a}.arcade-scene .scene-top{border-color:#27386a}.arcade-scene .scene-title{letter-spacing:.06em;font-size:14px}.arcade-scene .transport{background:#151e40}.arcade-scene .transport .primary{background:#ffe260;border-color:#ffe260;color:#3c310a}.arcade-score{display:grid;grid-template-columns:repeat(3,1fr);background:#101a3b;border-bottom:1px solid #27386a;padding:10px 20px;gap:15px}.arcade-score>div{display:flex;flex-direction:column;gap:1px}.arcade-score span{font-size:12px;color:#adbed9}.arcade-score strong{font:600 19px ui-monospace,SFMono-Regular,PhisicosArabic,monospace;color:#ffe260}.arcade-score>div:last-child{text-align:end}.chase-live{position:absolute;top:14px;left:20px;right:20px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;pointer-events:none;font-size:12px}.chase-live span{display:flex;flex-direction:column;gap:3px}.chase-live output{color:#d7e6f5;font:12px ui-monospace,SFMono-Regular,PhisicosArabic,monospace}.pac-color{color:#ffe260}.ghost-color{color:#ff9cb4}.line-key.yellow{background:#ffe260}.line-key.pink{background:#ff9cb4}#chase-canvas{height:365px}.chase-measure-label{font-size:12px;font-weight:750;letter-spacing:.055em;color:var(--ink);margin-top:16px;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.chase-measure-label span{font-weight:400;letter-spacing:0;color:var(--muted)}.chase-metrics{margin-top:8px}.chase-insight{background:#fff5d6;border-color:#ddc887}.chase-insight .insight-icon{color:#956d04}.chase-insight p{color:#625221}.chase-insight.return{background:#dbf7ec;border-color:#70cbae}.chase-insight.return p{color:#365a50}.chase-challenge>.challenge-copy{margin-top:8px;max-width:none}.chase-achievements{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:16px}.chase-achievements>span{font-size:18px;color:#647482;border:1px solid var(--line);border-radius:9px;padding:10px 12px}.chase-achievements b{font-size:13px;margin-inline-start:3px}.chase-achievements small{display:block;font-size:12px;line-height:1.4;margin-top:4px}.chase-achievements>span.earned{background:#e4f3ed;border-color:#81bea8;color:#086950}.chase-panel .control-section:last-child .hint{margin-top:13px}
  @media(max-width:1100px){.chase-live{gap:5px;left:14px;right:14px}.chase-live output{font-size:12px}.chase-achievements{grid-template-columns:1fr}.chase-achievements small{display:inline;margin-inline-start:8px}}
  @media(max-width:760px){.lab-tabs{margin-bottom:17px;gap:0}.lab-tabs button{padding:10px 12px;font-size:14px;flex:1}.arcade-score{padding:10px 14px;gap:8px}.arcade-score strong{font-size:17px}.arcade-score span{font-size:12px}#chase-canvas{height:375px}.chase-live{flex-direction:column;gap:6px}.chase-live span{flex-direction:row;flex-wrap:wrap;gap:7px}.arcade-scene .scene-title{font-size:12px;letter-spacing:.025em}.chase-measure-label span{display:none}.chase-achievements small{display:block;margin-inline-start:0}.chase-panel .control-section:last-child{display:block}}
