:root{font-family:Nunito,Microsoft YaHei,system-ui,sans-serif;color:#493b52;background:#fff4dc;font-synthesis:none}*{box-sizing:border-box}html,body,#app{min-height:100%;overflow-x:hidden}body{margin:0;min-width:320px;min-height:100vh;min-height:100dvh;background:linear-gradient(145deg,#fff8df,#ffe7ed)}button,input{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.app-shell{min-height:100vh;min-height:100dvh;padding:calc(12px + env(safe-area-inset-top)) calc(12px + env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) calc(12px + env(safe-area-inset-left));display:grid;place-items:center}.app-logo{position:fixed;top:calc(8px + env(safe-area-inset-top));left:calc(8px + env(safe-area-inset-left));width:clamp(48px,8vw,80px);aspect-ratio:1;padding:clamp(4px,.6vw,8px);background:#fff;border-radius:50%;object-fit:contain;box-shadow:0 6px 16px #724b6638;pointer-events:none;z-index:30}@media(max-width:1279px){.app-shell{padding-top:calc(clamp(48px,8vw,80px) + 20px + env(safe-area-inset-top))}}.page-card{width:min(100%,850px);background:#fffffff0;border:4px solid #fff;border-radius:32px;box-shadow:0 16px 45px #724b6624;padding:clamp(22px,5vw,44px)}h1{margin:0;color:#e95f79;font-size:clamp(2rem,7vw,3.4rem);line-height:1.1}.home,.placeholder-page,.empty-state{min-height:min(640px,calc(100vh - 40px));text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;overflow:hidden}.home p{font-size:1.15rem;max-width:470px;margin:0}.eyebrow{color:#7c65c1;font-weight:800;letter-spacing:.08em}.sky-decor{align-self:stretch;font-size:2.3rem}.hero-pets{display:flex;justify-content:center;align-items:flex-end;gap:clamp(8px,3vw,22px);filter:drop-shadow(0 10px 5px #f2d6d6)}.hero-pet{width:clamp(70px,17vw,120px)}.primary-button{display:inline-flex;justify-content:center;align-items:center;min-height:58px;min-width:190px;padding:14px 28px;color:#fff;background:linear-gradient(135deg,#ff7891,#f35e79);border:0;border-radius:999px;box-shadow:0 8px #cc4963;font-size:1.15rem;font-weight:900;text-decoration:none;cursor:pointer;transition:transform .15s}.primary-button:hover{transform:translateY(-2px)}.primary-button:disabled{opacity:.5;cursor:not-allowed}.back-link{display:inline-block;color:#7865a7;margin-bottom:12px;text-decoration:none;font-weight:800}.adopt-page>p{color:#716477}.pet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:28px 0}.pet-choice{padding:14px;border:3px solid #f3e5df;border-radius:24px;background:#fffaf5;color:inherit;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:.15s ease}.pet-choice:hover,.pet-choice.selected{border-color:#ff8ba0;background:#fff0f3;transform:translateY(-3px)}.pet-choice.selected{box-shadow:0 0 0 4px #ffb3c1,0 14px 30px #e95f7940}.pet-choice-image{width:min(100%,180px);margin:0 auto;transition:transform .2s ease}.pet-choice.selected .pet-choice-image{transform:scale(1.06)}.pet-choice strong{font-size:1.25rem}.pet-choice small{min-height:40px;color:#756c79}.select-label{color:#e95f79;font-weight:900}.name-panel{padding:20px;background:#f6efff;border-radius:24px;display:flex;gap:14px;align-items:center;flex-wrap:wrap}.name-panel label{font-weight:900}.name-panel input{flex:1;min-width:180px;border:3px solid #ded0ef;border-radius:15px;padding:14px 16px;outline:none}.name-panel input:focus{border-color:#9477ca}.room-header{display:flex;justify-content:space-between;align-items:center}.room-header h1{font-size:2.2rem}.room-header span{color:#766c7b;font-weight:700}.coins{background:#fff2b8;border-radius:999px;padding:10px 16px;font-weight:900}.room-nav{display:flex;justify-content:flex-end;gap:12px;margin:10px 0}.room-nav a{color:#6b5999;text-decoration:none;font-weight:800}.game-container{width:100%;max-height:min(38dvh,440px);aspect-ratio:600/330;overflow:hidden;border:5px solid white;border-radius:26px;box-shadow:inset 0 0 0 2px #c6e8ee,0 8px 20px #47839329;background:#cdf3ff;touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.game-container canvas{display:block;width:100%!important;height:100%!important;object-fit:contain}.feedback{min-height:26px;margin:12px 0;text-align:center;color:#e05270;font-weight:900}.stats-panel{display:grid;grid-template-columns:1fr 1fr;gap:10px 25px;background:#fff9ee;border-radius:20px;padding:18px}.stat-row{display:grid;grid-template-columns:86px 1fr 30px;gap:8px;align-items:center;font-size:.92rem}.stat-label{font-weight:800}.stat-track{height:12px;background:#eadfe4;border-radius:999px;overflow:hidden}.stat-fill{height:100%;border-radius:inherit;transition:width .3s ease}.actions{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:18px}.actions button{min-height:78px;border:0;border-radius:20px;background:#f6edff;color:#554364;font-size:1.7rem;cursor:pointer;box-shadow:0 5px #ded0ec}.actions button:active{transform:translateY(4px);box-shadow:0 1px #ded0ec}.actions span{display:block;font-size:.9rem;font-weight:900}.placeholder-page>div,.empty-state>div{font-size:6rem}.placeholder-page p{color:#716477}.error-text{text-align:center;color:#b72e45}.loading-card{font-weight:900;color:#e95f79;font-size:1.3rem}.settings-page{min-height:min(620px,calc(100dvh - 30px))}.settings-title{font-size:4rem;margin-top:35px}.setting-row{margin-top:28px;padding:20px;background:#fff8e9;border-radius:22px;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:82px}.setting-row div{display:grid;gap:5px}.setting-row strong{font-size:1.1rem}.setting-row small{color:#756c79}.toggle{min-width:70px;min-height:48px;border:0;border-radius:999px;background:#d7cedc;color:#63586a;font-weight:900}.toggle.enabled{background:#71d196;color:#174e2d}.volume-row input{width:min(55%,340px);min-height:44px;accent-color:#e95f79}@media(max-width:650px){.app-shell{padding-top:calc(clamp(48px,8vw,80px) + 20px + env(safe-area-inset-top));padding-right:calc(8px + env(safe-area-inset-right));padding-bottom:calc(10px + env(safe-area-inset-bottom));padding-left:calc(8px + env(safe-area-inset-left));place-items:start center}.page-card{border-radius:24px;padding:18px}.pet-room{padding-bottom:16px}.pet-grid{grid-template-columns:repeat(2,1fr);gap:10px}.pet-choice{padding:9px}.pet-choice-image{width:100%}.stats-panel{grid-template-columns:1fr;gap:7px;padding:12px}.actions{grid-template-columns:repeat(4,1fr);gap:7px;position:sticky;bottom:env(safe-area-inset-bottom)}.actions button{min-width:0;min-height:64px;padding:6px;font-size:1.45rem}.name-panel{flex-direction:column;align-items:stretch}.name-panel input,.primary-button{width:100%}.room-nav{margin-bottom:8px}.room-header h1{font-size:1.8rem}.game-container{max-height:32dvh}.feedback{margin:7px 0}.setting-row{padding:15px}}@media(min-width:768px){.page-card{width:min(94vw,1024px)}.pet-room{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.8fr);gap:16px 24px;align-items:start}.room-header,.room-nav,.actions,.error-text{grid-column:1 / -1}.game-container{grid-column:1;grid-row:3 / span 2}.feedback{grid-column:1;grid-row:5}.stats-panel{grid-column:2;grid-row:3 / span 2;grid-template-columns:1fr;align-self:stretch;align-content:center}.actions{gap:18px}.actions button{min-height:86px}}@media(max-height:540px)and (orientation:landscape){.app-shell{display:block;padding-top:calc(60px + env(safe-area-inset-top))}.app-logo{width:44px}.pet-room{width:100%;display:grid;grid-template-columns:1.2fr .8fr;gap:8px 16px;padding:12px}.room-header,.room-nav,.actions{grid-column:1 / -1}.room-nav{position:absolute;right:24px}.game-container{grid-column:1;max-height:48dvh}.stats-panel{grid-column:2;grid-row:2 / span 2;grid-template-columns:1fr;gap:4px;padding:10px}.feedback{grid-column:1;margin:3px}.actions{margin-top:2px}.actions button{min-height:52px}.room-header h1{font-size:1.5rem}}
