@font-face{font-family:Fredoka;src:url(/fonts/fredoka-400.ttf) format("truetype");font-weight:400;font-display:swap}@font-face{font-family:Fredoka;src:url(/fonts/fredoka-500.ttf) format("truetype");font-weight:500;font-display:swap}@font-face{font-family:Fredoka;src:url(/fonts/fredoka-600.ttf) format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Fredoka;src:url(/fonts/fredoka-700.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Nunito;src:url(/fonts/nunito-600.ttf) format("truetype");font-weight:600;font-display:swap}@font-face{font-family:Nunito;src:url(/fonts/nunito-700.ttf) format("truetype");font-weight:700;font-display:swap}@font-face{font-family:Nunito;src:url(/fonts/nunito-800.ttf) format("truetype");font-weight:800;font-display:swap}*{box-sizing:border-box}html,body{margin:0;height:100%;overflow:hidden}body{font-family:Nunito,system-ui,sans-serif;color:#4a413a;background:#2a2622}button,input{font:inherit;color:inherit}button{border:0;border-radius:4px;cursor:pointer;transition:filter .14s ease,box-shadow .14s ease,transform 80ms ease}button:not(.google-action):not(:disabled):hover{filter:brightness(.96) drop-shadow(0 2px 2px rgb(60 64 67 / 18%))}button:focus-visible{outline:3px solid rgb(66 133 244 / 35%);outline-offset:2px}button:disabled{cursor:not-allowed}h1,h2,h3,strong,b{font-family:Fredoka,system-ui,sans-serif}button:active{transform:translateY(4px)}@media(prefers-reduced-motion:reduce){button{transition-duration:0ms}}:host{display:block;height:100%}.shell{height:100%;display:grid;place-items:center;background:#2a2622;padding:18px}.device{position:relative;width:min(100%,1080px);aspect-ratio:1044/744;border:18px solid #2a2622;border-radius:48px;box-shadow:0 30px 60px #4a342866;overflow:hidden}.screen{width:100%;height:100%;position:relative;overflow:hidden;border-radius:28px;background:#fbf6ee;isolation:isolate;-webkit-user-select:none;user-select:none}.screen input,.screen textarea,.screen [contenteditable=true]{-webkit-user-select:text;user-select:text}.animations-paused *,.animations-paused *:before,.animations-paused *:after{animation-play-state:paused!important}.debug-nav-layer{position:absolute;z-index:100;inset:0;pointer-events:none}.debug-nav{position:absolute;top:50%;width:44px;height:72px;display:grid;place-items:center;translate:0 -50%;border-radius:18px;color:#4a413a;background:#ffffffd9;box-shadow:0 5px #ded5cb;font:700 38px/1 Fredoka;opacity:0;pointer-events:auto;transition:opacity .15s ease,transform .08s ease}.debug-nav:hover:not(:disabled){opacity:1;transform:scale(1.06)}.debug-nav:focus-visible{opacity:1}.debug-nav:disabled{opacity:0;cursor:default}.debug-nav-back{left:12px}.debug-nav-forward{right:12px}.app-back{position:absolute;z-index:30;top:30px;left:38px;width:58px;height:58px;display:grid;place-items:center;color:#4a413a;background:#fff;box-shadow:0 5px #ded5cb;font:700 32px/1 Fredoka,system-ui,sans-serif}.page-loader{position:absolute;inset:0;display:grid;place-items:center}.page-loader i{width:42px;height:42px;border:6px solid #f7a69855;border-top-color:#f7a698;border-radius:50%;animation:loader-spin .8s linear infinite}@keyframes loader-spin{to{transform:rotate(360deg)}}.senior .screen{background-color:#f4f7f8;background-image:radial-gradient(#c8d4da 1.4px,transparent 1.4px);background-size:22px 22px}.screen.child-surface{background-color:#fbf6ee;background-image:none}.screen.child-surface.category-surface{background-color:#f4f7f8;background-image:radial-gradient(#c8d4da 1.4px,transparent 1.4px);background-size:22px 22px}.background-confetti{position:absolute;z-index:0;inset:0;pointer-events:none}.page-content{position:relative;z-index:1;width:100%;height:100%}.page-content.has-back .page>header:first-child{padding-left:76px}.page{height:100%;padding:32px 38px;position:relative}.center{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.primary,.success{min-height:60px;padding:12px 30px;border-radius:20px;color:#fff;font:600 23px Fredoka;box-shadow:0 7px #e07a6b;background:#f7a698;transition:.08s}.success{background:#5bbe8a;box-shadow:0 7px #45a372}.icon{position:absolute;z-index:5;top:22px;min-width:48px;height:48px;border-radius:16px;background:#fff;box-shadow:0 5px #ded5cb;font:700 20px Fredoka}.home{inset:auto 28px 26px auto;width:62px;height:62px;border-radius:50%;font-size:25px}.mobile-controls{display:contents}.debug-toys-button{position:absolute;z-index:20;left:28px;bottom:104px;width:62px;height:62px;display:grid;place-items:center;padding:0;border-radius:50%;background:#fff;box-shadow:0 5px #4a34281f}.debug-toys-button svg{width:29px;height:29px;fill:#8b8076;stroke:#8b8076;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.grown{right:22px;min-width:156px;height:58px;padding:0 18px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:24px;font:800 16px Nunito}.grown span{font-size:inherit;color:#8b8076}.page>header{text-align:center}.page>header h2,.page>h2{font-size:36px;margin:0}.page>header p{margin:4px}.card{border-radius:30px;background:#fff;box-shadow:0 8px #e7ddd2}.maker-row{display:flex;gap:22px;justify-content:center;margin-top:22px}.maker{width:180px;height:235px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:#fce6df}.maker strong{font-size:24px}.maker small{padding:5px 10px;background:#e2f2e5;border-radius:12px}.maker.add{border:3px dashed #c7bbb0;background:transparent;box-shadow:none}.maker.add i{font-style:normal;font-size:50px}.hint{color:#8b8076}.page-decoration{position:absolute;z-index:0;pointer-events:none}.page-decoration.circle{border-radius:50%}.page-decoration.coral{left:-70px;top:-70px;width:220px;height:220px;background:#f7a69859}.page-decoration.sky{right:-60px;bottom:-70px;width:240px;height:240px;background:#a9ccef66}.create-grid,.studio{display:grid;grid-template-columns:1fr 1.25fr;gap:32px;height:590px;align-items:center}.preview,.stage{height:90%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#fce6df}.form,.controls{padding:26px;text-align:left;display:flex;flex-direction:column;gap:16px}.form label,.controls label{font:700 15px Nunito;letter-spacing:.08em;text-transform:uppercase}.swatches{display:flex;gap:14px;flex-wrap:wrap}.swatches button{width:46px;height:46px;border-radius:50%;border:3px solid #fff}.swatches button.selected{outline:4px solid #4a413a}.form input,.name-pill{height:54px;border:3px solid #ded5cb;border-radius:16px;padding:8px 14px;font:600 22px Fredoka}.age{display:flex;gap:12px}.age button{flex:1;padding:15px;border-radius:18px;background:#f4f7f8;border:4px solid transparent}.age button.selected,.segment .selected,.parts .selected{border-color:#3e7cb1}.age small{display:block}.greeting{height:150px;display:flex;align-items:center;justify-content:center;gap:20px}.bubble{background:#fff;padding:14px 30px;border-radius:28px;box-shadow:0 7px #e4dcd3;text-align:left}.bubble h2{font-size:30px;margin:0}.bubble p{margin:2px}.activity-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:22px;height:465px}.activity,.hero{border-radius:30px;box-shadow:0 9px #f2cdc0;padding:22px;display:flex;flex-direction:column;align-items:center;justify-content:center}.activity h3{font-size:28px;margin:8px}.activity p{margin:0}.peach{background:#fce6df}.mint{background:#e2f2e5;box-shadow:0 9px #c6e4cc}.blue{background:#e3eefb;box-shadow:0 9px #c8daf4}.yellow{background:#fbf3cc;box-shadow:0 9px #ecdda0}.shapes,.big-icon{font-size:60px}.toy-grid,.category-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}.toy-card,.category{height:180px;border-radius:26px;background:#fff;box-shadow:0 7px #ddd4ca;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.toy-card strong,.category strong{font-size:22px}.selected-card{border:5px solid #f2966f}.check{position:absolute;right:-10px;top:-10px;border-radius:50%;width:40px;height:40px;background:#5bbe8a;color:#fff;font:700 25px Fredoka}.next{position:absolute;right:38px;bottom:22px}.stage .name-pill{width:220px;text-align:center;background:#fff}.segment,.parts{display:flex;gap:8px}.segment button,.parts button{flex:1;min-height:48px;border:3px solid transparent;border-radius:14px;background:#edf1f3}.confirm{display:grid;grid-template-columns:1fr 1.3fr;align-items:center;text-align:left;padding:35px;width:82%;background:#fff}.confirm h3{font-size:36px;margin:0}.confirm aside,.celebration aside,.page>aside{padding:15px 18px;border-radius:16px;background:#fbf3cc;margin:20px 0;font-weight:800}.confirm li{list-style:none;padding:8px;font-size:18px}.confirm li b{font-size:24px;color:#3e7cb1}.senior-grid{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:1fr 1fr;gap:20px;height:470px}.hero{grid-row:1/3;flex-direction:row;text-align:left}.hero h2{font-size:48px;margin:5px 0}.hero b{color:#e07a6b}.category-grid{grid-template-columns:repeat(3,1fr)}.category{height:135px}.category span{font-size:38px}.category strong{font-size:18px}.ai-banner{width:100%;height:90px;margin-top:20px;border-radius:24px;background:#2a2622;color:#fff;display:flex;align-items:center;gap:18px;padding:15px 24px;text-align:left}.ai-banner>b{background:#f4de8a;color:#4a413a;padding:14px;border-radius:50%}.ai-banner span{display:flex;flex-direction:column;flex:1}.ai-banner strong{font-size:23px}.ai-banner small{color:#ddd}.celebration h1{font-size:46px;margin:5px}.duo{display:flex;align-items:end}.confetti{font-size:42px;color:#f4c430}.printer{width:360px;height:310px;background:#d9e1e5;border-radius:30px;padding:35px 38px 25px;box-shadow:0 10px #b5c1c7}.printer-top{height:40px;background:#4a565d;border-radius:14px}.print-window{height:215px;background:#eef4f5;position:relative;display:grid;place-items:center;overflow:hidden}.print-window>i{position:absolute;left:0;width:100%;height:6px;background:#ffb74f;box-shadow:0 0 13px #ff9800}.reveal{transition:clip-path .12s linear}.print-talk{display:flex;align-items:center;margin-top:8px}.progress{width:65%;height:25px;background:#dce5e7;border-radius:20px;overflow:hidden}.progress i{display:block;height:100%;background:#5bbe8a;transition:width .1s}@media(max-width:850px){.shell{padding:0}.device{width:100vw;height:100dvh;aspect-ratio:auto;border:0;border-radius:0}.screen{padding-right:40px;border-radius:0;overflow-x:hidden;overflow-y:scroll;overscroll-behavior-y:contain;scrollbar-width:none;transform:translateZ(0)}.screen::-webkit-scrollbar{display:none}.page{min-height:100%;height:auto;overflow:visible}.activity-grid,.create-grid,.studio{grid-template-columns:1fr;height:auto}.preview{min-height:280px;height:auto}}@media(max-width:850px){.mobile-controls{position:relative;z-index:110;width:100%;min-height:104px;padding:16px 30px 26px 20px;display:flex;align-items:flex-end;justify-content:space-between;pointer-events:auto;background:#fbf6ee}.mobile-controls app-sound-button,.mobile-controls .debug-toys-button,.mobile-controls .home{position:static!important;pointer-events:auto}.mobile-controls .home{margin-left:auto}.debug-nav-layer{position:sticky;top:0;height:100dvh;margin-bottom:-100dvh}.debug-nav{top:50dvh}.app-back{position:absolute;top:82px;left:18px;width:50px;height:50px}.page-content.has-back .page>header:first-child{padding-left:60px}.page{min-height:100dvh;padding:82px 18px 140px}.page>header h2,.page>h2{font-size:30px}.home{right:16px;bottom:18px;width:54px;height:54px}.grown{right:50px;max-width:calc(100% - 68px);min-width:0;height:52px;padding:0 14px}.maker-row,.age,.segment,.parts,.duo,.print-talk{flex-wrap:wrap}.maker-row{width:100%}.maker{width:min(100%,280px);height:auto;min-height:220px}.form,.controls{padding:20px}.age button,.segment button,.parts button{min-width:min(100%,180px)}.activity-grid,.toy-grid,.category-grid,.senior-grid,.confirm{grid-template-columns:1fr;grid-template-rows:auto;width:100%;height:auto}.toy-card,.category{min-height:150px;height:auto}.hero{grid-row:auto;flex-wrap:wrap}.hero h2{font-size:36px}.ai-banner{height:auto;flex-wrap:wrap}.next{position:static;margin:24px auto 0}.printer{width:min(100%,360px)}.progress{width:100%}}.shell{padding:6px}.device{width:min(calc(100vw - 12px),calc((100vh - 12px)*1.4032));border-width:12px;border-radius:40px}.sound-button{display:grid;place-items:center;padding:0}.grown-up-gate{position:fixed;z-index:200;inset:0;display:grid;place-items:center;padding:24px;background:#4a413a57}.grown-up-gate-card{width:min(420px,100%);padding:30px;display:flex;flex-direction:column;align-items:center;gap:14px;border-radius:30px;background:#fff;box-shadow:0 16px #4a34281f}.grown-up-gate-card h2,.grown-up-gate-card p{margin:0}.gate-lock{width:60px;height:60px;display:grid;place-items:center;border-radius:18px;background:#f4efe6;font-size:28px}.grown-up-gate-card input{width:100%;padding:13px 18px;border:3px solid #e6ddcf;border-radius:14px;background:#f4efe6;text-align:center;font:600 22px Fredoka}.grown-up-gate-card input.invalid{border-color:#e07a6b}.gate-error{color:#c25e50;font:700 14px Nunito}.gate-forgot{margin-top:-4px;padding:4px 8px;color:#5a7796;background:transparent;font:700 14px Nunito,system-ui,sans-serif}.gate-forgot:disabled{cursor:wait;opacity:.55}.gate-switch{padding:4px 8px;color:#5a7796;background:transparent;font:700 14px Nunito,system-ui,sans-serif;text-decoration:underline}.gate-switch:disabled{cursor:wait;opacity:.55}.gate-status{margin:-4px 0 0;color:#3e7cb1;text-align:center;font:700 13px/1.35 Nunito,system-ui,sans-serif}.gate-actions{width:100%;display:flex;gap:12px}.gate-actions button{flex:1}.gate-cancel{min-height:60px;border-radius:20px;background:#f4efe6;box-shadow:0 6px #ded5cb;font:600 23px Fredoka}
