/* source: mascot.css */
/* v9 interactive mascot room */
.mascot-adoption[hidden],.mascot-room[hidden],.face-maker[hidden]{display:none!important}
.mascot-home{display:grid;grid-template-columns:.82fr 1.18fr;gap:70px;align-items:center;padding:110px 0;background:rgba(255,249,246,.88)}.mascot-home-copy h2{font-size:clamp(46px,5.5vw,76px);line-height:1.08;margin:12px 0 24px}.mascot-home-copy>p:last-of-type{max-width:540px;color:var(--muted);line-height:1.9}.mascot-home-actions{display:flex;align-items:center;gap:22px;margin-top:30px}.mascot-home-actions small{max-width:180px;color:var(--muted);line-height:1.6}.mascot-home-stage{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;align-items:end;min-height:390px}.mascot-mini{position:relative;border:1px solid var(--line);background:var(--accent);padding:18px 10px 14px;min-width:0;text-align:center;cursor:pointer;transition:.28s;box-shadow:4px 4px 0 color-mix(in srgb,var(--tone) 35%,transparent)}.mascot-mini:nth-child(even){transform:translateY(-28px)}.mascot-mini:hover{transform:translateY(-10px) rotate(-1deg)}.mascot-mini:nth-child(even):hover{transform:translateY(-38px) rotate(1deg)}.mascot-chibi{position:relative;width:100%;aspect-ratio:.78;margin:auto}.mascot-head{position:absolute;z-index:2;left:50%;top:4%;width:76%;aspect-ratio:1;transform:translateX(-50%);border-radius:50%;border:5px solid #fff;background:#fff;overflow:hidden;box-shadow:0 8px 20px rgba(75,41,64,.16)}.mascot-head img{width:100%;height:100%;object-fit:cover}.mascot-body{position:absolute;left:18%;bottom:2%;width:64%;height:51%;border-radius:48% 48% 20% 20%;background:linear-gradient(145deg,var(--tone),color-mix(in srgb,var(--tone) 58%,#fff));border:3px solid #fff}.mascot-body:before,.mascot-body:after{content:"";position:absolute;top:20%;width:32%;height:15%;border-radius:999px;background:var(--tone);border:2px solid #fff}.mascot-body:before{left:-24%;transform:rotate(26deg)}.mascot-body:after{right:-24%;transform:rotate(-26deg)}.mascot-mini b{display:block;margin-top:8px;font:900 18px "Noto Serif SC",serif}.mascot-mini span{font-size:10px;color:var(--muted)}.auth-cancel{min-height:44px;border:0;background:transparent;text-decoration:underline;text-underline-offset:5px;cursor:pointer;color:var(--muted)}
.auth-modal>.viewer-close{position:fixed;z-index:40;top:max(10px,env(safe-area-inset-top));right:max(10px,env(safe-area-inset-right));background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:3px 3px 0 var(--berry)}.mascot-panel{width:min(1120px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;border:1px solid var(--line);background:var(--paper);color:var(--ink);overflow:auto}.mascot-panel::backdrop{background:rgba(75,41,64,.62);backdrop-filter:blur(8px)}.mascot-panel>header{padding:34px 42px 26px;border-bottom:1px solid var(--line);background:linear-gradient(125deg,#fff8f5,#f7c4d4)}.mascot-panel>header h2{font-size:42px;margin:6px 0}.mascot-panel>header p:last-child{margin:0;color:var(--muted)}.mascot-adoption{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;padding:32px}.adopt-card{position:relative;border:1px solid var(--line);background:var(--accent);padding:18px;text-align:left}.adopt-card .mascot-chibi{max-width:180px}.adopt-card h3{font:900 25px "Noto Serif SC",serif;margin:10px 0 3px}.adopt-card>span{font-size:10px;color:var(--berry);font-weight:900}.adopt-card p{min-height:68px;color:var(--muted);font-size:12px;line-height:1.7}.adopt-card button{width:100%;min-height:44px;border:1px solid var(--line);background:#fff;cursor:pointer;font-weight:900}.adopt-card button:hover{background:var(--tone);color:#fff}.mascot-room{display:grid;grid-template-columns:.85fr 1.15fr;min-height:610px}.mascot-live{position:relative;display:grid;place-items:center;padding:45px;background:radial-gradient(circle at 50% 40%,#fff 0 25%,transparent 26%),linear-gradient(155deg,var(--accent),#fff4f7);border-right:1px solid var(--line);overflow:hidden}.mascot-live:after{content:"✦  MY COMPANION  ✦";position:absolute;bottom:20px;letter-spacing:.22em;color:var(--tone);font-weight:900;font-size:10px}.mascot-live .mascot-chibi{width:min(330px,80%);animation:mascot-breathe 3s ease-in-out infinite}.mascot-live .mascot-head{border-width:9px}.mascot-live .mascot-body{border-width:5px}.face-wink .mascot-head:after{content:"⌒";position:absolute;right:20%;top:38%;font-size:28px;color:var(--ink);font-weight:900}.face-sparkle .mascot-head:after{content:"✦";position:absolute;right:10%;top:12%;font-size:28px;color:#fff;text-shadow:0 2px 0 var(--tone)}.accessory-ribbon .mascot-head:before{content:"🎀";position:absolute;right:0;top:0;font-size:38px}.accessory-star .mascot-head:before{content:"★";position:absolute;right:5%;top:2%;font-size:32px;color:#ffe56c}.accessory-flower .mascot-head:before{content:"🌸";position:absolute;right:0;top:0;font-size:34px}.mascot-console{padding:34px}.mascot-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.stat-chip{padding:13px;border:1px solid var(--line);background:#fff}.stat-chip span{display:block;font-size:9px;color:var(--muted)}.stat-chip b{font-size:24px}.stat-bar{height:4px;background:var(--paper2);margin-top:8px}.stat-bar i{display:block;height:100%;background:var(--tone)}.mascot-actions{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin:20px 0}.mascot-actions button{min-height:52px;border:1px solid var(--line);background:#fff;cursor:pointer}.mascot-actions button:hover{background:var(--accent)}.face-maker{display:grid;grid-template-columns:1.1fr repeat(3,1fr) auto;gap:7px;padding:14px;border:1px dashed var(--berry);background:#fff8fb}.face-maker label{font-size:9px;color:var(--muted)}.face-maker input,.face-maker select{display:block;width:100%;height:36px;margin-top:4px;border:1px solid var(--line);background:#fff}.face-maker button{align-self:end;height:36px;border:1px solid var(--line);background:var(--berry);color:#fff}.mascot-log{margin-top:24px}.mascot-log h3{font:900 18px "Noto Serif SC",serif}.mascot-log div{display:grid;gap:6px;max-height:170px;overflow:auto}.log-row{display:flex;justify-content:space-between;gap:14px;padding:9px 0;border-bottom:1px solid rgba(109,64,91,.18);font-size:12px}.log-row time{color:var(--muted);font-size:10px;white-space:nowrap}@keyframes mascot-breathe{50%{transform:translateY(-8px) rotate(.8deg)}}
@media(max-width:900px){.mascot-home{grid-template-columns:1fr;gap:40px}.mascot-home-stage{min-height:320px}.mascot-adoption{grid-template-columns:1fr 1fr}.mascot-room{grid-template-columns:1fr}.mascot-live{min-height:430px;border-right:0;border-bottom:1px solid var(--line)}.face-maker{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.auth-modal[open]{width:100vw;max-width:none;height:100dvh;min-height:0;max-height:none;margin:0;overflow:auto}.mascot-home{padding:76px 0}.mascot-home-stage{grid-template-columns:1fr 1fr;min-height:0}.mascot-mini:nth-child(even){transform:none}.mascot-home-actions{display:grid}.mascot-home-actions small{max-width:none}.mascot-panel{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0}.mascot-panel>header{padding:55px 18px 22px}.mascot-panel>header h2{font-size:32px}.mascot-adoption{grid-template-columns:1fr 1fr;padding:14px;gap:8px}.adopt-card{padding:10px}.adopt-card p{min-height:92px}.adopt-card .mascot-chibi{max-width:130px}.mascot-live{min-height:370px;padding:30px}.mascot-console{padding:20px 14px}.mascot-stats{grid-template-columns:1fr 1fr}.mascot-actions{grid-template-columns:1fr 1fr}.mascot-actions button:last-child{grid-column:1/-1}.face-maker{grid-template-columns:1fr}.face-maker button{height:44px}.auth-cancel{width:100%}}

/* v11 deployable full-body mascot artwork */
.mascot-full-wrap{position:relative;width:100%;height:100%;display:grid;place-items:center;transform-origin:50% 82%}.mascot-fullbody{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 12px 14px rgba(75,41,64,.12))}.mascot-mini .mascot-full-wrap{height:270px}.adopt-card .mascot-full-wrap{height:310px}.mascot-live .mascot-full-wrap{width:min(390px,92%);height:500px;animation:mascot-breathe 3s ease-in-out infinite}.expression-mark{position:absolute;z-index:3;right:17%;top:12%;font-style:normal;font-size:30px;color:#fff;text-shadow:0 2px 0 var(--tone)}.face-wink .expression-mark:after{content:"⌒"}.face-sparkle .expression-mark:after{content:"✦"}.mouth-cat .expression-mark:before{content:"ω";position:absolute;right:35px;top:66px;color:var(--tone);font-size:22px}.mouth-tiny .expression-mark:before{content:"·";position:absolute;right:40px;top:68px;color:var(--tone);font-size:32px}.accessory-ribbon .mascot-full-wrap:after,.accessory-ribbon:after{content:"🎀";position:absolute;right:13%;top:8%;font-size:36px}.accessory-star .mascot-full-wrap:after,.accessory-star:after{content:"★";position:absolute;right:14%;top:9%;font-size:34px;color:#ffe56c;text-shadow:0 2px 0 var(--tone)}.accessory-flower .mascot-full-wrap:after,.accessory-flower:after{content:"🌸";position:absolute;right:13%;top:8%;font-size:34px}.mascot-live.action-feed .mascot-full-wrap{animation:mascot-nod .7s ease}.mascot-live.action-play .mascot-full-wrap{animation:mascot-jump .8s ease}.mascot-live.action-outing .mascot-full-wrap{animation:mascot-wave .9s ease}.mascot-live.action-sleep .mascot-full-wrap{animation:mascot-sleep 1.2s ease}.mascot-live.action-groom .mascot-full-wrap{animation:mascot-twirl .9s ease}@keyframes mascot-nod{35%{transform:rotate(3deg) scale(.97)}70%{transform:rotate(-2deg) scale(1.02)}}@keyframes mascot-jump{45%{transform:translateY(-28px) scale(1.03)}70%{transform:translateY(4px) scale(.98)}}@keyframes mascot-wave{35%{transform:rotate(-4deg) translateX(-10px)}70%{transform:rotate(4deg) translateX(10px)}}@keyframes mascot-sleep{45%{transform:rotate(5deg) translateY(12px);filter:saturate(.75)}}@keyframes mascot-twirl{50%{transform:rotateY(180deg) scale(.92)}}
@media(max-width:900px){.mascot-mini .mascot-full-wrap{height:230px}.adopt-card .mascot-full-wrap{height:260px}.mascot-live .mascot-full-wrap{height:430px}}
@media(max-width:620px){.mascot-mini .mascot-full-wrap{height:210px}.adopt-card .mascot-full-wrap{height:230px}.mascot-live .mascot-full-wrap{height:340px}.expression-mark{font-size:24px}}

/* v12 AI full-body responsive balance */
#mascotHome{scroll-margin-top:86px}.mascot-fullbody{transform:scale(var(--char-scale,1));transform-origin:50% 82%}.mascot-live{background:linear-gradient(155deg,var(--accent),#fff4f7)}.mascot-mini .mascot-full-wrap{height:250px}.mascot-mini b,.mascot-mini span{position:relative;z-index:2}.adopt-card .mascot-full-wrap{height:285px}
@media(max-width:620px){#mascotHome{scroll-margin-top:76px}.mascot-home-stage{align-items:stretch}.mascot-mini{display:grid;grid-template-rows:178px auto auto;align-content:start;min-height:236px;padding:8px}.mascot-mini .mascot-full-wrap{height:178px;overflow:visible}.mascot-mini b{margin:3px 0 1px;font-size:15px;line-height:1.2}.mascot-mini span{font-size:8px;line-height:1.35;min-height:22px;white-space:normal}.adopt-card .mascot-full-wrap{height:210px}.mascot-live{min-height:440px;padding:8px 16px;overflow:hidden}.mascot-live .mascot-full-wrap{height:410px;width:100%}.mascot-live .mascot-fullbody{max-height:100%}.mascot-room{min-height:0}}

/* v13 strict image containment */
.mascot-full-wrap{overflow:hidden}.mascot-fullbody{position:absolute;inset:0;width:100%;height:100%;min-width:0;min-height:0;max-width:100%;max-height:100%;object-fit:contain}.mascot-live .mascot-fullbody{transform:none}.mascot-mini .mascot-full-wrap{transform:scale(.88);transform-origin:50% 82%;overflow:hidden}.mascot-mini .mascot-fullbody{transform:scale(var(--char-scale,1))}
@media(max-width:620px){.mascot-mini .mascot-full-wrap{height:168px}.mascot-mini{grid-template-rows:168px auto auto}.mascot-live .mascot-full-wrap{height:400px}.mascot-live{min-height:418px}}

/* v14 silhouette-aware candidate widths */
@media(min-width:901px){.mascot-home-stage{grid-template-columns:.88fr .96fr 1.12fr 1.34fr}.mascot-home-stage .mascot-mini:nth-child(4) .mascot-full-wrap{transform:scale(.94)}}

/* v16 preserve wide fox silhouette on mobile */
@media(max-width:620px){.mascot-mini:nth-child(4) .mascot-fullbody,.mascot-adoption .adopt-card:nth-child(4) .mascot-fullbody{transform:scale(1.08);object-position:center bottom}.mascot-mini:nth-child(3) .mascot-fullbody,.mascot-adoption .adopt-card:nth-child(3) .mascot-fullbody{transform:scale(1.02);object-position:center bottom}}

/* v19 dynamic bond companion room */
.mascot-stage{position:relative;min-width:0;padding:22px 28px 18px;display:grid;grid-template-rows:auto auto minmax(360px,1fr) auto auto;background:radial-gradient(circle at 50% 42%,#fff 0 24%,transparent 25%),linear-gradient(155deg,var(--accent),#fff4f7);border-right:1px solid var(--line);overflow:hidden}.mascot-stage:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:radial-gradient(circle,rgba(255,255,255,.75) 0 2px,transparent 3px);background-size:62px 62px;opacity:.35}.mascot-stage-status{position:relative;z-index:3;display:flex;justify-content:space-between;gap:10px}.mascot-stage-status span{padding:7px 10px;border:1px solid color-mix(in srgb,var(--tone) 28%,#fff);background:rgba(255,255,255,.74);color:var(--tone);font-size:9px;font-weight:900;letter-spacing:.05em}.mascot-speech{position:relative;z-index:4;justify-self:center;max-width:90%;margin:12px 0 -8px;padding:12px 16px;border:1px solid color-mix(in srgb,var(--tone) 35%,#fff);background:#fff;border-radius:16px 16px 16px 4px;color:var(--ink);font-size:12px;line-height:1.6;box-shadow:0 10px 24px rgba(75,41,64,.08)}.mascot-stage .mascot-live{position:relative;z-index:2;min-height:0;padding:0;border:0;background:transparent;cursor:pointer;outline:none;overflow:visible}.mascot-stage .mascot-live:after{content:none}.mascot-stage .mascot-live:focus-visible{box-shadow:inset 0 0 0 3px color-mix(in srgb,var(--tone) 55%,#fff)}.mascot-stage .mascot-live .mascot-full-wrap{height:470px;width:min(430px,100%);animation:mascot-idle-v19 4.2s ease-in-out infinite}.mascot-touch-hint{position:relative;z-index:3;margin:0;text-align:center;color:color-mix(in srgb,var(--tone) 70%,var(--ink));font-size:9px;font-weight:700}.bond-progress{position:relative;z-index:3;margin-top:12px;padding:13px 15px;border:1px solid rgba(255,255,255,.8);background:rgba(255,255,255,.66);backdrop-filter:blur(8px)}.bond-progress>div:first-child{display:flex;justify-content:space-between;align-items:center;font-size:10px}.bond-progress b{font-size:17px;color:var(--tone)}.bond-track{height:7px;margin:8px 0;background:rgba(75,41,64,.1);overflow:hidden}.bond-track i{display:block;height:100%;background:linear-gradient(90deg,var(--tone),#f6a7c1);transition:width .6s ease}.bond-progress p{margin:0;color:var(--muted);font-size:8px}.mascot-console{min-width:0}.mascot-stats .stat-chip.low{border-color:#dd6686;background:#fff0f4}.stat-chip span{display:flex;align-items:center;gap:5px}.stat-chip span i{font-style:normal}.interaction-section,.unlock-roadmap{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}.interaction-heading{display:flex;align-items:end;justify-content:space-between;gap:15px;margin-bottom:12px}.interaction-heading h3,.unlock-roadmap h3{margin:2px 0 0;font-size:17px}.interaction-heading>button{min-height:36px;padding:0 12px;border:1px solid var(--line);background:#fff;color:var(--berry);font-size:10px;font-weight:800}.mascot-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.mascot-actions button{min-height:58px;padding:9px 10px;border:1px solid var(--line);background:#fff;color:var(--ink);display:flex;align-items:center;gap:9px;text-align:left;transition:.2s}.mascot-actions button:hover:not(:disabled){border-color:var(--tone);background:var(--accent);transform:translateY(-2px)}.mascot-actions button>i{width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:var(--accent);color:var(--tone);font-style:normal}.mascot-actions button span{font-size:11px;font-weight:900}.mascot-actions button small{display:block;margin-top:3px;color:var(--muted);font-size:7px;font-weight:500}.mascot-actions button.locked{opacity:.6;border-style:dashed;background:repeating-linear-gradient(135deg,#f4f0f2 0 8px,#ebe5e8 8px 16px);color:#786a72}.mascot-actions button.locked>i{background:#ddd4d9;color:#5f5259}.mascot-actions button.cooling{opacity:.82;border-color:#9db9d8;background:#eef6ff;color:#3f5d7d}.mascot-actions button.cooling>i{background:#dcecff;color:#3f6f9d}.unlock-roadmap>div:last-child{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-top:12px}.unlock-step{padding:10px;border:1px solid var(--line);background:#f8f4f6}.unlock-step b,.unlock-step span,.unlock-step small{display:block}.unlock-step b{color:var(--berry);font-size:9px}.unlock-step span{margin:5px 0;font-size:9px;font-weight:800}.unlock-step small{color:var(--muted);font-size:7px}.unlock-step.unlocked{border-color:#a7d8c4;background:#f0faf6}.unlock-step.current{box-shadow:inset 0 0 0 2px var(--tone)}.unlock-step.next{border-color:#f6a7c1;background:#fff2f6;box-shadow:inset 3px 0 0 #f6a7c1}.mascot-effects{position:absolute;inset:0;z-index:8;pointer-events:none;overflow:hidden}.mascot-effects i{position:absolute;left:var(--x);bottom:20%;font-style:normal;color:var(--tone);font-size:20px;animation:mascot-effect-rise 1.35s ease-out forwards;animation-delay:calc(var(--i)*.045s)}.mascot-gain{position:absolute;z-index:10;left:50%;top:46%;transform:translate(-50%,-50%);padding:7px 12px;border-radius:999px;background:#fff;color:var(--tone);font-size:13px;box-shadow:0 8px 24px rgba(75,41,64,.16);animation:mascot-gain-pop 1.25s ease forwards}.mascot-unlock-pop{position:absolute;z-index:11;left:50%;top:12%;width:max-content;max-width:88%;transform:translateX(-50%);padding:11px 16px;background:#4b2940;color:#fff;font-size:11px;box-shadow:5px 5px 0 #f6a7c1;animation:mascot-unlock-pop 1.8s ease forwards}.mascot-stage.level-up{animation:mascot-level-glow 1.5s ease}.condition-hungry .mascot-fullbody{filter:saturate(.78) drop-shadow(0 12px 14px rgba(75,41,64,.12))}.condition-tired .mascot-full-wrap{animation-duration:6.2s!important;filter:brightness(.94)}.condition-happy .mascot-fullbody{filter:drop-shadow(0 0 18px color-mix(in srgb,var(--tone) 38%,transparent))}.face-soft .expression-mark:after{content:"⌒";opacity:0;animation:mascot-blink-mark 6s steps(1) infinite}.mascot-live.action-pet .mascot-full-wrap{animation:mascot-pet .8s ease}.mascot-live.action-chat .mascot-full-wrap,.mascot-live.action-whisper .mascot-full-wrap{animation:mascot-chat .9s ease}.mascot-live.action-gift .mascot-full-wrap,.mascot-live.action-blessing .mascot-full-wrap{animation:mascot-gift 1s ease}.mascot-live.action-photo:after{content:"";position:absolute;inset:8%;z-index:9;background:#fff;animation:mascot-flash .55s ease forwards}.mascot-live.action-date .mascot-full-wrap,.mascot-live.action-promise .mascot-full-wrap{animation:mascot-twirl 1s ease}.mascot-live.action-story .mascot-full-wrap{animation:mascot-story 1.2s ease}.mascot-live.action-feed .mascot-full-wrap{animation:mascot-nod .7s ease}.mascot-live.action-play .mascot-full-wrap{animation:mascot-jump .8s ease}.mascot-live.action-outing .mascot-full-wrap{animation:mascot-wave .9s ease}.mascot-live.action-sleep .mascot-full-wrap{animation:mascot-sleep 1.2s ease}.mascot-live.action-groom .mascot-full-wrap{animation:mascot-twirl .9s ease}@keyframes mascot-idle-v19{0%,100%{transform:translateY(0) rotate(-.35deg)}50%{transform:translateY(-8px) rotate(.35deg)}}@keyframes mascot-blink-mark{0%,46%,50%,100%{opacity:0}47%,49%{opacity:.8}}@keyframes mascot-pet{35%{transform:translateY(8px) scale(.98) rotate(-2deg)}70%{transform:translateY(-4px) scale(1.02) rotate(2deg)}}@keyframes mascot-chat{35%{transform:translateX(-8px) rotate(-2deg)}70%{transform:translateX(8px) rotate(2deg)}}@keyframes mascot-gift{35%{transform:scale(1.06) translateY(-8px)}65%{transform:scale(.98)}85%{transform:scale(1.02)}}@keyframes mascot-story{35%{filter:drop-shadow(0 0 24px var(--tone));transform:scale(1.03)}75%{filter:drop-shadow(0 0 8px var(--tone));transform:scale(.99)}}@keyframes mascot-flash{0%{opacity:0}25%{opacity:.9}100%{opacity:0}}@keyframes mascot-effect-rise{0%{opacity:0;transform:translateY(0) scale(.6) rotate(-8deg)}20%{opacity:1}100%{opacity:0;transform:translateY(-180px) scale(1.25) rotate(12deg)}}@keyframes mascot-gain-pop{0%{opacity:0;transform:translate(-50%,0) scale(.7)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}100%{opacity:0;transform:translate(-50%,-110%) scale(.95)}}@keyframes mascot-unlock-pop{0%{opacity:0;transform:translate(-50%,-12px)}18%,75%{opacity:1;transform:translate(-50%,0)}100%{opacity:0;transform:translate(-50%,-8px)}}@keyframes mascot-level-glow{0%,100%{box-shadow:none}35%{box-shadow:inset 0 0 80px color-mix(in srgb,var(--tone) 42%,transparent)}}
@media(max-width:900px){.mascot-stage{border-right:0;border-bottom:1px solid var(--line);min-height:590px}.mascot-stage .mascot-live .mascot-full-wrap{height:420px}.mascot-actions{grid-template-columns:repeat(4,1fr)}.unlock-roadmap>div:last-child{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.mascot-stage{min-height:530px;padding:58px 14px 14px;grid-template-rows:auto auto minmax(300px,1fr) auto auto}.mascot-stage .mascot-live{min-height:300px}.mascot-stage .mascot-live .mascot-full-wrap{height:330px}.mascot-speech{max-width:96%;font-size:11px}.mascot-console{padding:18px 14px}.mascot-actions{grid-template-columns:1fr 1fr}.mascot-actions button{min-height:54px}.unlock-roadmap>div:last-child{display:flex;overflow-x:auto;padding-bottom:8px}.unlock-step{min-width:145px}.interaction-heading{align-items:center}.interaction-heading>button{max-width:130px}.bond-progress{margin-top:8px}}
@media(prefers-reduced-motion:reduce){.mascot-stage .mascot-live .mascot-full-wrap,.face-soft .expression-mark:after,.mascot-effects i{animation:none!important}.mascot-actions button{transition:none}.mascot-effects{display:none}}

