@import url("https://fonts.googleapis.com/css2?family=Fredoka:wght@400;500;600;700&family=Nunito:wght@500;600;700;800&family=Press+Start+2P&display=swap");:root{--pink:#ff4fa0;--pink-hot:#ff2d8a;--pink-soft:#ff9ec8;--pink-blush:#ffc4de;--pink-mist:#ffe6f2;--pink-cream:#fff7fb;--ink:#5a2a45;--muted:#9a6a82;--line:rgba(255,79,160,0.18);--shadow:0 18px 40px rgba(255,79,160,0.18);--font-display:"Fredoka","Nunito",system-ui,sans-serif;--font-body:"Nunito","Fredoka",system-ui,sans-serif;--font-pixel:"Press Start 2P","Fredoka",monospace}*{box-sizing:border-box}body,html{margin:0;min-height:100%;color:var(--ink);font-family:var(--font-body);background:#fff}body:has(.homeTitle),html:has(.homeTitle){height:100%;overflow:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.shell{width:min(1080px,calc(100% - 2rem));margin:0 auto;padding:1.1rem 0 3.5rem}.home{min-height:100vh;background:radial-gradient(ellipse 70% 55% at 50% 42%,#ffffff 0,transparent 62%),radial-gradient(ellipse 90% 80% at 50% 45%,#fff5fa 0,#ffe4f1 55%,#ffd6ea 100%)}.homeTitle{--home-pet-w:min(40vw,26vh,10.5rem);--home-pet-h:min(46vw,30vh,12rem);position:relative;height:100vh;height:100dvh;max-height:100dvh;overflow:hidden;display:flex;flex-direction:column;color:#3d2a22;font-family:var(--font-display)}.homeTitle__scene{z-index:0;background:#f3c4d8 url(/nook-title-forest-2.png) 50%/cover no-repeat;image-rendering:pixelated;image-rendering:crisp-edges}.homeTitle__scene,.homeTitle__shade{position:absolute;inset:0;pointer-events:none}.homeTitle__shade{z-index:1;background:linear-gradient(180deg,rgba(120,190,255,.14),transparent 28%),linear-gradient(0deg,rgba(40,70,40,.16),transparent 36%)}.homeTitle__petals{position:absolute;inset:0;z-index:2;overflow:hidden;pointer-events:none}.homeTitle__petal{--petal-x:50vw;--petal-delay:0s;--petal-dur:12s;--petal-size:6px;--petal-drift:0vw;--petal-spin:1;position:absolute;top:-8%;left:var(--petal-x);width:var(--petal-size);height:var(--petal-size);background:#ff6eb4;image-rendering:pixelated;image-rendering:crisp-edges;box-shadow:calc(var(--petal-size) * 1) 0 0 #ff8ec8,0 calc(var(--petal-size) * 1) 0 #ff4d9a,calc(var(--petal-size) * 1) calc(var(--petal-size) * 1) 0 #ff7ab8;opacity:0;animation:home-petal-fall var(--petal-dur) linear var(--petal-delay) infinite;will-change:transform,opacity}.homeTitle__petal--2{background:#ff8ec8;box-shadow:calc(var(--petal-size) * 1) 0 0 #ffb0d8,0 calc(var(--petal-size) * 1) 0 #ff5aad,calc(var(--petal-size) * 1) calc(var(--petal-size) * 1) 0 #ff9ad0}.homeTitle__petal--3{background:#ff4d9a;box-shadow:calc(var(--petal-size) * 1) 0 0 #ff6eb4,0 calc(var(--petal-size) * 1) 0 #e83a86,calc(var(--petal-size) * 1) calc(var(--petal-size) * 1) 0 #ff5aad}@keyframes home-petal-fall{0%{opacity:0;transform:translateZ(0) rotate(0deg) scale(1)}8%{opacity:.92}50%{opacity:.85;transform:translate3d(calc(var(--petal-drift) * .55),55vh,0) rotate(calc(var(--petal-spin) * 180deg)) scale(1.05)}92%{opacity:.75}to{opacity:0;transform:translate3d(var(--petal-drift),112vh,0) rotate(calc(var(--petal-spin) * 1turn)) scale(.9)}}@media (prefers-reduced-motion:reduce){.homeTitle__petal{animation:none;opacity:0}}.homeTitle__nav{position:relative;z-index:5;flex:0 0 auto;display:flex;justify-content:flex-end;align-items:center;gap:.55rem;padding:clamp(.45rem,1.4vh,1rem) clamp(.75rem,3vw,2rem)}.homeTitle__navLink{font-family:var(--font-display);font-weight:700;font-size:clamp(.78rem,1.6vh,.95rem);letter-spacing:.04em;color:#fff;text-shadow:0 2px 0 rgba(45,30,25,.35);padding:.4rem .8rem;border-radius:999px;background:rgba(255,255,255,.18);border:2px solid rgba(255,255,255,.45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:transform .15s ease,background .15s ease}.homeTitle__navLink:hover{background:rgba(255,255,255,.32);transform:translateY(-1px)}.homeTitle__navCta{font-family:var(--font-display);font-weight:700;font-size:clamp(.78rem,1.6vh,.95rem);letter-spacing:.04em;color:#fff;padding:.45rem 1rem;border-radius:999px;background:linear-gradient(180deg,#ff6eb4,#ff2d8a);border:2px solid rgba(90,30,55,.35);box-shadow:0 4px 0 rgba(90,30,55,.28);transition:transform .15s ease}.homeTitle__navCta:hover{transform:translateY(-2px)}.homeTitle__stage{position:relative;z-index:2;flex:1 1 auto;min-height:0;text-align:center;padding:0 clamp(.5rem,2vw,1.5rem) clamp(.65rem,2.2vh,1.75rem)}.homeTitle__logo,.homeTitle__stage{display:flex;flex-direction:column;justify-content:flex-end;align-items:center;pointer-events:none}.homeTitle__logo{position:absolute;left:0;right:0;bottom:calc(50% + (var(--home-pet-h) / 2) + .25rem);top:auto;z-index:3;margin:0 auto;width:min(96vw,1100px);max-height:min(36vh,calc(50% - (var(--home-pet-h) / 2) - 2.5rem));gap:clamp(.15rem,.7vh,.5rem);line-height:1;animation:logo-in 1.15s cubic-bezier(.16,1,.3,1) both}.homeTitle__logoNebula,.homeTitle__logoNook{font-family:var(--font-pixel);font-weight:400;text-transform:uppercase;color:#ff3d96;text-shadow:.06em 0 0 #fff,-.06em 0 0 #fff,0 .06em 0 #fff,0 -.06em 0 #fff,.06em .06em 0 #fff,-.06em .06em 0 #fff,.06em -.06em 0 #fff,-.06em -.06em 0 #fff,.12em .12em 0 #c2186a,.18em .18em 0 rgba(90,30,55,.35)}.homeTitle__logoNebula{font-size:clamp(1.1rem,min(7vw,5.5vh),5rem);letter-spacing:.08em;text-indent:.08em;text-align:center;color:#ff5aad}.homeTitle__logoNook{font-size:clamp(2.4rem,min(20vw,16vh),10.5rem);letter-spacing:.02em;width:100%;text-align:center}.homeTitle__mid{position:absolute;left:50%;top:50%;z-index:4;width:auto;height:auto;transform:translate(-50%,-50%);pointer-events:none}.homeTitle__mid,.homeTitle__pet{display:flex;align-items:center;justify-content:center}.homeTitle__pet{container-type:size;width:var(--home-pet-w);height:var(--home-pet-h)}.homeTitle__pet--interactive{pointer-events:auto;touch-action:none;-moz-user-select:none;user-select:none;-webkit-user-select:none;cursor:-webkit-grab;cursor:grab;will-change:transform;transform:translateZ(0);-webkit-backface-visibility:hidden;backface-visibility:hidden}.homeTitle__pet--interactive:active{cursor:-webkit-grabbing;cursor:grabbing}.homeTitle__pet>*{margin:0!important;transform-origin:50% 58%;scale:min(1.08,100cqw/128,100cqh/160);pointer-events:none}.homeTitle__footer{position:relative;z-index:3;display:flex;flex-direction:column;align-items:center;gap:clamp(.45rem,1.4vh,.9rem);width:min(100%,36rem);min-height:0;animation:home-footer-in 1s cubic-bezier(.16,1,.3,1) .2s both;pointer-events:auto}.homeTitle__tag{margin:0;max-width:34ch;font-family:var(--font-body);font-size:clamp(.85rem,min(2.4vw,2.2vh),1.15rem);font-weight:700;line-height:1.3;color:#fff;text-shadow:0 2px 0 #3d2418,0 0 12px rgba(30,50,20,.45)}.homeTitle__actions{display:flex;flex-wrap:wrap;gap:clamp(.45rem,1.2vh,.75rem);justify-content:center}.homeTitle__btn,.homeTitle__btnGhost{min-width:min(10rem,42vw);font-size:clamp(.92rem,1.8vh,1.08rem);padding-block:clamp(.55rem,1.4vh,.85rem)}.homeTitle__btnGhost{color:var(--pink);background:rgba(255,255,255,.88);border-color:var(--line)}@media (max-width:640px){.homeTitle__nav{gap:.35rem}.homeTitle__navCta,.homeTitle__navLink{padding-inline:.65rem}.homeTitle__actions{width:100%}.homeTitle__btn,.homeTitle__btnGhost{flex:1 1 7.5rem}}@media (max-height:640px){.homeTitle{--home-pet-w:min(36vw,22vh,9rem);--home-pet-h:min(42vw,26vh,10.5rem)}.homeTitle__logo{max-height:min(30vh,calc(50% - (var(--home-pet-h) / 2) - 1.5rem))}.homeTitle__tag{display:none}}@media (prefers-reduced-motion:reduce){.homeTitle__footer{animation:none}}.page{min-height:100vh;background:radial-gradient(ellipse 80% 50% at 50% 0,#fff8fc 0,transparent 55%),linear-gradient(180deg,#fff,#fff5fa)}.shell--home{min-height:100vh;display:flex;flex-direction:column;padding-bottom:2rem}.nav{display:flex;justify-content:space-between;gap:1rem;margin-bottom:1.5rem}.brand,.nav{align-items:center}.brand{display:inline-flex;gap:.55rem;font-family:var(--font-display);font-weight:700;font-size:1.15rem;letter-spacing:.04em;color:var(--pink-hot);text-transform:uppercase}.brandIcon{width:2.35rem;height:2.35rem;object-fit:contain;flex:0 0 auto}.brandWord{display:flex;flex-direction:column;line-height:.95}.brandWord span:first-child{font-size:.62rem;letter-spacing:.22em;color:var(--pink-soft)}.brandWord span:last-child{font-size:1.15rem;letter-spacing:.12em}.navLinks{display:flex;gap:.55rem;align-items:center}.button,.buttonGhost,.navLink{border-radius:999px;padding:.65rem 1.15rem;border:1px solid transparent;cursor:pointer;font-weight:700;transition:transform .18s cubic-bezier(.34,1.4,.64,1),background .15s ease,box-shadow .15s ease,border-color .15s ease}.navLink{color:var(--muted);background:transparent}.navLink:hover{color:var(--pink-hot);transform:translateY(-1px)}.button{background:linear-gradient(180deg,#ff6eb4 0,var(--pink-hot) 100%);color:#fff;box-shadow:0 10px 24px rgba(255,45,138,.32),inset 0 1px 0 rgba(255,255,255,.35)}.button:hover{transform:translateY(-2px) scale(1.02)}.button:active{transform:translateY(0) scale(.97)}.button:disabled{opacity:.55;cursor:not-allowed;transform:none}.buttonGhost{background:rgba(255,255,255,.72);border-color:var(--line);color:var(--pink);box-shadow:0 6px 16px rgba(255,79,160,.1)}.buttonGhost:hover{background:#fff;transform:translateY(-1px)}.landing{flex:1 1;min-height:0;display:grid;align-content:center;justify-items:center;text-align:center;grid-gap:1.5rem;gap:1.5rem;padding:1rem 0 2.5rem;position:relative}.landing:after,.landing:before{content:"";position:absolute;border-radius:50%;pointer-events:none;filter:blur(18px);opacity:.55;animation:float-orb 8s ease-in-out infinite;z-index:0}.landing:before{width:min(220px,36vw);height:min(220px,36vw);left:4%;top:16%;background:radial-gradient(circle,#ffc4de,transparent 70%)}.landing:after{width:min(180px,30vw);height:min(180px,30vw);right:6%;bottom:18%;background:radial-gradient(circle,#ffd0e8,transparent 70%);animation-delay:-3s}.brandLockup{position:relative;z-index:1;margin:0;font-size:inherit;font-weight:inherit;animation:logo-in .95s cubic-bezier(.22,1,.36,1) both}.brandLockup__main{display:inline-flex;align-items:flex-end;gap:clamp(.15rem,1.2vw,.55rem)}.brandLockup__words{display:flex;flex-direction:column;align-items:center;line-height:.86}.brandLockup__nebula{font-size:clamp(1.35rem,5.2vw,2.85rem);letter-spacing:.28em;text-indent:.28em;color:#ff4fa0;text-shadow:0 0 1px #ffc4de,0 0 18px rgba(255,158,200,.55)}.brandLockup__nebula,.brandLockup__nook{font-family:var(--font-display);font-weight:700;text-transform:uppercase}.brandLockup__nook{font-size:clamp(4.2rem,18vw,9.5rem);letter-spacing:.04em;color:#ff3d96;-webkit-text-stroke:clamp(6px,1.4vw,14px) #fff;paint-order:stroke fill;filter:drop-shadow(0 6px 0 rgba(255,182,217,.55)) drop-shadow(0 0 22px rgba(255,120,190,.45))}.brandLockup__pet{flex:0 0 auto;width:clamp(7.5rem,22vw,11rem);height:clamp(8.5rem,24vw,12.5rem);display:flex;align-items:flex-end;justify-content:center;margin-bottom:clamp(.1rem,.6vw,.35rem);margin-right:clamp(-.6rem,-1.2vw,-.2rem)}.brandLockup__pet>*{margin:0!important}.heroTag{margin:0;max-width:28ch;font-size:1.12rem;line-height:1.45;color:var(--muted);font-weight:600;animation:fade-up .8s ease .18s both}.heroActions,.heroTag{position:relative;z-index:1}.heroActions{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center;animation:fade-up .8s ease .3s both}.heroActions .button{min-width:9.5rem;font-size:1.05rem;padding:.85rem 1.4rem}.downloadSteps{margin:0 0 1.35rem;padding-left:1.25rem;color:var(--ink);font-weight:600;line-height:1.55}.downloadSteps li+li{margin-top:.65rem}.downloadSteps strong{color:var(--pink-hot)}.downloadActions{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}@keyframes glow-pulse{0%,to{opacity:.7;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}.panel{width:min(920px,100%);margin:0 auto;padding:1.65rem 1.65rem 1.85rem;border-radius:2rem;background:rgba(255,255,255,.78);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow)}.panelHeader{display:flex;justify-content:space-between;gap:1rem;align-items:baseline;margin-bottom:1.35rem}.panelHeader h1{margin:0;font-family:var(--font-display);font-size:clamp(1.8rem,4vw,2.35rem);font-weight:700;color:var(--pink-hot);letter-spacing:.02em}.panelHeader p{margin:.35rem 0 0;color:var(--muted);font-weight:600}.panelHeaderMeta{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;justify-content:flex-end}.pill{font-family:var(--font-display);font-weight:700;font-size:.78rem;color:var(--pink-hot);background:var(--pink-mist);border:1px solid var(--line);border-radius:999px;padding:.35rem .7rem;white-space:nowrap}.pillError{color:#d9486e;background:#ffe8ef;border-color:rgba(217,72,110,.25)}.accountPreview{display:flex;justify-content:center;margin:.5rem 0 1.25rem;padding:1rem;border-radius:1.5rem;background:radial-gradient(circle at 50% 30%,#fff 0,transparent 55%),linear-gradient(180deg,var(--pink-mist),#ffe0ef)}.accountActions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.75rem;margin-bottom:1.5rem;padding-top:1.5rem;border-top:1px solid var(--line)}.accountDevices h2{margin:0 0 .65rem;font-family:var(--font-display);font-size:1.15rem;color:var(--pink-hot)}.deviceList{list-style:none;margin:0;padding:0;display:grid;grid-gap:.55rem;gap:.55rem}.deviceRow{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:.75rem .85rem;border-radius:1rem;background:#fff;border:1px solid var(--line)}.deviceRow>div{display:flex;flex-direction:column;gap:.2rem;min-width:0}.deviceRow code{font-size:.85rem;color:var(--ink)}.errorTitle{margin:0 0 .5rem;font-size:1.85rem;color:var(--pink-hot)}.errorTitle,.nooks{font-family:var(--font-display)}.nooks{font-weight:700;color:var(--pink);background:var(--pink-mist);border:1px solid var(--line);border-radius:999px;padding:.45rem .9rem;white-space:nowrap}.grid{display:grid;grid-template-columns:220px 1fr;grid-gap:1.75rem;gap:1.75rem;align-items:start}.previewWell{border-radius:1.75rem;padding:1.25rem .75rem .85rem;background:radial-gradient(circle at 50% 30%,#fff 0,transparent 55%),linear-gradient(180deg,var(--pink-mist),#ffe0ef);border:1px solid rgba(255,158,200,.35)}.controls{display:grid;grid-gap:1.15rem;gap:1.15rem}.field label{display:flex;justify-content:space-between;margin-bottom:.45rem;font-size:.92rem;font-weight:800;color:var(--ink);letter-spacing:.02em}.field input[type=range]{width:100%;accent-color:var(--pink-hot);cursor:pointer}.textField{display:grid;grid-gap:.4rem;gap:.4rem}.textField>span,.textFieldLabel{font-size:.88rem;font-weight:800;color:var(--ink);letter-spacing:.02em}.textFieldHint{margin:-.15rem 0 0;color:var(--muted);font-size:.82rem;font-weight:600;line-height:1.35}.inputShell{display:flex;align-items:center;gap:.15rem;width:100%;border:2px solid var(--line);border-radius:1.1rem;padding:.15rem .95rem;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}.inputShell:focus-within{border-color:var(--pink-soft);box-shadow:0 0 0 4px rgba(255,158,200,.28)}.inputShellPrefix{flex:0 0 auto;color:var(--pink-soft);font-weight:800;font-size:1.05rem;-webkit-user-select:none;-moz-user-select:none;user-select:none}.authBox input,.authForm>input,.inputShell input,.textField>input{width:100%;border:2px solid var(--line);border-radius:1.1rem;padding:.85rem 1rem;background:#fff;color:var(--ink);outline:none;transition:border-color .15s ease,box-shadow .15s ease}.inputShell input{border:none;border-radius:0;padding:.8rem .25rem;background:transparent;box-shadow:none}.authBox input:focus,.authForm>input:focus,.inputShell input:focus,.textField>input:focus{border-color:var(--pink-soft);box-shadow:0 0 0 4px rgba(255,158,200,.28)}.inputShell input:focus{border:none;box-shadow:none}.authForm{display:grid;grid-gap:1rem;gap:1rem;width:100%}.authForm .button,.authForm .buttonGhost{width:100%;text-align:center}.onboardPanel{max-width:480px}.onboardSteps{display:flex;gap:.4rem;margin:0 0 1.35rem}.onboardSteps span{flex:1 1;height:6px;border-radius:999px;background:var(--pink-mist);border:1px solid var(--line)}.onboardSteps span.isActive{background:linear-gradient(90deg,var(--pink-soft),var(--pink-hot));border-color:transparent}.onboardActions{display:grid;grid-gap:.65rem;gap:.65rem;margin-top:.35rem}.swatch{width:100%;height:12px;border-radius:999px;margin-bottom:.5rem;box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}.forms{display:grid;grid-template-columns:1fr 1fr;grid-gap:.6rem;gap:.6rem}.formBtn{border:2px solid var(--line);background:#fff;border-radius:1.15rem;padding:.85rem .55rem;cursor:pointer;font-weight:800;color:var(--muted);transition:transform .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease}.formBtn:hover{transform:translateY(-1px);color:var(--pink)}.formBtnActive{border-color:var(--pink);color:var(--pink-hot);box-shadow:0 0 0 3px rgba(255,79,160,.16);background:var(--pink-mist)}.authBox{display:grid;grid-gap:.8rem;gap:.8rem;max-width:360px}.authDivider{text-align:center;color:var(--muted);font-size:.85rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.buttonGoogle{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid var(--line);border-radius:999px;padding:.75rem 1.15rem;background:#fff;color:var(--ink);font-weight:800;cursor:pointer;transition:transform .15s ease,border-color .15s ease}.buttonGoogle:hover{border-color:var(--pink-soft);transform:translateY(-1px)}.textLink{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:none;color:var(--pink);font-weight:700;cursor:pointer;padding:.25rem;text-align:center}.textLink:hover{color:var(--pink-hot)}.hint{margin:0;color:var(--muted);font-size:.92rem;line-height:1.45;font-weight:600}.devCode{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;letter-spacing:.18em;font-size:1.4rem;font-weight:800;color:var(--pink-hot)}.status{margin:.75rem 0 0;color:var(--muted);font-size:.9rem;font-weight:600}.statusError{color:#d9486e}@keyframes brand-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}@keyframes logo-in{0%{opacity:0;transform:translateY(12px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes home-footer-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-up{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes float-orb{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}@media (max-width:800px){.grid{grid-template-columns:1fr}.landing{gap:1.1rem}.brandLockup__main{gap:.1rem}.heroTag{font-size:1.02rem}}