*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#11152f;color:#f6f4ff;font-family:ui-rounded,"Trebuchet MS",system-ui,sans-serif}body.modal-open{overflow:hidden}button,a{touch-action:manipulation}button{font:inherit;cursor:pointer;min-height:44px}button:disabled{cursor:default}a{color:inherit}button:focus-visible,a:focus-visible{outline:3px solid #ffba55;outline-offset:4px}.skip{position:fixed;top:-80px;left:12px;z-index:20;padding:14px;background:#fff;color:#15162c}.skip:focus{top:10px}.top{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:12px max(5%,16px);border-bottom:1px solid #ffffff20}.top>span{font-size:10px;letter-spacing:1.6px;font-weight:800}.top b{color:#c4b0ff;padding:0 8px}.top>a{font-size:12px;min-height:44px;display:flex;align-items:center}.top button{border:1px solid #7b7b9a;padding:9px 15px;border-radius:14px;background:#262948;color:#fff}main{max-width:1160px;margin:auto;padding:24px}.hero{display:flex;justify-content:space-between;gap:16px;align-items:center;margin:4px 0 26px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:1.5px}.hero .eyebrow{color:#c4b6ff}.hero h1{font-size:clamp(28px,4vw,49px);line-height:1.13;letter-spacing:-1.8px;margin:12px 0}.hero p{color:#c9c8de;line-height:1.6;font-size:15px;margin:0}.hero-orbit{font-size:85px;transform:rotate(-10deg);filter:drop-shadow(0 0 28px #ab8cf848)}.launch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;scroll-margin-top:16px}.launch-card{border-radius:25px;padding:24px;position:relative;overflow:hidden;color:#201b39;border:1px solid #ffffff30}.tv-launch{grid-column:1/-1;display:grid;grid-template-columns:1.1fr 1fr;gap:20px;min-height:260px;background:#cbbbff}.pill{font-size:9px;font-weight:800;letter-spacing:1.5px}.tv-copy h2{font-size:34px;letter-spacing:-1.2px;margin:14px 0 10px;max-width:420px}.tv-copy p{font-size:14px;line-height:1.55;max-width:380px}.primary{display:inline-flex;align-items:center;justify-content:center;background:#25213f;color:#fff;text-decoration:none;padding:12px 20px;border:0;border-radius:14px;font-weight:800;min-height:48px}.mini-scene{position:relative;min-height:180px;background:radial-gradient(ellipse at 45% 20%,#3a2d69,#191e40);border:6px solid #f3eaff;border-radius:22px;overflow:hidden;box-shadow:0 8px 0 #a393d6}.mini-moon{position:absolute;left:30%;top:4px;font-size:138px;line-height:1.1;color:#ffe7aa;transform:rotate(-15deg)}.mini-planet{position:absolute;right:8%;bottom:20px;font-size:85px;line-height:1;color:#9cdfd0;text-shadow:-10px 9px 0 #68aabc}.mini-caption{position:absolute;left:0;bottom:0;background:#292540;padding:10px;width:100%;font-size:8px;letter-spacing:1px;color:#fff;text-align:center}.mini-star{position:absolute;color:#fff0b7;font-size:25px}.s1{left:10%;top:27%}.s2{right:12%;top:9%}.memory-launch{background:#ffcf96}.stars-launch{background:#aaddf2}.picnic-launch{background:#c5ed9a}.game-art{display:block;font-size:35px;letter-spacing:8px;height:54px}.launch-card h2{margin:10px 0 7px;line-height:1.12}.launch-card:not(.tv-launch) h2{font-size:26px;letter-spacing:-.7px}.launch-card:not(.tv-launch) p{font-size:13px;line-height:1.5;margin:9px 0 16px}.game-start{border:1px solid #29253c70;border-radius:12px;background:#ffffff80;color:#29243a;font-weight:800;padding:10px 14px;width:100%;text-align:left}.progress-note{font-size:12px;color:#c5bddb;margin:18px 0 4px;min-height:18px}.tabs{display:flex;gap:9px;padding:30px 0 10px;overflow-x:auto;scroll-margin-top:20px}.tabs button{white-space:nowrap;border:1px solid #72728f;background:#1b203f;border-radius:40px;padding:12px 18px;color:#e8e6f3;font-weight:700}.tabs button[aria-pressed=true]{background:#d6c7ff;color:#26213f;border-color:#d6c7ff}.shelf-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:20px 0}.shelf-heading h2{font-size:25px;letter-spacing:-.8px}.shelf-heading span{font-size:12px;white-space:nowrap;color:#c6bfdc}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.card{position:relative;padding:22px;background:#232842;border:1px solid #ffffff26;border-radius:22px;display:flex;flex-direction:column;align-items:flex-start}.card .art{height:80px;width:100%;display:grid;place-items:center;font-size:50px;background:#3a3458;border-radius:14px;color:#deccff;margin-bottom:20px}.card.video .art{background:#254756;color:#b8e8f5}.card.make .art{background:#334536;color:#d2eca9}.card small{font-size:9px;letter-spacing:1px;color:#cbc0df;font-weight:750}.card h3{font-size:21px;line-height:1.25;letter-spacing:-.4px;margin:12px 0}.card p{font-size:13px;line-height:1.6;color:#cbc8dc;flex:1}.card .open{border:0;border-bottom:1px solid #aa9cc2;padding:10px 0;background:transparent;color:#ede4ff;font-weight:750;text-align:left}.card .save{position:absolute;right:28px;top:28px;width:44px;height:44px;border-radius:50%;border:1px solid #afa0c6;background:#24203c;color:#f9c6dc;font-size:25px}.parent-note{background:#242c40;border:1px solid #78859466;border-radius:25px;padding:28px;margin:32px 0}.parent-note p{font-size:14px;line-height:1.8;max-width:850px;color:#d5d8e1}.parent-note button{background:#e9eddd;color:#263226;border:0;border-radius:12px;padding:13px}.parent-note h2{font-size:25px}dialog{border:1px solid #aaa0c3;border-radius:26px;background:#fffaf0;color:#2f2944;max-width:660px;width:calc(100% - 24px);max-height:calc(100dvh - 24px);padding:26px;box-shadow:0 30px 100px #05061588;overflow:auto;overscroll-behavior:contain}dialog::backdrop{background:#080b23dd;backdrop-filter:blur(5px)}dialog h2{font-size:30px;line-height:1.16;letter-spacing:-1px;margin:16px 0 12px}dialog p{font-size:16px;line-height:1.8}dialog .close{display:block;margin-left:auto;border:1px solid #b6acbe;border-radius:50%;background:#fff;width:44px;min-width:44px;height:44px;color:#322b41}.dialog-top{display:flex;align-items:center;gap:12px;justify-content:space-between}.instructions{margin:0 0 18px!important;font-size:14px!important;line-height:1.6!important;color:#534766}.prompt{padding:18px;border-radius:15px;background:#e8e3fa;font-weight:650}#reader-actions .primary{margin-top:8px}footer{max-width:1160px;margin:auto;padding:24px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:10px;letter-spacing:1px;color:#c5bfdb}footer a{min-height:44px;display:flex;align-items:center}#notice{font-size:13px;color:#dfcafa;min-height:20px}.game-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px}.game-footer span{font-size:12px;font-weight:700}.feedback{font-size:15px!important;line-height:1.5!important;min-height:45px;border-radius:14px;background:#ede7ff;padding:13px;margin:16px 0 0}.memory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.memory-tile{aspect-ratio:1.05;border:2px solid #c6b9dd;border-bottom-width:5px;border-radius:15px;background:#352954;color:#f4e5ff;font-size:32px;min-height:64px;transition:transform .18s,background .18s}.memory-tile:hover:not(:disabled){transform:translateY(-2px)}.memory-tile.is-open{background:#ffebc5;border-color:#d8b77c;color:#2c2444}.memory-tile.is-matched{background:#d5edb9;border-color:#95b370;color:#243627}.memory-tile.is-matched::after{content:'✓';position:absolute;font-size:12px;margin-left:2px}.memory-tile:disabled{opacity:1}.constellation{position:relative;aspect-ratio:1.5;background:radial-gradient(ellipse at top,#342a62,#131c39);border-radius:22px;overflow:hidden}.constellation svg{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}.constellation line{stroke:#c9f3eb;stroke-width:1;stroke-linecap:round}.star-node{position:absolute;transform:translate(-50%,-50%);width:48px;height:48px;border:2px solid #ead3ff;border-radius:50%;background:#51476e;color:#fff;font-weight:850;font-size:20px;box-shadow:0 0 15px #f0ceff30}.star-node.is-connected{background:#ffdda3;color:#322642;border-color:#fff0c3}.trail-label{position:absolute;left:16px;bottom:12px;color:#dad4ee;font-size:10px;letter-spacing:1px}.picnic-counter{display:flex;justify-content:space-between;gap:12px;background:#e3efcf;border-radius:16px;padding:16px;font-weight:800;font-size:15px}.picnic-items{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:14px}.picnic-item{text-align:center;background:#fff;border:1px solid #ddd1c5;border-radius:16px;padding:14px 7px}.picnic-item .food{display:block;font-size:34px}.picnic-item h3{font-size:14px;margin:9px 0 5px}.picnic-item small{font-size:11px;color:#5e5060;display:block;min-height:30px}.food-controls{display:flex;justify-content:center;align-items:center;gap:5px;margin-top:10px}.food-controls button{width:44px;min-width:44px;border:1px solid #b6a8bd;background:#f1ebfa;color:#302642;border-radius:10px;font-size:23px}.food-controls output{min-width:17px;font-size:16px;font-weight:800}.picnic-blanket{border:2px dashed #dbac9a;border-radius:16px;padding:16px;margin-top:15px;background:repeating-linear-gradient(45deg,#fff5eb,#fff5eb 12px,#f9e9e1 12px,#f9e9e1 24px);min-height:70px;line-height:1.5;font-size:14px}.picnic-pack{margin-top:14px;width:100%;background:#35644a;color:#fff;border:0;border-radius:12px;padding:12px;font-weight:800}.theatre{max-width:760px;background:#1b203e;color:#f8f4ff;border-color:#77638e}.theatre .close{background:#33304e;color:#fff;border-color:#8f83a2}.theatre h2{font-size:26px}.tv-stage{position:relative;background:#141e3d;border-radius:20px;overflow:hidden;aspect-ratio:1.95}.tv-stage svg{width:100%;height:100%;display:block}.tv-stage .drift{animation:drift 5s ease-in-out infinite}.tv-stage .twinkle{animation:twinkle 3.2s ease-in-out infinite}.tv-stage .bounce{animation:bounce 3s ease-in-out infinite;transform-box:fill-box;transform-origin:50% 100%}.tv-stage:not(.playing) *{animation-play-state:paused!important}.tv-caption{background:#292d4c;border:1px solid #ffffff20;border-radius:14px;padding:15px;margin:12px 0!important;min-height:103px;font-size:16px!important;line-height:1.6!important}.tv-dots{display:flex;gap:6px;margin-top:12px}.tv-dots span{height:5px;flex:1;background:#625870;border-radius:4px}.tv-dots span.active{background:#efce88}.tv-controls,.tv-bottom{display:flex;gap:8px;flex-wrap:wrap}.tv-controls button,.tv-bottom button{border:1px solid #9184a5;background:#302b49;color:#fff;border-radius:12px;padding:10px 13px;font-size:13px;flex:1}.tv-controls .primary{background:#e5d4ff;color:#29203a}.tv-bottom{margin-top:10px}.tv-bottom button{background:transparent}.subtle{font-size:11px!important;line-height:1.5!important;color:#cec4dd}.tv-library{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px;border-top:1px solid #726484;padding-top:18px}.tv-library button{background:#292d4c;color:#e8ddf6;border:1px solid #8b7e9d;border-radius:12px;padding:10px;font-size:11px;line-height:1.4}.tv-library button[aria-pressed=true]{border-color:#ffdb9d;background:#48405d}.tv-library span{display:block;font-size:22px;margin-bottom:5px}.complete-banner{border:1px solid #b4c697;background:#e7f4d1;border-radius:14px;padding:15px;text-align:center;font-weight:800}.full-width{width:100%}@keyframes drift{50%{transform:translateY(-8px)}}@keyframes twinkle{50%{opacity:.4}}@keyframes bounce{50%{transform:rotate(4deg) translateY(-5px)}}
@media(max-width:700px){main{padding:18px 15px}.top>span{font-size:8px;letter-spacing:.8px}.hero{margin:0 0 20px}.hero h1{letter-spacing:-1px;font-size:31px}.hero p{font-size:13px;max-width:270px}.hero-orbit{font-size:58px}.hero .eyebrow{font-size:8px;letter-spacing:1px}.launch-grid{gap:12px;grid-template-columns:1fr}.launch-card{padding:18px;border-radius:21px}.tv-launch{grid-template-columns:1.25fr .8fr;min-height:210px;gap:10px}.tv-copy h2{font-size:25px!important;letter-spacing:-.7px!important}.tv-copy p{font-size:12px;margin:8px 0 13px}.pill{font-size:8px;letter-spacing:.8px}.mini-scene{min-height:155px;border-width:4px}.mini-moon{font-size:95px;left:10%;top:24px}.mini-planet{font-size:52px;right:4%;bottom:30px}.mini-caption{font-size:6px;padding:8px}.mini-star{font-size:17px}.tv-copy .primary{font-size:12px;padding:10px 12px}.launch-card:not(.tv-launch){display:grid;grid-template-columns:54px 1fr 48px;gap:10px;align-items:center;min-height:110px}.launch-card:not(.tv-launch) h2{font-size:23px;margin:4px 0}.launch-card:not(.tv-launch) p{font-size:11px;margin:6px 0 0}.launch-card:not(.tv-launch) .eyebrow{font-size:8px}.game-art{font-size:26px;letter-spacing:0;height:auto;max-width:54px}.game-start{width:48px;min-height:60px;font-size:0;padding:8px;text-align:center}.game-start:after{content:'▶';font-size:21px}.cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.card{padding:17px}.card h3{font-size:19px}.card .save{right:22px;top:22px}.shelf-heading h2{font-size:23px}.tabs{padding-top:22px}.shelf-heading{margin:20px 0}.parent-note{padding:23px}.parent-note h2{font-size:23px}dialog{padding:19px}.theatre h2{font-size:24px}.tv-caption{min-height:120px;font-size:14px!important}.tv-controls button{font-size:12px;padding:10px}.tv-library{grid-template-columns:repeat(2,1fr)}footer{flex-wrap:wrap}.picnic-items{grid-template-columns:1fr;gap:8px}.picnic-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px}.picnic-item .food{font-size:28px}.picnic-item h3{margin:0}.picnic-item small{min-height:0}.food-controls{margin:0;gap:8px}.food-controls button{width:44px;min-width:44px}.picnic-counter{font-size:13px}.star-node{width:44px;height:44px}.constellation{aspect-ratio:1.2}}
@media(max-width:380px){.top>span{max-width:106px;text-align:center;line-height:1.7}.hero-orbit{display:none}.hero h1{font-size:30px}.tv-launch{grid-template-columns:1.4fr .7fr;padding:16px}.tv-copy h2{font-size:23px!important}.mini-scene{min-width:85px}.mini-moon{font-size:80px;left:1%;top:38px}.cards{grid-template-columns:1fr}.memory-grid{gap:7px}.memory-tile{font-size:26px;min-height:59px}.tv-controls{display:grid;grid-template-columns:1fr 1fr}.tv-controls #tv-narrate{grid-column:1/-1}.tv-caption{min-height:128px}.game-footer{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
