/* Wonderworks: presentation and optional discoveries, independent of the math pack. */
:root{--night:#101831;--gold:#ffd087;--neon:#8af4dc}body{background:radial-gradient(ellipse at 80% 25%,#233653 0,transparent 45%),linear-gradient(#101831,#141e33 70%,#111a2c);color:#eef4fa}header{max-width:1560px;border-color:#ffffff12;padding:21px 32px}.brandmark{background:linear-gradient(140deg,#ffe1a2,#ca9861);color:#172840;box-shadow:0 4px 25px #f4ba5b18}.brand small{color:#a9c4d0}.header-actions button{color:#d5e4ef}.header-actions button:hover{background:#ffffff0d}main{max-width:1560px;padding:0 32px}.world-hero{position:relative;min-height:470px;margin:10px 0 35px;border:1px solid #ffdc9e42;border-radius:24px;overflow:hidden;isolation:isolate;padding:50px 50px 38px;box-shadow:0 18px 70px #0005}.world-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 53%;z-index:-3}.hero-shade{position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,#0c1635e8 0%,#0c1635b5 30%,#0c163515 65%),linear-gradient(0deg,#0c16359c,transparent 40%)}.world-hero .hero-copy{align-self:flex-start;max-width:540px}.hero-copy>.eyebrow{color:#b8cbed;letter-spacing:2.4px;font-size:9px}.world-hero h1{font-size:clamp(62px,6.1vw,88px);line-height:.97;letter-spacing:-4px;margin:24px 0 20px;text-shadow:0 3px 40px #071631}.world-hero h1 em{color:#ffdc9b;background:linear-gradient(#fff0bc,#e9ae68);background-clip:text;-webkit-text-fill-color:transparent}.world-hero .hero-copy>p:not(.eyebrow){color:#d2dfef;font-size:15px;line-height:1.6}.hero-cta{background:linear-gradient(110deg,#ffe0a4,#e7ad67);color:#273347;border:1px solid #ffdc9b;padding:14px 21px;min-height:50px;font-size:12px;box-shadow:0 5px 25px #d5a26340}.hero-cta:hover{background:#ffe4b3}.hero-cta span{margin-left:28px;font-size:19px}.hero-chips{display:flex;gap:18px;margin-top:24px;font:8px ui-monospace,monospace;letter-spacing:1px;color:#c0cce2}.world-hero .passport{align-self:flex-end;width:230px;background:#101f35cc;border:1px solid #d6e6ef55;color:#fff4d4;backdrop-filter:blur(16px);transform:none;box-shadow:0 8px 30px #0005;padding:20px;margin-bottom:8px}.world-hero .passport .eyebrow{color:#c5dbd8;font-size:8px;letter-spacing:1.4px}.world-hero .passport strong{font-size:37px;color:#ffdf9e}.world-hero .passport strong small{color:#ffdf9e}.world-hero .passport p{color:#d6e3ea!important}.world-hero .passport>small{color:#8bf3d6;font-size:10px;letter-spacing:.5px}.world-hero progress{accent-color:#79dfc0}.world-caption{position:absolute;right:50px;top:33px;color:#e4e0d0;font:9px ui-monospace,monospace;letter-spacing:2px;text-shadow:0 1px 10px #000}.world-caption span{display:block;font:italic 14px Georgia,serif;margin-top:8px;letter-spacing:0;text-align:right}.chapter-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.chapter-heading .eyebrow{color:#a4b8d0;font-size:8px;margin-bottom:6px}.chapter-heading h2{font-size:25px;color:#ecf3ff;margin:0}.chapter-heading button{border-color:#52697d;background:#1d3047;color:#b6f6e0;font-size:11px}#stations{margin-top:20px;gap:12px}#stations button{position:relative;border:1px solid #364b67;color:#b9cade;background:linear-gradient(130deg,#24364c,#19263e);min-height:76px;overflow:hidden;padding:14px;transition:transform .2s,border-color .2s}#stations button:before{content:'';position:absolute;inset:0;opacity:0;pointer-events:none;background:radial-gradient(ellipse at 10% 80%,var(--station-colour),transparent 80%);transition:opacity .2s}#stations button.completed:before{opacity:.15}#stations button:hover:not(:disabled){transform:translateY(-3px);border-color:var(--station-colour)}#stations button[aria-current=true]{background:linear-gradient(130deg,#39536a,#26384f);border-color:var(--station-colour);box-shadow:0 0 26px color-mix(in srgb,var(--station-colour) 14%,transparent);color:#fff7e6}#stations button .station-icon{color:var(--station-colour);font-size:28px;text-shadow:0 0 20px color-mix(in srgb,var(--station-colour) 55%,transparent)}#stations button:disabled{opacity:.5}#stations small{color:#b7cbd8}.workbench{grid-template-columns:215px minmax(0,1fr) 300px;gap:18px;margin-top:26px}.order-card,.control-card{color:#263e46;background:linear-gradient(150deg,#fffdf4,#f4f1e8);border:1px solid #d6d9cd;box-shadow:0 15px 35px #0002}.order-card{border-top:4px solid var(--accent)}.order-card .target strong{color:#92562c}.factory-card{overflow:hidden;background:#f8faf4;color:#263e46;border:1px solid #617485;box-shadow:0 12px 45px #0003}.section-heading{background:#17283f;color:#e8f0fa;border-bottom:1px solid #ffffff12;padding:19px 22px}.section-heading .eyebrow{color:#a4c4d4}.status-pill{background:#243d4e;color:#b2efd9;border-color:#578679}.stage-wrap{position:relative;background:#0e1b30;overflow:hidden}#factory-scene{background:transparent;border:0}#factory-scene svg{display:block}.stage-controls{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 16px 12px;border-top:1px solid #ffffff0e;color:#b0c7dc}.stage-controls>span{font:7px ui-monospace,monospace;letter-spacing:1px}#theme-buttons{display:flex;gap:5px}#theme-buttons button,#sound-toggle{background:#213149;border:1px solid #4e627c;color:#d9e7f1;min-width:44px;min-height:44px;padding:6px;font-size:16px}#theme-buttons button[aria-pressed=true]{border-color:#ffd690;color:#ffe1a6;background:#3c4051}#sound-toggle{font-size:10px;min-width:70px;padding:8px}.pip-message{display:flex;align-items:center;gap:12px;background:#e7ece7;padding:13px 20px;border-bottom:1px solid #ccd8d0}.pip-face{flex-shrink:0;background:#1c3547;border:3px solid #bcdae0;color:#87f7dc;border-radius:12px;font:16px/1.6 ui-monospace,monospace;padding:3px 6px;box-shadow:0 3px 0 #b4bfc2}.pip-message p{margin:0;font-size:11px;color:#3c5d61}.machine-readout strong{font-variant-numeric:tabular-nums;font-size:35px;color:#264b59}.formula{background:linear-gradient(130deg,#22394c,#2c4e61);border:1px solid #4e6d7b;color:#ffe2aa;box-shadow:inset 0 1px 0 #ffffff22}.primary{background:linear-gradient(100deg,#ba542d,#d57943);box-shadow:0 4px 0 #863c24,0 9px 20px #b7633020;transition:transform .12s}.primary:hover{background:linear-gradient(100deg,#ae4927,#c46935);transform:translateY(-1px)}.primary:active{transform:translateY(2px);box-shadow:0 1px 0 #863c24}.secondary{background:linear-gradient(110deg,#274b56,#316c6b);box-shadow:0 4px 0 #1a383e}.meter-track{height:10px}#meter{background:linear-gradient(90deg,#3a8690,#6cbaa0)}#travel{background:#273d50;color:#ecf6ff;flex-wrap:wrap;font-size:12px;border-block:1px solid #526479}#travel button{background:#40576b;color:#fff2d1;border-color:#778996}.packing .gear{animation:gear-turn 4s linear infinite}.packing .flow-line{animation:flow .7s linear infinite}.packing .press-head{animation:press .8s ease-in-out infinite}.packing .clock-hand{animation:gear-turn 1.5s linear infinite}.packing .candy{animation:candy-pop .7s ease-in-out infinite;animation-delay:calc(var(--i)*.06s)}.packing .ribbon-bow{animation:bow 1s ease-in-out infinite;transform-origin:395px 210px}.packing-paused *{animation-play-state:paused!important}.robot-eyes{animation:blink 5s ease-in-out 2;transform-box:fill-box;transform-origin:center}#confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:4}#confetti i{position:absolute;left:50%;top:48%;width:7px;height:12px;background:var(--c);border-radius:2px;animation:confetti-flight 1.6s cubic-bezier(.12,.5,.45,1) forwards;animation-delay:var(--delay)}#reward-toast{position:absolute;left:50%;top:24px;transform:translateX(-50%);width:max-content;max-width:90%;text-align:center;padding:12px 20px;background:#f9e5b7;color:#43351f;border:2px solid #fff3d1;border-radius:15px;font-weight:850;font-size:16px;box-shadow:0 10px 50px #0006;z-index:5;animation:reward-in .35s ease-out}.discovery-hub{border:1px solid #45647a;border-radius:24px;margin:35px 0;background:radial-gradient(ellipse at 100% 10%,#24495d70,transparent 60%),#182b40;padding:30px}.discovery-hub>.eyebrow,.discovery-hub .eyebrow{color:#b9c8da;font-size:8px}.discovery-hub h2{color:#ffe3a6;font-size:32px}.discovery-hub p:not(.eyebrow){font-size:13px;max-width:650px;color:#b3c7d9}#discovery-cards{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin-top:23px}#discovery-cards button{background:#22394f;border:1px solid #49637c;padding:17px 12px;color:#f0e3c9;min-height:115px;text-align:left;font-size:12px}#discovery-cards button>span{display:block;color:#7be8c2;font-size:24px;margin-bottom:12px}#discovery-cards small{display:block;color:#b1c7d7;font-size:10px;margin-top:8px}#discovery-cards button.earned{border-color:#c9a267;background:linear-gradient(120deg,#58483770,#243b4d)}#discovery-cards button:disabled{opacity:.43}#completion{background:linear-gradient(90deg,#111c35e8,#142a3bd9),url('assets/factory-world-v2.jpg') center 60%/cover;border:1px solid #c2a46f;box-shadow:inset 0 0 50px #ffdca010}#completion h2{color:#ffe3a1;font-size:46px}#badges span{background:#ffffff09;border-color:#baa269;color:#f7dfb1}.save-line{color:#b6c6d9}.save-line button{color:#dce7f5}footer{border-color:#ffffff1c;color:#96adc2}.notice{color:#51412b}dialog{box-shadow:0 25px 120px #0009;border-color:#b5bdc7}dialog::backdrop{background:#070f20cc;backdrop-filter:blur(8px)}#welcome{padding:0;max-width:610px;overflow:auto}.welcome-art{height:170px;background:linear-gradient(0deg,#f8f4eb,transparent 30%),url('assets/factory-world-v2.jpg') center 55%/cover}#welcome-form{padding:0 36px 32px}#welcome-form>.brandmark{margin-top:-25px;position:relative}#welcome-form h2{font-size:35px}.comparison{display:flex;align-items:center;gap:14px;padding:20px;background:#e3ebe3;border-radius:14px;margin:20px 0}.comparison>div{flex:1;min-width:0}.comparison span:not(.comparison-arrow){font:8px ui-monospace,monospace;letter-spacing:1px;display:block}.comparison strong{font-size:32px;display:block;color:#234f58;margin:10px 0;overflow-wrap:anywhere}.comparison small{display:block;font-size:11px}.comparison-arrow{color:#6d9594;font-size:25px}#discovery-inputs{display:flex;gap:16px;margin-bottom:20px}#discovery-inputs label{flex:1;margin:0}#discovery-inputs select{width:100%;height:48px;border-radius:9px;border:1px solid #afc1b7;background:white;font:700 18px ui-monospace,monospace;color:#234854;margin-top:7px;padding:8px}.reduce-motion *, .reduce-motion *:before,.reduce-motion *:after{animation:none!important;transition:none!important}.reduce-motion #confetti{display:none}@keyframes gear-turn{to{transform:rotate(360deg)}}@keyframes flow{to{stroke-dashoffset:-48}}@keyframes press{50%{transform:translateY(20px)}}@keyframes candy-pop{50%{transform:translateY(-7px)}}@keyframes bow{50%{opacity:.6}}@keyframes blink{0%,40%,44%,100%{transform:scaleY(1)}42%{transform:scaleY(.15)}}@keyframes confetti-flight{from{transform:translate(0,0) rotate(0);opacity:1}to{transform:translate(var(--dx),var(--dy)) rotate(var(--spin));opacity:0}}@keyframes reward-in{from{opacity:0;margin-top:10px}to{opacity:1;margin-top:0}}@media(max-width:1250px){.workbench{grid-template-columns:190px minmax(0,1fr) 280px;gap:14px}.order-card{padding:17px}.control-card{padding:20px}.stage-controls>span{display:none}.world-hero{padding:40px}.world-hero h1{font-size:72px}}@media(max-width:1120px){.workbench{grid-template-columns:minmax(0,1fr) 300px}.order-card{display:grid;grid-column:1/-1}.world-hero{min-height:440px;padding:32px}.world-hero .passport{width:195px}.world-hero h1{font-size:68px}#discovery-cards{grid-template-columns:repeat(3,1fr)}#stations{gap:7px}#stations button{padding:10px}}@media(max-width:720px){header{padding:16px}main{padding:0 12px}.world-hero{padding:27px 22px 18px;min-height:530px;margin:0 0 25px;border-radius:19px;display:flex;flex-direction:column;align-items:stretch;gap:24px}.world-art{object-position:60% center}.hero-shade{background:linear-gradient(90deg,#09132dc9,#0b183839),linear-gradient(0deg,#0b1836ee,transparent 60%)}.world-hero h1{font-size:59px;letter-spacing:-3px;margin:22px 0 18px}.hero-copy>.eyebrow{font-size:7px;max-width:230px;letter-spacing:1.5px}.world-hero .hero-copy>p:not(.eyebrow){font-size:13px;color:#e3e9fa}.hero-cta{font-size:11px;padding:11px 15px;min-height:46px}.hero-chips{gap:12px;font-size:7px;margin-top:22px}.world-hero .passport{width:100%;padding:14px;align-self:stretch;margin:0;backdrop-filter:blur(8px)}.world-hero .passport strong{font-size:30px}.world-hero .passport .eyebrow{font-size:7px}.world-hero .passport>small{font-size:9px}.world-caption{display:none}.chapter-heading h2{font-size:21px;max-width:240px}.chapter-heading .eyebrow{font-size:7px}.chapter-heading{gap:8px;align-items:end}.chapter-heading button{font-size:10px;padding:6px 10px;max-width:95px;flex-shrink:0}#stations{gap:5px;margin:16px 0}#stations button{min-height:79px;padding:8px 2px;display:block;font-size:9px}#stations button .station-icon{font-size:23px;margin-bottom:6px}#stations small{font-size:8px}.workbench{display:flex;gap:17px;margin-top:0}.order-card{display:grid;padding:18px;border-top-width:3px}.section-heading{padding:16px}.stage-controls{padding:9px 12px}#theme-buttons button{min-width:44px}#sound-toggle{min-width:85px;font-size:11px}.pip-message{padding:12px;gap:8px}.pip-message p{font-size:11px}.pip-face{font-size:13px}.machine-readout strong{font-size:32px}#reward-toast{font-size:13px;top:12px;padding:9px 14px}#travel{padding:10px 14px;font-size:11px}.discovery-hub{padding:22px 16px;margin-top:25px}.discovery-hub h2{font-size:29px}#discovery-cards{grid-template-columns:repeat(2,1fr);gap:9px}#discovery-cards button{padding:14px 12px;min-height:125px}.discovery-hub p:not(.eyebrow){font-size:12px}.control-card{padding:22px}#completion h2{font-size:34px}#welcome-form{padding:0 24px 26px}.welcome-art{height:140px}#welcome-form h2{font-size:30px}.comparison{padding:15px;gap:10px}.comparison strong{font-size:28px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

.mini-live{display:none}@media(max-width:720px){.mini-live{display:block;background:#12233c;color:#dceaf4;border-radius:12px;overflow:hidden;margin:20px 0 12px}.mini-live svg{display:block;width:100%;height:auto}.mini-live p{margin:0;padding:10px 12px;background:#213a4b;font-size:10px}.mini-live strong{display:block;color:#ffe4a6;font-size:18px;margin-top:4px}}
