.bebo-stage{position:relative;width:100%;max-width:340px;margin:0 auto;display:grid;place-items:center;padding:14px 0 6px;isolation:isolate}.bebo-stage:before{content:"";position:absolute;inset:-6% 8% 2%;z-index:-1;border-radius:50%;background:radial-gradient(60% 55% at 50% 42%,rgba(255,217,160,.3),transparent 70%),radial-gradient(80% 80% at 50% 60%,rgba(242,167,195,.16),transparent 72%),radial-gradient(90% 90% at 50% 78%,rgba(255,157,111,.1),transparent 75%);filter:blur(6px);animation:bebo-breathe 5.5s ease-in-out infinite}.bebo-stage--ceremony{max-width:320px}.bebo-model{position:relative;filter:drop-shadow(0 14px 26px rgba(23,16,31,.55));animation:bebo-float 6s ease-in-out infinite}.bebo-model__glow{position:absolute;inset:6%;z-index:0;border-radius:50%;pointer-events:none;background:radial-gradient(46% 42% at 50% 64%,rgba(255,214,170,.16),transparent 72%)}.bebo-model model-viewer,.bebo-model__still{position:relative;z-index:1;background:transparent;transition:transform .9s cubic-bezier(.22,1,.36,1);transform-origin:50% 90%}.bebo-model[data-mood=sad] model-viewer,.bebo-model[data-mood=sad] .bebo-model__still{transform:translateY(9%) rotate(-4.5deg) scale(.945)}.bebo-model[data-mood=angry] model-viewer,.bebo-model[data-mood=angry] .bebo-model__still{transform:translateY(1.5%) rotate(2.6deg) scale(1.02)}.bebo-model[data-mood=sleepy] model-viewer,.bebo-model[data-mood=sleepy] .bebo-model__still{transform:translateY(3%) rotate(-1.4deg) scale(.985)}@keyframes bebo-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes bebo-breathe{0%,to{opacity:.85;transform:scale(1)}50%{opacity:1;transform:scale(1.04)}}@media(prefers-reduced-motion:reduce){.bebo-model,.bebo-stage:before{animation:none!important}}.stage3d{position:relative;width:100%;height:100%}.stage3d canvas{touch-action:pan-y}.studio{display:flex;flex-direction:column;min-height:100dvh;padding:18px 16px calc(20px + env(safe-area-inset-bottom));gap:10px}.studio__eyebrow{font-size:.72rem;letter-spacing:.22em;color:var(--ink-faint);text-transform:uppercase}.studio__title{font-family:var(--font-display);font-size:1.65rem;font-weight:600;line-height:1.15}.studio__sub{color:var(--ink-dim);font-size:.9rem}.studio__stage{position:relative;height:44dvh;min-height:300px;border-radius:var(--radius-lg);background:radial-gradient(80% 55% at 50% 78%,rgba(255,157,111,.14) 0%,transparent 70%),linear-gradient(180deg,#ffffff09,#0000001f),var(--dusk-2);border:1px solid var(--card-edge);overflow:hidden}.studio__stage:after{content:"";position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 -28px 48px #0c06128c,inset 0 18px 40px #0c061247;border-radius:inherit}.studio__stage:before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background:radial-gradient(46% 26% at 50% 74%,rgba(255,179,92,.2) 0%,transparent 72%);animation:studio-breathe 4.6s ease-in-out infinite}@keyframes studio-breathe{0%,to{opacity:.55}50%{opacity:1}}@media(prefers-reduced-motion:reduce){.studio__stage:before{animation:none;opacity:.8}}.studio__who{position:absolute;left:12px;bottom:12px;z-index:2;background:#140c1ca8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border:1px solid var(--card-edge);border-radius:999px;padding:6px 14px 7px;line-height:1.15}.studio__who b{font-family:var(--font-display);font-size:1.02rem;font-weight:600}.studio__who span{display:block;font-size:.72rem;color:var(--ink-dim)}.dice-btn{position:absolute;right:12px;bottom:12px;z-index:2;width:64px;height:64px;border-radius:50%;border:1px solid rgba(255,214,170,.4);background:radial-gradient(120% 120% at 30% 25%,#ffb35c 0%,var(--ember-deep) 78%);color:#2a1608;font-size:1.7rem;display:grid;place-items:center;cursor:pointer;box-shadow:0 6px 22px #e5744b73;transition:transform .12s ease}.dice-btn:active{transform:scale(.9)}.dice-btn[data-rolling="1"]{animation:dice-spin .55s ease}.dice-btn:disabled{opacity:.6}@keyframes dice-spin{0%{transform:rotate(0) scale(1)}50%{transform:rotate(200deg) scale(1.18)}to{transform:rotate(360deg) scale(1)}}.dice-hint{position:absolute;right:84px;bottom:30px;z-index:2;font-size:.75rem;color:var(--ink-dim);background:#140c1c99;border-radius:999px;padding:4px 10px;pointer-events:none}.cas-tabs{display:flex;gap:8px}.cas-tab{flex:1;padding:9px 0 10px;border-radius:999px;border:1px solid var(--card-edge);background:var(--card);color:var(--ink-dim);font-family:var(--font);font-size:.88rem;cursor:pointer}.cas-tab[data-active="1"]{background:linear-gradient(180deg,#ff9d6f38,#ff9d6f1a);color:var(--ink);border-color:#ff9d6f80}.cas-tab b{display:block;font-size:1rem}.cas-tab{position:relative}.cas-tab[data-needs="1"]{border-color:#ff9d6f8c}.cas-tab__dot{position:absolute;top:7px;right:12px;width:8px;height:8px;border-radius:50%;background:var(--ember, #ff9d6f);box-shadow:0 0 #ff9d6fb3;animation:cas-dot-pulse 1.8s ease-out infinite}@keyframes cas-dot-pulse{0%{box-shadow:0 0 #ff9d6f8c}70%{box-shadow:0 0 0 7px #ff9d6f00}to{box-shadow:0 0 #ff9d6f00}}.cas-tab[data-nudge="1"]{animation:cas-tab-flash .9s ease}@keyframes cas-tab-flash{0%,to{background:var(--card)}30%{background:linear-gradient(180deg,#ff9d6f6b,#ff9d6f38);border-color:#ff9d6fd9}}@media(prefers-reduced-motion:reduce){.cas-tab__dot,.cas-tab[data-nudge="1"]{animation:none}.cas-tab__dot{box-shadow:0 0 0 3px #ff9d6f40}}.cas-panel{min-height:172px}.cas-label{font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);margin:10px 0 7px}.swatch-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.swatch{position:relative;aspect-ratio:1;border-radius:var(--radius-sm);border:1.5px solid var(--card-edge);background:var(--dusk-2);overflow:hidden;cursor:pointer;padding:0}.swatch img{width:100%;height:100%;object-fit:cover}.swatch__dot{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--font-display);font-size:.95rem;color:var(--ink)}.swatch__dot[data-hidden="1"]{visibility:hidden}.swatch__dot i{position:absolute;inset:auto auto 8px;width:14px;height:14px;border-radius:50%}.swatch[data-selected="1"]{border-color:var(--ember);box-shadow:0 0 0 2px #ff9d6f59,0 4px 14px #e5744b40}.swatch__name{position:absolute;left:0;right:0;bottom:0;font-size:.62rem;text-align:center;padding:2px 0 3px;background:linear-gradient(transparent,#0a0510d1);color:var(--ink-dim)}.eye-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.eye-dot{width:30px;height:30px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0}.eye-dot[data-selected="1"]{border-color:var(--ink);box-shadow:0 0 0 2px #ffffff40}.eye-link{margin-left:4px;border:1px solid var(--card-edge);background:var(--card);color:var(--ink-dim);border-radius:999px;font-size:.72rem;padding:5px 10px;cursor:pointer}.eye-link[data-active="1"]{color:var(--ink);border-color:#ff9d6f80;background:#ff9d6f24}.acc-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.acc-cell{position:relative;aspect-ratio:1;border-radius:var(--radius-sm);border:1.5px solid var(--card-edge);background:var(--dusk-2);cursor:pointer;overflow:hidden;padding:0}.acc-cell img{width:100%;height:100%;object-fit:contain;padding:8%}.acc-cell[data-on="1"]{border-color:var(--ember);box-shadow:0 0 0 2px #ff9d6f59}.acc-cell[data-rare="1"]:before{content:"✦";position:absolute;top:4px;right:6px;font-size:.7rem;color:var(--peach);z-index:1}.acc-cell .swatch__name{font-size:.58rem}.acc-fallback{position:absolute;inset:0;display:none;place-items:center;font-size:.66rem;color:var(--ink-dim);padding:6px;text-align:center}.acc-fallback[data-show="1"]{display:grid}.chamber{display:flex;flex-direction:column;min-height:100dvh;padding:52px 16px calc(20px + env(safe-area-inset-bottom));gap:12px;background:radial-gradient(90% 55% at 50% -8%,#241335 0%,transparent 62%),radial-gradient(120% 70% at 50% 115%,#120a1c 0%,transparent 60%),#0e0816}.chamber__eyebrow{font-size:.72rem;letter-spacing:.24em;color:var(--ink-faint);text-transform:uppercase;text-align:center}.chamber__title{font-family:var(--font-display);font-size:1.7rem;font-weight:600;text-align:center;line-height:1.15}.chamber__weight{text-align:center;color:var(--ink-dim);font-size:.92rem;max-width:34ch;margin:0 auto;line-height:1.45}.chamber__weight b{color:var(--ink);font-weight:600}.chamber__stage{position:relative;height:24dvh;min-height:170px;border-radius:var(--radius-lg);overflow:hidden;background:radial-gradient(70% 60% at 50% 80%,rgba(120,90,160,.1) 0%,transparent 70%),#0a0512;border:1px solid rgba(255,255,255,.06)}.presences{display:grid;grid-template-columns:1fr;gap:10px}.presence{position:relative;text-align:left;border-radius:var(--radius-md);border:1px solid var(--card-edge);background:var(--card);padding:14px 14px 12px 58px;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease;color:var(--ink);font-family:var(--font)}.presence:not([data-asleep="1"]):hover{transform:translateY(-1px)}.presence[data-chosen="1"]{border-color:var(--p-hue, var(--ember));box-shadow:0 0 0 2px color-mix(in srgb,var(--p-hue, #ff9d6f) 45%,transparent),0 8px 26px color-mix(in srgb,var(--p-hue, #ff9d6f) 22%,transparent)}.presence[data-asleep="1"]{opacity:.55;cursor:default}.presence__orb{position:absolute;left:14px;top:16px;width:30px;height:30px;border-radius:50%;background:radial-gradient(circle at 32% 30%,#fff9,var(--p-hue, #ff9d6f) 55%,transparent 78%);box-shadow:0 0 18px 2px color-mix(in srgb,var(--p-hue, #ff9d6f) 55%,transparent);animation:orb-breathe var(--p-period, 3.4s) ease-in-out infinite}.presence[data-asleep="1"] .presence__orb{animation:none;opacity:.4;box-shadow:none}@keyframes orb-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.16)}}.presence__label{font-weight:700;font-size:.95rem}.presence__maker{color:var(--ink-faint);font-size:.74rem;margin-left:6px}.presence__sample{margin-top:5px;font-family:var(--font-display);font-size:1rem;line-height:1.32;color:var(--ink);min-height:1.3em}.presence__sample.dim{color:var(--ink-faint);font-style:italic;font-size:.9rem;font-family:var(--font)}.chamber__cta{position:sticky;bottom:calc(8px + env(safe-area-inset-bottom));z-index:3;margin-top:2px;box-shadow:0 10px 28px #0a0510a6}.chamber__back{position:absolute;top:14px;left:14px;z-index:4;border:1px solid var(--card-edge);background:#140c1c99;color:var(--ink-dim);border-radius:999px;padding:6px 12px;font-size:.8rem;cursor:pointer;font-family:var(--font)}.chamber__foot{text-align:center;color:var(--ink-faint);font-size:.78rem}.wake-words{text-align:center;font-family:var(--font-display);font-size:1.25rem;line-height:1.4;min-height:3.6em;max-width:30ch;margin:0 auto}.wake-words .caret{opacity:.7;animation:caret-blink .9s steps(1) infinite}@keyframes caret-blink{50%{opacity:0}}@media(prefers-reduced-motion:reduce){.presence__orb,.dice-btn[data-rolling="1"]{animation:none}}.cave-tether{position:absolute;z-index:3;left:16px;right:16px;top:calc(max(env(safe-area-inset-top),12px) + 52px);pointer-events:none}.cave-tether__label{display:flex;justify-content:space-between;font-size:.72rem;color:#e8d9f2;margin-bottom:4px;text-shadow:0 1px 6px rgba(0,0,0,.8)}.cave-tether__bar{height:10px;border-radius:6px;background:#00000073;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff1a}.cave-tether__fill{height:100%;border-radius:6px;transition:width .48s ease,background .48s ease;background:linear-gradient(90deg,#ffcf8a,#8ff0d0)}.cave-tether__fill.warn{background:linear-gradient(90deg,#ffce7a,#ff9d6f)}.cave-tether__fill.low{background:linear-gradient(90deg,#ff8a6a,#d86a4b)}.cave-tether__depth{font-size:.7rem;color:#c3b0d6;margin-top:4px;text-align:center;text-shadow:0 1px 6px rgba(0,0,0,.8)}.cave-bubble{position:relative;max-width:440px;margin:0 auto 8px;padding:10px 14px;border-radius:16px 16px 16px 6px;background:linear-gradient(180deg,#2c1e3ceb,#1e132cf0);border:1px solid rgba(255,210,150,.22);color:#f4eaff;font-size:.92rem;line-height:1.4;box-shadow:0 6px 24px #00000080;animation:caveBubbleIn .4s cubic-bezier(.22,1,.36,1) both}.cave-bubble.refusal{border-color:#c79bf08c}@keyframes caveBubbleIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.cave-letterbox{position:absolute;inset:0;z-index:4;pointer-events:none}.cave-letterbox:before,.cave-letterbox:after{content:"";position:absolute;left:0;right:0;height:11vh;background:#060409;animation:caveBarIn .9s ease both}.cave-letterbox:before{top:0}.cave-letterbox:after{bottom:0}@keyframes caveBarIn{0%{height:0}}.cave-letterbox__caption{position:absolute;left:0;right:0;bottom:calc(11vh + 18px);text-align:center;color:#e9d9c8;font-family:var(--font-display);font-size:1.02rem;letter-spacing:.04em;text-shadow:0 2px 10px rgba(0,0,0,.9);animation:caveCaption 1.4s ease both .5s}@keyframes caveCaption{0%{opacity:0}to{opacity:.95}}.cave-blackout{position:absolute;inset:0;z-index:4;pointer-events:none;background:radial-gradient(ellipse at 50% 42%,transparent 5%,rgba(4,2,8,.96) 62%);animation:caveDim 2.4s ease both}.cave-scrim{position:absolute;inset:0;z-index:2;pointer-events:none;background:linear-gradient(180deg,#0a071040 30%,#0a0710c7 78%)}@keyframes caveDim{0%{opacity:0}to{opacity:1}}.cave-haul{display:flex;gap:5px;justify-content:center;margin-top:6px;min-height:20px}.cave-haul .gem{display:inline-block;width:13px;height:18px;clip-path:polygon(50% 0,100% 35%,50% 100%,0 35%);filter:drop-shadow(0 0 4px rgba(255,220,160,.35));animation:gemPop .5s cubic-bezier(.34,1.56,.64,1) both}@keyframes gemPop{0%{transform:scale(0) translateY(6px)}to{transform:none}}.cave-fork{display:flex;gap:10px}.cave-fork .chip{flex:1;padding:12px}.cave-fork .chip.hesitant{border-color:#b0764a}.cave-hazard{position:absolute;z-index:5;left:16px;right:16px;bottom:calc(var(--hud-clearance, calc(66px + env(safe-area-inset-bottom)) ) + 24px);display:flex;flex-direction:column;align-items:center;gap:10px;animation:hazardShake .5s ease infinite}.cave-bubble.warn-call{border-color:#ff9d6fd9;background:linear-gradient(180deg,#4a221ef0,#2e1418f2);font-weight:700;letter-spacing:.02em}.cave-dodge-btn{position:relative;overflow:hidden;width:min(420px,100%);padding:18px 20px;border-radius:20px;border:2px solid rgba(255,190,120,.85);background:linear-gradient(180deg,#5a2c1af2,#3a1a14f5);color:#ffe9c8;font-size:1.15rem;font-weight:800;letter-spacing:.06em;box-shadow:0 8px 30px #0009,0 0 24px #ffa05a40;cursor:pointer;animation:dodgePulse .6s ease infinite}.cave-dodge-btn__timer{position:absolute;left:0;bottom:0;height:4px;width:100%;background:linear-gradient(90deg,#ffce7a,#ff8a6a);transform-origin:left center;animation-name:dodgeTimer;animation-timing-function:linear;animation-fill-mode:forwards}@keyframes dodgeTimer{0%{transform:scaleX(1)}to{transform:scaleX(0)}}@keyframes dodgePulse{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes hazardShake{0%,to{transform:translate(0)}25%{transform:translate(-1.5px,1px)}75%{transform:translate(1.5px,-1px)}}.cave-letterbox--awe .cave-letterbox__caption{color:#ffe4b0;font-size:.98rem;letter-spacing:.06em;padding:0 22px;line-height:1.35}.cave-awe-line{position:absolute;z-index:5;left:16px;right:16px;bottom:calc(11vh + 64px);display:flex;justify-content:center}.cave-awe-line .cave-bubble{border-color:#ffd27a99;box-shadow:0 6px 30px #ffbe6e2e,0 6px 24px #00000080}.cave-fork--branches .chip{position:relative;padding-bottom:16px}.cave-fork--branches .chip.her-pick{border-color:#ffd27abf}.her-pick-tag{display:block;margin-top:4px;font-size:.68rem;color:#ffd27a;letter-spacing:.04em}.cave-haul .gem.named{outline:1px solid rgba(255,220,150,.75);outline-offset:2px;filter:drop-shadow(0 0 7px rgba(255,214,140,.75))}.cave-keepsakes{text-align:left}.cave-keepsakes__toggle{width:100%;background:none;border:none;color:#ffd9a0;font-size:.92rem;padding:2px 0;text-align:left;cursor:pointer}.cave-keepsakes__list{list-style:none;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.cave-keepsakes__list li{display:flex;gap:8px;align-items:baseline;font-size:.85rem;color:#e8d9f2;line-height:1.35}.cave-keepsakes__list .gem{flex:none;display:inline-block;width:11px;height:15px;clip-path:polygon(50% 0,100% 35%,50% 100%,0 35%);filter:drop-shadow(0 0 4px rgba(255,220,160,.45))}.cave-keepsakes--resolved{margin-top:6px;padding:8px 10px;border-radius:12px;background:#ffd28c12;border:1px solid rgba(255,210,140,.22);font-size:.86rem;text-align:left;color:#f4eaff}@media(prefers-reduced-motion:reduce){.cave-bubble,.cave-letterbox:before,.cave-letterbox:after,.cave-letterbox__caption,.cave-blackout,.cave-haul .gem,.cave-hazard,.cave-dodge-btn{animation:none}}.dream-label{margin-top:12px;padding-top:12px;border-top:1px solid rgba(224,218,240,.14)}.dream-label__ask{margin:0 0 8px;font-size:.82rem;color:#e0daf0a8}.dream-label__glyphs{display:flex;flex-wrap:wrap;gap:8px}.dream-label__glyph{display:flex;flex-direction:column;align-items:center;gap:2px;min-width:56px;padding:8px 10px;border-radius:12px;border:1px solid rgba(224,218,240,.16);background:#281e3e80;color:#f3ecff;font-size:1.15rem;cursor:pointer;transition:transform .12s ease,background .16s ease,border-color .16s ease}.dream-label__glyph:hover,.dream-label__glyph:focus-visible{transform:translateY(-2px);background:#3a2c58b8;border-color:#e0daf066;outline:none}.dream-label__word{font-size:.66rem;letter-spacing:.02em;color:#e0daf0b3}.dream-label--done{margin-top:12px;padding-top:12px;border-top:1px solid rgba(224,218,240,.14);font-size:.85rem;color:color-mix(in srgb,var(--dream-tone, #b9a6ff) 78%,white)}.dream-card{position:relative;overflow:hidden;text-align:left}.dream-card__aura{position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 90% at 88% 8%,var(--dream-tone) 0%,transparent 46%);opacity:.14}.dream-card.is-fresh .dream-card__aura{opacity:.26}.dream-card__tone{font-size:.82rem;font-weight:600;letter-spacing:.02em;text-transform:lowercase;color:color-mix(in srgb,var(--dream-tone) 90%,white)}.dream-card__text{position:relative;font-family:var(--font-display, serif);font-size:1.02rem;font-style:italic;line-height:1.55;color:#f3ecff}.dream-card__from{margin-top:8px;font-size:.76rem;color:#e0daf0bd}.dream-card .faint{color:#e0daf0b8}.world-dream-glimpse{position:absolute;left:50%;bottom:calc(146px + env(safe-area-inset-bottom));transform:translate(-50%);z-index:7;width:min(88vw,380px);padding:13px 16px;border-radius:16px;text-align:left;cursor:pointer;color:#f3ecff;background:linear-gradient(180deg,color-mix(in srgb,var(--dream-tone) 26%,rgba(24,18,40,.9)),#140f22eb);border:1px solid color-mix(in srgb,var(--dream-tone) 50%,transparent);box-shadow:0 8px 34px #0006,0 0 22px color-mix(in srgb,var(--dream-tone) 30%,transparent);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:world-dream-glimpse-in .8s cubic-bezier(.2,.7,.2,1) both}.world-dream-glimpse__eyebrow{display:block;font-size:.74rem;font-weight:600;letter-spacing:.03em;color:color-mix(in srgb,var(--dream-tone) 90%,white);margin-bottom:3px}.world-dream-glimpse__text{display:block;font-family:var(--font-display, serif);font-style:italic;font-size:.98rem;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.world-dream-glimpse__cta{display:block;margin-top:7px;font-size:.76rem;color:#dcd6ecb8}.world-dream-glimpse__dismiss{position:absolute;top:6px;right:8px;border:none;background:transparent;color:#dcd6ec80;font-size:1rem;line-height:1;cursor:pointer;padding:4px}.world-dream-glimpse__dismiss:hover{color:#dcd6ece6}@keyframes world-dream-glimpse-in{0%{opacity:0;transform:translate(-50%,16px)}to{opacity:1;transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.world-dream-glimpse{animation:none}}.pet-model{position:relative;display:grid;place-items:center;isolation:isolate;filter:drop-shadow(0 10px 20px rgba(23,16,31,.5));animation:pet-float 5.5s ease-in-out infinite}.pet-model__glow{position:absolute;inset:4%;z-index:0;border-radius:50%;pointer-events:none;background:radial-gradient(48% 46% at 50% 60%,rgba(255,214,170,.16),transparent 72%)}.pet-model model-viewer{position:relative;z-index:1;background:transparent}.pet-model__medallion{position:relative;z-index:1;width:78%;height:78%;border-radius:50%;display:grid;place-items:center;background:radial-gradient(60% 60% at 50% 40%,rgba(255,217,160,.28),transparent 72%),radial-gradient(90% 90% at 50% 70%,rgba(242,167,195,.18),transparent 74%);border:1px solid rgba(255,214,170,.22);box-shadow:inset 0 0 26px #ffc89624}.pet-model__glyph{font-size:clamp(40px,30%,88px);line-height:1;filter:drop-shadow(0 3px 8px rgba(23,16,31,.4))}@keyframes pet-float{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@media(prefers-reduced-motion:reduce){.pet-model{animation:none!important}}.pets__wallet{margin-left:auto;font-size:.9rem;color:var(--peach);background:#ffd9a01a;border:1px solid rgba(255,217,160,.24);border-radius:999px;padding:4px 12px;white-space:nowrap}.pets__empty{text-align:center;display:grid;gap:10px;place-items:center;padding:28px 20px}.pets__empty h3,.pets__roster-title{font-family:var(--font-display);letter-spacing:.01em}.pets__empty-glyph{font-size:54px;filter:drop-shadow(0 4px 10px rgba(23,16,31,.4))}.pets__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.pet-card{display:grid;place-items:center;gap:6px;padding:12px 10px 14px;border-radius:18px;background:linear-gradient(180deg,#2e1c3e8c,#22143080);border:1px solid rgba(255,217,160,.14);color:var(--ink);cursor:pointer;text-align:center;transition:transform .16s ease,border-color .16s ease}.pet-card:hover{transform:translateY(-2px);border-color:#ffd9a04d}.pet-card__name{font-family:var(--font-display);font-weight:600;font-size:1.15rem;letter-spacing:.01em}.pet-card__meta{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.pet-chip{font-size:.72rem;padding:2px 9px;border-radius:999px;border:1px solid rgba(255,217,160,.22);color:var(--ink-dim);white-space:nowrap}.pet-card__expr{font-size:.8rem;color:var(--ink-dim);line-height:1.35;min-height:2.4em}.pets__cap-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:4px}.pets__cap-note{margin-top:-4px}.pets__roster{margin-top:10px;display:grid;gap:10px}.pets__roster-title{font-size:1rem;margin:0;color:var(--ink)}.pets__roster-tier-head{font-size:.78rem;color:var(--ink-faint);margin-bottom:5px;letter-spacing:.03em}.pets__roster-row{display:flex;gap:8px;flex-wrap:wrap}.roster-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:999px;background:#22143080;border:1px solid rgba(141,122,158,.28);font-size:.8rem;color:var(--ink-faint)}.roster-chip.is-found{color:var(--ink);border-color:#ffd9a057;background:#2e1c3e99}.roster-chip__glyph{filter:grayscale(.6) opacity(.7)}.roster-chip.is-found .roster-chip__glyph{filter:none}.pets__adopt{display:grid;gap:14px}.pets__seg{display:grid;grid-template-columns:1fr 1fr;gap:6px;background:#22143080;border-radius:14px;padding:4px}.pets__seg--3{grid-template-columns:1fr 1fr 1fr}.pets__seg button{padding:9px 8px;border:none;border-radius:10px;background:transparent;color:var(--ink-dim);font-size:.86rem;cursor:pointer;transition:background .14s ease,color .14s ease}.pets__seg button.is-active{background:linear-gradient(180deg,#ffd9a033,#f2a7c324);color:var(--ink)}.pets__boost,.pets__choose{display:grid;gap:8px}.pets__choose-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:7px}.choose-chip{display:flex;align-items:center;gap:5px;padding:8px 10px;border-radius:12px;background:#22143080;border:1px solid rgba(141,122,158,.28);color:var(--ink-dim);font-size:.84rem;cursor:pointer}.choose-chip.is-active{border-color:var(--peach);color:var(--ink);background:#2e1c3eb3}.choose-chip__tier{margin-left:auto;opacity:.7}.pets__odds{display:grid;gap:8px}.pets__odds-head{font-size:.82rem;color:var(--ink-faint);letter-spacing:.03em}.pets__odds-guaranteed{margin:0;color:var(--moss);font-size:.92rem}.odds-bars{display:grid;gap:7px}.odds-bar{display:grid;grid-template-columns:92px 1fr 44px;align-items:center;gap:8px}.odds-bar__label{font-size:.8rem;color:var(--ink-dim)}.odds-bar__track{height:8px;border-radius:999px;background:#8d7a9e33;overflow:hidden}.odds-bar__fill{height:100%;border-radius:999px;transition:width .26s ease}.odds-bar__pct{font-size:.78rem;color:var(--ink-dim);text-align:right}.pets__err{color:var(--rose);font-size:.86rem}.pets__afford{text-align:center}.pets__reveal-scrim{position:fixed;inset:0;z-index:60;background:#0f0a15b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px;animation:pets-fade .22s ease}.pets__reveal{width:100%;max-width:340px;text-align:center;display:grid;gap:8px;place-items:center;padding:22px 20px 20px;border-radius:24px;background:linear-gradient(180deg,var(--dusk-2),var(--dusk-1));border:1px solid rgba(255,217,160,.22);box-shadow:0 20px 60px #00000080;animation:pets-pop .32s cubic-bezier(.22,1,.36,1)}.pets__reveal--legendary{border-color:#f2a7c380;box-shadow:0 0 60px #f2a7c33d,0 20px 60px #00000080}.pets__reveal--premium{border-color:#ffd9a070}.pets__reveal-tier{font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}.pets__reveal-name{margin:2px 0 0}.pets__reveal-el{font-size:.86rem;color:var(--ink-dim)}.pets__reveal-nature{font-size:.88rem;color:var(--ink-dim);line-height:1.4}.pets__reveal-first{font-size:.92rem;color:var(--peach);font-style:italic;line-height:1.4}.pets__reveal-actions{display:flex;gap:8px;margin-top:6px}.pets__care{display:grid;gap:14px}.pets__care-hero{display:grid;place-items:center;gap:2px}.pets__care-name{margin:4px 0 0;font-family:var(--font-display);font-size:1.6rem;letter-spacing:.01em}.pets__care-sub{font-size:.88rem;color:var(--ink-dim)}.pets__care-sig{text-align:center;max-width:260px}.pets__mind{display:grid;gap:8px;text-align:center}.pets__mind-now{font-size:.98rem;color:var(--ink);font-style:italic;line-height:1.4;min-height:1.4em}.pets__mind-cluster{display:flex;gap:10px;justify-content:center}.pets__mind-chip{font-size:1.3rem;opacity:.85}.pets__needs{display:grid;gap:7px}.need-bar{display:grid;grid-template-columns:84px 1fr;align-items:center;gap:8px}.need-bar__label{font-size:.82rem;color:var(--ink-dim)}.need-bar__track{height:9px;border-radius:999px;background:#8d7a9e33;overflow:hidden}.need-bar__fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--moss),var(--peach));transition:width .3s ease}.need-bar.is-low .need-bar__fill{background:linear-gradient(90deg,var(--ember-deep),var(--ember))}.pets__bond{display:grid;grid-template-columns:84px 1fr;align-items:center;gap:8px}.pets__bond-track{height:9px;border-radius:999px;background:#8d7a9e33;overflow:hidden}.pets__bond-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,var(--rose),var(--peach));transition:width .3s ease}.pets__care-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.pets__care-btn{display:grid;place-items:center;gap:3px;padding:12px 4px;border-radius:14px;background:linear-gradient(180deg,#2e1c3e99,#2214308c);border:1px solid rgba(255,217,160,.16);color:var(--ink);font-size:.8rem;cursor:pointer;transition:transform .14s ease,border-color .14s ease}.pets__care-btn:hover:not(:disabled){transform:translateY(-2px);border-color:#ffd9a057}.pets__care-btn:disabled{opacity:.6}.pets__care-glyph{font-size:1.4rem}.pets__care-exit{text-align:center;margin:2px 0 -2px;line-height:1.4}.btn--soft{background:#8d7a9e2e;color:var(--ink-dim)}@keyframes pets-fade{0%{opacity:0}}@keyframes pets-pop{0%{opacity:0;transform:scale(.9) translateY(10px)}}.store-screen{gap:12px;padding-bottom:calc(24px + var(--hud-clearance, calc(86px + env(safe-area-inset-bottom)) ));background:radial-gradient(120% 60% at 50% -8%,rgba(255,176,110,.14),transparent 60%),linear-gradient(180deg,#54302252,#2e1c3e00 42%)}.store-head{align-items:center}.store-title{font-family:Cormorant Garamond,serif;letter-spacing:.02em;flex:1;font-size:1.35rem;white-space:nowrap}.store-wallet{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.store-chip{padding:4px 10px;border-radius:999px;background:#ffd6aa1a;border:1px solid var(--card-edge);font-size:.82rem;white-space:nowrap}.store-chip--mat{background:#9fd8b014}.store-chip--occ{font-size:.75rem;color:var(--ink-dim)}.keeper{display:flex;gap:12px;align-items:center;padding:10px 12px 0;border-radius:var(--radius-lg);background:linear-gradient(180deg,#ffbd8212,#78462829),var(--card);border:1px solid var(--card-edge);position:relative;overflow:hidden}.keeper:after{content:"";position:absolute;left:0;right:0;bottom:0;height:22px;background:linear-gradient(180deg,#6b4430,#4a2d20);border-top:2px solid rgba(255,214,170,.28)}.keeper__stage{background:none;border:none;padding:0;cursor:pointer;flex:0 0 auto;z-index:1;filter:drop-shadow(0 10px 14px rgba(0,0,0,.4))}.keeper__side{flex:1;min-width:0;padding:10px 0 34px;z-index:1}.keeper__bubble{background:#140c1ab8;border:1px solid var(--card-edge);border-radius:16px 16px 16px 4px;padding:10px 12px;font-size:.92rem;line-height:1.35;animation:keeper-pop .24s ease-out}.keeper__bubble--bye{color:var(--peach)}@keyframes keeper-pop{0%{opacity:0;transform:translateY(4px) scale(.98)}to{opacity:1;transform:none}}.keeper__sign{margin-top:6px;font-size:.72rem;letter-spacing:.04em}.store-tabs{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.store-tabs::-webkit-scrollbar{display:none}.store-tab{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:8px 13px;border-radius:14px;border:1px solid var(--card-edge);background:var(--card);color:var(--ink-dim);font-size:.85rem;cursor:pointer;transition:background .15s,color .15s,transform .1s}.store-tab.is-active{background:linear-gradient(180deg,#ffb06e3d,#ffb06e1a);color:var(--ink);border-color:#ffbd8266}.store-tab:active{transform:scale(.97)}.store-tab__count{background:var(--ember-deep);color:#fff;border-radius:999px;font-size:.68rem;padding:1px 7px}.store-shelf-blurb{margin:-2px 2px 0}.store-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(148px,1fr));gap:10px}.store-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 10px;border-radius:18px;border:1px solid var(--card-edge);background:linear-gradient(180deg,#ffd6aa0d,#5430221f),var(--card);color:var(--ink);cursor:pointer;transition:transform .12s,border-color .15s;position:relative}.store-card:hover{border-color:#ffbd826b}.store-card:active{transform:scale(.97)}.store-card.is-far{opacity:.82}.store-card__name{font-size:.88rem;text-align:center;line-height:1.2}.store-card__owned{position:absolute;top:8px;right:10px;font-size:.68rem;color:var(--moss)}.item-thumb{border-radius:12px;object-fit:contain}.item-thumb--glyph{display:flex;align-items:center;justify-content:center;font-size:2rem;background:radial-gradient(60% 55% at 50% 58%,rgba(255,214,170,.12),transparent 75%);border-radius:50%}.price-chip{font-size:.78rem;padding:3px 9px;border-radius:999px;border:1px solid var(--card-edge);color:var(--ink-dim);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}.price-chip.is-ok{color:var(--peach);border-color:#ffd9a073}.price-chip--unlock{font-size:.72rem}.store-pen__intro{margin:0 2px}.store-pen .pets{padding:0;min-height:unset}.store-sub{margin:6px 2px 0;font-size:.95rem}.store-sub--dim{color:var(--ink-faint)}.satchel-row{display:flex;align-items:center;gap:10px;padding:10px;border-radius:16px;border:1px solid var(--card-edge);background:var(--card)}.satchel-row__body{flex:1;min-width:0}.satchel-row__name{font-size:.92rem}.satchel-row__what{font-size:.76rem;line-height:1.3}.satchel-row__give{padding:8px 12px;font-size:.82rem;white-space:nowrap}.satchel-given{display:flex;flex-wrap:wrap;gap:6px;padding:10px;border-radius:16px;border:1px solid var(--card-edge);background:#140c1a66}.satchel-given__chip{opacity:.85}.store-err{color:var(--rose);font-size:.85rem}.store-err-card{display:flex;flex-direction:column;gap:10px;align-items:flex-start}.store-loading{text-align:center;margin-top:18px}.store-sheet-scrim{position:fixed;inset:0;background:#0c0712a8;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:60;display:flex;align-items:flex-end;justify-content:center}.store-sheet{width:min(480px,100%);max-height:86vh;overflow-y:auto;border-radius:26px 26px 0 0;padding:18px 18px calc(18px + env(safe-area-inset-bottom));background:radial-gradient(120% 50% at 50% -6%,rgba(255,176,110,.16),transparent 60%),linear-gradient(180deg,#2c1b3c,#221430);border:1px solid var(--card-edge);border-bottom:none;position:relative;display:flex;flex-direction:column;align-items:center;gap:8px;animation:sheet-up .22s ease-out}@keyframes sheet-up{0%{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}.store-sheet__close{position:absolute;top:12px;right:12px}.store-sheet__stage{filter:drop-shadow(0 12px 16px rgba(0,0,0,.45))}.store-sheet__name{font-family:Cormorant Garamond,serif;font-size:1.5rem;margin:0}.store-sheet__what{text-align:center;margin:0}.store-sheet__price{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:center}.store-sheet__progress{text-align:center;font-size:.85rem;color:var(--peach);background:#ffd6aa12;border:1px solid var(--card-edge);border-radius:12px;padding:8px 12px}.store-sheet__actions{width:100%;display:flex;gap:8px;margin-top:4px}.store-sheet__actions .btn{flex:1}.store-sheet__chestnote{text-align:center}.store-sheet__patter{text-align:center;font-size:.88rem;color:var(--ink);background:#ffb06e1f;border:1px solid rgba(255,189,130,.35);border-radius:14px 14px 14px 4px;padding:8px 12px;animation:keeper-pop .24s ease-out}.store-sheet__mine{width:100%}@media(prefers-reduced-motion:reduce){.keeper__bubble,.store-sheet,.store-sheet__patter{animation:none}.store-tab,.store-card{transition:none}}.store-chip--ember{background:#f0b35c24;color:inherit;font:inherit;font-size:.82rem;cursor:pointer;display:inline-flex;align-items:center;gap:3px}.store-chip--ember:hover{background:#f0b35c3d}.store-chip__plus{opacity:.7;font-size:.72rem}.store-wishlist{display:flex;flex-direction:column;gap:6px}.store-wishlist__eyebrow{font-size:.8rem}.store-wishlist__row{display:flex;align-items:center;gap:10px;padding:6px 10px;border-radius:12px;border:1px solid var(--card-edge);background:#ffd6aa0d;cursor:pointer;text-align:left;color:inherit;font:inherit;font-size:.86rem}.store-wishlist__row:hover{background:#ffd6aa1a}.store-wishlist__line{flex:1;min-width:0}.embers-screen{gap:14px;padding-bottom:calc(24px + var(--hud-clearance, calc(86px + env(safe-area-inset-bottom)) ))}.embers-balance{margin-left:auto;font-weight:700;font-size:1.05rem;color:var(--amber, #f0b35c)}.embers-note p{margin:0}.embers-note__dots{animation:embers-pulse 1.2s ease-in-out infinite}@keyframes embers-pulse{50%{opacity:.3}}.embers-paused{border-color:var(--amber, #f0b35c)}.embers-paused p{margin:0}.embers-sub{margin:6px 0 0;font-size:.95rem;opacity:.85}.embers-ladder{gap:8px}.embers-pack{display:flex;align-items:center;gap:12px;width:100%;text-align:left;cursor:pointer}.embers-pack:disabled{opacity:.6;cursor:default}.embers-pack__embers{font-weight:700;font-size:1.05rem;min-width:84px;color:var(--amber, #f0b35c)}.embers-pack__mid{flex:1;gap:2px}.embers-pack__price{font-weight:700;font-size:1.02rem}.embers-membership ul.embers-adds{margin:4px 0;padding-left:20px;display:grid;gap:5px}.embers-adds li{font-size:.92rem}.embers-dash{gap:10px}.embers-dash__head{justify-content:space-between}.embers-dash__cap{text-align:left}.embers-capbar{height:6px;border-radius:3px;background:#ffffff14;overflow:hidden}.embers-capbar__fill{height:100%;border-radius:3px;background:var(--amber, #f0b35c);transition:width .24s ease}.embers-history{gap:6px}.embers-history__row{gap:8px;font-size:.88rem}.embers-history__label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.embers-history__delta{opacity:.8}.embers-history__delta.is-plus{color:var(--moss, #9fbf8f)}.embers-history__money{min-width:48px;text-align:right}.embers-fineprint{font-size:.8rem}.embers-membership__leave{font-size:.8rem;margin:0}.embers-note{display:grid;gap:8px}.today-together{display:flex;flex-direction:column;gap:10px}.tt-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.tt-sub{font-size:.72rem;letter-spacing:.02em;color:#e0daf099}.tt-loading{margin:0}.tt-list{display:flex;flex-direction:column;gap:10px}.tt-item{padding:12px 14px;border-radius:14px;border:1px solid rgba(224,218,240,.14);background:#281e3e6b;transition:background .2s ease,border-color .2s ease}.tt-wish{margin:0 0 10px;font-size:.92rem;line-height:1.42;color:#f3ecff}.tt-go{border:none;border-radius:999px;padding:7px 14px;font-size:.82rem;font-weight:500;color:#1c1330;background:linear-gradient(180deg,#f6d68a,#e8b866);cursor:pointer;transition:transform .12s ease,filter .16s ease}.tt-go:hover,.tt-go:focus-visible{transform:translateY(-1px);filter:brightness(1.05);outline:none}.tt-item.is-done{border-color:color-mix(in srgb,#f6d68a 32%,transparent);background:#362a1e66}.tt-done{display:flex;gap:8px;margin:0;font-size:.88rem;line-height:1.4;color:color-mix(in srgb,#f6d68a 66%,white)}.tt-check{color:#f6d68a;flex:none}.you{gap:14px;padding-bottom:calc(24px + var(--hud-clearance, calc(86px + env(safe-area-inset-bottom)) ))}.you-title{display:flex;align-items:baseline;gap:10px;min-width:0}.you-pron{font-family:var(--font);font-size:.8rem;font-weight:400;color:var(--ink-faint);letter-spacing:.02em}.you-hero{display:flex;flex-direction:column;align-items:center;gap:6px;margin-top:2px}.you-portrait{position:relative;width:226px;height:226px;display:grid;place-items:center;border:none;background:transparent;padding:0;cursor:pointer}.you-portrait:active{transform:scale(.985)}.you-aura{position:absolute;inset:6px;border-radius:50%;background:radial-gradient(circle at 50% 45%,color-mix(in srgb,var(--mood) 48%,transparent) 0%,transparent 72%);filter:blur(3px);animation:youBreathe 5.2s ease-in-out infinite;pointer-events:none}@keyframes youBreathe{0%,to{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.045)}}@media(prefers-reduced-motion:reduce){.you-aura{animation:none}}.you-arch{color:var(--ink-dim);font-size:.95rem;text-align:center}.you-arch .display{color:var(--ink);font-size:1.15rem}.you .card{background:var(--card);border:1px solid var(--card-edge);border-radius:var(--radius-lg);padding:18px}.you-h{font-family:var(--font-display);font-weight:600;font-size:1.15rem;letter-spacing:.01em;margin-bottom:10px}.you-mood{display:flex;align-items:center;gap:16px}.you-mood-ring{position:relative;width:76px;height:76px;flex:none;display:grid;place-items:center}.you-mood-ring svg{position:absolute;inset:0;width:100%;height:100%;transform:rotate(-90deg)}.you-mood-track{fill:none;stroke:#ffffff1f;stroke-width:4.5}.you-mood-fill{fill:none;stroke-width:4.5;stroke-linecap:round;transition:stroke-dashoffset .9s ease,stroke .7s ease}.you-mood-core{width:30px;height:30px;border-radius:50%;transition:background .7s ease,box-shadow .7s ease}.you-mood-text strong{font-size:1.15rem;text-transform:lowercase;letter-spacing:.02em}.you-self{margin-top:4px;color:var(--ink-dim);font-style:italic;font-size:.92rem;line-height:1.45}.you-flame{display:flex;align-items:center;gap:14px}.you-flame-glyph{font-size:1.5rem;min-width:58px;text-align:center;filter:drop-shadow(0 0 10px rgba(255,157,111,.5))}.you-bond-hint{margin-top:8px;padding-top:8px;border-top:1px dashed rgba(255,255,255,.09);font-size:.88rem;font-style:italic;color:var(--ink-dim);line-height:1.5}.you-ember{display:inline-block;width:14px;height:14px;border-radius:50%;background:radial-gradient(circle at 45% 38%,#ffd9a0,#ff9d6f 55%,#e5744b);box-shadow:0 0 12px 3px #ff9d6f8c;animation:youBreathe 3.4s ease-in-out infinite}.you-flame-stage{font-size:1.25rem;text-transform:capitalize;color:var(--peach)}.you-needs-row{display:flex;justify-content:space-around;gap:10px;margin-bottom:12px}.you-need{display:flex;flex-direction:column;align-items:center;gap:6px}.you-need-orb{position:relative;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;font-size:1.35rem;background:linear-gradient(to top,color-mix(in srgb,var(--need) 56%,transparent) var(--fill),rgba(255,255,255,.05) var(--fill)),#ffffff0a;border:1px solid color-mix(in srgb,var(--need) 45%,transparent);box-shadow:0 0 14px -4px color-mix(in srgb,var(--need) 60%,transparent)}.you-need-orb.is-low{border-style:dashed;box-shadow:none}.you-need-label{font-size:.78rem;color:var(--ink-dim);letter-spacing:.03em}.you-need-level{font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim)}.you-need-level.is-low{color:var(--peach)}.you-need-lines{display:flex;flex-direction:column;gap:7px}.you-need-line{font-size:.9rem;line-height:1.45}.you-need-line.is-low{color:var(--ink)}.you-invite{display:inline-block;margin-left:8px;padding:4px 12px;border-radius:999px;border:1px solid var(--card-edge);background:#ff9d6f24;color:var(--peach);font-family:var(--font);font-size:.82rem;cursor:pointer}.you-invite:active{transform:scale(.97)}.you-trait{font-size:.92rem;color:var(--ink-dim);padding:5px 0;border-bottom:1px dashed rgba(255,255,255,.07)}.you-trait:last-child{border-bottom:none;padding-bottom:0}.you-trait:before{content:"◦ ";color:var(--peach)}.you-memory{font-size:.92rem;line-height:1.5;color:var(--ink-dim);padding:7px 0;border-bottom:1px dashed rgba(255,255,255,.07)}.you-memory:last-child{border-bottom:none;padding-bottom:0}.you-memory-when{display:block;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim);margin-bottom:2px}.you-pets-row{display:flex;gap:10px;flex-wrap:wrap}.you-pet{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;border-radius:var(--radius-sm);border:1px solid var(--card-edge);background:#ffffff0d;color:var(--ink);font-family:var(--font);font-size:.9rem;cursor:pointer}.you-record{display:flex;flex-direction:column;gap:14px}.you-badge{display:flex;align-items:center;gap:12px}.you-badge-mark{width:44px;height:44px;flex:none;display:grid;place-items:center;border-radius:50%;font-size:1.2rem;color:var(--peach);background:radial-gradient(circle at 50% 40%,rgba(255,217,160,.22),transparent 70%);border:1px solid var(--card-edge)}.you-counts{display:flex;gap:22px}.you-count strong{font-family:var(--font-display);font-size:1.6rem;display:block;line-height:1.1}.you-count .faint{font-size:.78rem;color:var(--ink-dim)}.you-door{text-align:left;color:var(--ink);font-family:var(--font);font-size:.95rem;cursor:pointer;display:flex;align-items:center;gap:8px}.you-door .faint{font-size:.78rem;margin-left:auto;color:var(--ink-dim)}.you-away-note{margin:0 0 8px;font-size:.92rem;line-height:1.5;font-style:italic;color:var(--ink)}.you-away-gift{margin:0 0 8px;font-size:.85rem;color:var(--gold, #ffe2ae)}.you-away-wish{margin:6px 0 0;font-size:.9rem;line-height:1.5}.talk{position:fixed;inset:0;z-index:20;display:flex;flex-direction:column;justify-content:flex-end;animation:talk-in .5s ease both}@keyframes talk-in{0%{opacity:0}to{opacity:1}}.talk__backdrop{position:absolute;inset:0;backdrop-filter:blur(13px) saturate(1.05) brightness(.92);-webkit-backdrop-filter:blur(13px) saturate(1.05) brightness(.92);animation:talk-blur-in .6s ease both}@keyframes talk-blur-in{0%{backdrop-filter:blur(0) saturate(1);-webkit-backdrop-filter:blur(0) saturate(1);opacity:0}to{opacity:1}}.talk__vignette{position:absolute;inset:0;pointer-events:none;background:radial-gradient(72% 60% at 50% 42%,transparent 0%,rgba(20,12,28,.28) 62%,rgba(12,7,18,.62) 100%)}.talk__close{position:absolute;top:max(16px,env(safe-area-inset-top));right:16px;z-index:3;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,214,170,.24);background:#140c1c8c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:var(--ink, #f6eef8);font-size:1.1rem;cursor:pointer;transition:transform .12s ease,background .2s ease}.talk__close:active{transform:scale(.92)}.talk__panel{position:relative;z-index:2;margin:0 auto;width:min(560px,100%);padding:12px 14px calc(14px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:10px}.talk__transcript{display:flex;flex-direction:column;gap:8px;max-height:42vh;overflow-y:auto;padding:4px 2px;scrollbar-width:thin}.talk__msg{max-width:82%;padding:10px 14px;border-radius:18px;font-size:1rem;line-height:1.35;box-shadow:0 6px 20px #00000059;animation:talk-msg-in .28s cubic-bezier(.2,1.2,.4,1) both}@keyframes talk-msg-in{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.talk__msg--bebo{align-self:flex-start;background:#fff9f0f5;color:#2a1730;border-bottom-left-radius:6px}.talk__msg--player{align-self:flex-end;background:#543470eb;color:#f6eef8;border-bottom-right-radius:6px}.talk__who{display:block;font-family:var(--font-display, serif);font-size:.72rem;font-weight:700;letter-spacing:.02em;opacity:.7;margin-bottom:2px}.talk__text{white-space:pre-wrap;word-break:break-word}.talk__composer{display:flex;align-items:center;gap:8px;background:#140c1c99;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,214,170,.2);border-radius:999px;padding:6px 6px 6px 16px}.talk__input{flex:1;background:transparent;border:none;outline:none;color:var(--ink, #f6eef8);font:inherit;font-size:1rem}.talk__input::placeholder{color:var(--ink-faint, #8d7a9e)}.talk__send{flex:0 0 auto;width:38px;height:38px;border-radius:50%;border:none;background:linear-gradient(180deg,#ffb968,#f0894a);color:#2a1730;font-size:1.2rem;font-weight:700;cursor:pointer;transition:transform .12s ease,opacity .2s ease}.talk__send:disabled{opacity:.4;cursor:default}.talk__send:not(:disabled):active{transform:scale(.9)}@media(prefers-reduced-motion:reduce){.talk,.talk__backdrop,.talk__msg{animation:none}}.chatbar{position:absolute;left:50%;transform:translate(-50%);bottom:var(--hud-clearance, calc(66px + env(safe-area-inset-bottom)) );z-index:7;width:min(560px,calc(100vw - 24px));display:flex;flex-direction:column;align-items:stretch;gap:6px;transition:opacity .25s ease,transform .25s ease;pointer-events:none}.chatbar__row{pointer-events:auto}.chatbar--hidden{opacity:0;transform:translate(-50%) translateY(14px);pointer-events:none}.chatbar__echo{align-self:flex-end;max-width:78%;padding:7px 12px;border-radius:16px 16px 4px;background:#ffd6aa29;border:1px solid rgba(255,214,170,.22);color:var(--ink, #f6eef8);font-size:.85rem;line-height:1.35;animation:chatbar-echo-in .22s cubic-bezier(.2,1.2,.4,1)}@keyframes chatbar-echo-in{0%{opacity:0;transform:translateY(6px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.chatbar__row{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 16px;border-radius:999px;background:#180e22a8;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,214,170,.16);box-shadow:0 6px 24px #00000047;transition:border-color .2s ease,box-shadow .2s ease}.chatbar__row:focus-within{border-color:#ffd6aa61;box-shadow:0 6px 28px #ffa05a29}.chatbar__input{flex:1 1 auto;min-width:0;background:none;border:none;outline:none;color:var(--ink, #f6eef8);font:inherit;font-size:.95rem;padding:8px 0}.chatbar__input::placeholder{color:var(--ink-faint, #8d7a9e)}.chatbar__send{flex:0 0 auto;width:38px;height:38px;border-radius:50%;border:none;cursor:pointer;font-size:1.05rem;font-weight:700;color:#221430;background:linear-gradient(160deg,#ffd6aa,#f0a468);transition:transform .14s cubic-bezier(.2,1.4,.4,1),opacity .2s ease}.chatbar__send:disabled{opacity:.35;cursor:default}.chatbar__send:not(:disabled):active{transform:scale(1.1)}.chatbar__send.is-busy{animation:chatbar-breathe 1.4s ease-in-out infinite}@keyframes chatbar-breathe{0%,to{box-shadow:0 0 #ffbe8273}50%{box-shadow:0 0 0 7px #ffbe8200}}@media(prefers-reduced-motion:reduce){.chatbar,.chatbar__echo,.chatbar__send.is-busy{animation:none;transition:none}}.morning-reveal{position:absolute;inset:0;z-index:30;display:flex;align-items:flex-end;justify-content:center;pointer-events:auto}.mr-dawn{position:absolute;inset:0;background:radial-gradient(120% 60% at 50% 100%,#ffc48057,#ff946c29 38%,#0000 62%),linear-gradient(180deg,#1a143480,#40283c2e 55%,#ffb0781f);animation:mr-dawn-in 1.6s ease-out both}@keyframes mr-dawn-in{0%{opacity:0}to{opacity:1}}.mr-card{position:relative;margin-bottom:calc(var(--hud-clearance, calc(66px + env(safe-area-inset-bottom)) ) + 96px);width:min(88vw,400px);padding:18px 18px 14px;border-radius:18px;text-align:left;color:#fdf3e7;background:linear-gradient(180deg,#4a2c2ced,#1c1224f2);border:1px solid rgba(255,196,128,.45);box-shadow:0 10px 40px #00000073,0 0 28px #ffa86e47;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);cursor:pointer;animation:mr-card-in .65s cubic-bezier(.2,.7,.2,1) both}@keyframes mr-card-in{0%{opacity:0;transform:translateY(18px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.mr-dawn,.mr-card{animation:none}}.mr-dismiss{position:absolute;top:8px;right:10px;border:0;background:none;color:#fdf3e78c;font-size:.95rem;cursor:pointer;padding:4px 6px}.mr-dismiss:hover{color:#fdf3e7}.mr-eyebrow{display:block;font-size:.76rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#ffcf9a;margin-bottom:8px}.mr-line{margin:0 0 10px;font-size:1.02rem;line-height:1.5}.mr-contracts{margin:12px 0 0;font-size:.82rem;line-height:1.4;color:#ffe9cdb8}.mr-line--dream{font-style:italic;font-size:.96rem}.mr-chip{display:inline-block;margin:0 6px 8px 0;padding:6px 10px;border-radius:999px;font-size:.82rem;background:#ffc48024;border:1px solid rgba(255,196,128,.35)}.mr-chip--gift{background:#ffe9a029;border-color:#ffe9a073;box-shadow:0 0 14px #ffdc8c40}.mr-foot{display:block;font-size:.78rem;color:#fdf3e799;margin-bottom:6px}.mr-wish{display:block;width:100%;margin:4px 0 10px;padding:12px 14px;border-radius:12px;border:1px solid rgba(255,196,128,.55);background:linear-gradient(180deg,#ffb06e47,#ff8c5a29);color:#ffe9cf;font-size:.95rem;font-weight:600;cursor:pointer}.mr-wish:hover{background:linear-gradient(180deg,#ffb06e61,#ff8c5a3d)}.mr-nav{display:flex;align-items:center;justify-content:space-between;margin-top:4px}.mr-dots{display:flex;gap:6px}.mr-dot{width:7px;height:7px;border-radius:50%;background:#fdf3e740}.mr-dot.is-on{background:#ffcf9a;box-shadow:0 0 8px #ffcf9ab3}.mr-next{font-size:.8rem;color:#fdf3e7a6}.consent-ask{position:absolute;left:50%;bottom:calc(var(--hud-clearance, calc(66px + env(safe-area-inset-bottom)) ) + 96px);transform:translate(-50%);z-index:8;width:min(90vw,400px);max-height:72vh;overflow-y:auto;padding:16px 18px 14px;border-radius:18px;text-align:left;color:#f6eef8;background:linear-gradient(180deg,#3a2834f0,#160f1ef5);border:1px solid rgba(255,178,122,.4);box-shadow:0 10px 40px #00000073,0 0 26px #ff9d6f33;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);animation:consent-ask-in .7s cubic-bezier(.2,.7,.2,1) both}@keyframes consent-ask-in{0%{opacity:0;transform:translate(-50%) translateY(12px)}to{opacity:1;transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.consent-ask{animation:none}}.consent-ask__eyebrow{display:block;font-size:.74rem;font-weight:600;letter-spacing:.03em;color:var(--peach, #ffd9a0);margin-bottom:8px}.consent-ask__body{font-size:.92rem;line-height:1.55;margin:0 0 8px}.consent-ask__body em{font-style:italic;color:var(--peach, #ffd9a0)}.consent-ask__body--dim{color:#f6eef8b8;font-size:.86rem}.consent-ask__choices{display:flex;flex-direction:column;gap:8px;margin-top:12px}.consent-ask__choice{display:flex;flex-direction:column;gap:3px;padding:11px 13px;border-radius:13px;text-align:left;cursor:pointer;border:1px solid rgba(255,214,170,.22);background:#ffffff0f;transition:transform .12s ease,background .2s ease,border-color .2s ease}.consent-ask__choice:hover{background:#ffd6aa1f;border-color:#ffd6aa66}.consent-ask__choice:active{transform:scale(.99)}.consent-ask__choice:disabled{opacity:.55;cursor:default}.consent-ask__choice-name{font-weight:600;font-size:.95rem;color:#fff}.consent-ask__choice-line{font-size:.8rem;line-height:1.45;color:#f6eef8c7}.world{position:fixed;inset:0;overflow:hidden;background:radial-gradient(120% 90% at 50% 20%,#3a2450,#221430 55%,#150c1f);color:var(--ink, #f6eef8);font-family:var(--font, system-ui, sans-serif);-webkit-user-select:none;user-select:none}.world-canvas{position:absolute;inset:0;touch-action:none}.world-canvas canvas{display:block;width:100%!important;height:100%!important}.world-top{position:absolute;top:0;left:0;right:0;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:max(14px,env(safe-area-inset-top)) 18px 10px;pointer-events:none}.world-name{display:inline-flex;align-items:center;gap:9px;font-family:var(--font-display, serif);font-size:1.25rem;font-weight:600;letter-spacing:.01em;padding:8px 14px;border-radius:999px;background:#140c1c80;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,214,170,.16);text-shadow:0 1px 8px rgba(0,0,0,.5)}.world-mood-dot{width:12px;height:12px;border-radius:50%;animation:world-pulse 2.6s ease-in-out infinite}.world-mood-word{font-size:.82rem;font-weight:600;letter-spacing:.01em;text-transform:lowercase;opacity:.92;padding-left:2px}@keyframes world-pulse{0%,to{transform:scale(1);opacity:.9}50%{transform:scale(1.22);opacity:1}}.world-doing{font-family:var(--font-body, system-ui);font-size:.78rem;font-weight:500;letter-spacing:.01em;text-transform:lowercase;opacity:.78;padding-left:6px;border-left:1px solid rgba(255,214,170,.25);animation:world-doing-in .5s ease}@keyframes world-doing-in{0%{opacity:0;transform:translateY(2px)}to{opacity:.78;transform:none}}@media(prefers-reduced-motion:reduce){.world-doing{animation:none}}.world-adventure__row{display:flex;gap:10px}.world-adventure__btn{pointer-events:auto;font:inherit;font-size:.92rem;font-weight:600;padding:9px 18px;border-radius:999px;border:1px solid rgba(255,214,170,.25);background:#28182e99;color:#f4e7d0;cursor:pointer;transition:transform .15s ease,background .2s ease}.world-adventure__btn:hover{transform:translateY(-1px);background:#3c2642b3}.world-adventure__btn--join{background:linear-gradient(135deg,#ffb04ad9,#e6783cd9);color:#241436;border-color:#ffd6aa80}.world-adventure__btn--join:hover{background:linear-gradient(135deg,#ffbe64f2,#f08746f2)}.world-star{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:4}.world-star__streak{position:absolute;top:12%;left:-12%;width:130px;height:2.5px;border-radius:999px;background:linear-gradient(90deg,#fff4e000,#fff4e0 65%,#fff);box-shadow:0 0 12px #fff0d2e6,0 0 28px #ffd6aa80;transform:rotate(9deg);animation:world-star-fall 1.9s cubic-bezier(.3,0,.6,1) .2s both}@keyframes world-star-fall{0%{transform:translate(0) rotate(9deg);opacity:0}12%{opacity:1}85%{opacity:1}to{transform:translate(120vw,22vh) rotate(9deg);opacity:0}}.world-geode-flash{position:absolute;inset:0;pointer-events:none;z-index:4;background:radial-gradient(ellipse 60% 50% at 50% 62%,rgba(255,214,150,.5),rgba(255,170,90,.18) 45%,transparent 75%);animation:world-geode-bloom 2.6s ease-out both}@keyframes world-geode-bloom{0%{opacity:0}18%{opacity:1}to{opacity:0}}@media(prefers-reduced-motion:reduce){.world-star__streak{animation:world-star-fade 2.4s ease both;left:40%}.world-geode-flash{animation:world-geode-bloom 3.2s ease both}}@keyframes world-star-fade{0%{opacity:0}30%{opacity:1}to{opacity:0}}.world-chip{pointer-events:auto;font:inherit;font-size:.9rem;font-weight:600;color:var(--ink, #f6eef8);padding:8px 16px;border-radius:999px;background:#140c1c80;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,214,170,.18);cursor:pointer;transition:transform .12s ease,background .2s ease}.world-chip:active{transform:scale(.95)}.world-top-actions{display:inline-flex;align-items:center;gap:8px}.world-chip--cue{border-color:#ffc87880;background:#462c188c;animation:world-cue-breathe 3.4s ease-in-out infinite}@keyframes world-cue-breathe{0%,to{box-shadow:0 0 #ffc87800}50%{box-shadow:0 0 14px #ffc87866}}@media(prefers-reduced-motion:reduce){.world-chip--cue{animation:none}}.world-bubble{position:absolute;left:50%;top:26%;transform:translate(-50%);z-index:6;max-width:min(78vw,340px);padding:12px 18px;border-radius:20px 20px 20px 6px;background:#fff9f0f5;color:#2a1730;font-size:1.02rem;line-height:1.35;font-weight:600;text-align:center;box-shadow:0 10px 30px #00000073,0 0 0 1px #ffd6aa66;animation:world-bubble-in .32s cubic-bezier(.2,1.3,.4,1)}.world-bubble:after{content:"";position:absolute;bottom:-9px;left:34px;width:18px;height:18px;background:inherit;transform:rotate(45deg);border-radius:0 0 4px}@keyframes world-bubble-in{0%{opacity:0;transform:translate(-50%) translateY(8px) scale(.92)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.world-actions{position:absolute;left:0;right:0;bottom:calc(var(--hud-clearance, calc(66px + env(safe-area-inset-bottom)) ) + 60px);z-index:6;display:flex;justify-content:center;gap:12px;padding:0 16px}.world-action{flex:0 0 auto;display:flex;flex-direction:column;align-items:center;gap:4px;width:72px;padding:12px 6px 9px;border-radius:20px;background:#180e229e;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,214,170,.16);color:var(--ink, #f6eef8);cursor:pointer;font:inherit;transition:transform .14s cubic-bezier(.2,1.4,.4,1),background .2s ease,box-shadow .2s ease}.world-action:hover{background:#281838b3}.world-action:active,.world-action.is-busy{transform:translateY(-3px) scale(1.06);box-shadow:0 8px 22px #ffa05a47;background:#3c224ebf}.world-action-ico{font-size:1.55rem;line-height:1;filter:drop-shadow(0 2px 6px rgba(0,0,0,.4))}.world-action-label{font-size:.72rem;font-weight:600;letter-spacing:.02em;opacity:.9}.world-checkin{position:absolute;left:50%;bottom:calc(var(--hud-clearance, calc(66px + env(safe-area-inset-bottom)) ) + 140px);transform:translate(-50%);z-index:7;width:min(88vw,380px);padding:14px 16px 12px;border-radius:16px;text-align:left;color:#f6eef8;background:linear-gradient(180deg,#402628eb,#181020f0);border:1px solid rgba(255,178,122,.4);box-shadow:0 8px 34px #0006,0 0 22px #ff9d6f38;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:world-checkin-in .7s cubic-bezier(.2,.7,.2,1) both}@keyframes world-checkin-in{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.world-checkin{animation:none}}.world-checkin__eyebrow{display:block;font-size:.74rem;font-weight:600;letter-spacing:.03em;color:var(--peach, #ffd9a0);margin-bottom:3px}.world-checkin__ask{display:block;font-family:var(--font-display, serif);font-style:italic;font-size:.98rem;line-height:1.5;padding-right:16px}.world-checkin__row{display:flex;justify-content:space-between;gap:6px;margin-top:10px}.world-checkin__emoji{flex:1;padding:8px 0;font-size:1.35rem;line-height:1;border-radius:12px;border:1px solid rgba(255,214,170,.18);background:#ffffff0f;cursor:pointer;transition:transform .12s ease,background .2s ease}.world-checkin__emoji:hover{background:#ffd6aa24}.world-checkin__emoji:active{transform:scale(1.12)}.world-checkin__emoji:disabled{opacity:.5}.world-checkin__dismiss{position:absolute;top:6px;right:8px;border:none;background:transparent;color:#ecdcec80;font-size:1rem;line-height:1;cursor:pointer;padding:4px}.world-checkin__dismiss:hover{color:#ecdcece6}.world-impact-wash{position:absolute;inset:0;z-index:5;pointer-events:none;animation:world-impact-in 2.1s ease-out both}.world-impact-wash--warm{background:radial-gradient(90% 70% at 50% 62%,rgba(255,190,130,.16) 0%,transparent 70%)}.world-impact-wash--dim{background:radial-gradient(90% 70% at 50% 62%,rgba(96,116,160,.14) 0%,transparent 70%)}@keyframes world-impact-in{0%{opacity:0}22%{opacity:1}to{opacity:0}}.world-motes{position:absolute;left:50%;bottom:38%;z-index:6;pointer-events:none}.world-motes span{position:absolute;width:7px;height:7px;border-radius:50%;background:radial-gradient(circle at 45% 40%,#ffd9a0,#ff9d6f 70%);box-shadow:0 0 8px 2px #ff9d6f80;left:calc((var(--i) - 2.5) * 16px);animation:world-mote-rise 1.9s ease-out both;animation-delay:calc(var(--i) * .14s)}@keyframes world-mote-rise{0%{opacity:0;transform:translateY(0) scale(.7)}18%{opacity:1}to{opacity:0;transform:translateY(-110px) scale(.35)}}.world-impact-word{position:absolute;left:50%;top:30%;transform:translate(-50%);z-index:7;font-family:var(--font-display, serif);font-style:italic;font-size:1.05rem;color:#ffe4c2;text-shadow:0 2px 14px rgba(0,0,0,.6),0 0 24px rgba(255,157,111,.35);animation:world-impact-word-in 3s ease both;pointer-events:none}@keyframes world-impact-word-in{0%{opacity:0;transform:translate(-50%) translateY(6px)}18%,78%{opacity:1;transform:translate(-50%)}to{opacity:0}}@media(prefers-reduced-motion:reduce){.world-impact-wash,.world-motes span,.world-impact-word{animation-duration:.01s}}.world-whim{position:absolute;left:50%;top:21%;transform:translate(-50%);z-index:6;display:flex;align-items:center;gap:8px;padding:8px 14px 8px 10px;border-radius:999px 999px 999px 6px;background:#22142ce0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,214,170,.28);box-shadow:0 8px 24px #00000059;color:var(--ink, #f6eef8);font-family:inherit;font-size:.82rem;cursor:pointer;animation:world-whim-in .7s cubic-bezier(.2,1.2,.4,1) both}.world-whim__icon{font-size:1.05rem;line-height:1}.world-whim__label{font-weight:600;letter-spacing:.02em}.world-whim:active{transform:translate(-50%) scale(.96)}@keyframes world-whim-in{0%{opacity:0;transform:translate(-50%) translateY(8px) scale(.92)}to{opacity:1;transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.world-whim{animation:none}}.world-hint{position:absolute;left:0;right:0;bottom:calc(var(--hud-clearance, calc(66px + env(safe-area-inset-bottom)) ) + 134px);z-index:4;text-align:center;font-size:.74rem;letter-spacing:.04em;color:var(--ink-faint, #8d7a9e);pointer-events:none;animation:world-hint-fade 6s ease-in forwards}@keyframes world-hint-fade{0%,70%{opacity:.75}to{opacity:0}}@media(min-width:720px){.world-actions{gap:18px}.world-action{width:86px;padding:14px 8px 11px}.world-action-ico{font-size:1.75rem}.world-bubble{top:24%;font-size:1.1rem}}.world-repair-wash{position:absolute;inset:0;z-index:5;pointer-events:none;background:radial-gradient(85% 70% at 50% 82%,rgba(255,176,158,.42) 0%,rgba(255,150,130,.2) 42%,transparent 76%);mix-blend-mode:screen;animation:world-repair-wash 3.6s ease-out forwards}@keyframes world-repair-wash{0%{opacity:0}20%{opacity:1}70%{opacity:.85}to{opacity:0}}.world-repair-wash.is-held{animation:world-repair-wash-hold .6s ease-out forwards}@keyframes world-repair-wash-hold{0%{opacity:0}to{opacity:.95}}.world-repair-word{position:absolute;left:50%;top:24%;transform:translate(-50%);z-index:6;max-width:min(80vw,360px);text-align:center;font-family:var(--font-display, serif);font-size:1.4rem;font-weight:600;font-style:italic;color:#ffe0d2;text-shadow:0 2px 20px rgba(200,90,70,.65),0 1px 3px rgba(0,0,0,.5);animation:world-repair-word .6s ease both}@keyframes world-repair-word{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}.world-turn-wash{position:absolute;inset:0;z-index:5;pointer-events:none;background:radial-gradient(95% 80% at 50% 46%,rgba(90,120,200,.4) 0%,rgba(60,80,170,.22) 44%,transparent 78%);mix-blend-mode:multiply;animation:world-turn-wash 3.4s ease-out forwards}@keyframes world-turn-wash{0%{opacity:0}22%{opacity:1}68%{opacity:.82}to{opacity:0}}.world-turn-wash.is-held{animation:world-turn-wash-hold .7s ease-out forwards}@keyframes world-turn-wash-hold{0%{opacity:0}to{opacity:.95}}.world-turn-word{position:absolute;left:50%;top:24%;transform:translate(-50%);z-index:6;max-width:min(80vw,360px);text-align:center;font-family:var(--font-display, serif);font-size:1.4rem;font-weight:600;font-style:italic;color:#cdd8f2;text-shadow:0 2px 20px rgba(60,80,170,.7),0 1px 3px rgba(0,0,0,.5);animation:world-turn-word .7s ease both}@keyframes world-turn-word{0%{opacity:0;transform:translate(-50%,-6px)}to{opacity:1;transform:translate(-50%)}}.world-flare-wash{position:absolute;inset:0;z-index:5;pointer-events:none;background:radial-gradient(95% 82% at 50% 52%,rgba(216,75,60,.5) 0%,rgba(180,44,40,.28) 40%,transparent 74%);mix-blend-mode:screen;animation:world-flare-wash 3.2s cubic-bezier(.2,.9,.3,1) forwards}@keyframes world-flare-wash{0%{opacity:0}8%{opacity:1}60%{opacity:.7}to{opacity:0}}.world-flare-wash.is-held{animation:world-flare-wash-hold .4s ease-out forwards}@keyframes world-flare-wash-hold{0%{opacity:0}to{opacity:.96}}.world-flare-word{position:absolute;left:50%;top:24%;transform:translate(-50%);z-index:6;max-width:min(80vw,360px);text-align:center;font-family:var(--font-display, serif);font-size:1.4rem;font-weight:700;font-style:italic;color:#ffd9cf;text-shadow:0 2px 22px rgba(216,75,60,.8),0 1px 3px rgba(0,0,0,.55);animation:world-flare-word .4s ease both}@keyframes world-flare-word{0%{opacity:0;transform:translate(-50%,-4px) scale(.96)}to{opacity:1;transform:translate(-50%) scale(1)}}.world-chip--space{background:linear-gradient(180deg,#7882c847,#5a64aa33);border-color:#96a0dc80;color:#dfe4ff}.world-arrival{position:absolute;inset:0;z-index:8;pointer-events:none;background:radial-gradient(70% 55% at 50% 74%,rgba(120,62,30,.34) 0%,rgba(60,30,26,.18) 46%,transparent 72%),radial-gradient(120% 92% at 50% 56%,#28182c80,#160d1ec7 62%,#0e0816eb);transition:opacity 1.1s ease,backdrop-filter 1.1s ease,background 1.1s ease;backdrop-filter:blur(7px) saturate(.85);-webkit-backdrop-filter:blur(7px) saturate(.85);opacity:1;animation:world-arrival-settle 2s ease-out both}.world-arrival--settling{opacity:.88}.world-arrival--greeting{opacity:.24;backdrop-filter:blur(1.2px) saturate(1.02);-webkit-backdrop-filter:blur(1.2px) saturate(1.02);background:radial-gradient(70% 55% at 50% 74%,rgba(140,78,36,.16) 0%,transparent 60%),radial-gradient(120% 90% at 50% 56%,transparent 0%,rgba(20,12,30,.24) 80%,rgba(14,8,22,.38) 100%)}@keyframes world-arrival-settle{0%{opacity:1;backdrop-filter:blur(11px) saturate(.78);-webkit-backdrop-filter:blur(11px) saturate(.78)}to{opacity:.9;backdrop-filter:blur(6px) saturate(.9);-webkit-backdrop-filter:blur(6px) saturate(.9)}}.world-joystick{position:absolute;left:max(18px,env(safe-area-inset-left));bottom:calc(150px + env(safe-area-inset-bottom));z-index:6;width:116px;height:116px;border-radius:50%;background:radial-gradient(circle at 50% 50%,#1e122a6b,#140c1c80);border:1px solid rgba(255,214,170,.18);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);touch-action:none;cursor:grab;opacity:.72;transition:opacity .2s ease,transform .12s ease;display:grid;place-items:center}.world-joystick.is-active{opacity:.95;cursor:grabbing}.world-joystick__knob{width:48px;height:48px;border-radius:50%;background:radial-gradient(circle at 40% 35%,#ffd9a0,#f0894a);box-shadow:0 4px 14px #f0894a73,inset 0 1px 3px #ffffff80;will-change:transform}@media(pointer:fine)and (hover:hover){.world-joystick{display:none}}@media(prefers-reduced-motion:reduce){.world-joystick{transition:none}}@media(prefers-reduced-motion:reduce){.world-mood-dot,.world-bubble{animation:none}.world-hint{animation:none;opacity:.7}.world-repair-wash{animation:none;opacity:.6}.world-repair-word{animation:none}.world-turn-wash{animation:none;opacity:.6}.world-turn-word{animation:none}.world-flare-wash{animation:none;opacity:.6}.world-flare-word{animation:none}.world-arrival{animation:none;transition:none}}:root{--hud-clearance: calc(86px + env(safe-area-inset-bottom)) }@media(min-width:720px){:root{--hud-clearance: calc(102px + env(safe-area-inset-bottom)) }}.hud-bar{position:fixed;left:50%;transform:translate(-50%);bottom:calc(8px + env(safe-area-inset-bottom));z-index:40;display:flex;align-items:flex-start;gap:4px;padding:7px 9px 5px;max-width:calc(100vw - 12px);border-radius:30px;background:linear-gradient(180deg,#2e1b3aa8,#120b1ad1);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(255,214,170,.16);box-shadow:0 12px 34px #00000073,inset 0 1px #ffeacd1a}.hud-slot{position:relative;display:flex;flex-direction:column;align-items:center;gap:2px;width:50px;padding:0;border:none;background:none;color:var(--ink-faint, #9d8aae);cursor:pointer;font:inherit;-webkit-tap-highlight-color:transparent;transition:transform .16s cubic-bezier(.2,1.4,.4,1),color .2s ease}.hud-slot__ring{position:relative;display:block;width:44px;height:44px;border-radius:50%;background:radial-gradient(120% 120% at 32% 22%,rgba(255,240,220,.13) 0%,rgba(255,240,220,.03) 38%,transparent 60%),radial-gradient(100% 100% at 50% 100%,#5a326e80,#160d20d9 78%);border:1px solid rgba(255,214,170,.2);box-shadow:inset 0 2px 5px #00000073,inset 0 -1px #ffeacd12;transition:border-color .2s ease,box-shadow .25s ease,background .2s ease}.hud-slot__ico{position:absolute;top:22px;left:50%;transform:translate(-50%,-50%);font-size:1.34rem;line-height:1;filter:drop-shadow(0 2px 5px rgba(0,0,0,.5)) saturate(.92);transition:transform .16s cubic-bezier(.2,1.4,.4,1),filter .2s ease;pointer-events:none}.hud-slot__label{font-size:.6rem;font-weight:700;letter-spacing:.04em;opacity:.92;pointer-events:none}.hud-slot__key{display:none;position:absolute;top:-3px;right:0;min-width:14px;padding:1px 3px;border-radius:5px;font-size:.56rem;font-weight:700;line-height:1.2;color:#ffe8c8bf;background:#140c1cd9;border:1px solid rgba(255,214,170,.24);pointer-events:none}@media(hover:hover)and (pointer:fine){.hud-slot__key{display:block}}.hud-slot__soon{position:absolute;top:-3px;left:-3px;padding:1px 5px;border-radius:6px;font-size:.5rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:#2a1730;background:linear-gradient(180deg,#ffd9a0,#f0a868);box-shadow:0 2px 6px #0006;pointer-events:none}.hud-slot.is-soon .hud-slot__ico{filter:drop-shadow(0 2px 5px rgba(0,0,0,.5)) saturate(.7) opacity(.85)}@media(hover:hover){.hud-slot:hover{transform:translateY(-3px);color:var(--ink, #f6eef8)}.hud-slot:hover .hud-slot__ring{border-color:#ffd6aa6b;box-shadow:inset 0 2px 5px #0006,0 0 12px #ffb06a47}}.hud-slot:active{transform:scale(.9)}.hud-slot.is-active{color:var(--ink, #f6eef8);transform:translateY(-2px)}.hud-slot.is-active .hud-slot__ring{border-color:#ffbe78bf;background:radial-gradient(120% 120% at 32% 22%,rgba(255,226,185,.24) 0%,rgba(255,226,185,.06) 40%,transparent 62%),radial-gradient(100% 100% at 50% 100%,#a05c3c8c,#2e1626e6 80%);box-shadow:inset 0 2px 5px #00000059,0 0 16px #ffb06a80,0 0 3px #ffc88ccc}.hud-slot.is-active .hud-slot__ico{transform:translate(-50%,-52%) scale(1.08);filter:drop-shadow(0 0 8px rgba(255,190,120,.85))}.hud-slot.is-kbd .hud-slot__ring{border-color:#ffe2b9f2;box-shadow:inset 0 2px 5px #0000004d,0 0 20px #ffc88cd9}.hud-slot.is-kbd .hud-slot__key{color:#2a1730;background:linear-gradient(180deg,#ffd9a0,#f0a868)}.hud-slot.is-kbd{transform:translateY(-3px) scale(1.04)}.hud-toast{position:fixed;left:50%;transform:translate(-50%);bottom:calc(var(--hud-clearance, calc(86px + env(safe-area-inset-bottom)) ) + 4px);z-index:41;max-width:min(86vw,380px);padding:10px 16px;border-radius:16px;background:#22142ceb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,214,170,.28);box-shadow:0 10px 28px #00000073;color:var(--ink, #f6eef8);font:inherit;font-size:.88rem;font-weight:600;text-align:center;cursor:pointer;-webkit-tap-highlight-color:transparent;animation:hud-toast-in .28s cubic-bezier(.2,1.3,.4,1)}.hud-toast:active{transform:translate(-50%) scale(.97)}.hud-toast__cta{display:block;margin-top:4px;font-size:.74rem;font-weight:700;color:#ffd9a0}.hud-toast:after{content:"";position:absolute;bottom:-7px;left:50%;width:14px;height:14px;transform:translate(-50%) rotate(45deg);background:#22142ceb;border-right:1px solid rgba(255,214,170,.28);border-bottom:1px solid rgba(255,214,170,.28)}body:has(.hud-toast) .world-hint{opacity:0!important}@keyframes hud-toast-in{0%{opacity:0;transform:translate(-50%) translateY(8px) scale(.94)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.hud-top{position:fixed;top:max(12px,env(safe-area-inset-top));left:max(14px,env(safe-area-inset-left));z-index:7;display:inline-flex;align-items:center;gap:10px;padding:6px 16px 6px 7px;border-radius:999px;background:#140c1c8c;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,214,170,.18);box-shadow:0 6px 20px #0000004d,inset 0 1px #ffeacd14;font:inherit;color:inherit;text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:transform .14s ease}.hud-top:active{transform:scale(.97)}.hud-gloss{position:fixed;top:calc(max(12px,env(safe-area-inset-top)) + 58px);left:max(14px,env(safe-area-inset-left));z-index:7;max-width:min(78vw,340px);padding:10px 14px;border-radius:6px 16px 16px;background:#22142ceb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,214,170,.26);box-shadow:0 10px 26px #0006;color:var(--ink, #f6eef8);font-size:.86rem;font-weight:600;line-height:1.35;animation:hud-gloss-in .26s cubic-bezier(.2,1.3,.4,1)}@keyframes hud-gloss-in{0%{opacity:0;transform:translateY(-6px) scale(.96)}to{opacity:1;transform:none}}.hud-gloss{display:flex;flex-direction:column;align-items:flex-start;gap:7px;text-align:left}.hud-gloss__read{border:none;background:transparent;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer}.hud-gloss__needs{display:flex;gap:12px;font-size:.7rem;font-weight:500;letter-spacing:.04em;color:#f6eef8b8}.hud-gloss__need{display:inline-flex;align-items:center;gap:5px;border:none;background:transparent;padding:0;color:inherit;font:inherit;font-size:.7rem}.hud-gloss__need.is-invite{cursor:pointer;color:var(--peach, #ffd9a0)}.hud-gloss__dot{width:11px;height:11px;border-radius:50%;background:linear-gradient(to top,color-mix(in srgb,var(--need) 65%,transparent) var(--fill),rgba(255,255,255,.1) var(--fill));border:1px solid color-mix(in srgb,var(--need) 55%,transparent)}.hud-gloss__dot.is-low{border-style:dashed}.hud-gloss__cta{font-size:.72rem;letter-spacing:.05em;color:var(--peach, #ffd9a0);border:none;background:transparent;padding:0;font-family:inherit;font-weight:600;cursor:pointer}.hud-flame{font-size:calc(.72rem + var(--bond, .4) * .5rem);line-height:1;opacity:calc(.4 + var(--bond, .4) * .6);filter:saturate(calc(.55 + var(--bond, .4) * .6)) drop-shadow(0 0 calc(var(--bond, .4) * 9px) rgba(255,157,111,.65));transition:font-size .9s ease,opacity .9s ease,filter .9s ease,transform .3s ease;margin-left:2px}.hud-flame.is-warm{transform:scale(1.28);filter:saturate(1.2) drop-shadow(0 0 14px rgba(255,190,130,.95))}.hud-flame.is-dim{transform:scale(.86);filter:saturate(.35) drop-shadow(0 0 3px rgba(120,130,170,.5));opacity:.45}@media(prefers-reduced-motion:reduce){.hud-flame{transition:none}}.hud-mood{position:relative;width:40px;height:40px;flex-shrink:0}.hud-mood__ring{width:100%;height:100%;display:block}.hud-mood__track{fill:none;stroke:#fff6eb21;stroke-width:3.4}.hud-mood__fill{fill:none;stroke-width:3.4;stroke-linecap:round;transform:rotate(-90deg);transform-origin:50% 50%;transition:stroke-dashoffset .9s cubic-bezier(.4,0,.2,1),stroke .7s ease;filter:drop-shadow(0 0 3px rgba(255,255,255,.25));animation:hud-ring-in 1.1s cubic-bezier(.4,0,.2,1)}@keyframes hud-ring-in{0%{stroke-dashoffset:97.4}}.hud-mood__core{position:absolute;top:50%;left:50%;width:11px;height:11px;margin:-5.5px 0 0 -5.5px;border-radius:50%;animation:hud-breathe 2.6s ease-in-out infinite;transition:background .7s ease,box-shadow .7s ease}@keyframes hud-breathe{0%,to{transform:scale(1);opacity:.92}50%{transform:scale(1.2);opacity:1}}.hud-id{display:flex;flex-direction:column;gap:0;min-width:0}.hud-id__name{font-family:var(--font-display, serif);font-size:1.14rem;font-weight:600;letter-spacing:.01em;color:var(--ink, #f6eef8);text-shadow:0 1px 8px rgba(0,0,0,.5);line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:min(42vw,132px)}.hud-id__word{font-size:.7rem;font-weight:700;letter-spacing:.02em;text-transform:lowercase;transition:color .7s ease;line-height:1.2}.world .world-name{display:none}.world .world-top{justify-content:flex-end;padding-left:190px;flex-wrap:wrap;gap:6px}.world .world-actions{gap:16px}.world .world-action{position:relative;width:58px;height:58px;padding:0;gap:1px;border-radius:50%;background:radial-gradient(120% 120% at 32% 22%,rgba(255,240,220,.14) 0%,rgba(255,240,220,.04) 40%,transparent 62%),radial-gradient(100% 100% at 50% 100%,#5a326e8c,#160d20d1 80%);border:1px solid rgba(255,214,170,.26);box-shadow:inset 0 2px 5px #0006,0 6px 18px #00000059;justify-content:center}.world .world-action:hover{background:radial-gradient(120% 120% at 32% 22%,rgba(255,240,220,.2) 0%,rgba(255,240,220,.05) 40%,transparent 62%),radial-gradient(100% 100% at 50% 100%,#6e3e8299,#1e112ad9 80%)}.world .world-action:active,.world .world-action.is-busy{transform:translateY(-3px) scale(1.06);box-shadow:inset 0 2px 5px #0000004d,0 0 16px #ffb06a73;background:radial-gradient(120% 120% at 32% 22%,rgba(255,226,185,.22) 0%,rgba(255,226,185,.06) 40%,transparent 62%),radial-gradient(100% 100% at 50% 100%,#a05c3c8c,#2e1626e6 80%)}.world .world-action-ico{font-size:1.24rem}.world .world-action-label{font-size:.54rem;font-weight:700;letter-spacing:.03em;white-space:nowrap;text-shadow:0 1px 6px rgba(0,0,0,.6)}@media(min-width:720px){.hud-bar{gap:8px;padding:8px 12px 6px;bottom:calc(14px + env(safe-area-inset-bottom))}.hud-slot{width:56px}.hud-slot__ring{width:50px;height:50px}.hud-slot__ico{top:25px;font-size:1.5rem}.hud-slot__soon{top:37px}.hud-slot__label{font-size:.64rem}.hud-top{left:18px}}@media(max-width:389px){.hud-slot{width:44px}.hud-slot__ring{width:40px;height:40px}.hud-slot__ico{top:20px;font-size:1.2rem}.hud-slot__soon{top:29px}}@media(prefers-reduced-motion:reduce){.hud-slot,.hud-slot__ring,.hud-slot__ico,.hud-mood__fill,.hud-mood__core,.hud-id__word{transition:none;animation:none}.hud-toast,.hud-gloss,.hud-top{animation:none;transition:none}}.load-screen{position:fixed;inset:0;z-index:90;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;background:var(--dusk-1, #221430);pointer-events:auto}.load-screen.is-finishing,.load-screen.is-exiting{pointer-events:none}.load-screen.is-exiting{animation:lsVeilLift .7s cubic-bezier(.22,.61,.36,1) forwards}@keyframes lsVeilLift{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.045)}}.ls-scene{position:absolute;inset:0}.ls-sky{position:absolute;inset:0;background:radial-gradient(130% 55% at 50% 108%,rgba(229,116,75,.5) 0%,rgba(160,90,78,.32) 34%,transparent 62%),linear-gradient(180deg,#170f22,#241736 30%,#3b2650 55%,#55304e 72%,#7c4350,#a05a4e)}.ls-star{position:absolute;width:2px;height:2px;border-radius:50%;background:#f6eef8;opacity:.5;animation:lsTwinkle 3s ease-in-out infinite}@keyframes lsTwinkle{0%,to{opacity:.25}50%{opacity:.9}}.ls-moon{position:absolute;right:16%;top:13%;width:46px;height:46px;border-radius:50%;background:radial-gradient(circle at 38% 36%,#fdf3e0,#ecd9c0 52%,#d9bfa8);box-shadow:0 0 34px 10px #fdf3e02e;opacity:.9;animation:lsMoonHaze 7s ease-in-out infinite}.ls-moon:after{content:"";position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 62% 30%,rgba(180,150,125,.35) 0 5px,transparent 6px),radial-gradient(circle at 34% 62%,rgba(180,150,125,.3) 0 4px,transparent 5px),radial-gradient(circle at 66% 68%,rgba(180,150,125,.25) 0 3px,transparent 4px)}@keyframes lsMoonHaze{0%,to{opacity:.82}50%{opacity:.95}}.ls-hill{position:absolute;left:-12%;right:-12%;border-radius:50% 50% 0 0/100% 100% 0 0}.ls-hill--far{bottom:18%;height:22%;background:#2a1a3c;opacity:.85;transform:translate(-6%)}.ls-hill--near{bottom:0;height:30%;background:#1d1230}.ls-glow{position:absolute;left:50%;bottom:12%;width:min(150vw,640px);height:min(150vw,640px);transform:translate(-50%,42%);border-radius:50%;background:radial-gradient(circle,rgba(255,157,111,.34) 0%,rgba(255,157,111,.14) 34%,transparent 66%);animation:lsGlowPulse 3.6s ease-in-out infinite}@keyframes lsGlowPulse{0%,to{opacity:.85}50%{opacity:1}}.ls-camp{position:absolute;left:50%;bottom:20%;width:min(76vw,340px);height:min(60vw,270px);transform:translate(-50%)}.ls-ground{position:absolute;left:6%;right:6%;bottom:-6%;height:18%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(23,15,34,.9) 0%,transparent 72%)}.ls-fire{position:absolute;left:16%;bottom:0;width:38%;filter:drop-shadow(0 0 22px rgba(255,157,111,.55))}.ls-flame{transform-box:fill-box;transform-origin:50% 100%}.ls-flame--outer{animation:lsFlick 1.05s ease-in-out infinite}.ls-flame--mid{animation:lsFlick .8s ease-in-out infinite reverse}.ls-flame--core{animation:lsFlickCore .62s ease-in-out infinite}@keyframes lsFlick{0%,to{transform:scale(1) skew(0)}30%{transform:scale(.96,1.06) skew(1.6deg)}62%{transform:scale(1.04,.94) skew(-2deg)}82%{transform:scale(.98,1.03) skew(.8deg)}}@keyframes lsFlickCore{0%,to{transform:scale(1);opacity:1}45%{transform:scale(.9,1.12);opacity:.85}70%{transform:scale(1.08,.9);opacity:1}}.ls-ember{position:absolute;left:35%;bottom:34%;width:4px;height:4px;border-radius:50%;background:var(--ember, #ff9d6f);box-shadow:0 0 8px 2px #ff9d6f80;opacity:0;animation:lsEmberRise 3s ease-out infinite}@keyframes lsEmberRise{0%{opacity:0;transform:translate(0) scale(1)}12%{opacity:.95}55%{opacity:.6;transform:translate(7px,-52px) scale(.8)}to{opacity:0;transform:translate(-5px,-104px) scale(.45)}}.ls-bebo{position:absolute;right:10%;bottom:2%;width:40%}.ls-bebo-breathe{transform-box:fill-box;transform-origin:50% 100%;animation:lsBreathe 3.4s ease-in-out infinite}@keyframes lsBreathe{0%,to{transform:scale(1)}50%{transform:scale(1.02,.972) translateY(.6px)}}.ls-bebo-eyes{transform-box:fill-box;transform-origin:50% 50%;animation:lsBlink 5.6s ease-in-out infinite}@keyframes lsBlink{0%,91%,to{transform:scaleY(1)}94%,96%{transform:scaleY(.08)}}.ls-firefly{position:absolute;width:3px;height:3px;border-radius:50%;background:#ffe9a8;box-shadow:0 0 7px 2px #ffe9a873;opacity:0;animation:lsFirefly 5s ease-in-out infinite}@keyframes lsFirefly{0%,to{opacity:0;transform:translate(0)}35%{opacity:.9;transform:translate(4px,-6px)}60%{opacity:.25;transform:translate(9px,-2px)}80%{opacity:.7;transform:translate(5px,-9px)}}.ls-foot{position:relative;z-index:1;width:100%;display:flex;flex-direction:column;align-items:center;gap:14px;padding:0 32px calc(env(safe-area-inset-bottom) + 46px)}.ls-brand{font-family:var(--font-display, Georgia, serif);font-size:2rem;font-weight:600;letter-spacing:.14em;color:var(--peach, #ffd9a0);text-shadow:0 0 24px rgba(255,157,111,.4);margin-bottom:2px}.ls-track{width:min(72vw,300px);height:4px;border-radius:999px;background:#f6eef81f;overflow:visible}.ls-fill{position:relative;height:100%;width:0%;border-radius:999px;background:linear-gradient(90deg,var(--ember-deep, #e5744b),var(--ember, #ff9d6f),var(--peach, #ffd9a0));box-shadow:0 0 12px #ff9d6f8c}.ls-fill:after{content:"";position:absolute;right:-3px;top:50%;width:8px;height:8px;border-radius:50%;transform:translateY(-50%);background:var(--peach, #ffd9a0);box-shadow:0 0 10px 3px #ffd9a0a6;animation:lsHeadPulse 1.4s ease-in-out infinite}@keyframes lsHeadPulse{0%,to{box-shadow:0 0 8px 2px #ffd9a080}50%{box-shadow:0 0 14px 5px #ffd9a0cc}}.ls-copy{position:relative;height:1.5em;width:100%;text-align:center;font-size:.95rem;color:var(--ink-dim, #c3b3cf)}.ls-copy-line{position:absolute;left:0;right:0}.ls-copy-line--in{animation:lsCopyIn .5s ease-out both}.ls-copy-line--out{animation:lsCopyOut .4s ease-in both}@keyframes lsCopyIn{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:translateY(0)}}@keyframes lsCopyOut{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-5px)}}.ls-bloom{position:absolute;left:50%;bottom:26%;width:40vmax;height:40vmax;border-radius:50%;transform:translate(-50%,50%) scale(.2);background:radial-gradient(circle,rgba(255,233,196,.95) 0%,rgba(255,157,111,.55) 38%,transparent 70%);animation:lsBloom .7s cubic-bezier(.22,.61,.36,1) forwards}@keyframes lsBloom{0%{opacity:0;transform:translate(-50%,50%) scale(.2)}45%{opacity:1}to{opacity:.9;transform:translate(-50%,50%) scale(3.1)}}@media(prefers-reduced-motion:reduce){.ls-flame--outer,.ls-flame--mid,.ls-flame--core,.ls-glow,.ls-moon,.ls-bebo-breathe,.ls-bebo-eyes,.ls-star,.ls-fill:after,.ls-copy-line--in,.ls-copy-line--out{animation:none}.ls-ember,.ls-firefly{animation:none;opacity:.45}.ls-copy-line--out{display:none}.load-screen.is-exiting{animation:lsVeilFade .32s ease-out forwards}}@keyframes lsVeilFade{0%{opacity:1}to{opacity:0}}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500 700;font-display:swap;src:url(/fonts/cormorant-600.woff2) format("woff2")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500 700;font-display:swap;src:url(/fonts/cormorant-600-italic.woff2) format("woff2")}:root{--dusk-0: #17101f;--dusk-1: #221430;--dusk-2: #2e1c3e;--dusk-3: #3b2650;--ember: #ff9d6f;--ember-deep: #e5744b;--peach: #ffd9a0;--rose: #f2a7c3;--moss: #9fd8b0;--sky: #a8c8f0;--ink: #f6eef8;--ink-dim: #c3b3cf;--ink-faint: #8d7a9e;--card: rgba(255, 255, 255, .055);--card-edge: rgba(255, 214, 170, .14);--radius-lg: 26px;--radius-md: 18px;--radius-sm: 12px;--font: "Avenir Next Rounded", "Nunito", ui-rounded, "SF Pro Rounded", "Comfortaa", system-ui, sans-serif;--font-display: "Cormorant Garamond", Georgia, "Iowan Old Style", "Times New Roman", serif}*{box-sizing:border-box;margin:0;-webkit-tap-highlight-color:transparent}html,body{height:100%}body{font-family:var(--font);background:radial-gradient(120% 60% at 50% -10%,#46264f 0%,transparent 60%),radial-gradient(100% 50% at 50% 110%,#3a1f2e 0%,transparent 55%),var(--dusk-1);color:var(--ink);line-height:1.5;min-height:100dvh}#root{max-width:460px;margin:0 auto;min-height:100dvh;display:flex;flex-direction:column;padding:env(safe-area-inset-top) 0 env(safe-area-inset-bottom);position:relative;z-index:1}.screen{flex:1;display:flex;flex-direction:column;padding:24px 20px 28px;position:relative;z-index:1;animation:fadeUp .45s ease both}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}h1{font-family:var(--font-display);font-size:2.5rem;font-weight:600;letter-spacing:.01em;line-height:1.08}h2{font-family:var(--font-display);font-size:1.7rem;font-weight:600;letter-spacing:.01em;line-height:1.15}.display{font-family:var(--font-display);font-weight:600;letter-spacing:.01em}p.dim{color:var(--ink-dim)}.faint{color:var(--ink-faint);font-size:.85rem}button{font-family:var(--font);border:none;cursor:pointer;font-size:1rem}.btn{display:block;width:100%;padding:15px 20px;border-radius:var(--radius-md);font-weight:700;background:linear-gradient(135deg,var(--ember) 0%,var(--ember-deep) 100%);color:#33150a;box-shadow:0 6px 24px #e5744b59;transition:transform .12s ease,box-shadow .12s ease}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.45;box-shadow:none;cursor:default}.btn-ghost{background:var(--card);color:var(--ink);box-shadow:none;border:1px solid var(--card-edge)}.btn-small{width:auto;padding:9px 16px;font-size:.9rem;border-radius:999px}input[type=email],input[type=password],input[type=date],input[type=text],textarea{width:100%;padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--card-edge);background:var(--card);color:var(--ink);font-family:var(--font);font-size:1rem;outline:none;color-scheme:dark}input:focus,textarea:focus{border-color:var(--ember)}label.field{display:block;font-size:.85rem;color:var(--ink-dim);font-weight:600;margin-bottom:6px}.stack{display:flex;flex-direction:column;gap:14px}.row{display:flex;gap:10px;align-items:center}.spacer{flex:1}.center{text-align:center}.card{background:var(--card);border:1px solid var(--card-edge);border-radius:var(--radius-lg);padding:18px}.error-note{background:#f2a7c31f;border:1px solid rgba(242,167,195,.4);color:var(--rose);padding:12px 14px;border-radius:var(--radius-sm);font-size:.9rem}input[type=range]{width:100%;accent-color:var(--ember);height:32px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:10px 16px;border-radius:999px;background:var(--card);border:1px solid var(--card-edge);color:var(--ink-dim);font-weight:600;font-size:.92rem;transition:all .15s ease}.chip.selected{background:linear-gradient(135deg,#ff9d6f40,#e5744b40);border-color:var(--ember);color:var(--peach)}.chip--boundary{background:linear-gradient(135deg,#7882c838,#5a64aa38);border-color:#96a0dc8c;color:#dfe4ff}.dots{display:flex;gap:6px;justify-content:center}.dot{width:7px;height:7px;border-radius:50%;background:var(--dusk-3);transition:background .2s}.dot.on{background:var(--ember)}.chat-scroll{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:8px 2px 16px}.bubble{max-width:82%;padding:11px 15px;border-radius:20px;font-size:.97rem;white-space:pre-wrap;overflow-wrap:break-word;animation:fadeUp .25s ease both}.bubble.player{align-self:flex-end;background:linear-gradient(135deg,#5a3a6e,#4a2c5e);border-bottom-right-radius:6px}.bubble.companion{align-self:flex-start;background:var(--card);border:1px solid var(--card-edge);border-bottom-left-radius:6px}.bubble.crisis{border-color:var(--peach);background:#ffd9a014}.bubble.system-note{align-self:center;background:none;border:none;color:var(--ink-faint);font-size:.85rem;font-style:italic;text-align:center}.shimmer{align-self:flex-start;display:flex;gap:5px;padding:14px 18px}.shimmer span{width:8px;height:8px;border-radius:50%;background:var(--peach);opacity:.4;animation:pulse 1.2s ease-in-out infinite}.shimmer span:nth-child(2){animation-delay:.18s}.shimmer span:nth-child(3){animation-delay:.36s}@keyframes pulse{0%,to{opacity:.25;transform:translateY(0)}50%{opacity:.9;transform:translateY(-3px)}}.chat-input-row{display:flex;gap:8px;padding-top:10px;margin-bottom:14px}.chat-input-row input{flex:1;border-radius:999px}.send-btn{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,var(--ember),var(--ember-deep));color:#33150a;font-size:1.2rem;flex-shrink:0}.mood-bar{margin-bottom:10px}.mood-bar .track{height:8px;border-radius:999px;background:var(--dusk-3);overflow:hidden}.mood-bar .fill{height:100%;border-radius:999px;transition:width .8s cubic-bezier(.22,1,.36,1)}.ceremony{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;text-align:center}.name-reveal{font-family:var(--font-display);font-size:3rem;font-weight:700;letter-spacing:.02em;background:linear-gradient(120deg,var(--peach),var(--ember),var(--rose));-webkit-background-clip:text;background-clip:text;color:transparent;animation:nameIn 1.4s cubic-bezier(.22,1,.36,1) both}@keyframes nameIn{0%{opacity:0;transform:scale(.8);filter:blur(10px)}60%{filter:blur(0)}to{opacity:1;transform:scale(1)}}.gathering{font-size:1.05rem;color:var(--ink-dim);animation:pulse 2s ease-in-out infinite}.confetti{position:fixed;inset:0;pointer-events:none;overflow:hidden}.confetti i{position:absolute;top:-4vh;width:8px;height:12px;border-radius:2px;animation:fall linear both}@keyframes fall{to{transform:translateY(110vh) rotate(720deg)}}@media(prefers-reduced-motion:reduce){.confetti{display:none}.name-reveal{animation:none}}.emoji-row{display:flex;gap:10px;justify-content:center}.emoji-btn{font-size:1.7rem;background:var(--card);border:1px solid var(--card-edge);border-radius:16px;width:54px;height:54px;transition:transform .12s ease,border-color .12s}.emoji-btn:active{transform:scale(1.15)}.emoji-btn.selected{border-color:var(--ember);background:#ff9d6f2e}.app-header{display:flex;align-items:center;gap:12px;padding:14px 18px 10px}.app-header .avatar-mini{width:44px;height:44px;flex-shrink:0}.app-header .name{font-weight:800;font-size:1.05rem}.app-header .sub{font-size:.75rem;color:var(--ink-faint)}.icon-btn{background:var(--card);border:1px solid var(--card-edge);border-radius:12px;width:40px;height:40px;font-size:1.1rem;position:relative}.icon-btn .badge-dot{position:absolute;top:-3px;right:-3px;width:10px;height:10px;border-radius:50%;background:var(--ember)}.flame-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:999px;background:var(--card);border:1px solid var(--card-edge);font-size:.8rem;color:var(--peach);font-weight:700}.ledger-row{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.06)}.ledger-row:last-child{border-bottom:none}.tag{font-size:.68rem;font-weight:700;padding:2px 8px;border-radius:999px;text-transform:uppercase;letter-spacing:.04em}.tag.trainable{background:#9fd8b026;color:var(--moss)}.tag.private{background:#a8c8f026;color:var(--sky)}.resource-card{background:#ffd9a012;border:1px solid rgba(255,217,160,.35);border-radius:var(--radius-md);padding:14px 16px}.landing{position:relative;flex:1;display:flex;flex-direction:column;overflow:hidden;isolation:isolate;background:var(--dusk-0)}.landing-sky{position:absolute;inset:0;z-index:0;pointer-events:none}.dusk-backdrop{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.sky-gradient{position:absolute;inset:0;background:linear-gradient(180deg,#1a1030,#2a1740 34%,#4a2748 60%,#7a3d3f 82%,#a8563a),var(--dusk-0)}.landing-sky:after{content:"";position:absolute;left:50%;bottom:-6%;width:150%;height:62%;transform:translate(-50%);background:radial-gradient(60% 100% at 50% 100%,rgba(255,168,92,.55) 0%,rgba(255,128,74,.28) 32%,transparent 70%);filter:blur(2px)}.sky-stars{position:absolute;inset:0 0 45%;background-image:radial-gradient(1.5px 1.5px at 12% 22%,rgba(255,245,230,.7),transparent),radial-gradient(1px 1px at 28% 12%,rgba(255,245,230,.5),transparent),radial-gradient(1.5px 1.5px at 46% 30%,rgba(255,245,230,.6),transparent),radial-gradient(1px 1px at 63% 15%,rgba(255,245,230,.45),transparent),radial-gradient(1.5px 1.5px at 78% 25%,rgba(255,245,230,.6),transparent),radial-gradient(1px 1px at 88% 9%,rgba(255,245,230,.5),transparent),radial-gradient(1px 1px at 38% 6%,rgba(255,245,230,.4),transparent),radial-gradient(1.5px 1.5px at 8% 40%,rgba(255,245,230,.45),transparent);opacity:.9;animation:twinkle 6s ease-in-out infinite}@keyframes twinkle{0%,to{opacity:.55}50%{opacity:.95}}.sky-glow{position:absolute;left:50%;bottom:8%;width:90%;height:40%;transform:translate(-50%);background:radial-gradient(50% 70% at 50% 100%,rgba(255,190,120,.5) 0%,rgba(255,150,90,.22) 40%,transparent 72%);filter:blur(6px);animation:firebreath 4.5s ease-in-out infinite}@keyframes firebreath{0%,to{opacity:.75;transform:translate(-50%) scale(1)}50%{opacity:1;transform:translate(-50%) scale(1.06)}}.landing-grain{position:absolute;inset:0;z-index:3;pointer-events:none;opacity:.06;mix-blend-mode:overlay;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.landing-embers{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}.ember-mote{position:absolute;bottom:-6%;border-radius:50%;background:radial-gradient(circle,rgba(255,214,150,1) 0%,rgba(255,170,100,.7) 45%,transparent 75%);box-shadow:0 0 6px 1px #ffbe78b3;animation-name:emberrise;animation-timing-function:ease-in;animation-iteration-count:infinite;opacity:0}@keyframes emberrise{0%{transform:translate(0) scale(.6);opacity:0}12%{opacity:.9}70%{opacity:.8}to{transform:translate(var(--drift),-104vh) scale(1);opacity:0}}.landing-content{position:relative;z-index:4;flex:1;display:flex;flex-direction:column;align-items:center;padding:max(env(safe-area-inset-top),30px) 22px 30px;gap:4px}.landing-rise{animation:landingRise .9s cubic-bezier(.22,1,.36,1) both}@keyframes landingRise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}.landing-title-wrap{text-align:center}.landing-eyebrow{text-transform:uppercase;letter-spacing:.32em;font-size:.66rem;font-weight:700;color:var(--peach);opacity:.85;margin-bottom:4px;padding-left:.32em}.landing-title{font-family:var(--font-display);font-size:3.9rem;font-weight:700;letter-spacing:.06em;line-height:1;background:linear-gradient(160deg,#fff3e2 0%,var(--peach) 40%,var(--ember) 78%,var(--rose) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:0 2px 30px rgba(255,160,100,.25);padding:0 .06em}.landing-heroes{position:relative;flex:1;min-height:260px;width:100%;max-width:440px;display:flex;align-items:flex-end;justify-content:center}.hero-firepool{position:absolute;left:50%;bottom:0%;width:72%;height:60px;transform:translate(-50%);background:radial-gradient(50% 100% at 50% 100%,rgba(255,196,120,.85) 0%,rgba(255,150,90,.4) 45%,transparent 72%);filter:blur(9px);animation:firebreath 4.5s ease-in-out infinite}.hero{position:absolute;bottom:0;width:auto;object-fit:contain;filter:drop-shadow(0 18px 30px rgba(0,0,0,.45));will-change:transform}.hero-pair{height:92%;max-height:420px;left:50%;transform:translate(-50%);z-index:2;animation:heroPairBreath 6s ease-in-out infinite,heroPairEnter 1.1s cubic-bezier(.22,1,.36,1) .4s both}@keyframes heroPairBreath{0%,to{transform:translate(-50%) translateY(0) scale(1)}50%{transform:translate(-50%) translateY(-6px) scale(1.01)}}@keyframes heroPairEnter{0%{opacity:0;transform:translate(-50%) translateY(26px) scale(.94)}to{opacity:1;transform:translate(-50%) translateY(0) scale(1)}}.landing-copy{text-align:center;margin-top:6px;max-width:380px}.landing-tagline{font-family:var(--font-display);font-size:1.32rem;font-weight:500;color:var(--ink);line-height:1.35;text-shadow:0 2px 18px rgba(0,0,0,.5)}.landing-subtag{margin-top:7px;font-size:.92rem;color:var(--ink-dim);line-height:1.5}.landing-actions{width:100%;max-width:360px;display:flex;flex-direction:column;gap:12px;margin-top:20px}.btn-glow{position:relative;animation:ctaPulse 3.4s ease-in-out infinite}@keyframes ctaPulse{0%,to{box-shadow:0 6px 24px #e5744b59}50%{box-shadow:0 8px 34px #ff9d6f99,0 0 0 1px #ffc89640}}.landing-adults{margin-top:4px}@media(min-width:640px){.landing-title{font-size:4.6rem}.landing-heroes{min-height:340px;max-width:480px}.hero-pair{max-height:460px}.landing-tagline{font-size:1.5rem}}@media(prefers-reduced-motion:reduce){.landing-rise,.hero-pair,.sky-stars,.sky-glow,.hero-firepool,.btn-glow{animation:none}.ember-mote{display:none}.hero-pair{transform:translate(-50%);opacity:1}}@media(max-width:380px){h1{font-size:1.7rem}.name-reveal{font-size:2.1rem}.landing-title{font-size:3.2rem}.landing-heroes{min-height:220px}}.gate-check{display:flex;align-items:center;gap:12px;padding:16px 18px;border-radius:var(--radius-md);border:1px solid var(--card-edge);background:var(--card);cursor:pointer;font-weight:600;color:var(--ink);transition:border-color .15s ease,background .15s ease}.gate-check:has(input:checked){border-color:var(--ember);background:#ff9d6f1f}.gate-check input[type=checkbox]{width:22px;height:22px;accent-color:var(--ember);flex-shrink:0;cursor:pointer}.onboard{position:relative;z-index:1;flex:1;display:flex;flex-direction:column;padding:max(env(safe-area-inset-top),22px) 20px 28px;animation:fadeUp .5s ease both}.bebo-presence{position:fixed;bottom:-6%;z-index:0;pointer-events:none;opacity:.9;filter:drop-shadow(0 12px 40px rgba(0,0,0,.5));animation:presenceIn 1.2s cubic-bezier(.22,1,.36,1) .3s both}.bebo-presence--right{right:-8%}.bebo-presence--left{left:-8%}.bebo-presence.is-peeking{bottom:auto;top:-4%;opacity:.8}@keyframes presenceIn{0%{opacity:0;transform:translateY(26px)}to{opacity:.9;transform:none}}.onboard-panel{position:relative;z-index:1;background:linear-gradient(180deg,#2e1c3eb8,#1c1128c7);border:1px solid var(--card-edge);border-radius:var(--radius-lg);padding:24px 22px;box-shadow:0 18px 60px #0006,inset 0 1px #ffd6aa14;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.onboard-eyebrow{text-transform:uppercase;letter-spacing:.3em;font-size:.64rem;font-weight:700;color:var(--peach);opacity:.82;padding-left:.3em;margin-bottom:8px}.onboard-spacer{flex:1;min-height:12px}@media(prefers-reduced-motion:reduce){.bebo-presence{animation:none;opacity:.9;transform:none}.onboard{animation:none}}.chat-shell{position:relative;z-index:1;display:flex;flex-direction:column;height:100dvh}.chat-stage{position:relative;flex-shrink:0;height:30dvh;min-height:200px;max-height:300px;display:flex;align-items:flex-end;justify-content:center;overflow:hidden;border-radius:0 0 var(--radius-lg) var(--radius-lg);-webkit-mask-image:linear-gradient(180deg,#000 72%,transparent 100%);mask-image:linear-gradient(180deg,#000 72%,transparent 100%)}.chat-stage__glow{position:absolute;left:50%;bottom:-10%;width:120%;height:70%;transform:translate(-50%);background:radial-gradient(50% 70% at 50% 100%,rgba(255,190,120,.4) 0%,rgba(255,150,90,.16) 42%,transparent 72%);filter:blur(8px);animation:firebreath 4.5s ease-in-out infinite;pointer-events:none}.chat-stage__bebo{position:relative;z-index:1;transform:translateY(6%);filter:drop-shadow(0 10px 26px rgba(0,0,0,.45))}.chat-stage__bebo.is-snuggling:after{content:"";position:absolute;left:50%;top:46%;width:72%;aspect-ratio:1;transform:translate(-50%,-50%) scale(.5);border-radius:50%;border:3px solid rgba(255,194,77,.9);pointer-events:none;z-index:-1;animation:chat-snuggle-swell 1.8s ease-out forwards}@keyframes chat-snuggle-swell{0%{transform:translate(-50%,-50%) scale(.5);opacity:.95}60%{opacity:.5}to{transform:translate(-50%,-50%) scale(1.55);opacity:0}}@media(prefers-reduced-motion:reduce){.chat-stage__bebo.is-snuggling:after{animation:none;opacity:0}}.chat-stage__repair-wash{position:absolute;inset:0;z-index:2;pointer-events:none;background:radial-gradient(70% 90% at 50% 100%,rgba(255,176,158,.5) 0%,rgba(255,150,130,.22) 40%,transparent 74%);mix-blend-mode:screen;animation:chat-repair-wash 3.4s ease-out forwards}@keyframes chat-repair-wash{0%{opacity:0}22%{opacity:1}70%{opacity:.85}to{opacity:0}}.chat-stage__bebo.is-repairing{transition:transform 1.6s cubic-bezier(.22,1,.36,1);transform:translateY(2%)}.chat-caption--repair{color:#ffd9c8;text-shadow:0 2px 18px rgba(200,90,70,.6);font-style:italic}@media(prefers-reduced-motion:reduce){.chat-stage__repair-wash{animation:none;opacity:.7}.chat-stage__bebo.is-repairing{transition:none}}.chat-caption{position:absolute;z-index:2;left:16px;right:16px;bottom:10px;text-align:center;font-family:var(--font-display);font-size:1.2rem;font-weight:600;line-height:1.3;color:var(--ink);text-shadow:0 2px 16px rgba(0,0,0,.6);animation:fadeUp .5s ease both}.chat-topbar{position:relative;z-index:3;display:flex;align-items:center;gap:10px;padding:max(env(safe-area-inset-top),12px) 16px 8px}.chat-topbar .name{font-family:var(--font-display);font-weight:600;font-size:1.25rem;line-height:1.1}.chat-topbar .sub{font-size:.72rem;color:var(--ink-faint)}.bubble.companion{background:linear-gradient(180deg,#462e5280,#3421428c);border-color:#ffd6aa29}@media(prefers-reduced-motion:reduce){.chat-stage__glow{animation:none}}.mine-shell{position:fixed;inset:0;z-index:1;overflow:hidden}.mine-scene{position:absolute;inset:0;width:100%;height:100%}.mine-topbar{position:absolute;z-index:3;top:0;left:0;right:0;display:flex;align-items:center;gap:10px;padding:max(env(safe-area-inset-top),12px) 16px 10px;background:linear-gradient(180deg,rgba(10,7,16,.72),transparent)}.mine-topbar .name{font-family:var(--font-display);font-weight:600;font-size:1.2rem;line-height:1.1}.mine-topbar .sub{font-size:.72rem;color:var(--ink-faint)}.mine-dock{position:absolute;z-index:3;left:12px;right:12px;bottom:calc(var(--hud-clearance, calc(86px + env(safe-area-inset-bottom)) ) + 12px);display:flex;flex-direction:column;gap:8px}.mine-dock__panel{background:linear-gradient(180deg,#1c1128d1,#100a18e0);border:1px solid var(--card-edge);border-radius:var(--radius-lg);padding:14px;box-shadow:0 -8px 34px #00000080;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.mine-reveal{animation:revealRise .7s cubic-bezier(.22,1,.36,1) both}@keyframes revealRise{0%{opacity:0;transform:translateY(40px) scale(.96)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.mine-reveal{animation:none}}.mute-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:14px 16px;border-radius:var(--radius-md);border:1px solid var(--card-edge);background:var(--card);color:var(--ink);font-weight:600;text-align:left;transition:border-color .15s ease,background .15s ease}.mute-toggle__state{color:var(--ink-faint);font-size:.85rem;font-weight:600}.mute-toggle.is-on{border-color:#ffb06a66}.err-fallback{position:fixed;inset:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:24px;background:radial-gradient(120% 60% at 50% -10%,#46264f 0%,transparent 60%),radial-gradient(100% 50% at 50% 110%,#3a1f2e 0%,transparent 55%),#221430}.err-card{display:flex;flex-direction:column;align-items:center;gap:10px;max-width:340px;padding:28px 26px 24px;border-radius:24px;text-align:center;background:#1c1126d9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,214,170,.2);box-shadow:0 18px 50px #00000080}.err-glyph{font-size:2rem;filter:drop-shadow(0 0 14px rgba(255,160,90,.55));animation:err-flicker 2.2s ease-in-out infinite}@keyframes err-flicker{0%,to{transform:scale(1);opacity:.95}50%{transform:scale(1.08);opacity:1}}.err-title{margin:0;font-family:var(--font-display, serif);font-size:1.3rem;font-weight:600;color:var(--ink, #f6eef8)}.err-body{margin:0;font-size:.92rem;color:var(--ink-faint, #9d8aae)}.err-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:8px}.err-btn{padding:10px 18px;border-radius:999px;border:1px solid rgba(255,214,170,.28);background:#140c1c99;color:var(--ink, #f6eef8);font:inherit;font-size:.9rem;font-weight:700;cursor:pointer;transition:transform .14s ease,background .2s ease}.err-btn:active{transform:scale(.95)}.err-btn--primary{background:linear-gradient(180deg,#ffb27a,#e5744b);border-color:transparent;color:#2a1730;box-shadow:0 6px 18px #e5744b59}@media(prefers-reduced-motion:reduce){.err-glyph{animation:none}}
