:root{--hb-cream:#fff3dc;--hb-mint:#9fe2c8;--hb-coral:#ff8a70;--hb-butter:#ffd966;--hb-sky:#8ecff2;--hb-cream-deep:#f2dcb4;--hb-mint-deep:#5fbf9c;--hb-coral-deep:#e0654c;--hb-butter-deep:#e8b93a;--hb-sky-deep:#5aa9d6;--hb-mint-soft:#d9f5ea;--hb-coral-soft:#ffd9cf;--hb-butter-soft:#fff0bf;--hb-sky-soft:#d6eefb;--hb-ink:#4a3a30;--hb-ink-soft:#4a3a3059;--hb-white:#fff;--hb-letterbox:#f2e2c4;--hb-stage-bg:var(--hb-cream);--hb-veil:#fff3dcd1;--hb-veil-locked:#4a3a3073;--hb-radius-card:44px;--hb-radius-button:999px;--hb-border-card:10px;--hb-shadow-soft:0 10px 0 #4a3a301f, 0 24px 36px #4a3a302e;--hb-shadow-pressed:0 4px 0 #4a3a301f, 0 10px 16px #4a3a3029;--hb-ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--hb-ease-out:cubic-bezier(.2, .8, .2, 1);--hb-press-ms:.12s;--hb-font-system:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--hb-safe-top:env(safe-area-inset-top,0px);--hb-safe-right:env(safe-area-inset-right,0px);--hb-safe-bottom:env(safe-area-inset-bottom,0px);--hb-safe-left:env(safe-area-inset-left,0px)}html,body{background:var(--hb-letterbox);overscroll-behavior:none;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;width:100%;height:100%;margin:0;overflow:hidden}#stage{background:var(--hb-stage-bg);transform-origin:0 0;width:1600px;height:900px;position:absolute;top:0;left:0;overflow:hidden}#stage.hb-on-backdrop{background:0 0}.hb-backdrop{pointer-events:none;transform-origin:0 0;position:absolute;top:0;left:0;overflow:hidden}.hb-backdrop:after{content:"";opacity:0;background:#1e1612e0;transition:opacity .9s ease-out;position:absolute;inset:0}.hb-backdrop.hb-dark:after{opacity:1}.hb-backdrop.hb-veiled:after{background:var(--hb-veil);opacity:1;transition:none}#stage>.hb-layer{position:absolute;inset:0;overflow:visible}.hb-layer-bg{z-index:0}.hb-layer-back{z-index:1}.hb-layer-actors{z-index:2}.hb-layer-front{z-index:3}.hb-layer-drag{z-index:4;pointer-events:none}.hb-layer-ui{z-index:5;pointer-events:none}.hb-layer-bg,.hb-layer-back,.hb-layer-front{pointer-events:none}.hb-actor{box-sizing:border-box;transform-origin:50%;isolation:isolate;position:absolute}.hb-actor>.hb-anim{transform-origin:50% 85%;width:100%;height:100%}.hb-actor img,.hb-actor svg{object-fit:contain;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.hb-word>.hb-anim>img,.hb-prop>.hb-anim>img,.hb-clone>.hb-anim>img{filter:drop-shadow(0 0 4px var(--hb-white)) drop-shadow(0 0 4px var(--hb-white))}.hb-dragging{will-change:transform;filter:drop-shadow(0 18px 14px #4a3a3059);transition:transform .12s ease-out;transform:scale(1.15)}.hb-dimmed{opacity:.4;transition:opacity .3s ease-out}.hb-fading{opacity:0;transition:opacity .3s ease-in}.hb-snap{transition:left .15s ease-out,top .15s ease-out}.hb-slide-back{transition:left .2s ease-out,top .2s ease-out}.hb-hidden{display:none}.hb-scene-bg,.hb-scene-bg>img{object-fit:cover;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;position:absolute;inset:0}.hb-zone-plain>.hb-anim{background:var(--hb-butter);opacity:0;transform-origin:50%;border-radius:28px}.hb-zone-plain>.hb-anim.hb-anim-beacon{animation-name:hb-beacon;animation-duration:1.4s;animation-timing-function:ease-in-out}.hb-zone-plain>.hb-anim.hb-anim-beacon:before{content:none}.hb-zone-hotspot>.hb-anim{opacity:0;transform-origin:50%;position:relative}.hb-ring{box-sizing:border-box;border:8px solid var(--hb-butter);box-shadow:0 0 18px var(--hb-butter);border-radius:50%;position:absolute}.hb-zone-hotspot>.hb-anim.hb-anim-beacon{animation-name:hb-beacon;animation-duration:1.4s;animation-timing-function:ease-in-out}.hb-zone-hotspot>.hb-anim.hb-anim-beacon:before{content:none}.hb-zone-hotspot>.hb-anim.hb-anim-wiggle{animation-name:hb-zone-shiver}.hb-zone-hotspot>.hb-anim-wiggle>.hb-ring{border-color:var(--hb-white);box-shadow:none}@keyframes hb-zone-shiver{0%,to{opacity:0;transform:translate(0)}20%{opacity:.75;transform:translate(-3%)}40%{transform:translate(3%)}60%{opacity:.75;transform:translate(-2%)}80%{transform:translate(2%)}}.hb-caption{color:var(--hb-white);font:600 28px/1.2 var(--hb-font-system);opacity:0;background:#4a3a30b3;border-radius:999px;padding:8px 20px;position:absolute;bottom:28px;left:50%;transform:translate(-50%)}.hb-caption-on{opacity:1}.hb-anim-bob{animation:.9s ease-in-out hb-bob}.hb-anim-wiggle{animation:.7s ease-in-out hb-wiggle}.hb-anim-roll{animation:1s ease-in-out hb-roll}.hb-anim-squash{animation:.6s ease-in-out hb-squash}.hb-anim-jump{animation:.8s cubic-bezier(.3,0,.2,1) hb-jump}.hb-anim-spin{animation:.8s ease-in-out hb-spin}.hb-anim-hide{animation:.5s ease-in-out hb-hide}.hb-anim-emerge{animation:1.6s ease-in-out hb-emerge}.hb-anim-wobble{animation:.9s ease-in-out hb-wobble}.hb-anim-beacon{position:relative}.hb-anim-beacon:before{content:"";z-index:-1;background:radial-gradient(circle, var(--hb-butter) 0 52%, transparent 72%);border-radius:46%;animation:1.4s ease-in-out hb-beacon;position:absolute;inset:-12%}.hb-anim-loop.hb-anim-beacon:before{animation-iteration-count:infinite}.hb-anim-glow{animation:1.2s ease-in-out hb-glow}.hb-anim-ring{animation:1.2s ease-out hb-ring}.hb-anim-loop{animation-iteration-count:infinite}@keyframes hb-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-6%)}}@keyframes hb-wiggle{0%,to{transform:rotate(0)}25%{transform:rotate(-6deg)}75%{transform:rotate(6deg)}}@keyframes hb-roll{0%{transform:translate(0)rotate(0)}50%{transform:translate(6%)rotate(12deg)}to{transform:translate(0)rotate(0)}}@keyframes hb-squash{0%,to{transform:scale(1)}40%{transform:scale(1.12,.86)}70%{transform:scale(.94,1.08)}}@keyframes hb-jump{0%{transform:translateY(0)scale(1)}15%{transform:translateY(0)scale(1.1,.85)}45%{transform:translateY(-28%)scale(.92,1.12)}75%{transform:translateY(0)scale(1.12,.86)}to{transform:translateY(0)scale(1)}}@keyframes hb-spin{0%{transform:rotate(0)scale(1)}50%{transform:rotate(180deg)scale(1.15)}to{transform:rotate(360deg)scale(1)}}@keyframes hb-hide{0%,to{opacity:1;transform:translateY(0)scale(1)}40%{opacity:.45;transform:translateY(14%)scale(.9)}}@keyframes hb-emerge{0%{transform:translateY(0)scale(1)}20%{transform:translateY(-50%)scale(.94,1.08)}35%{transform:translateY(-46%)scale(1.06,.94)}50%{transform:translateY(-62%)scale(.96,1.05)}65%{transform:translateY(-46%)scale(1.05,.95)}82%{transform:translateY(-48%)scale(1)}to{transform:translateY(0)scale(1)}}@keyframes hb-wobble{0%,to{transform:rotate(0)}20%{transform:rotate(-5deg)scale(1.03)}60%{transform:rotate(5deg)scale(1.03)}}@keyframes hb-beacon{0%,to{opacity:.45;transform:scale(.96)}50%{opacity:.85;transform:scale(1.06)}}@keyframes hb-glow{0%,to{opacity:.55;transform:scale(1)}50%{opacity:1;transform:scale(1.06)}}@keyframes hb-ring{0%{opacity:.9;transform:scale(.8)}to{opacity:0;transform:scale(1.35)}}@media (prefers-reduced-motion:reduce){.hb-anim-bob,.hb-anim-wiggle,.hb-anim-roll,.hb-anim-squash,.hb-anim-jump,.hb-anim-spin,.hb-anim-hide,.hb-anim-emerge,.hb-anim-wobble,.hb-anim-glow,.hb-anim-ring,.hb-anim-beacon:before,.hb-zone-plain>.hb-anim.hb-anim-beacon,.hb-zone-hotspot>.hb-anim.hb-anim-beacon{animation-name:hb-pulse}.hb-zone-hotspot>.hb-anim.hb-anim-wiggle{animation-name:hb-zone-blink}.hb-dragging,.hb-snap,.hb-slide-back,.hb-dimmed,.hb-fading{transition:none}@keyframes hb-zone-blink{0%,to{opacity:0}50%{opacity:.7}}@keyframes hb-pulse{0%,to{opacity:1}50%{opacity:.5}}}.hb-screen{position:absolute;inset:0}.hb-start{background:radial-gradient(circle at 18% 22%, var(--hb-mint-soft) 0 170px, transparent 172px), radial-gradient(circle at 84% 76%, var(--hb-sky-soft) 0 210px, transparent 212px), radial-gradient(circle at 80% 18%, var(--hb-butter-soft) 0 110px, transparent 112px), radial-gradient(circle at 14% 82%, var(--hb-coral-soft) 0 120px, transparent 122px), var(--hb-cream)}.hb-play{cursor:pointer;filter:drop-shadow(0 22px 22px #4a3a3038);position:absolute}.hb-play>svg{width:100%;height:100%;animation:1.8s ease-in-out infinite hb-breathe;display:block}.hb-play.hb-pressed>svg{transition:transform var(--hb-press-ms) var(--hb-ease-out);animation:none;transform:scale(.9)}@keyframes hb-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.hb-select{background:radial-gradient(circle at 50% 118%, var(--hb-mint) 0 420px, transparent 422px), linear-gradient(var(--hb-sky-soft), var(--hb-cream) 70%)}.hb-card{--hb-card-accent:var(--hb-coral);position:absolute}.hb-card-1{--hb-card-accent:var(--hb-mint-deep)}.hb-card-2{--hb-card-accent:var(--hb-sky-deep)}.hb-card-face{box-sizing:border-box;border:var(--hb-border-card) solid var(--hb-white);border-radius:var(--hb-radius-card);background:var(--hb-cream);width:100%;height:100%;box-shadow:0 0 0 8px var(--hb-card-accent), var(--hb-shadow-soft);transform-origin:50% 90%;position:relative;overflow:hidden}.hb-card-bg{pointer-events:none;width:auto;max-width:none;position:absolute}.hb-card-picture{object-fit:contain;filter:drop-shadow(0 12px 10px #4a3a3040);pointer-events:none;width:62%;height:62%;position:absolute;bottom:6%;left:50%;transform:translate(-50%)}.hb-card img{-webkit-user-drag:none}.hb-card-veil{border-radius:var(--hb-radius-card);background:var(--hb-veil-locked);pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.hb-card-veil>svg{width:40%;height:40%}.hb-gate,.hb-book{position:absolute}.hb-gate>svg,.hb-book>svg{width:100%;height:100%;display:block}.hb-gate{opacity:.75}.hb-exit{pointer-events:auto;opacity:.5}.hb-book{filter:drop-shadow(0 10px 8px #4a3a3033)}.hb-book[hidden]{display:none}.hb-gate:after{content:"";background:conic-gradient(var(--hb-ink) calc(var(--hb-hold,0) * 1turn), transparent 0);opacity:0;border-radius:50%;position:absolute;inset:-8px;-webkit-mask:radial-gradient(circle,#0000 62%,#000 63%);mask:radial-gradient(circle,#0000 62%,#000 63%)}.hb-gate.hb-gate-holding:after{opacity:.6;animation:3s linear forwards hb-gate-hold}@property --hb-hold{syntax:"<number>";inherits:false;initial-value:0}@keyframes hb-gate-hold{to{--hb-hold:1}}.hb-overlay{z-index:100;background:var(--hb-veil);touch-action:none;justify-content:center;align-items:center;display:none;position:fixed;inset:0}.hb-overlay-on{display:flex}.hb-rotate{z-index:110;background:var(--hb-cream)}.hb-overlay-picture{width:min(56vmin,420px);height:min(56vmin,420px)}.hb-overlay-picture>svg{width:100%;height:100%;display:block}.hb-rotate .hb-phone{transform-box:fill-box;transform-origin:50%;animation:2.6s ease-in-out infinite hb-turn}@keyframes hb-turn{0%,20%{transform:rotate(0)}50%,80%{transform:rotate(90deg)}to{transform:rotate(0)}}.hb-unmute{cursor:pointer}.hb-unmute .hb-overlay-picture{animation:.9s ease-in-out infinite hb-shake}.hb-unmute .hb-wave{animation:.9s ease-in-out infinite hb-wave}.hb-unmute .hb-wave-2{animation-delay:.2s}@keyframes hb-shake{0%,to{transform:rotate(0)scale(1)}20%{transform:rotate(-7deg)scale(1.04)}40%{transform:rotate(7deg)scale(1.04)}60%{transform:rotate(-4deg)}}@keyframes hb-wave{0%,to{opacity:.25}50%{opacity:1}}@media (prefers-reduced-motion:reduce){.hb-play>svg,.hb-rotate .hb-phone,.hb-unmute .hb-overlay-picture{animation:none}}.hb-bubbles{justify-content:center;gap:28px;display:flex;position:absolute;top:28px;left:0;right:0}.hb-bubbles[hidden]{display:none}.hb-bubble{box-sizing:border-box;border:6px solid var(--hb-butter);background:var(--hb-white);width:120px;height:120px;box-shadow:var(--hb-shadow-soft);border-radius:50%;position:relative}.hb-bubble>img{object-fit:contain;pointer-events:none;-webkit-user-drag:none;width:calc(100% - 24px);height:calc(100% - 24px);position:absolute;inset:12px}.hb-tick{box-sizing:border-box;border:4px solid var(--hb-white);background:var(--hb-mint-deep);opacity:0;width:48px;height:48px;transition:transform .25s var(--hb-ease-bounce), opacity .2s ease-out;border-radius:50%;position:absolute;bottom:-10px;right:-10px;transform:scale(.4)}.hb-tick>svg{width:100%;height:100%;display:block}.hb-tick[data-done]{opacity:1;transform:scale(1)}.hb-bubble-count{border-radius:70px;width:140px;height:164px}.hb-bubble-count>img{height:96px;inset:12px 14px auto}.hb-ticks{justify-content:center;gap:6px;display:flex;position:absolute;bottom:12px;left:0;right:0}.hb-ticks>.hb-tick{opacity:1;background:var(--hb-cream-deep);width:34px;height:34px;transition:background-color .2s ease-out;position:static;transform:none}.hb-ticks>.hb-tick>svg{opacity:0;transition:transform .25s var(--hb-ease-bounce), opacity .2s ease-out;transform:scale(.4)}.hb-ticks>.hb-tick[data-done]{background:var(--hb-mint-deep)}.hb-ticks>.hb-tick[data-done]>svg{opacity:1;transform:none}.hb-reward{background:var(--hb-veil)}.hb-reward-panel{box-sizing:border-box;border:var(--hb-border-card) solid var(--hb-white);border-radius:var(--hb-radius-card);background:radial-gradient(circle at 12% 18%, var(--hb-sky-soft) 0 90px, transparent 92px), radial-gradient(circle at 88% 82%, var(--hb-mint-soft) 0 110px, transparent 112px), var(--hb-cream);width:1080px;height:440px;box-shadow:0 0 0 8px var(--hb-butter), var(--hb-shadow-soft);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hb-sticker{filter:drop-shadow(6px 0 0 var(--hb-white)) drop-shadow(-6px 0 0 var(--hb-white)) drop-shadow(0 6px 0 var(--hb-white)) drop-shadow(0 -6px 0 var(--hb-white));position:absolute}.hb-sticker>img{object-fit:contain;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.hb-sticker-cut{clip-path:circle(50%);position:absolute;inset:0}.hb-sticker-cut>img{object-fit:contain;pointer-events:none;-webkit-user-drag:none;max-width:none;display:block;position:absolute}.hb-reward .hb-sticker{opacity:0;transform:scale(.2)rotate(-14deg)}.hb-sticker-in{animation:hb-sticker-pop .6s var(--hb-ease-bounce) forwards}@keyframes hb-sticker-pop{0%{opacity:0;transform:scale(.2)rotate(-14deg)}to{opacity:1;transform:scale(1)rotate(-4deg)}}.hb-confetti{pointer-events:none;position:absolute;inset:0;overflow:hidden}.hb-confetti-piece{opacity:0;width:28px;height:28px;animation:2.6s ease-in forwards hb-confetti-fall;position:absolute;top:-40px}.hb-confetti-piece>svg{width:100%;height:100%;display:block}@keyframes hb-confetti-fall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:.85;transform:translateY(980px)rotate(720deg)}}.hb-bye{pointer-events:none;overflow:hidden}.hb-bye-panel{height:100%;animation-duration:1.4s;animation-timing-function:var(--hb-ease-out);animation-fill-mode:forwards;position:absolute;top:0}.hb-bye[data-close-anim=shutter] .hb-bye-panel{background:repeating-linear-gradient(180deg, var(--hb-cream-deep) 0 44px, var(--hb-butter-deep) 44px 52px);width:100%;animation-name:hb-close-shutter;left:0;transform:translateY(-100%)}@keyframes hb-close-shutter{to{transform:translateY(0)}}.hb-bye[data-close-anim=gate] .hb-bye-panel{background:repeating-linear-gradient(90deg, var(--hb-mint-deep) 0 36px, var(--hb-mint) 36px 60px);width:50%}.hb-bye[data-close-anim=gate] .hb-bye-left{animation-name:hb-close-gate-left;left:0;transform:translate(-100%)}.hb-bye[data-close-anim=gate] .hb-bye-right{animation-name:hb-close-gate-right;right:0;transform:translate(100%)}@keyframes hb-close-gate-left{to{transform:translate(0)}}@keyframes hb-close-gate-right{to{transform:translate(0)}}.hb-bye[data-close-anim=door] .hb-bye-panel{background:var(--hb-butter-deep);transform-origin:0;width:100%;animation-name:hb-close-door;left:0;transform:scaleX(0)}@keyframes hb-close-door{to{transform:scaleX(1)}}.hb-bye-veil{opacity:0;background:#1e1612e0;transition:opacity .9s ease-out;position:absolute;inset:0}.hb-bye.hb-dark .hb-bye-veil{opacity:1}.hb-bye-book{animation:1.8s ease-in-out infinite hb-breathe}.hb-album{background:radial-gradient(circle at 8% 90%, var(--hb-mint-soft) 0 160px, transparent 162px), radial-gradient(circle at 94% 12%, var(--hb-butter-soft) 0 140px, transparent 142px), var(--hb-sky-soft)}.hb-album-sheet{border:var(--hb-border-card) solid var(--hb-white);border-radius:var(--hb-radius-card);background:var(--hb-cream);width:1120px;height:820px;box-shadow:0 0 0 8px var(--hb-sky-deep), var(--hb-shadow-soft);position:absolute;top:40px;left:240px;overflow:hidden}.hb-album-page{width:1600px;height:900px;position:absolute;top:-50px;left:-250px}.hb-page-in{animation:.26s ease-out hb-page-in}@keyframes hb-page-in{0%{opacity:0}}.hb-album-button,.hb-album-cover,.hb-album-badge,.hb-album-slot{position:absolute}.hb-album-button{filter:drop-shadow(0 10px 8px #4a3a3038)}.hb-album-button[hidden]{display:none}.hb-album-button>svg{width:100%;height:100%;display:block}.hb-album-cover>img,.hb-album-badge>img{object-fit:cover;pointer-events:none;-webkit-user-drag:none;width:100%;height:100%;display:block}.hb-album-cover>img{object-fit:contain}.hb-album-cover{filter:drop-shadow(0 14px 12px #4a3a3038)}.hb-album-badge{border:8px solid var(--hb-white);box-shadow:var(--hb-shadow-soft);border-radius:999px;overflow:hidden}.hb-album-slot{background:var(--hb-cream-deep);border-radius:50%}.hb-album-slot>.hb-anim{width:100%;height:100%;position:relative}.hb-album-slot .hb-sticker{inset:10px}.hb-sticker.hb-sticker-empty{filter:grayscale()brightness(.55);opacity:.25}@media (prefers-reduced-motion:reduce){.hb-bye-book,.hb-page-in,.hb-gate.hb-gate-holding:after{animation:none}.hb-sticker-in,.hb-bye-panel{animation-duration:1ms}.hb-confetti-piece{opacity:0;animation:none}.hb-tick,.hb-ticks>.hb-tick>svg,.hb-bye-veil{transition:none}}.hb-dev-error{z-index:200;background:var(--hb-white);color:var(--hb-coral-deep);white-space:pre-wrap;margin:0;padding:16px;font:14px/1.4 ui-monospace,monospace;position:fixed;inset:16px;overflow:auto}.hb-parrot{background:var(--hb-veil);pointer-events:none;position:absolute;inset:0}.hb-parrot[hidden]{display:none}.hb-parrot-picture{background:var(--hb-white);box-shadow:var(--hb-shadow-soft);border-radius:50%;position:absolute}.hb-parrot-picture>.hb-sticker{inset:12%}.hb-mic{pointer-events:auto;cursor:pointer;touch-action:none;filter:drop-shadow(0 22px 22px #4a3a3038);position:absolute}.hb-mic>svg{width:100%;height:100%;transition:transform var(--hb-press-ms) var(--hb-ease-out);display:block}.hb-mic .hb-mic-wave{opacity:0;transition:opacity .2s ease-out}.hb-mic[data-state=pulse]>svg{animation:1.2s ease-in-out infinite hb-breathe}.hb-mic[data-state=recording]>svg{transform:scale(.92)}.hb-mic[data-state=recording] .hb-mic-wave{opacity:1;animation:.6s ease-in-out infinite alternate hb-mic-wave}.hb-mic[data-state=idle]{opacity:.6}@keyframes hb-mic-wave{0%{opacity:.35}to{opacity:1}}@media (prefers-reduced-motion:reduce){.hb-mic[data-state=pulse]>svg,.hb-mic[data-state=recording] .hb-mic-wave{animation:none}}.hb-parent{z-index:50;overscroll-behavior:contain;background:var(--hb-cream);color:var(--hb-ink);font:400 1rem/1.5 var(--hb-font-system);touch-action:pan-y;-webkit-user-select:text;user-select:text;-webkit-touch-callout:default;padding:max(16px, var(--hb-safe-top)) max(16px, var(--hb-safe-right)) max(24px, var(--hb-safe-bottom)) max(16px, var(--hb-safe-left));box-sizing:border-box;position:fixed;inset:0;overflow-y:auto}.hb-parent *,.hb-parent :before,.hb-parent :after{box-sizing:border-box}.hb-parent h1,.hb-parent h2,.hb-parent h3{margin:0;font-weight:700;line-height:1.2}.hb-parent h1{font-size:1.75rem}.hb-parent h2{margin-bottom:.75rem;font-size:1.25rem}.hb-parent h3{font-size:1rem}.hb-parent p{max-width:38rem;margin:0 0 .75rem}.hb-parent a{color:var(--hb-coral-deep);text-underline-offset:3px;font-weight:600}.hb-parent :focus-visible{outline:3px solid var(--hb-sky-deep);outline-offset:2px}.hb-parent-page{max-width:44rem;margin:0 auto}.hb-parent-head{border-bottom:3px solid var(--hb-butter);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding:8px 0 20px;display:flex}.hb-parent-lede{color:var(--hb-ink);opacity:.8;margin:4px 0 0}.hb-parent-section{border-bottom:1px solid var(--hb-ink-soft);padding:24px 0}.hb-hint,.hb-parent-empty{opacity:.75;font-size:.9rem}.hb-saved{min-height:1.5em;color:var(--hb-mint-deep);margin:0;font-size:.9rem;font-weight:600}.hb-saved-failed{color:var(--hb-coral-deep)}.hb-button{border-radius:var(--hb-radius-button);min-height:48px;font:600 1rem/1.2 var(--hb-font-system);cursor:pointer;touch-action:manipulation;border:0;padding:10px 22px}.hb-button:disabled{cursor:default;opacity:.45}.hb-button-primary{background:var(--hb-coral);color:var(--hb-white);box-shadow:0 4px 0 var(--hb-coral-deep)}.hb-button-secondary{background:var(--hb-sky);color:var(--hb-ink);box-shadow:0 4px 0 var(--hb-sky-deep)}.hb-button-danger{background:var(--hb-white);color:var(--hb-coral-deep);box-shadow:inset 0 0 0 2px var(--hb-coral)}.hb-button-quiet{color:var(--hb-ink);text-underline-offset:3px;background:0 0;text-decoration:underline}.hb-button:not(:disabled):active{box-shadow:none;transform:translateY(2px)}.hb-today-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 12px;padding:0;list-style:none;display:grid}.hb-today-word{justify-items:center;gap:8px;display:grid}.hb-today-picture{aspect-ratio:1;background:var(--hb-white);width:min(120px,100%);box-shadow:0 0 0 4px var(--hb-butter);border-radius:50%;position:relative}.hb-today-picture .hb-sticker{inset:14%}.hb-today-label{font-size:1.125rem;font-weight:700}.hb-today-play{cursor:pointer;background:0 0;border:0;border-radius:50%;width:48px;height:48px;padding:0}.hb-today-play>svg{width:100%;height:100%;display:block}.hb-today-tip em{font-style:normal;font-weight:700}.hb-facts{flex-wrap:wrap;gap:8px 32px;margin:0 0 16px;display:flex}.hb-facts dt{opacity:.75;font-size:.85rem}.hb-facts dd{margin:0;font-weight:700}.hb-scene-progress{padding:12px 0}.hb-scene-row{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.hb-scene-count{font-variant-numeric:tabular-nums;font-weight:600}.hb-dots{flex-wrap:wrap;gap:6px;margin:8px 0 4px;display:flex}.hb-dot{background:var(--hb-cream-deep);border-radius:50%;width:22px;height:22px}.hb-dot-on{background:var(--hb-mint-deep);box-shadow:0 0 0 3px var(--hb-white), 0 0 0 4px var(--hb-mint-deep)}.hb-scene-words summary{cursor:pointer;min-height:44px;color:var(--hb-sky-deep);padding:10px 0;font-weight:600;display:inline-block}.hb-word-list{margin:0;padding:0;list-style:none}.hb-word-list li{border-top:1px dashed var(--hb-ink-soft);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;padding:6px 0;display:flex}.hb-word-name{font-weight:600}.hb-word-marks{flex-wrap:wrap;gap:6px;display:flex}.hb-mark{border-radius:var(--hb-radius-button);background:var(--hb-cream-deep);padding:2px 10px;font-size:.85rem}.hb-mark-on{background:var(--hb-mint-soft)}.hb-mark-phrase{background:var(--hb-butter-soft)}.hb-field{border:0;margin:0 0 20px;padding:0}.hb-field legend,.hb-field>label{margin-bottom:8px;font-weight:600;display:block}.hb-field input[type=text]{border:2px solid var(--hb-cream-deep);background:var(--hb-white);width:min(100%,22rem);min-height:48px;color:var(--hb-ink);font:1rem var(--hb-font-system);border-radius:12px;padding:10px 14px}.hb-field input[type=text]:focus{border-color:var(--hb-sky-deep)}.hb-segments{border-radius:var(--hb-radius-button);background:var(--hb-cream-deep);margin-bottom:8px;padding:4px;display:inline-flex}.hb-segments label{cursor:pointer;position:relative}.hb-segments input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.hb-segments span{border-radius:var(--hb-radius-button);text-align:center;min-width:96px;min-height:44px;padding:10px 18px;font-weight:600;display:block}.hb-segments input:checked+span{background:var(--hb-white);box-shadow:0 2px 0 var(--hb-ink-soft)}.hb-segments input:focus-visible+span{outline:3px solid var(--hb-sky-deep)}.hb-toggle>label{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;max-width:38rem;min-height:48px;margin:0;display:flex}.hb-toggle input{appearance:none;background:var(--hb-cream-deep);cursor:pointer;border-radius:16px;flex:none;width:56px;height:32px;margin:0;transition:background-color .15s ease-out;position:relative}.hb-toggle input:before{content:"";background:var(--hb-white);width:24px;height:24px;box-shadow:0 1px 2px var(--hb-ink-soft);border-radius:50%;transition:transform .15s ease-out;position:absolute;top:4px;left:4px}.hb-toggle input:checked{background:var(--hb-mint-deep)}.hb-toggle input:checked:before{transform:translate(24px)}.hb-steps{margin:0 0 12px;padding-left:1.4rem}.hb-steps li{margin-bottom:4px}.hb-parent-install .hb-button{margin-bottom:8px}.hb-parent-install .hb-button[hidden]{display:none}.hb-parent-data .hb-button-danger{margin-bottom:8px}.hb-confirm{border-left:4px solid var(--hb-coral);background:var(--hb-coral-soft);max-width:38rem;margin:8px 0 12px;padding:16px}.hb-confirm[hidden]{display:none}.hb-confirm-actions{flex-wrap:wrap;gap:8px 16px;display:flex}.hb-parent-foot{padding:24px 0 8px;font-size:.9rem}.hb-parent[data-parent=gate]{background:var(--hb-veil);justify-content:center;align-items:center;display:flex}.hb-gate-card{background:var(--hb-cream);width:min(100%,22rem);box-shadow:var(--hb-shadow-soft);text-align:center;border-radius:24px;margin:auto;padding:20px}.hb-gate-card p{margin-left:auto;margin-right:auto}.hb-gate-intro{font-size:.95rem}.hb-gate-sum{font-variant-numeric:tabular-nums;margin:0 0 4px;font-size:2rem;font-weight:700}.hb-gate-answer{border-bottom:3px solid var(--hb-ink);font-variant-numeric:tabular-nums;width:6rem;min-height:2.75rem;margin:0 auto 12px;font-size:2rem;font-weight:700;display:block}.hb-keypad{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px;display:grid}.hb-key{background:var(--hb-white);min-height:56px;box-shadow:0 3px 0 var(--hb-cream-deep);color:var(--hb-ink);font:700 1.5rem/1 var(--hb-font-system);cursor:pointer;touch-action:manipulation;border:0;border-radius:14px}.hb-key:active{box-shadow:none;transform:translateY(2px)}.hb-key-erase{place-items:center;display:grid}.hb-key-erase>svg{width:36px;height:36px}.hb-key-submit{background:var(--hb-coral);box-shadow:0 3px 0 var(--hb-coral-deep);color:var(--hb-white);font-size:1rem}@media (max-height:520px) and (orientation:landscape){.hb-gate-card{grid-template-columns:1fr 1fr;align-items:center;column-gap:20px;width:min(100%,36rem);display:grid}.hb-gate-card>.hb-keypad{grid-area:1/2/span 5}.hb-key{min-height:48px}}@media (max-width:520px){.hb-today-list{gap:8px}}@media (prefers-reduced-motion:reduce){.hb-toggle input,.hb-toggle input:before{transition:none}}.hb-parrot-status{margin:8px 0 0;font-size:.9rem}.hb-parrot-status[data-mic-status=ready]{color:var(--hb-mint-deep);font-weight:600}.hb-parrot-status[data-mic-status=denied],.hb-parrot-status[data-mic-status=error],.hb-parrot-status[data-mic-status=unsupported]{color:var(--hb-coral-deep)}.hb-toggle [data-hb=parrot-retry]{margin-top:8px}.hb-privacy-inline{border-left:4px solid var(--hb-butter);background:var(--hb-white);max-width:40rem;margin:8px 0 16px;padding:4px 16px 16px}.hb-privacy-inline[hidden]{display:none}.hb-privacy-inline h1{margin:12px 0 8px;font-size:1.3rem}.hb-privacy-inline h2{margin:20px 0 8px;font-size:1.05rem}
