[hidden]{display:none!important}body:not(.prototype) #app{padding:14px 16px 110px;max-width:940px}body:not(.prototype) header{margin-bottom:16px}body:not(.prototype) .brand{font-size:17px;letter-spacing:0}body:not(.prototype) .logo{width:43px;height:43px;flex-shrink:0}body:not(.prototype) .pill{font-size:12px;padding:10px 13px}body:not(.prototype) h1{font-size:29px;line-height:1.2;letter-spacing:-.6px;white-space:pre-line}body:not(.prototype) .nav{left:50%;right:auto;transform:translateX(-50%);gap:0;padding:6px;justify-content:space-around;box-shadow:0 4px 23px #332a4419}body:not(.prototype) .nav button{flex:1;min-width:0;padding:6px;font-size:11px}body:not(.prototype) .studio-stage{position:relative;height:332px;border-radius:26px;overflow:hidden;background:#33294f url('/assets/img/stage.svg') center/cover;margin-bottom:16px}body:not(.prototype) .studio-stage .homeIntro{background:none;padding:23px 22px;margin:0;position:relative;z-index:2;pointer-events:none}body:not(.prototype) .studio-stage h1{font-size:30px;line-height:34px;color:#fff9f5;margin-top:22px}body:not(.prototype) .studio-stage .eyebrow{font-size:10px;letter-spacing:1px}body:not(.prototype) .studio-stage :is(.sparkle,.floating,.sub){display:none}body:not(.prototype) .studio-stage .orb-area{position:absolute;top:96px;left:0;right:0;height:202px;background:none;margin:0}body:not(.prototype) .studio-stage .orb{width:202px;height:202px}body:not(.prototype) .studio-stage .orb-area:before,body:not(.prototype) .studio-stage .orb-area:after{display:none}body:not(.prototype) .studio-stage .orb b,body:not(.prototype) .studio-stage .orb small{visibility:hidden}body:not(.prototype) .stage-start{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);min-height:48px;width:195px;border-radius:24px;background:#fff1d6;color:#432c64;font-weight:bold;z-index:3}body:not(.prototype) .orb-caption{display:none}body:not(.prototype) .tile{border:1px solid var(--stroke);border-radius:18px;min-height:124px;padding:16px 13px;gap:10px}body:not(.prototype) .tile small{font-size:12px}body:not(.prototype) .tile b{font-size:15px}body:not(.prototype) .tile-grid{gap:10px}body:not(.prototype) .tile:after{content:'›'}body:not(.prototype) .world .symbol{width:100%}body:not(.prototype) .world{padding:5px 5px 12px;gap:8px;background:white}body:not(.prototype) .world :is(b,small){padding:0 6px}body:not(.prototype) .hero-wrap{min-width:0;display:flex;flex-direction:column}body:not(.prototype) .hero-wrap>.hero{width:100%;flex:1}body:not(.prototype) .hero-wrap>.small-link{width:100%;text-align:center}body:not(.prototype) .hero img{object-fit:contain}body:not(.prototype) .selection-count{color:var(--accent);font-weight:bold}body:not(.prototype) .world-tabs,body:not(.prototype) .parent-tabs{display:flex;overflow:auto;gap:8px;padding:10px 0;max-width:100%}body:not(.prototype) .parent-tabs button{flex-shrink:0;min-height:48px;padding:12px;border-radius:15px;background:white;border:1px solid var(--stroke)}body:not(.prototype) .parent-tabs button.active{background:var(--lavender);color:var(--accent)}body:not(.prototype) :is(.panel,.job,.movie){overflow-wrap:anywhere}body:not(.prototype) .job-top{align-items:flex-start;flex-wrap:wrap}body:not(.prototype) .stage-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;list-style:none;padding:0;font-size:11px;color:var(--sub)}body:not(.prototype) .stage-steps li{text-align:center}body:not(.prototype) .stage-steps b{display:block;border-radius:50%;background:var(--lavender);width:28px;height:28px;padding:6px;margin:0 auto 7px}body:not(.prototype) .stage-steps .current{color:var(--accent);font-weight:bold}body:not(.prototype) .stage-steps .complete b{background:var(--mint)}body:not(.prototype) .full-player{width:100%;max-height:65vh;border-radius:18px;background:#29253b;margin-top:20px}body:not(.prototype) dialog{width:min(530px,calc(100% - 24px));max-height:85dvh;overflow:auto;border:1px solid var(--stroke);border-radius:24px;padding:22px;color:var(--ink);background:var(--paper);box-shadow:0 22px 88px #23163740}body:not(.prototype) dialog::backdrop{background:#251c3899}body:not(.prototype) dialog h2{font-size:23px}body:not(.prototype) .sheet{margin:auto auto env(safe-area-inset-bottom);border-radius:24px 24px 0 0}body:not(.prototype) .passport-image{width:100%;max-height:42vh;object-fit:contain;background:var(--lavender);border-radius:18px}body:not(.prototype) .orb[data-orb=thinking]{animation:think 2s infinite}body:not(.prototype) .orb[data-orb=offline],body:not(.prototype) .orb[data-orb=error]{filter:saturate(.35)}body:not(.prototype) .login{padding-top:20px}body:not(.prototype) .login .orb-area{border-radius:20px;background:var(--lavender);height:148px;margin:20px 0}body:not(.prototype) .login .orb{width:145px;height:145px}body:not(.prototype) .login .orb :is(b,small){display:none}body:not(.prototype) .login .orb-area:before{display:none}body:not(.prototype) :is(.primary,.secondary){border-radius:15px}body:not(.prototype) .credits{overflow-wrap:anywhere}body:not(.prototype) #app[data-screen=parent] .primary{background:var(--adult)}
@media(min-width:650px){body:not(.prototype) #app{padding:14px 32px 110px}body:not(.prototype) .brand{font-size:21px}body:not(.prototype) h1{font-size:36px}body:not(.prototype) .studio-stage{height:284px}body:not(.prototype) .studio-stage h1{font-size:39px;line-height:46px;max-width:56%}body:not(.prototype) .studio-stage .orb-area{left:auto;right:5px;top:6px;width:260px;height:260px}body:not(.prototype) .studio-stage .orb{width:260px;height:260px}body:not(.prototype) .studio-stage .sub{display:block;max-width:48%;position:absolute;top:180px;left:22px}body:not(.prototype) .stage-start{left:22px;transform:none}body:not(.prototype) .tile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body:not(.prototype) .heroes{grid-template-columns:repeat(3,minmax(0,1fr))}body:not(.prototype) .chat-orb{height:160px}body:not(.prototype) .chat-orb .orb{width:132px;height:132px}}
body:not(.prototype) .workshop-heading{display:flex;justify-content:space-between;align-items:center;margin:24px 0 16px}body:not(.prototype) .workshop-heading h2{font-size:21px;margin:0}body:not(.prototype) .workshop-heading small{font-size:12px}body:not(.prototype) .home-links{display:flex;flex-direction:column;gap:9px}body:not(.prototype) .home-links button{width:100%;text-align:left;padding:13px 16px 13px 68px;position:relative;min-height:74px;border-radius:17px;display:flex;flex-direction:column;justify-content:center;gap:4px}body:not(.prototype) .home-links button:before{content:'☆';position:absolute;left:14px;width:42px;height:42px;display:grid;place-items:center;border-radius:14px;background:var(--lavender);font-size:24px}body:not(.prototype) .home-links .feature-1:before{content:'♜';background:#fff1d6}body:not(.prototype) .home-links .feature-2:before{content:'♡';background:var(--rose)}body:not(.prototype) .home-links .feature-0:before{content:'▯'}body:not(.prototype) .home-links .feature-3{border:0;background:transparent;min-height:48px;padding-left:40px}body:not(.prototype) .home-links .feature-3:before{content:'↓';left:10px;background:none;width:24px;height:24px}body:not(.prototype) .wide-note{margin:16px 0 12px;background:#eeeaf6;border:0;color:#535070}body:not(.prototype) .wide-note p{margin:4px 0 0}body:not(.prototype) .studio-stage h1{margin-top:13px}body:not(.prototype) .world[data-world=animals] .symbol{background:url('/assets/img/world-6.svg') center/cover;display:block;font-size:0;height:70px;border-radius:12px}body:not(.prototype) .world[data-world=humans] .symbol{background:url('/assets/img/world-1.svg') center/cover;display:block;font-size:0;height:70px;border-radius:12px}
body:not(.prototype) .studio-stage .homeIntro>div{width:100%;flex-shrink:0}@media(min-width:650px){body:not(.prototype) .studio-stage h1{max-width:60%}}

/* World cards: 480×260 design art, 960×520 retina; reserve space before lazy load. */
body:not(.prototype) .world .world-art{display:grid;place-items:center;position:relative;width:100%;aspect-ratio:480/260;overflow:hidden;border-radius:12px;background:linear-gradient(135deg,var(--bg,#e0eaff),#eee1ff 65%,#d9f2ee)}
body:not(.prototype) .world-art .world-icon{font-size:36px;line-height:1}
body:not(.prototype) .world-art img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
body:not(.prototype) .world-art.loaded .world-icon{visibility:hidden}

/* Keep the child's next action within reach, above the menu and device safe area. */
body:not(.prototype) #app.has-next{padding-bottom:calc(190px + env(safe-area-inset-bottom))}
body:not(.prototype) .next-action{position:fixed;z-index:9;left:50%;transform:translateX(-50%);bottom:calc(88px + env(safe-area-inset-bottom));width:min(calc(100% - 32px),508px);pointer-events:none}
body:not(.prototype) .next-action .next-button{position:static;transform:none;pointer-events:auto;width:100%;margin:0;min-height:56px;border-radius:28px;padding:14px 22px;background:#7548bf;color:#fff;font-size:17px;font-weight:bold;box-shadow:0 7px 24px #51347740;animation:next-appear .22s ease-out}
body:not(.prototype) .next-button:disabled{background:#eee8f5;color:#71667f;box-shadow:none;opacity:1;animation:none}
body:not(.prototype) .next-button:not(:disabled){border:2px solid #ffffffb3}
body:not(.prototype) .icon-action{border-radius:50%;width:48px;min-width:48px;height:48px;min-height:48px;padding:8px;font-size:24px;display:inline-grid;place-items:center;margin:8px}
body:not(.prototype) .selected-cast{gap:10px}
body:not(.prototype) .cast-chip{padding:6px 14px 6px 6px;font-size:16px;gap:9px;background:#fff9e9;border:1px solid #e7d9ef;min-height:62px}
body:not(.prototype) .cast-chip img{width:52px;height:52px;object-fit:contain;background:#fff3d8}
body:not(.prototype) .hero img{background:#fff4dc}
body:not(.prototype) #app[data-screen=chat]{padding-bottom:calc(270px + env(safe-area-inset-bottom))}
body:not(.prototype) .chat-input{position:fixed;z-index:9;left:50%;transform:translateX(-50%);bottom:calc(154px + env(safe-area-inset-bottom));width:min(calc(100% - 32px),508px);padding:8px;background:#faf6ff;border-radius:26px;box-shadow:0 3px 20px #51347720}
body:not(.prototype) .chat-input input{border-radius:22px}
body:not(.prototype) .chat-input button{border-radius:50%;width:48px;min-width:48px;height:48px;padding:8px}
body:not(.prototype) .bubble{scroll-margin-bottom:calc(250px + env(safe-area-inset-bottom));overflow-wrap:anywhere}
body:not(.prototype) .mic-hint{line-height:1.5}
@keyframes next-appear{from{opacity:.3;translate:0 8px}to{opacity:1;translate:0 0}}
@media(prefers-reduced-motion:reduce){body:not(.prototype) .next-action .next-button{animation:none}}
/* Existing opaque preview renders also need brightening, beyond their surrounding chip. */
body:not(.prototype) .cast-chip img,body:not(.prototype) .hero img{filter:brightness(1.55) contrast(.75)}
body:has(#app.has-next) #toast{bottom:calc(230px + env(safe-area-inset-bottom))}
body:not(.prototype) .mic-hint{scroll-margin-bottom:250px}

/* The conversation switch stays reachable above a long chat. */
body:not(.prototype) .live-control{position:sticky;top:8px;z-index:12;background:#faf6ff;box-shadow:0 2px 12px #51347720}
body:not(.prototype) .orb[data-orb=paused]{filter:saturate(.45)}
