@font-face{font-family:Nunito;font-style:normal;font-weight:500 900;font-display:swap;src:url(/fonts/nunito-cyrillic.woff2) format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:500 900;font-display:swap;src:url(/fonts/nunito-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #14171c;--bg-2: #1b1f26;--card: #1f242c;--card-2: #2a3039;--ink: #eef1f5;--muted: #98a1ac;--line: rgba(255, 255, 255, .08);--shadow: 0 10px 30px rgba(0, 0, 0, .35);--accent: #6fb3dc;--accent-deep: #3f88b4;--on-accent: #ffffff;--me-bubble: #2f5d7a;--me-ink: #eaf4fb;--them-bubble: #232a32;--ok: #4fae74;--warn: #dda047;--sleep: #8b8bd2;--pink: #f4b6c6;--pink-deep: #e88aa4;--yellow: #f2c75c;--danger: #c74a5a;--blob-1: rgba(111, 179, 220, .22);--blob-2: rgba(232, 138, 164, .18);--c-fur: #ffffff;--c-fur-hi: #ffffff;--c-fur-shade: #e9eef3;--c-ink: #1f2226;--c-blue: #cfe8f5;--c-blue-hi: #e6f3fa;--c-blue-deep: #9fcbe6;--c-pink: #f6b9c8;--c-pink-deep: #ef8fab;--c-yellow: #f4c75a;--c-shadow: #0b1a26;--c-glow: #8fc6ea;--radius: 22px;--font: "Nunito", -apple-system, "SF Pro Rounded", "Segoe UI", Roboto, system-ui, sans-serif}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--ink);font:15px/1.45 var(--font);overscroll-behavior:none;-webkit-font-smoothing:antialiased}button{font:inherit;color:inherit}h2,h3{margin:0 0 8px;font-weight:800;letter-spacing:-.01em}h2{font-size:21px}h3{font-size:16px}p{margin:6px 0}svg{flex:none}.muted{color:var(--muted)}.tiny{font-size:12px}.center{text-align:center}.error{color:var(--danger);font-size:13px}.app{display:flex;flex-direction:column;height:100%}.top{display:flex;align-items:center;justify-content:space-between;padding:calc(env(safe-area-inset-top) + 10px) 16px 6px}.brand{display:flex;flex-direction:column;align-items:flex-start;line-height:1.1;border:0;background:transparent;padding:4px 0;cursor:pointer}.brand-name{font-weight:900;font-size:22px;letter-spacing:-.02em}.brand-sub{font-size:12px;color:var(--muted);font-weight:600}.coins{border:0;border-radius:999px;padding:7px 12px 7px 8px;font-weight:800;display:flex;align-items:center;gap:6px;background:var(--card);color:var(--ink);box-shadow:var(--shadow);cursor:pointer}.coin-val{display:inline-flex;align-items:center;gap:5px;font-weight:800;font-variant-numeric:tabular-nums}.coin-svg{filter:drop-shadow(0 1px 1px rgba(120,80,0,.35))}.content{flex:1;overflow-y:auto;padding:0 14px 14px}.screen{display:flex;flex-direction:column;gap:12px;min-height:100%}.screen.center,.card.center{align-items:center;justify-content:center;text-align:center}.screen.center{padding:40px 20px}.card{background:var(--card);border-radius:var(--radius);padding:14px 16px;box-shadow:var(--shadow)}.home{gap:10px}.stage{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;padding:0 0 4px;border-radius:30px;overflow:visible;background:radial-gradient(60% 50% at 30% 30%,var(--blob-1),transparent 70%),radial-gradient(45% 40% at 75% 65%,var(--blob-2),transparent 70%)}.creature-btn{border:0;background:transparent;padding:0;cursor:pointer;-webkit-user-select:none;user-select:none}.creature{width:216px;height:225px;overflow:visible}.speech{position:absolute;top:2px;left:10px;right:10px;z-index:2;background:var(--card);border-radius:18px;padding:10px 14px;font-size:14px;font-weight:600;box-shadow:var(--shadow);animation:pop .25s cubic-bezier(.2,1.4,.4,1)}.speech:after{content:"";position:absolute;left:50%;bottom:-7px;width:14px;height:14px;background:var(--card);transform:translate(-50%) rotate(45deg)}.chips{display:flex;gap:6px;flex-wrap:wrap;justify-content:center}.chip{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border-radius:999px;font-size:12px;font-weight:800;background:var(--card);color:var(--muted);border:0;box-shadow:0 2px 10px #0000000f}.chip.ok{color:var(--ok)}.chip.warn{color:var(--warn)}.chip.sleep{color:var(--sleep)}.chip.bad{color:var(--danger)}.chip.ghost{padding:5px 8px;cursor:pointer}.hint{font-size:12px;color:var(--muted);text-align:center;margin:0 12px}.link{border:0;background:transparent;color:var(--accent-deep);font-weight:700;font-size:13px;display:inline-flex;align-items:center;gap:6px;padding:4px 8px;cursor:pointer}.creature .root{transform-origin:120px 232px}.creature .body{transform-origin:120px 220px;animation:breathe 3.6s ease-in-out infinite}.creature .tail{transform-origin:184px 196px;animation:sway 4.6s ease-in-out infinite}.creature .ear-l{transform-origin:72px 100px;animation:twitch 9s ease-in-out infinite}.creature .ear-r{transform-origin:168px 100px;animation:twitch 11s ease-in-out infinite 3s}.creature .eyes-open{transform-origin:120px 128px;animation:blink 6s infinite}.creature .eyes-closed,.creature .eyes-happy,.creature .mouth-open,.creature .mouth-o,.creature .fx{opacity:0}.creature .fx{transition:opacity .25s}.creature .paw-l{transform-origin:58px 176px}.creature .paw-r{transform-origin:182px 176px}.creature .glow{animation:glow 4s ease-in-out infinite;transform-origin:120px 140px}.creature.sleeping .eyes-open,.creature.resting .eyes-open{opacity:0;animation:none}.creature.sleeping .eyes-closed,.creature.resting .eyes-closed,.creature.sleeping .zzz{opacity:1}.creature.sleeping .z1{animation:floatz 2.4s ease-in-out infinite}.creature.sleeping .z2{animation:floatz 2.4s ease-in-out infinite .8s}.creature.sleeping .z3{animation:floatz 2.4s ease-in-out infinite 1.6s}.creature.sleeping .body,.creature.resting .body{animation:breathe 5.5s ease-in-out infinite}.creature.sleeping .tail,.creature.resting .tail{animation:sway 8s ease-in-out infinite}.creature.sleeping .root,.creature.resting .root{animation:slump 6s ease-in-out infinite}.creature.sleeping .mouth,.creature.resting .mouth{d:path("M115 143q5 3 10 0")}.creature.energized .body{animation:breathe 2.2s ease-in-out infinite}.creature.energized .tail{animation:sway 1.8s ease-in-out infinite}.creature.energized .root{animation:perk 7s ease-in-out infinite}.creature.mood-high .mouth{d:path("M110 141q5 8 10 0q5 8 10 0")}.creature.mood-high .root{animation:perk 9s ease-in-out infinite 3s}.creature.mood-high .cheek{transform:scale(1.1);transform-box:fill-box;transform-origin:center}.creature.mood-flat .mouth{d:path("M113 143h14")}.creature.mood-low .mouth{d:path("M112 146q8-6 16 0")}.creature.mood-low .cheek{opacity:.6}.creature.mood-low .ear-l{transform:rotate(-8deg);animation:none}.creature.mood-low .ear-r{transform:rotate(8deg);animation:none}.creature.mood-min .mouth{d:path("M110 148q10-8 20 0")}.creature.mood-min .cheek{opacity:.4}.creature.mood-min .ear-l{transform:rotate(-16deg);animation:none}.creature.mood-min .ear-r{transform:rotate(16deg);animation:none}.creature.mood-min .tear{opacity:1;animation:tear 2.6s ease-in infinite}.creature.mood-min .tail,.creature.mood-low .tail{animation:sway 7s ease-in-out infinite}.creature.react-pet .eyes-open{opacity:0}.creature.react-pet .eyes-happy,.creature.react-pet .hearts{opacity:1}.creature.react-pet .h1{animation:heart 1.4s ease-out infinite}.creature.react-pet .h2{animation:heart 1.4s ease-out infinite .45s}.creature.react-pet .h3{animation:heart 1.4s ease-out infinite .9s}.creature.react-pet .root{animation:lean 2.6s ease-in-out}.creature.react-pet .tail{animation:sway .9s ease-in-out infinite}.creature .acorn{transform:translate(250px,210px) scale(1.6)}.creature .crumbs{opacity:0}.creature.react-feed .acorn{opacity:1;animation:acorn-fly 2.8s ease-in-out forwards}.creature.react-feed .acorn-body{animation:acorn-wobble .5s ease-in-out infinite}.creature.react-feed .mouth{opacity:0}.creature.react-feed .mouth-open{opacity:1;animation:chew .4s ease-in-out 5 1s;transform-origin:120px 142px}.creature.react-feed .eyes-open{opacity:0}.creature.react-feed .eyes-happy{opacity:1}.creature.react-feed .cheek{animation:puff .4s ease-in-out 5 1s;transform-origin:center;transform-box:fill-box}.creature.react-feed .paw-l{animation:reach-l 2.4s ease-in-out}.creature.react-feed .paw-r{animation:reach-r 2.4s ease-in-out}.creature.react-feed .crumbs{animation:crumbs 1.8s ease-out 1.2s forwards}.creature .plate{transform:translate(120px,300px)}.creature.react-curry .plate{opacity:1;animation:plate-up 3.2s ease-in-out forwards}.creature.react-curry .steam{animation:steam 1.2s ease-in-out infinite}.creature.react-curry .mouth{opacity:0}.creature.react-curry .mouth-open{opacity:1;animation:chew .4s ease-in-out 6 1.1s;transform-origin:120px 142px}.creature.react-curry .eyes-open{opacity:0}.creature.react-curry .eyes-happy{opacity:1}.creature.react-curry .cheek{animation:puff .4s ease-in-out 6 1.1s;transform-origin:center;transform-box:fill-box}.creature.react-curry .paw-l{animation:reach-l 2.8s ease-in-out}.creature.react-curry .paw-r{animation:reach-r 2.8s ease-in-out}.creature.react-curry .root{animation:wiggle .9s ease-in-out 2 1.2s}.creature .cup{transform:translate(120px,300px)}.creature.react-tea .cup{opacity:1;animation:plate-up 3.4s ease-in-out forwards}.creature.react-tea .steam{animation:steam 1.2s ease-in-out infinite}.creature.react-tea .mouth{d:path("M117 143a3 3 0 1 0 6 0a3 3 0 1 0-6 0")}.creature.react-tea .eyes-open{opacity:0}.creature.react-tea .eyes-closed{opacity:1}.creature.react-tea .cheek{transform:scale(1.12);transform-box:fill-box;transform-origin:center}.creature.react-tea .paw-l{animation:reach-l 3s ease-in-out}.creature.react-tea .paw-r{animation:reach-r 3s ease-in-out}.creature.react-tea .root{animation:breathe 1.6s ease-in-out 2 1s}.creature.react-play .root{animation:jump 1.1s cubic-bezier(.3,.8,.4,1.2) 2 1.2s}.creature.react-play .yarn{opacity:1;animation:yarn-move 5s cubic-bezier(.3,.6,.4,1) forwards}.creature.react-play .yarn-ball{animation:yarn-spin 5s linear forwards}.creature.react-play .sparks{opacity:1;animation:twinkle .7s ease-in-out infinite 1.2s}.creature.react-play .paw-r{animation:bat .5s ease-in-out 4 1.3s}.creature.react-play .tail{animation:spin .7s ease-in-out 6}.creature.react-play .eyes-open{opacity:0}.creature.react-play .eyes-happy{opacity:1}.creature .yarn{transform:translate(300px,226px)}.creature.react-boost .can{opacity:1;animation:can-drop 1.4s ease-in-out forwards}.creature.react-boost .root{animation:hop .45s ease-in-out 6 1.2s}.creature.react-boost .sparks{opacity:1;animation:twinkle .5s ease-in-out infinite 1.2s}.creature.react-boost .eyes-open{transform:scale(1.15);animation:none}.creature.react-boost .tail{animation:spin .5s ease-in-out 6 1.2s}.creature .can{transform:translate(120px,-40px)}.creature.react-sad .root{animation:shake .55s ease-in-out}.creature.react-sad .mouth{d:path("M112 146q8-6 16 0")}.creature.react-sad .ear-l{transform:rotate(-12deg);animation:none}.creature.react-sad .ear-r{transform:rotate(12deg);animation:none}@keyframes breathe{0%,to{transform:scale(1)}50%{transform:scale(1.02,1.035)}}@keyframes sway{0%,to{transform:rotate(-3deg)}50%{transform:rotate(4deg)}}@keyframes spin{0%,to{transform:rotate(-10deg)}50%{transform:rotate(14deg) scale(1.08)}}@keyframes twitch{0%,90%,to{transform:rotate(0)}93%{transform:rotate(-6deg)}96%{transform:rotate(3deg)}}@keyframes perk{0%,88%,to{transform:translateY(0)}92%{transform:translateY(-6px)}96%{transform:translateY(0)}}@keyframes tear{0%{transform:translateY(0);opacity:0}20%{opacity:1}to{transform:translateY(26px);opacity:0}}@keyframes blink{0%,90%,to{transform:scaleY(1)}92%,93.5%{transform:scaleY(.06)}94.5%{transform:scaleY(1)}96%,97.5%{transform:scaleY(.06)}}@keyframes look{0%,40%,to{transform:translate(0)}46%,56%{transform:translate(2.5px)}64%,74%{transform:translate(-2.5px)}80%{transform:translate(0)}}@keyframes glow{0%,to{transform:scale(1);opacity:.8}50%{transform:scale(1.06);opacity:1}}@keyframes floatz{0%{transform:translateY(6px);opacity:0}30%{opacity:1}to{transform:translateY(-16px);opacity:0}}@keyframes twinkle{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}@keyframes hop{0%,to{transform:translateY(0)}50%{transform:translateY(-9px)}}@keyframes slump{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(3px) rotate(-1.5deg)}}@keyframes lean{0%,to{transform:rotate(0)}30%{transform:rotate(-6deg) translateY(2px)}70%{transform:rotate(-4deg) translateY(1px)}}@keyframes heart{0%{transform:translateY(8px) scale(.6);opacity:0}25%{opacity:1}to{transform:translateY(-34px) scale(1.15);opacity:0}}@keyframes acorn-fly{0%{transform:translate(250px,210px) scale(1.6) rotate(20deg);opacity:0}10%{opacity:1}35%{transform:translate(120px,168px) scale(1.5) rotate(0);opacity:1}60%{transform:translate(120px,166px) scale(1.2);opacity:1}80%{transform:translate(120px,164px) scale(.7);opacity:1}to{transform:translate(120px,162px) scale(.1);opacity:0}}@keyframes plate-up{0%{transform:translate(120px,300px);opacity:0}25%{transform:translate(120px,196px);opacity:1}80%{transform:translate(120px,196px);opacity:1}to{transform:translate(120px,230px);opacity:0}}@keyframes steam{0%,to{transform:translateY(0);opacity:.45}50%{transform:translateY(-4px);opacity:.2}}@keyframes acorn-wobble{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}@keyframes crumbs{0%{opacity:0;transform:translateY(0)}20%{opacity:1}to{opacity:0;transform:translateY(26px)}}@keyframes chew{0%,to{transform:scaleY(1)}50%{transform:scaleY(.35)}}@keyframes puff{0%,to{transform:scale(1)}50%{transform:scale(1.18)}}@keyframes reach-l{0%,to{transform:translate(0)}35%,70%{transform:translate(34px,-16px) rotate(35deg)}}@keyframes reach-r{0%,to{transform:translate(0)}35%,70%{transform:translate(-34px,-16px) rotate(-35deg)}}@keyframes jump{0%{transform:translateY(0) scale(1)}15%{transform:translateY(6px) scale(1.08,.88)}45%{transform:translateY(-46px) scale(.94,1.1)}60%{transform:translateY(-40px) scale(.96,1.06)}85%{transform:translateY(4px) scale(1.06,.92)}to{transform:translateY(0) scale(1)}}@keyframes yarn-move{0%{transform:translate(300px,226px)}24%{transform:translate(190px,226px)}30%{transform:translate(178px,226px)}66%{transform:translate(178px,226px)}72%{transform:translate(150px,214px)}to{transform:translate(-80px,226px)}}@keyframes yarn-spin{0%{transform:rotate(0)}30%{transform:rotate(-400deg)}66%{transform:rotate(-400deg)}to{transform:rotate(-1300deg)}}@keyframes bat{0%,to{transform:rotate(0)}50%{transform:translate(6px,-14px) rotate(-50deg)}}@keyframes can-drop{0%{transform:translate(120px,-40px) rotate(-20deg)}60%{transform:translate(120px,150px) rotate(8deg)}75%{transform:translate(120px,140px) rotate(-4deg) scale(1.05)}to{transform:translate(120px,150px) rotate(0) scale(.2);opacity:0}}@keyframes wave{0%,to{transform:rotate(0)}50%{transform:translate(-4px,-22px) rotate(-70deg)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-7px)}75%{transform:translate(7px)}}@keyframes pop{0%{transform:translateY(10px) scale(.92);opacity:0}to{transform:none;opacity:1}}@keyframes rise{0%{transform:translateY(14px);opacity:0}to{transform:none;opacity:1}}.meters{display:grid;gap:9px;padding:4px 6px 0}.bar-head{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;color:var(--muted);margin-bottom:4px}.bar-head span{display:inline-flex;align-items:center;gap:5px}.bar-head.strong{color:var(--ink);font-weight:800;font-size:14px}.bar{height:8px;border-radius:999px;background:var(--card-2);overflow:hidden}.bar.thin{height:6px}.bar-fill{height:100%;border-radius:999px;background:var(--accent);transition:width .7s cubic-bezier(.2,.8,.2,1)}.bar-fill.ok{background:linear-gradient(90deg,var(--accent),var(--ok))}.bar-fill.warn{background:linear-gradient(90deg,var(--yellow),var(--warn))}.bar-fill.sleep{background:linear-gradient(90deg,#b6b6e8,var(--sleep))}.friend{padding:8px 6px 0;display:flex;flex-direction:column;gap:6px}.care{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding-top:4px}.care.two{grid-template-columns:repeat(2,1fr)}.care.two .pebble{flex-direction:row;justify-content:center;gap:10px;padding:12px 10px;border-radius:22px}.care.two .pebble-icon{margin:0}.care.two .pebble-title{font-size:14px}.pebble{border:0;background:var(--card);color:var(--ink);border-radius:26px 26px 22px 22px;padding:12px 6px 10px;display:flex;flex-direction:column;align-items:center;gap:4px;cursor:pointer;box-shadow:var(--shadow);transition:transform .12s cubic-bezier(.2,1.4,.4,1)}.pebble:active{transform:scale(.94)}.pebble:disabled{opacity:.45}.pebble-icon{width:46px;height:46px;border-radius:18px;display:grid;place-items:center;color:#fff;margin-bottom:2px}.pebble-icon.pink{background:linear-gradient(135deg,#f6a8bd,var(--pink-deep))}.pebble-icon.yellow{background:linear-gradient(135deg,#ffd980,#e9b43a)}.pebble-icon.blue{background:linear-gradient(135deg,#8ec5e6,var(--accent-deep))}.pebble-title{font-weight:800;font-size:13px}.pebble-sub{font-weight:600;color:var(--muted);font-size:11px;display:inline-flex;align-items:center}.row{display:flex;gap:8px;width:100%}.row .btn{flex:1}.btn{border:0;background:var(--card);color:var(--ink);border-radius:16px;padding:12px 14px;box-shadow:var(--shadow);font-weight:800;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .1s ease}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.5;cursor:default}.btn.primary{background:linear-gradient(135deg,var(--accent),var(--accent-deep));color:var(--on-accent)}.btn.wide{width:100%;margin-top:8px}.btn.option{justify-content:flex-start;text-align:left;font-weight:700}.btn.send{flex:0 0 48px;padding:0;border-radius:14px}.setup{display:flex;flex-direction:column;align-items:center;gap:10px;padding:18px 8px 24px;min-height:100%}.setup-stage{width:100%;display:flex;justify-content:center;padding:6px 0;border-radius:30px;background:radial-gradient(60% 50% at 40% 40%,var(--blob-1),transparent 70%),radial-gradient(45% 40% at 70% 70%,var(--blob-2),transparent 70%)}.setup-title{margin-top:4px}.field{width:100%;display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:700;color:var(--muted)}.field input{border:2px solid var(--line);border-radius:16px;padding:13px 16px;font:inherit;font-size:18px;font-weight:800;text-align:center;background:var(--card);color:var(--ink);outline:none}.field input:focus{border-color:var(--accent)}.swatches{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;padding:6px 0 0}.swatch{width:40px;height:40px;border-radius:50%;border:3px solid transparent;cursor:pointer;display:grid;place-items:center;color:#3a3a40;box-shadow:0 4px 12px #0000001f;transition:transform .12s ease,border-color .12s ease}.swatch.active{border-color:var(--accent-deep);transform:scale(1.12)}.swatch.locked{opacity:.5}.setup .row{width:100%;margin-top:8px}.setup-label{width:100%;font-size:12px;font-weight:700;color:var(--muted);margin-top:6px}.accs{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.acc{position:relative;width:54px;height:54px;border-radius:16px;border:2px solid var(--line);background:var(--card);color:var(--muted);display:grid;place-items:center;cursor:pointer;transition:transform .12s ease,border-color .12s ease}.acc.active{border-color:var(--accent-deep);transform:scale(1.06)}.acc.locked{opacity:.5}.acc .mini-lock{position:absolute;right:3px;bottom:3px;color:var(--muted)}.lock-note{display:flex;gap:10px;align-items:center;justify-content:center;font-size:13px;color:var(--muted)}.lock-note .btn{padding:6px 12px;font-size:13px}.badge-owned{position:absolute;top:8px;left:8px;z-index:1;background:var(--ok);color:#fff;font-size:11px;font-weight:800;padding:2px 8px;border-radius:10px}.shop-head{display:flex;align-items:center;justify-content:space-between;padding:6px 2px 0}.grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.item{border:0;border-radius:var(--radius);background:var(--card);color:var(--ink);box-shadow:var(--shadow);padding:14px 12px 12px;text-align:center;cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:6px;transition:transform .12s ease}.item:active{transform:scale(.97)}.item.dim{opacity:.6}.item-emoji{font-size:38px;line-height:1;padding:6px 0}.item-photo,.modal-photo{width:100%;aspect-ratio:1;object-fit:cover;border-radius:14px}.item-title{font-weight:800;font-size:14px}.item-price{font-size:13px;color:var(--muted);font-weight:700;display:inline-flex;align-items:center;gap:4px}.locked{display:flex;gap:10px;align-items:center;font-size:13px;color:var(--sleep);font-weight:600}.modal-back{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:flex-end;justify-content:center;z-index:20}.modal{width:100%;max-width:520px;background:var(--card);color:var(--ink);border-radius:26px 26px 0 0;padding:20px 18px calc(env(safe-area-inset-bottom) + 18px);animation:rise .22s ease-out}.modal-emoji{font-size:56px;text-align:center;padding:4px 0 8px}.quote{color:var(--accent-deep);font-style:italic;font-weight:600}.toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom) + 86px);transform:translate(-50%);background:#2a2f36;color:#fff;padding:10px 16px;border-radius:14px;font-size:13px;font-weight:600;max-width:90%;z-index:30;box-shadow:var(--shadow)}.toast.bad{background:var(--danger)}.chat{min-height:100%}.chat-list{flex:1;display:flex;flex-direction:column;gap:6px;padding:6px 2px 14px}.bubble-row{display:flex;align-items:flex-end;gap:8px}.bubble-row.left{justify-content:flex-start}.bubble-row.right{justify-content:flex-end}.bubble-row.left+.bubble-row.left,.bubble-row.right+.bubble-row.right{margin-top:-2px}.avatar{width:28px;height:28px;border-radius:50%;background:var(--card);box-shadow:var(--shadow);display:grid;place-items:center;color:var(--accent-deep);flex:none}.avatar.ghost{visibility:hidden}.bubble.pending{opacity:.6}.event-row{display:flex;justify-content:center;margin:4px 0}.event-pill{font-size:12px;font-weight:700;color:var(--muted);background:var(--card);border-radius:999px;padding:5px 12px;box-shadow:0 2px 8px #0000000d;max-width:90%;text-align:center}.bubble{max-width:82%;padding:9px 12px;border-radius:18px;position:relative;white-space:pre-wrap;word-break:break-word;box-shadow:0 2px 8px #0000000f;font-weight:500}.bubble.them{background:var(--them-bubble);color:var(--ink);border-bottom-left-radius:6px}.bubble.me{background:var(--me-bubble);color:var(--me-ink);border-bottom-right-radius:6px}.bubble.sys{background:#c74a5a24;color:var(--danger);font-size:13px}.time{display:block;font-size:10px;opacity:.6;text-align:right;margin-top:2px}.sticker{width:128px;height:128px;object-fit:contain}.typing{display:flex;gap:4px;padding:12px 14px}.typing span{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:blinkdot 1.2s infinite}.typing span:nth-child(2){animation-delay:.2s}.typing span:nth-child(3){animation-delay:.4s}@keyframes blinkdot{0%,80%,to{opacity:.25}40%{opacity:1}}.composer{position:sticky;bottom:0;display:flex;gap:8px;padding:8px 0 2px;background:var(--bg)}.composer.inline{position:static;background:transparent;margin-top:8px}.composer input{flex:1;border:2px solid var(--line);border-radius:16px;padding:12px 14px;font:inherit;font-weight:600;background:var(--card);color:var(--ink);outline:none}.composer input::placeholder{color:var(--muted);font-weight:500}.composer input:focus{border-color:var(--accent)}.quest-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.quest-text{font-size:16px;margin:12px 0 4px;font-weight:600}.options{display:flex;flex-direction:column;gap:8px;margin-top:10px}.history{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.history li{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:600}.tabs{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;padding:8px 10px calc(env(safe-area-inset-bottom) + 8px);background:var(--card);border-top:1px solid var(--line)}.tab{position:relative;border:0;background:transparent;border-radius:16px;padding:8px 4px 6px;display:flex;flex-direction:column;align-items:center;gap:3px;color:var(--muted);cursor:pointer;transition:color .15s ease,background .15s ease}.tab.active{color:var(--accent-deep);background:#6fb3dc29}.tab.active svg{transform:translateY(-1px) scale(1.08)}.tab svg{transition:transform .15s ease}.tab-label{font-size:11px;font-weight:800}.dot{position:absolute;top:6px;right:22%;width:8px;height:8px;border-radius:50%;background:var(--pink-deep)}.art{display:grid;place-items:center;border-radius:22px}.item .art{margin-bottom:2px}.stock{font-weight:600;font-size:11px;color:var(--muted);margin-left:6px}.modal-grip{width:42px;height:5px;border-radius:999px;background:var(--line);margin:-6px auto 12px}.modal-art{display:flex;justify-content:center;margin-bottom:8px}.modal-photo{width:160px;height:160px;border-radius:26px}.quote-box{display:flex;gap:10px;align-items:flex-start;background:var(--card-2);border-radius:16px;padding:10px 12px;font-size:14px;font-weight:600;color:var(--accent-deep);margin:8px 0 12px}.quote-box svg{margin-top:2px}.center-link{align-self:center;margin:6px auto 0;display:flex;color:var(--muted)}.bag{padding:4px 6px 0;display:flex;flex-direction:column;gap:8px}.bag-row{display:flex;gap:10px;overflow-x:auto;padding:2px 2px 6px;scrollbar-width:none}.bag-row::-webkit-scrollbar{display:none}.bag-item{flex:0 0 auto;border:0;background:var(--card);color:var(--ink);border-radius:18px;padding:10px 12px 9px;display:flex;flex-direction:column;align-items:center;gap:4px;box-shadow:var(--shadow);cursor:pointer;min-width:104px}.bag-item:disabled{opacity:.5}.bag-title{font-size:12px;font-weight:800;max-width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bag-give{font-size:11px;font-weight:800;color:var(--accent-deep)}.bubble.event{font-style:italic;opacity:.9}.vitals{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:0 2px}.vital{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 6px 8px;background:var(--card);border-radius:18px;box-shadow:var(--shadow);min-width:0}.vital-ring{position:relative;width:44px;height:44px;display:grid;place-items:center;flex:none}.vital-ring>svg:first-child{position:absolute;top:0;right:0;bottom:0;left:0}.ring-track{fill:none;stroke:var(--card-2);stroke-width:5}.ring-fill{fill:none;stroke-width:5;stroke-linecap:round;transition:stroke-dashoffset .9s cubic-bezier(.2,.8,.2,1)}.vital.ok .ring-fill,.vital.ok .vital-ring{stroke:var(--ok);color:var(--ok)}.vital.warn .ring-fill,.vital.warn .vital-ring{stroke:var(--warn);color:var(--warn)}.vital.sleep .ring-fill,.vital.sleep .vital-ring{stroke:var(--sleep);color:var(--sleep)}.vital.bad .ring-fill,.vital.bad .vital-ring{stroke:var(--danger);color:var(--danger)}.vital.bad .vital-text b{color:var(--danger)}.vital-text{display:flex;flex-direction:column;align-items:center;text-align:center;line-height:1.15;min-width:0;max-width:100%}.vital-text b{font-weight:900;font-size:16px;font-variant-numeric:tabular-nums}.vital-text small{font-size:11px;font-weight:700;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pips{display:flex;flex-direction:column;align-items:center;gap:4px}.pips-row{display:flex;gap:6px}.pip{position:relative;color:var(--card-2);display:grid;place-items:center}.pip svg{fill:currentColor;stroke:none}.pip.full{color:var(--pink-deep)}.pip.current{color:var(--card-2)}.pip.current:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--pink-deep);clip-path:inset(calc(100% - var(--p)) 0 0 0);-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 20.5s-7.5-4.6-7.5-10A4.3 4.3 0 0 1 12 8.3a4.3 4.3 0 0 1 7.5 2.2c0 5.4-7.5 10-7.5 10z'/></svg>") center / 18px 18px no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M12 20.5s-7.5-4.6-7.5-10A4.3 4.3 0 0 1 12 8.3a4.3 4.3 0 0 1 7.5 2.2c0 5.4-7.5 10-7.5 10z'/></svg>") center / 18px 18px no-repeat}.pips-title{font-size:12px;font-weight:800;color:var(--muted)}.friend{padding:6px 6px 0;display:flex;flex-direction:column;gap:6px;align-items:center}.segments{display:flex;gap:6px;background:var(--card-2);border-radius:16px;padding:4px}.segment{flex:1;border:0;background:transparent;border-radius:12px;padding:9px 10px;font-weight:800;color:var(--muted);cursor:pointer;transition:background .15s ease,color .15s ease}.segment.active{background:var(--card);color:var(--ink);box-shadow:0 2px 10px #00000014}.item{position:relative}.item.adult .item-visual{filter:blur(9px);opacity:.55}.item.adult .item-title{filter:blur(3px)}.badge-adult{position:absolute;top:10px;right:10px;z-index:2;background:#d23b5b;color:#fff;font-weight:900;font-size:12px;border-radius:999px;padding:4px 9px;letter-spacing:.02em;box-shadow:0 2px 8px #0003}.badge-adult.static{position:static;display:inline-block;font-size:14px;padding:6px 14px}.adult-head{display:flex;justify-content:center;margin:4px 0 10px}.tasks{list-style:none;margin:4px 0 0;padding:0;display:flex;flex-direction:column;gap:8px}.task{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:14px;background:var(--card-2)}.task-check{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--card);color:transparent;border:2px solid var(--line);flex:none}.task.done .task-check{background:var(--ok);color:#fff;border-color:var(--ok)}.task.done .task-text b{text-decoration:line-through;opacity:.7}.task.just{animation:pop .4s ease-out}.task-text{display:flex;flex-direction:column;line-height:1.2;flex:1;min-width:0}.task-text b{font-weight:800;font-size:14px}.task-text small{font-size:11px;color:var(--muted);font-weight:600}.task-reward{font-size:12px;color:var(--ok)}.task .btn.small{align-self:flex-start;margin-top:6px;padding:6px 12px;font-size:12px}.mail{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.mail-item{position:relative;width:100%;display:flex;gap:12px;align-items:flex-start;text-align:left;padding:12px 14px;border:0;border-radius:var(--radius);background:var(--card);box-shadow:var(--shadow);cursor:pointer}.mail-item.unread{background:var(--card-2)}.mail-icon{flex:none;width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--bg-2);color:var(--accent)}.mail-item.invite .mail-icon{color:var(--pink-deep)}.mail-item.news .mail-icon{color:var(--yellow)}.mail-item.bonus .mail-icon{color:var(--ok)}.game{display:flex;flex-direction:column;gap:10px}.game-head{display:flex;justify-content:space-between;align-items:center}.game-stage{position:relative;display:flex;justify-content:center;border-radius:var(--radius);overflow:hidden;touch-action:manipulation;-webkit-user-select:none;user-select:none}.game-stage canvas{max-width:100%;border-radius:var(--radius);display:block}.game-over{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;padding:24px;background:#14171cc7;color:var(--ink);text-align:center}.game-over b{font-size:16px}.game-score{font-size:30px;font-weight:900}.game-coins{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--muted)}.game-after{display:flex;flex-direction:column;gap:10px;align-items:center}.game-card{width:100%;display:flex;gap:12px;align-items:center;text-align:left;padding:14px;border:0;border-radius:var(--radius);background:var(--card);color:var(--ink);box-shadow:var(--shadow);cursor:pointer}.game-card:disabled{opacity:.55}.game-icon{flex:none;width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:var(--card-2)}.game-icon.sky{color:var(--accent)}.game-icon.pink{color:var(--pink-deep)}.game-icon.gold{color:var(--yellow)}.game-text{display:flex;flex-direction:column;gap:3px;min-width:0}.game-text b{font-size:15px;font-weight:800}.game-text small{font-size:12px;color:var(--muted)}.game-text .reward{display:inline-flex;align-items:center;gap:4px;flex-wrap:wrap}.quote-box.big{font-size:15px;padding:14px}.guess-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.item.guess.right{outline:3px solid var(--ok)}.item.guess.wrong{outline:3px solid var(--danger)}.item.guess.dim{opacity:.5}.cooking-board{overflow:hidden}.cooking-header{margin-bottom:20px}.cooking-header>span,.cooking-order>span,.cooking-step-count>span,.cooking-result-kicker{color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.12em}.cooking-header h2{margin:2px 0 0}.cooking-order{padding:15px 0 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.cooking-order h3{margin:4px 0 7px;font-size:21px}.cooking-order p{margin:0;color:var(--ink);font-size:14px;line-height:1.5}.cooking-ingredient-heading{display:flex;justify-content:space-between;align-items:baseline;margin:18px 0 9px}.cooking-ingredient-heading b{font-size:13px}.cooking-ingredient-heading span{color:var(--muted);font-size:11px;font-variant-numeric:tabular-nums}.cooking-ticket-list{display:flex;flex-direction:column;gap:8px}.cooking-ticket{padding:11px 12px;border:1px solid var(--line);border-left:3px solid var(--accent);border-radius:10px;background:var(--card-2)}.cooking-ticket.served{border-left-color:var(--ok);opacity:.62}.cooking-ticket-top{display:flex;justify-content:space-between;align-items:center;gap:8px;color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.08em}.ticket-priority{padding:3px 6px;border-radius:4px;background:#ffffff0f;color:var(--muted)}.ticket-priority.rush{background:#dda04726;color:var(--warn)}.ticket-priority.patient{color:var(--ok)}.cooking-ticket h3{margin:7px 0 2px;font-size:15px}.cooking-ticket p{margin:0;color:var(--muted);font-size:11px}.cooking-ticket-foot{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:8px;color:var(--muted);font-size:10px}.cooking-ticket-foot .btn.small{min-height:30px;padding:5px 11px;font-size:11px}.cooking-ingredients{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.cooking-ingredient{position:relative;display:flex;min-width:0;min-height:88px;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:8px 3px 7px;border:1px solid var(--line);border-radius:11px;background:var(--card-2);color:var(--ink);font:inherit;font-size:11px;font-weight:700;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}.cooking-ingredient:active{transform:scale(.97)}.cooking-ingredient:disabled{opacity:.42;cursor:default}.cooking-ingredient.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--card-2))}.cooking-ingredients,.cooking-ingredient,.prep-tray-item,.cooking-prep-tray{touch-action:none;-webkit-user-select:none;user-select:none}.cooking-ingredient{cursor:grab}.cooking-ingredient:focus-visible,.prep-tray-item:focus-visible,.gesture-surface:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.cooking-ingredient.dragging,.prep-tray-item.dragging{opacity:.5;transform:scale(.94)}.ingredient-check{color:var(--accent);font-size:9px}.cooking-prep-tray{min-height:100px;margin-top:10px;padding:10px;border:1px dashed var(--muted);border-radius:12px;background:linear-gradient(135deg,rgba(255,255,255,.025),transparent);transition:border-color .15s,background .15s}.cooking-prep-tray.receiving{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,var(--card-2))}.prep-tray-title{display:flex;justify-content:space-between;color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.08em}.prep-tray-items{display:flex;min-height:67px;align-items:center;justify-content:center;gap:8px}.prep-tray-hint{color:var(--muted);font-size:11px}.prep-tray-item{display:flex;width:68px;min-height:62px;flex-direction:column;align-items:center;justify-content:center;gap:3px;border:1px solid var(--line);border-radius:9px;background:var(--card-2);color:var(--ink);font-size:9px;cursor:grab}.prep-tray-item .ingredient-art{width:30px;height:30px}.cooking-gesture{display:flex;flex-direction:column;gap:9px;margin:16px 0 12px}.gesture-verb{font-size:11px;letter-spacing:.06em;text-transform:uppercase}.gesture-surface{position:relative;display:flex;min-height:180px;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--line);border-radius:14px;background:radial-gradient(ellipse at center,rgba(101,133,147,.17),transparent 72%),var(--bg-2);touch-action:none;-webkit-user-select:none;user-select:none}.gesture-surface:after{position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:1px solid rgba(255,255,255,.035);border-radius:10px;content:"";pointer-events:none}.gesture-vessel{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center}.main-vessel{width:118px;height:108px;border:2px solid #56616a;border-top:0;border-radius:14px 14px 46px 46px;background:linear-gradient(180deg,#475b6529,#475b6570);box-shadow:inset 0 -10px #0000001f,0 12px 20px #00000021}.main-vessel:before{position:absolute;top:-2px;left:-2px;right:-2px;height:14px;border:2px solid #56616a;border-radius:50%;background:#262f36e6;content:""}.stir-ring{position:absolute;top:26px;width:55px;height:55px;border-radius:50%;background:conic-gradient(var(--accent) 0%,var(--line) 0);mask:radial-gradient(farthest-side,transparent calc(100% - 4px),#000 calc(100% - 3px))}.vessel-spoon{position:absolute;top:23px;color:#ded2b6;font-size:54px;font-weight:300;transform:rotate(15deg);text-shadow:0 1px 3px #000}.fold-mix{position:absolute;top:27px;color:#e5d2a8;font-size:48px;text-shadow:0 4px 9px rgba(0,0,0,.4)}.fold-utensil{position:absolute;top:6px;right:13px;color:#c2c8c9;font-size:53px;transform:rotate(15deg)}.pancake-art{position:absolute;top:29px;z-index:1;width:78px;height:28px;border:3px solid #b97b46;border-radius:50%;background:#e4b978;color:transparent;box-shadow:inset 0 -4px #c68a51}.flip-pan{position:absolute;top:55px;width:94px;height:24px;border:4px solid #737d84;border-top:0;border-radius:0 0 40px 40px}.gesture-progress{position:absolute;right:0;bottom:0;left:0;height:3px;background:var(--accent);transition:width .1s linear}.shape-rice{position:absolute;top:22px}.shape-rice .ingredient-art{width:56px;height:56px}.tea-cup-art{position:absolute;top:29px;width:74px;height:51px;border:2px solid #b87d55;border-radius:5px 5px 27px 27px;background:linear-gradient(#95654d 0,#95654d 50%,#674d40 51%)}.tea-cup-art:after{position:absolute;top:8px;right:-18px;width:15px;height:21px;border:3px solid #b87d55;border-left:0;border-radius:0 13px 13px 0;content:""}.tea-bag-art{position:absolute;left:52%;width:13px;height:16px;border:1px solid #dcbd84;background:#ead8b7;transform:rotate(12deg);transition:top .1s linear}.tea-bag-art:before{position:absolute;bottom:100%;left:50%;width:1px;height:25px;background:#d8c29b;content:""}.dual-surface{justify-content:space-around;gap:10px;padding:10px}.gesture-vessel small{margin-top:6px;color:var(--muted);font-size:8px;font-weight:900;letter-spacing:.08em}.source-vessel,.target-vessel{z-index:1;width:98px;height:104px;border:1px solid var(--line);border-radius:12px;background:var(--card-2)}.vessel-art{position:relative;display:block;width:56px;height:52px}.vessel-art.pour:before{position:absolute;top:8px;right:5px;bottom:5px;left:5px;border:2px solid #92999d;border-radius:5px 5px 19px 19px;background:#dcb97d38;content:""}.vessel-art.sweeten:before{position:absolute;top:7px;right:13px;bottom:7px;left:13px;border:2px solid #cb9a50;border-radius:6px;background:#dfad457a;content:""}.gesture-flow{width:34px;border-top:2px dashed var(--accent)}.gesture-flow:after{float:right;margin-top:-7px;color:var(--accent);content:"›";font-size:20px}.gesture-status{min-height:15px;color:var(--muted);font-size:10px;text-align:center}.cooking-gesture.complete .gesture-status{color:var(--ok);font-weight:800}.gesture-flip.complete .pancake-art{animation:pancake-flip .48s cubic-bezier(.2,.8,.25,1)}.gesture-pour.complete .source-vessel .vessel-art:before{animation:pour-empty .48s ease-out forwards}.gesture-sweeten.complete .source-vessel .vessel-art:before{animation:pour-empty .48s ease-out forwards}.gesture-shape.complete .shape-rice{animation:shape-press .3s ease-out}@keyframes pancake-flip{45%{transform:translateY(-30px) rotateX(180deg)}to{transform:translateY(0) rotateX(360deg)}}@keyframes pour-empty{to{transform:translate(34px,13px) rotate(28deg);opacity:.62}}@keyframes shape-press{40%{transform:scale(.72)}to{transform:scale(1)}}.heat-gesture{flex-direction:row;align-items:center;flex-wrap:wrap;padding:13px;border:1px solid var(--line);border-radius:12px;background:var(--bg-2)}.stove-dial{position:relative;display:grid;width:84px;height:84px;flex:0 0 84px;place-items:center;border:5px solid #60696f;border-radius:50%;background:radial-gradient(circle at 35% 30%,#434d54,#22282e 68%);box-shadow:inset 0 2px 8px #00000073,0 3px 5px #00000040}.dial-center{color:var(--ink);font-size:16px;font-weight:900;font-variant-numeric:tabular-nums}.dial-tick{position:absolute;top:6px;left:calc(50% - 2px);width:4px;height:15px;border-radius:3px;background:#e4a268;transform-origin:2px 32px}.heat-gesture-control{display:flex;min-width:150px;flex:1;flex-direction:column;gap:9px;padding-left:14px}.heat-gesture-control label{color:var(--muted);font-size:10px;line-height:1.4}.heat-gesture-control input,.gesture-temperature input{width:100%;min-height:28px;accent-color:#d9945d;touch-action:pan-x}.heat-gesture>.gesture-status{width:100%}.gesture-temperature{display:flex;flex-direction:column;gap:2px;padding:7px 10px;border-radius:9px;background:var(--bg-2)}.gesture-temperature label{display:flex;justify-content:space-between;gap:7px;color:var(--ink);font-size:10px;font-weight:800}.gesture-temperature label span{color:var(--muted);font-size:9px;font-weight:500}.gesture-temperature input{margin:0}.cooking-gesture-next{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:7px}.cooking-gesture-next>span{color:var(--ok);font-size:10px;font-weight:800}.cooking-quality{display:flex;flex-direction:column;gap:7px;margin:11px 0 8px;padding:10px 11px;border:1px solid var(--line);border-radius:11px;background:var(--bg-2)}.cooking-quality>div{display:flex;align-items:baseline;justify-content:space-between}.cooking-quality>div span{color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.07em}.cooking-quality>div b{color:var(--accent);font-size:17px;font-variant-numeric:tabular-nums}.cooking-quality>i{display:block;height:5px;overflow:hidden;border-radius:4px;background:var(--line)}.cooking-quality>i span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent),var(--ok));transition:width .2s ease-out}.cooking-quality small{color:var(--muted);font-size:10px;line-height:1.4}.cooking-shift-grade{display:flex;width:100%;flex-direction:column;gap:3px;margin:8px 0 12px;padding:12px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:13px;background:linear-gradient(145deg,color-mix(in srgb,var(--accent) 12%,var(--card-2)),var(--card-2))}.cooking-shift-grade span{color:var(--muted);font-size:9px;font-weight:900;letter-spacing:.1em}.cooking-shift-grade b{color:var(--accent);font-size:23px}.cooking-shift-grade small{color:var(--ink);font-size:11px}@media(prefers-reduced-motion:reduce){.gesture-flip.complete .pancake-art,.gesture-pour.complete .source-vessel .vessel-art:before,.gesture-sweeten.complete .source-vessel .vessel-art:before,.gesture-shape.complete .shape-rice{animation:none}}.ingredient-art{width:36px;height:36px;overflow:visible}.ingredient-check{position:absolute;top:5px;right:7px;color:var(--accent);font-size:12px;font-weight:900}.cooking-promise{margin:13px 2px;color:var(--muted);font-size:11px;line-height:1.45}.cooking-board>.btn.wide{min-height:46px}.cooking-step-count{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:2px 0 13px}.cooking-step-count>div{display:flex;gap:4px;width:40%}.cooking-step-count i{display:block;height:3px;flex:1;border-radius:3px;background:var(--line)}.cooking-step-count i.active{background:var(--accent)}.cooking-narration{min-height:42px;margin:0 0 13px;color:var(--muted);font-size:12px;line-height:1.45}.cooking-step-title{margin:0 0 3px;font-size:19px}.cooking-step-instruction{margin:0 0 11px;font-size:12px}.cooking-choice-list{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}.cooking-choice{display:flex;min-height:47px;align-items:center;justify-content:space-between;gap:10px;padding:8px 11px;border:1px solid var(--line);border-radius:9px;background:var(--card-2);color:var(--ink);text-align:left;cursor:pointer}.cooking-choice>span{font-size:12px;font-weight:800}.cooking-choice small{max-width:60%;color:var(--muted);font-size:10px;text-align:right}.cooking-choice.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 9%,var(--card-2))}.cooking-choice-feedback{margin:-7px 0 8px;padding:7px 9px;border-left:2px solid var(--ok);background:var(--card-2);color:var(--ok);font-size:10px}.cooking-choice-feedback.hint{border-color:var(--warn);color:var(--muted)}.cooking-heat-control{margin:14px 0;padding:12px 12px 10px;border-radius:11px;background:var(--bg-2)}.cooking-heat-readout{display:flex;justify-content:space-between;align-items:end;margin-bottom:10px}.cooking-heat-readout>div{display:flex;flex-direction:column;gap:3px}.cooking-heat-readout span{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.08em}.cooking-heat-readout b{color:var(--ink);font-size:24px;font-variant-numeric:tabular-nums;line-height:1}.cooking-heat-readout b small{margin-left:2px;color:var(--muted);font-size:12px}.cooking-heat-readout .heat-guidance{align-items:flex-end}.cooking-heat-readout .heat-guidance b{color:var(--ok);font-size:13px}.cooking-heat-scale{position:relative;height:56px;overflow:hidden;border:1px solid var(--line);border-radius:8px;background:radial-gradient(ellipse at center,#d0844847,#232a3280 62%)}.cooking-heat-scale:before{content:"";position:absolute;left:17%;top:50%;width:66%;height:23px;transform:translateY(-50%);border:1px solid rgba(226,177,115,.35);border-radius:50%;background:#1f252dbf;box-shadow:inset 0 0 11px #0006}.heat-range{position:absolute;top:0;bottom:0;background:#4fae7433}.heat-indicator{position:absolute;top:0;bottom:0;width:2px;background:#f0c27a;box-shadow:0 0 7px #f0c27abf}.cooking-slider-label{display:block;margin:8px 0 2px;color:var(--muted);font-size:10px}.cooking-temperature{display:block;width:100%;height:24px;margin:4px 0 0;accent-color:#d9945d;cursor:pointer;touch-action:pan-x}.cooking-temperature:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.cooking-no-fail{margin:9px 0 0;color:var(--muted);font-size:10px;text-align:center}.cooking-result{display:flex;flex-direction:column;align-items:center;padding:10px 0 0;text-align:center}.cooking-result-kicker{color:var(--ok)}.cooking-result h3{margin:5px 0;font-size:20px}.cooking-story-result{margin:4px 0 10px;font-size:13px;line-height:1.5}.result-lines{display:flex;width:100%;flex-direction:column;gap:6px;margin:8px 0;text-align:left}.result-lines span{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-left:2px solid var(--line);font-size:10px}.result-lines b{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.cooking-bonus{margin:3px 0;color:var(--ok);font-size:12px;font-weight:800}@media(max-width:360px){.cooking-choice{align-items:flex-start;flex-direction:column;gap:2px}.cooking-choice small{max-width:none;text-align:left}}@media(prefers-reduced-motion:reduce){.cooking-ingredient{transition:none}}.content .screen>*{animation:rise .34s cubic-bezier(.2,.8,.2,1) both}.content .screen>*:nth-child(2){animation-delay:.04s}.content .screen>*:nth-child(3){animation-delay:.08s}.content .screen>*:nth-child(4){animation-delay:.12s}.content .screen>*:nth-child(5){animation-delay:.16s}.content .screen>*:nth-child(n+6){animation-delay:.2s}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.tab.active svg{transform:translateY(-2px) scale(1.08)}.skeleton{gap:12px}.sk-card,.sk-stage,.sk-line{border-radius:var(--radius);background:linear-gradient(100deg,var(--card) 30%,var(--card-2) 50%,var(--card) 70%);background-size:200% 100%;animation:shimmer 1.4s ease-in-out infinite}.sk-stage{height:300px;border-radius:30px}.sk-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}.sk-line{display:inline-block;height:18px;border-radius:9px}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.bonus-toast{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;width:max-content;max-width:92vw;border-radius:999px;padding:10px 18px}.bonus-toast .coin-val{font-weight:800}.bonus-sum{font-size:22px;font-weight:900;color:var(--ok);margin:4px 0 8px}.mail-text{display:flex;flex-direction:column;gap:3px;min-width:0;flex:1}.mail-top{display:flex;justify-content:space-between;gap:8px;font-size:11px;font-weight:700;color:var(--muted)}.mail-kind{text-transform:lowercase;letter-spacing:.02em}.mail-kind.big{font-size:12px;font-weight:700;color:var(--muted)}.mail-title{font-size:15px;font-weight:800}.mail-item.unread .mail-title{color:var(--accent)}.mail-preview{font-size:12px;color:var(--muted);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.mail-dot{position:absolute;top:12px;right:12px;width:8px;height:8px;border-radius:50%;background:var(--pink-deep)}.mail-text .chip{align-self:flex-start;margin-top:4px;font-size:11px}.modal.letter h3{margin-top:6px}.letter-body{white-space:pre-wrap;line-height:1.5;font-size:15px}.signature{text-align:right;font-style:italic}.checkin{padding:12px 14px}.checkin-head{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}.checkin-head b{font-size:15px}.checkin-head small{font-size:11px;font-weight:600}.faces{display:flex;justify-content:space-between;gap:6px}.face{flex:1;height:50px;border-radius:16px;border:2px solid var(--line);background:var(--card-2);color:var(--muted);display:grid;place-items:center;cursor:pointer;transition:transform .12s ease,border-color .12s ease}.face:active{transform:scale(.94)}.face.l1,.face-mini.l1{color:var(--sleep)}.face.l2,.face-mini.l2{color:var(--warn)}.face.l3,.face-mini.l3{color:var(--muted)}.face.l4,.face-mini.l4{color:var(--ok)}.face.l5,.face-mini.l5{color:var(--pink-deep)}.face.active{border-color:currentColor}.checkin-row{display:flex;align-items:center;gap:10px}.checkin-row .link{margin-left:auto;font-size:13px}.face-mini{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:var(--card-2)}.checkin-text{font-size:14px}.task-chip{align-self:flex-start;margin-top:6px;font-size:11px}.ok-text{color:var(--ok);font-weight:700}.quest-head+.segments{margin-bottom:8px}.segment{white-space:nowrap}.subchips{display:flex;gap:6px;flex-wrap:wrap}.subchip{border:1.5px solid var(--line);background:transparent;color:var(--muted);border-radius:999px;padding:5px 12px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap}.subchip.active{background:var(--card-2);color:var(--ink);border-color:transparent}.acc-group{width:100%;display:flex;flex-direction:column;gap:6px;align-items:center}.acc-group-label{font-size:11px;font-weight:700;color:var(--muted)}.row-between{display:flex;justify-content:space-between;align-items:center}.row-between .link{font-size:12px}.card.soft{box-shadow:none;background:transparent;padding:4px 8px}.pet-btn{border:0;background:transparent;padding:0;cursor:pointer;-webkit-user-select:none;user-select:none}.pet{position:relative;width:224px;height:264px;transform-origin:50% 90%}.pet-frames{position:absolute;top:0;right:0;bottom:0;left:0;transform-origin:50% 91%;animation:pet-breathe 3.8s ease-in-out infinite}.pet-body{position:absolute;top:0;right:0;bottom:0;left:0}.pet-frames,.pet-shadow,.pet-fx{transition:opacity .4s ease}.pet.weak .pet-frames{animation-duration:7s;filter:saturate(.55) brightness(.9);transform:translateY(4px) scale(.99)}.pet.weak .pet-tail{animation-duration:12s}.pet.weak .pet-shadow{opacity:.5}.pet-nest,.pet-nest-front{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.pet.has-nest .pet-shadow,.pet.loading .pet-nest,.pet.loading .pet-nest-front,.pet.loading .pet-frames,.pet.loading .pet-shadow,.pet.loading .pet-fx{opacity:0}.pet-acc{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.pet-frame,.pet-tail,.pet-marks{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .18s ease}.pet-frame.on,.pet-tail.on,.pet-marks.on{opacity:1}.pet-marks{filter:var(--accent-filter, none)}.pet-tail{transform-origin:79% 81%;animation:tail-sway 6.5s ease-in-out infinite;filter:var(--accent-filter, none)}.pet.sleeping .pet-tail,.pet.resting .pet-tail{animation-duration:8s}.pet.sad .pet-tail{animation-duration:9s}.pet.react-pet .pet-tail{animation:tail-wag 1.6s ease-in-out infinite}.pet.happy .pet-tail,.pet.react-play .pet-tail,.pet.react-boost .pet-tail{animation:tail-wag 1.2s ease-in-out infinite}.pet-blink{transition:opacity .04s linear}.pet.blink .pet-blink{opacity:1}.pet-shadow{position:absolute;left:50%;bottom:12px;width:140px;height:20px;margin-left:-70px;border-radius:50%;background:radial-gradient(closest-side,rgba(30,25,40,.26),transparent);animation:shadow-breathe 3.8s ease-in-out infinite}.pet.move-hop{animation:pet-hop .9s cubic-bezier(.3,.7,.4,1.1)}.pet.move-hop .pet-shadow{animation:shadow-hop .9s cubic-bezier(.3,.7,.4,1.1)}.pet.move-squish{animation:pet-squish 1.1s ease-in-out}.pet.react-play .pet-shadow{animation:shadow-jump 1.1s cubic-bezier(.3,.8,.4,1.2) 2 1.2s}.pet.react-boost .pet-shadow{animation:shadow-hop .45s ease-in-out 6 1.2s}.pet-fx{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;overflow:visible;pointer-events:none}.pet .fx{opacity:0;transition:opacity .25s}.pet.sleeping .pet-frames,.pet.resting .pet-frames{animation:pet-breathe 5.6s ease-in-out infinite}.pet.sleeping .zzz{opacity:1}.pet.sleeping .z1{animation:floatz 2.4s ease-in-out infinite}.pet.sleeping .z2{animation:floatz 2.4s ease-in-out infinite .8s}.pet.sleeping .z3{animation:floatz 2.4s ease-in-out infinite 1.6s}.pet.energized .pet-frames{animation:pet-breathe 2.4s ease-in-out infinite,perk 7s ease-in-out infinite}.pet.idle.awake .pet-frames{animation:pet-breathe 3.8s ease-in-out infinite,perk 11s ease-in-out infinite 4s}.pet.react-pet .pet-frames{animation:pet-lean 2.6s ease-in-out}.pet.react-pet .hearts{opacity:1}.pet.react-pet .h1{animation:heart 1.4s ease-out infinite}.pet.react-pet .h2{animation:heart 1.4s ease-out infinite .45s}.pet.react-pet .h3{animation:heart 1.4s ease-out infinite .9s}.pet .acorn{transform:translate(250px,210px) scale(1.6)}.pet.react-feed .acorn{opacity:1;animation:acorn-fly 2.8s ease-in-out forwards}.pet.react-feed .acorn-body{animation:acorn-wobble .5s ease-in-out infinite}.pet.react-feed .pet-frames{animation:pet-chew .45s ease-in-out 5 1s}.pet .bang,.pet .drop,.pet .sparks{transform-box:fill-box;transform-origin:center}.pet.react-boost .bang{opacity:1;animation:bang-pop .5s cubic-bezier(.2,1.4,.4,1) 1.2s both}.pet.react-boost .lines,.pet.react-play .lines,.pet.move-hop .lines{opacity:1;animation:lines-flick .28s steps(2) infinite}.pet.react-sad .drop{opacity:1;animation:drop-fall 1.4s ease-in both}.pet.react-snack .chew,.pet.react-feed .chew,.pet.react-curry .chew{opacity:1;animation:chew-flick .45s steps(2) infinite 1s}.pet .snack{transform:translate(250px,210px) scale(1.6)}.pet.react-snack .snack{opacity:1;animation:acorn-fly 2.8s ease-in-out forwards}.pet.react-snack .snack-body{animation:acorn-wobble .5s ease-in-out infinite}.pet.react-snack .pet-frames{animation:pet-chew .45s ease-in-out 5 1s}.pet.react-snack .pet-tail{animation:tail-wag 1.2s ease-in-out infinite}.pet .plate{transform:translate(112px,232px)}.pet.react-curry .plate{opacity:1}.pet.react-curry .steam{animation:steam 1.2s ease-in-out infinite}.pet.react-curry .pet-frames{animation:pet-chew .45s ease-in-out 6 1.1s}.pet .cup{transform:translate(120px,300px)}.pet.react-tea .cup{opacity:1;animation:plate-up 3.4s ease-in-out forwards}.pet.react-tea .steam{animation:steam 1.2s ease-in-out infinite}.pet.react-tea .pet-frames{animation:pet-breathe 1.6s ease-in-out 2 1s}.pet .yarn{transform:translate(300px,226px)}.pet.react-play .pet-frames{animation:pet-jump 1.1s cubic-bezier(.3,.8,.4,1.2) 2 1.2s}.pet.react-play .yarn{opacity:1;animation:yarn-move 5s cubic-bezier(.3,.6,.4,1) forwards}.pet.react-play .yarn-ball{animation:yarn-spin 5s linear forwards}.pet.react-play .sparks{opacity:1;animation:twinkle .7s ease-in-out infinite 1.2s}.pet .can{transform:translate(120px,-40px)}.pet.react-boost .can{opacity:1;animation:can-drop 1.4s ease-in-out forwards}.pet.react-boost .pet-frames{animation:hop .45s ease-in-out 6 1.2s}.pet.react-boost .sparks{opacity:1;animation:twinkle .5s ease-in-out infinite 1.2s}.pet.react-sad .pet-frames{animation:shake .55s ease-in-out}@keyframes pet-breathe{0%,to{transform:scale(1) translateY(0)}50%{transform:scale(1.015,1.03) translateY(-2px)}}@keyframes bang-pop{0%{transform:scale(.3);opacity:0}60%{transform:scale(1.2);opacity:1}to{transform:scale(1);opacity:1}}@keyframes lines-flick{0%{opacity:1}to{opacity:.25}}@keyframes drop-fall{0%{transform:translateY(-8px);opacity:0}25%{opacity:1}to{transform:translateY(16px);opacity:.9}}@keyframes chew-flick{0%,to{opacity:1}50%{opacity:.15}}@keyframes shadow-breathe{0%,to{transform:scaleX(1)}50%{transform:scaleX(1.03)}}@keyframes tail-sway{0%,to{transform:rotate(-.7deg)}50%{transform:rotate(1deg)}}@keyframes tail-wag{0%,to{transform:rotate(-1.4deg)}50%{transform:rotate(1.8deg)}}@keyframes pet-squish{0%,to{transform:scale(1)}40%{transform:scale(1.035,.955)}72%{transform:scale(.985,1.02)}}@keyframes pet-hop{0%,to{transform:translateY(0) scale(1)}20%{transform:translateY(2px) scale(1.05,.94)}55%{transform:translateY(-16px) scale(.97,1.05)}85%{transform:translateY(1px) scale(1.03,.96)}}@keyframes shadow-hop{0%,to{transform:scale(1);opacity:1}55%{transform:scale(.8);opacity:.6}}@keyframes shadow-jump{0%,to{transform:scale(1);opacity:1}15%{transform:scale(1.06)}45%,60%{transform:scale(.7);opacity:.55}85%{transform:scale(1.05)}}@keyframes pet-lean{0%,to{transform:rotate(0)}30%{transform:rotate(-4deg) translateY(2px)}70%{transform:rotate(-3deg) translateY(1px)}}@keyframes pet-chew{0%,to{transform:scale(1)}50%{transform:scale(1.03,.96)}}@keyframes pet-jump{0%{transform:translateY(0) scale(1)}15%{transform:translateY(6px) scale(1.06,.9)}45%{transform:translateY(-44px) scale(.95,1.08)}60%{transform:translateY(-38px) scale(.97,1.05)}85%{transform:translateY(4px) scale(1.05,.93)}to{transform:translateY(0) scale(1)}}
