:root{
  --bg:#f4f1eb;--card:#fffdfa;--ink:#211b18;--muted:#8c847c;--line:#e7e0d7;
  --green:#3f7f67;--green-deep:#183e32;--green-soft:#dff0e7;--brown:#7e432d;--peach:#f7e2cd;
  --shadow:0 12px 30px rgba(77,58,43,.10);--press:0 6px 0 rgba(63,42,29,.12);
  --nav-h:82px;
}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:#ddd6cd;color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","PingFang SC","Microsoft YaHei",sans-serif}
button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}
.app-shell{width:min(100vw,520px);height:100dvh;margin:0 auto;background:var(--bg);position:relative;overflow:hidden;box-shadow:0 0 40px rgba(0,0,0,.12)}
.viewport{position:absolute;inset:0 0 var(--nav-h);overflow:hidden}
.page{position:absolute;inset:0;padding:calc(14px + env(safe-area-inset-top)) 20px 14px;opacity:0;transform:translateX(18px) scale(.992);pointer-events:none;transition:.28s cubic-bezier(.2,.85,.25,1);overflow:hidden}
.page.active{opacity:1;transform:none;pointer-events:auto}
.topbar,.simple-header{height:58px;display:flex;align-items:center;justify-content:space-between}
.brand-mark,.round-btn{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:#fff;box-shadow:var(--shadow);font-size:22px}
.brand-mark{background:var(--green);color:white}
.top-actions{display:flex;gap:10px}
.eyebrow{font-size:10px;letter-spacing:.26em;font-weight:800;color:#a48675}.eyebrow.light{color:rgba(255,255,255,.68)}
h1,h2,h3,p{margin:0}.simple-header h2{font-size:31px;line-height:1.1;margin-top:4px}.profile-head h2{font-size:27px}
.press{transition:transform .16s ease,box-shadow .16s ease,filter .16s ease}.press:active{transform:translateY(3px) scale(.985);filter:saturate(.96)}
.motion-card{position:relative;isolation:isolate}.motion-card:before{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(300px circle at var(--mx,50%) var(--my,50%),rgba(255,255,255,.45),transparent 45%);opacity:.5;z-index:-1}

/* HOME */
.home-main{height:calc(100% - 58px);display:grid;grid-template-rows:minmax(0,1fr) 154px;gap:14px}
.pet-hero{border-radius:32px;background:linear-gradient(155deg,#eef4ea 0%,#fdfbf6 66%);border:1px solid rgba(255,255,255,.9);box-shadow:var(--shadow);overflow:hidden;padding:22px;min-height:0}
.pet-hero:after{content:"";position:absolute;width:320px;height:320px;border:1px solid rgba(63,127,103,.12);border-radius:50%;right:-70px;top:58px}
.hero-topline{position:relative;z-index:3;display:flex;justify-content:space-between;align-items:start}.hero-topline h1{font-size:42px;line-height:1;margin-top:6px}.soft-pill{border:1px solid #d8d1c8;background:rgba(255,255,255,.62);border-radius:999px;padding:11px 14px;font-weight:700;backdrop-filter:blur(12px)}
.hero-badges{position:absolute;left:22px;top:112px;z-index:3;display:flex;gap:7px}.status-pill{background:rgba(255,255,255,.68);border:1px solid rgba(255,255,255,.9);padding:7px 10px;border-radius:999px;font-size:12px;box-shadow:0 4px 12px rgba(0,0,0,.04)}
.hero-pet{position:absolute;z-index:2;right:5%;bottom:58px;width:min(62%,290px);height:67%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 18px rgba(56,50,42,.14));animation:idle 4.5s ease-in-out infinite}
.hero-caption{position:absolute;z-index:4;left:16px;right:16px;bottom:14px;min-height:62px;padding:12px 12px 12px 17px;border-radius:22px;background:rgba(28,57,47,.93);color:white;display:flex;justify-content:space-between;align-items:center;box-shadow:0 12px 24px rgba(19,55,44,.18)}
.hero-caption small{display:block;color:rgba(255,255,255,.63);font-size:11px;margin-bottom:4px}.hero-caption strong{font-size:15px}.hero-go{width:42px;height:42px;border-radius:50%;background:#f5cf9a;color:#4e2d20;font-size:24px;box-shadow:0 5px 0 #d6a56e}
.quick-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.quick-card{border-radius:22px;background:var(--card);border:1px solid rgba(255,255,255,.92);box-shadow:0 7px 18px rgba(66,49,38,.07);display:grid;grid-template-columns:38px 1fr 14px;align-items:center;text-align:left;padding:12px;gap:9px;overflow:hidden}.quick-card b,.quick-card small{display:block}.quick-card b{font-size:15px}.quick-card small{font-size:10.5px;color:var(--muted);margin-top:3px}.quick-card i{font-style:normal;color:#aa9d91;font-size:20px}.quick-icon{width:36px;height:36px;border-radius:13px;display:grid;place-items:center;font-weight:800}.q-green{background:#dbeee5;color:#32745b}.q-peach{background:#f7e2d8;color:#a45e47}.q-blue{background:#e2eaf4;color:#5b7191}.q-purple{background:#ece3f4;color:#755d94}

/* TASKS */
.summary-card{height:108px;border-radius:26px;background:linear-gradient(135deg,#213f35,#315e4f);color:white;padding:18px;display:grid;grid-template-columns:1fr 72px auto;align-items:center;gap:12px;box-shadow:var(--shadow)}.summary-card small,.summary-card strong{display:block}.summary-card small{font-size:12px;color:rgba(255,255,255,.65)}.summary-card strong{font-size:27px;margin-top:3px}.summary-card .soft-pill{color:white;border-color:rgba(255,255,255,.22);font-size:12px;padding:9px 11px}
.progress-ring{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#f2c48e var(--p,33%),rgba(255,255,255,.15) 0);position:relative}.progress-ring:before{content:"";position:absolute;inset:7px;border-radius:50%;background:#284b3f}.progress-ring span{position:relative;font-size:12px;font-weight:800}
.task-list{height:calc(100% - 58px - 108px - 48px - 26px);display:grid;grid-template-rows:repeat(3,1fr);gap:10px;margin-top:13px}
.task-row{background:var(--card);border:1px solid var(--line);border-radius:22px;padding:12px 13px;display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:11px;box-shadow:0 6px 14px rgba(61,47,37,.05)}
.task-check{width:44px;height:44px;border-radius:16px;border:2px solid #d9cec2;display:grid;place-items:center;font-weight:900;color:white;background:#fff}.task-row.done .task-check{background:var(--green);border-color:var(--green)}.task-row.pending .task-check{background:#f6dfbc;border-color:#e6bf83;color:#7d492c}.task-info b,.task-info small{display:block}.task-info b{font-size:16px}.task-info small{font-size:11px;color:var(--muted);margin-top:4px}.state-chip{padding:7px 10px;border-radius:999px;font-size:11px;background:#f6eee6;color:#98583d}.done .state-chip{background:#e5f1eb;color:#35725a}.pending .state-chip{background:#f8e7cf;color:#955d2f}.footer-action{height:42px;width:100%;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;border-radius:17px;background:#ece7df;color:#5b514a;font-weight:700;font-size:13px}

/* PLAY */
.page-play{padding:0}.play-stage{position:absolute;inset:0;background:center/cover no-repeat url('assets/jungle.webp');overflow:hidden}.play-stage:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(8,28,20,.35),transparent 36%,rgba(7,28,20,.18) 66%,rgba(7,24,18,.48));pointer-events:none}.play-top{position:absolute;z-index:5;top:calc(16px + env(safe-area-inset-top));left:18px;right:18px;display:flex;justify-content:space-between;align-items:start}.glass-title,.glass-btn,.play-status span,.scene-btn{background:rgba(14,37,28,.46);border:1px solid rgba(255,255,255,.20);backdrop-filter:blur(14px);color:white;box-shadow:0 9px 20px rgba(0,0,0,.14)}.glass-title{border-radius:22px;padding:14px 16px}.glass-title h2{font-size:21px;margin-top:3px}.glass-btn{border-radius:999px;padding:12px 14px;font-weight:700}.play-status{position:absolute;z-index:5;left:20px;top:calc(92px + env(safe-area-inset-top));display:flex;gap:8px}.play-status span{font-size:12px;border-radius:999px;padding:8px 11px}.speech{position:absolute;z-index:5;top:23%;left:50%;transform:translateX(-50%);background:#fff;border-radius:18px;padding:10px 15px;font-size:12px;font-weight:700;box-shadow:var(--shadow);white-space:nowrap}.play-pet{position:absolute;z-index:3;left:50%;transform:translateX(-50%);bottom:188px;width:min(63%,300px);height:48%;object-fit:contain;object-position:center bottom;filter:drop-shadow(0 18px 18px rgba(0,0,0,.2));transition:.25s ease}.scene-btn{position:absolute;z-index:5;right:17px;bottom:255px;width:58px;height:74px;border-radius:22px;display:grid;place-items:center;font-size:22px}.scene-btn small{font-size:11px;font-weight:700}.play-sheet{position:absolute;z-index:6;left:14px;right:14px;bottom:10px;height:176px;border-radius:28px;background:rgba(250,247,242,.96);box-shadow:0 -6px 28px rgba(14,27,22,.14);padding:10px}.sheet-tabs{height:36px;border-radius:999px;background:#eee8e1;display:grid;grid-template-columns:1fr 1fr;padding:3px;margin:0 46px 10px}.sheet-tab{border-radius:999px;color:#9b9188;font-weight:700}.sheet-tab.active{background:#fff;color:#3c594e;box-shadow:0 4px 10px rgba(69,50,38,.08)}.play-panel{display:none}.play-panel.active{display:grid}.action-grid{grid-template-columns:repeat(5,1fr);gap:6px;height:111px}.action-btn{border-radius:20px;background:#fffaf5;box-shadow:0 5px 0 #e4d9ce;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}.action-btn span{font-size:25px;color:#9d5639}.action-btn b{font-size:10px}.feed-grid{grid-template-columns:repeat(2,1fr);gap:9px;height:111px}.feed-btn{border-radius:20px;background:#fffaf5;box-shadow:0 5px 0 #e4d9ce;display:grid;grid-template-columns:44px 1fr auto;align-items:center;text-align:left;padding:10px}.feed-btn span{font-size:30px}.feed-btn small{color:var(--muted);display:block;margin-top:3px}

/* BAG */
.bag-pet-strip{height:122px;border-radius:26px;background:linear-gradient(135deg,#5c9b7e,#356d58);color:#fff;display:flex;align-items:center;overflow:hidden;padding:19px 145px 19px 20px;position:relative;box-shadow:var(--shadow)}.bag-pet-strip small,.bag-pet-strip strong{display:block}.bag-pet-strip small{font-size:12px;color:rgba(255,255,255,.68)}.bag-pet-strip strong{font-size:18px;line-height:1.45;margin-top:5px}.bag-pet-strip img{position:absolute;right:10px;bottom:-8px;width:135px;height:120px;object-fit:contain;filter:drop-shadow(0 9px 10px rgba(0,0,0,.12))}.food-grid{height:calc(100% - 58px - 122px - 14px);margin-top:14px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:11px}.food-card{background:var(--card);border:1px solid var(--line);border-radius:25px;box-shadow:0 7px 17px rgba(61,45,35,.06);padding:15px;display:flex;flex-direction:column;justify-content:space-between;text-align:left}.food-top{display:flex;justify-content:space-between;align-items:start}.food-emoji{width:48px;height:48px;border-radius:17px;background:#f6eee5;display:grid;place-items:center;font-size:29px}.fav-tag{font-size:10px;background:#e3f1ea;color:#3f7f67;padding:5px 7px;border-radius:999px}.food-card h3{font-size:17px}.food-count{font-size:28px;font-weight:800}.food-count small{font-size:12px;color:var(--muted);font-weight:500}.feed-cta{height:36px;border-radius:13px;background:#8b4c34;color:white;font-size:12px;font-weight:800;box-shadow:0 4px 0 #6f3826}.food-card.empty{opacity:.55}.food-card.empty .feed-cta{background:#b9aea5;box-shadow:none}

/* MINE */
.profile-head{height:82px;display:grid;grid-template-columns:58px 1fr 52px;align-items:center;gap:12px}.profile-avatar{width:56px;height:56px;border-radius:50%;background:#fff2dc;display:grid;place-items:center;font-size:30px}.profile-head p{font-size:12px;color:var(--muted);margin-top:4px}.inline-edit{font-size:16px;color:#9b928a}.panel-card{background:var(--card);border:1px solid var(--line);border-radius:24px;box-shadow:0 7px 17px rgba(61,45,35,.05);padding:14px 16px}.pets-panel{height:132px}.stats-panel{height:144px;margin-top:10px}.service-panel{height:calc(100% - 82px - 132px - 144px - 30px);min-height:136px;margin-top:10px;padding:4px 15px}.panel-title{display:flex;align-items:center;justify-content:space-between}.panel-title h3{font-size:17px}.text-btn{font-size:11px;color:#9b9188}.pet-mini-list{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}.pet-mini{height:83px;border-radius:18px;border:1px solid var(--line);background:#faf8f4;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:5px}.pet-mini.active{border:2px solid #54b98a;background:#eef9f3}.pet-mini img{height:50px;width:62px;object-fit:contain}.pet-mini b{font-size:10px}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:13px}.stat-grid div{text-align:center;border-right:1px solid var(--line)}.stat-grid div:last-child{border-right:0}.stat-grid span,.stat-grid b,.stat-grid small{display:block}.stat-grid span{font-size:21px}.stat-grid b{font-size:17px;margin-top:3px}.stat-grid small{font-size:9px;color:var(--muted);margin-top:3px}.service-row{height:33.333%;width:100%;display:grid;grid-template-columns:34px 1fr 16px;align-items:center;text-align:left;border-bottom:1px solid var(--line)}.service-row:last-child{border-bottom:0}.service-row span{font-size:19px}.service-row b{font-size:14px}.service-row i{font-style:normal;color:#b2a79e;font-size:20px}

/* NAV */
.bottom-nav{position:absolute;left:14px;right:14px;bottom:calc(8px + env(safe-area-inset-bottom));height:68px;border-radius:25px;background:rgba(255,253,249,.96);border:1px solid rgba(255,255,255,.9);box-shadow:0 10px 28px rgba(49,39,32,.13);display:grid;grid-template-columns:repeat(5,1fr);padding:5px;z-index:30;backdrop-filter:blur(16px)}.nav-item{border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#9b928a}.nav-item span{font-size:23px;line-height:1}.nav-item b{font-size:10px}.nav-item.active{background:#30231d;color:#fff;box-shadow:0 5px 0 #1d1511;transform:translateY(-1px)}

/* MODAL */
.modal-backdrop{position:fixed;inset:0;background:rgba(29,24,21,.34);z-index:90;backdrop-filter:blur(3px)}.modal{position:fixed;z-index:100;left:50%;bottom:0;transform:translateX(-50%);width:min(100%,520px);max-height:72dvh;background:#fbf8f3;border-radius:30px 30px 0 0;padding:12px 20px calc(22px + env(safe-area-inset-bottom));box-shadow:0 -15px 40px rgba(20,16,13,.18);animation:sheetIn .24s ease}.modal-handle{width:44px;height:5px;border-radius:99px;background:#cfc7be;margin:0 auto 15px}.modal h3{font-size:23px}.modal p{font-size:12px;color:var(--muted);margin-top:5px}.modal-actions{display:flex;gap:9px;margin-top:16px}.modal-btn{height:46px;flex:1;border-radius:16px;background:#eee8e1;font-weight:800}.modal-btn.primary{background:#3d725d;color:white;box-shadow:0 4px 0 #285440}.field{margin-top:13px}.field label{display:block;font-size:11px;color:var(--muted);margin:0 0 6px 4px}.field input,.field select{width:100%;height:46px;border:1px solid var(--line);border-radius:15px;background:white;padding:0 13px;font:inherit;outline:none}.pet-picker{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}.pet-choice{height:125px;border-radius:20px;background:white;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex-direction:column}.pet-choice.active{border:2px solid #4fba88;background:#eef8f3}.pet-choice img{height:82px;width:110px;object-fit:contain}.pet-choice b{font-size:13px}.history-list,.all-task-list{display:grid;gap:8px;max-height:44dvh;overflow:auto;margin-top:14px}.history-item{background:white;border:1px solid var(--line);border-radius:16px;padding:11px 12px;font-size:12px;display:flex;justify-content:space-between}.toast{position:fixed;z-index:150;left:50%;bottom:110px;transform:translateX(-50%);background:rgba(39,31,26,.92);color:white;padding:10px 16px;border-radius:999px;font-size:12px;font-weight:700;white-space:nowrap;box-shadow:0 8px 20px rgba(0,0,0,.18)}

/* PET FX */
@keyframes idle{0%,100%{transform:translateY(0) rotate(-.3deg)}50%{transform:translateY(-7px) rotate(.4deg)}}
@keyframes petJump{0%,100%{transform:translateX(-50%) translateY(0)}45%{transform:translateX(-50%) translateY(-55px) scale(1.04)}}
@keyframes petSpin{to{transform:translateX(-50%) rotate(360deg)}}
@keyframes petWave{0%,100%{transform:translateX(-50%) rotate(0)}25%{transform:translateX(-50%) rotate(-5deg)}75%{transform:translateX(-50%) rotate(5deg)}}
@keyframes petDance{0%,100%{transform:translateX(-50%) translateY(0) rotate(0)}25%{transform:translateX(-50%) translateY(-10px) rotate(-6deg)}75%{transform:translateX(-50%) translateY(-10px) rotate(6deg)}}
@keyframes petSleep{50%,100%{transform:translateX(-50%) translateY(18px) scale(.96) rotate(3deg);filter:brightness(.85)}}
.play-pet.fx-jump{animation:petJump .7s ease}.play-pet.fx-spin{animation:petSpin .8s ease}.play-pet.fx-wave{animation:petWave .8s ease}.play-pet.fx-dance{animation:petDance 1s ease}.play-pet.fx-sleep{animation:petSleep 1.4s ease forwards}
@keyframes sheetIn{from{transform:translateX(-50%) translateY(30px);opacity:0}to{transform:translateX(-50%) translateY(0);opacity:1}}

@media (max-height:760px){
  :root{--nav-h:74px}.page{padding-left:16px;padding-right:16px}.home-main{grid-template-rows:minmax(0,1fr) 128px;gap:10px}.pet-hero{border-radius:26px;padding:18px}.hero-topline h1{font-size:35px}.hero-pet{height:63%;bottom:54px}.quick-grid{gap:8px}.quick-card{padding:9px}.quick-card small{display:none}.summary-card{height:92px;padding:13px}.task-list{height:calc(100% - 58px - 92px - 46px - 20px);gap:7px;margin-top:8px}.task-row{padding:8px 10px}.bag-pet-strip{height:100px}.food-grid{height:calc(100% - 58px - 100px - 10px);margin-top:10px}.profile-head{height:70px}.pets-panel{height:116px}.stats-panel{height:126px}.service-panel{height:calc(100% - 70px - 116px - 126px - 30px)}.play-pet{bottom:170px;height:44%}.play-sheet{height:158px}.action-grid,.feed-grid{height:94px}.action-btn span{font-size:21px}.action-btn b{font-size:9px}.scene-btn{bottom:226px}}
@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

/* Functional V2 additions */
.manage-mini{display:flex;flex-direction:column;gap:5px;align-items:flex-end}.mini-edit,.mini-delete{padding:5px 8px;border-radius:9px;font-size:10px;font-weight:800}.mini-edit{background:#e6f1eb;color:#3e7961}.mini-delete{background:#f5e6df;color:#a14f35}.parent-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:15px}.parent-tool{height:88px;border-radius:19px;background:white;border:1px solid var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;box-shadow:0 5px 13px rgba(61,45,35,.05)}.parent-tool span{font-size:25px}.parent-tool b{font-size:12px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:15px}.detail-grid div{background:white;border:1px solid var(--line);border-radius:18px;text-align:center;padding:15px}.detail-grid span,.detail-grid b,.detail-grid small{display:block}.detail-grid span{font-size:25px}.detail-grid b{font-size:22px;margin:5px 0}.detail-grid small{font-size:10px;color:var(--muted)}.setting-toggle{width:100%;font:inherit;text-align:left}.scene-preview{height:210px;border-radius:22px;background-size:cover;background-position:center;position:relative;overflow:hidden;margin-top:14px}.scene-preview:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,rgba(17,37,29,.18))}.scene-preview img{height:78%;max-width:70%;object-fit:contain;position:absolute;left:50%;bottom:0;transform:translateX(-50%);z-index:2;filter:drop-shadow(0 10px 12px rgba(0,0,0,.2))}.reduce-motion *{animation:none!important;transition:none!important}.all-task-list .task-row{min-height:64px}.modal .all-task-list{padding-bottom:3px}


/* V3 play page refinements */
.play-stage{background-position:center center}
.speech{transition:opacity .28s ease, transform .28s ease;max-width:68%;overflow:hidden;text-overflow:ellipsis}
.speech.is-faded{opacity:0;transform:translateX(-50%) translateY(-8px);pointer-events:none}
.pet-shadow{position:absolute;left:50%;bottom:110px;transform:translateX(-50%);width:min(42%,180px);height:26px;border-radius:50%;background:radial-gradient(ellipse at center, rgba(8,17,14,.34) 0%, rgba(8,17,14,.18) 46%, rgba(8,17,14,0) 75%);filter:blur(4px);z-index:2}
.play-pet{bottom:124px;width:min(66%,320px);height:52%;animation:petIdle 3.2s ease-in-out infinite}
.scene-btn{right:18px;bottom:138px;width:60px;height:82px;border-radius:24px}
.play-dock{position:absolute;left:18px;right:18px;bottom:16px;z-index:6;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cute-trigger{height:62px;border-radius:999px;background:rgba(255,251,246,.96);box-shadow:0 16px 28px rgba(19,26,22,.18), 0 6px 0 rgba(125,88,63,.12);display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid rgba(255,255,255,.85);color:#3e3a33;font-weight:800}
.cute-trigger .trigger-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(180deg,#fff8f1,#efe4d7);font-size:18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 4px 10px rgba(118,81,55,.12)}
.cute-trigger .trigger-text{font-size:18px;letter-spacing:.02em}
.cute-trigger:active{transform:translateY(3px);box-shadow:0 10px 18px rgba(19,26,22,.16), 0 3px 0 rgba(125,88,63,.1)}
.modal .play-sheet-modal{display:grid;gap:12px}
.play-modal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.play-modal-action,.play-modal-feed{border-radius:20px;background:#fffaf5;box-shadow:0 6px 0 #e4d9ce;padding:12px 8px;text-align:center}
.play-modal-action span,.play-modal-feed .emoji{display:block;font-size:26px;color:#9d5639;margin-bottom:6px}
.play-modal-action b,.play-modal-feed b{font-size:13px;display:block}
.play-modal-action small,.play-modal-feed small{display:block;color:var(--muted);font-size:11px;margin-top:4px}
.play-modal-feed{display:flex;align-items:center;justify-content:space-between;text-align:left;padding:14px 12px}.play-modal-feed .left{display:flex;align-items:center;gap:10px}.play-modal-feed .emoji{margin:0;color:initial;font-size:30px}.play-modal-feed i{font-style:normal;color:#8f847c;font-weight:700}.favorite-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 8px;border-radius:999px;background:#e3f2ea;color:#4a7a66;font-size:11px;font-weight:700;margin-left:6px}
@keyframes petIdle{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(-6px)}}
@media (max-height:730px){.play-pet{bottom:114px;height:48%}.pet-shadow{bottom:100px}.scene-btn{bottom:128px;height:76px}.play-dock{bottom:12px}.cute-trigger{height:58px}.cute-trigger .trigger-text{font-size:17px}}

/* ===== MINE_FINAL_V45 ===== */

/* 整个我的页面重新布局 */
.page[data-page="mine"]{
    display:flex !important;
    flex-direction:column !important;
    gap:12px !important;
    overflow:hidden !important;
}

/* 顶部资料 */
.page[data-page="mine"] .profile-head{
    height:70px !important;
    min-height:70px !important;
    flex:0 0 70px !important;
    margin:0 !important;
}

/* 我的宠物卡 */
.page[data-page="mine"] .pets-panel{
    height:154px !important;
    min-height:154px !important;
    max-height:154px !important;
    flex:0 0 154px !important;

    padding:13px 15px !important;
    margin:0 !important;

    overflow:hidden !important;
}

/* 宠物列表 */
.page[data-page="mine"] .pet-mini-list{
    height:99px !important;

    display:grid !important;
    grid-template-columns:repeat(4,1fr) !important;

    gap:8px !important;
    margin-top:8px !important;
}

/* 单只宠物 */
.page[data-page="mine"] .pet-mini{
    height:98px !important;
    min-height:98px !important;
    max-height:98px !important;

    padding:5px 3px 4px !important;

    border-radius:18px !important;

    overflow:hidden !important;
}

/* 宠物图片 */
.page[data-page="mine"] .pet-mini img{
    width:62px !important;
    height:68px !important;

    object-fit:contain !important;
}

/* 宠物名字 */
.page[data-page="mine"] .pet-mini b{
    font-size:11px !important;
    line-height:1 !important;
    margin-top:1px !important;
}

/* 选中宠物 */
.page[data-page="mine"] .pet-mini.active{
    border:2px solid #56b887 !important;
    background:#edf8f2 !important;
}


/* 当前宠物数据 */
.page[data-page="mine"] .stats-panel{
    height:126px !important;
    min-height:126px !important;
    max-height:126px !important;
    flex:0 0 126px !important;

    padding:12px 15px !important;
    margin:0 !important;
}

.page[data-page="mine"] .stat-grid{
    height:75px !important;
    margin-top:6px !important;
}

.page[data-page="mine"] .stat-grid span{
    font-size:21px !important;
}

.page[data-page="mine"] .stat-grid b{
    font-size:18px !important;
    margin-top:4px !important;
}

.page[data-page="mine"] .stat-grid small{
    font-size:10px !important;
    margin-top:3px !important;
}


/* 家长管理部分：
   使用剩余空间，但最多 210px */
.page[data-page="mine"] .service-panel{
    flex:1 1 auto !important;

    height:auto !important;
    min-height:150px !important;
    max-height:210px !important;

    margin:0 !important;

    padding:0 15px !important;

    display:grid !important;
    grid-template-rows:repeat(3,1fr) !important;

    overflow:hidden !important;
}

/* 三行压紧 */
.page[data-page="mine"] .service-row{
    height:auto !important;
    min-height:0 !important;

    padding:0 8px !important;

    grid-template-columns:36px 1fr 20px !important;
}

.page[data-page="mine"] .service-row span{
    font-size:19px !important;
}

.page[data-page="mine"] .service-row b{
    font-size:15px !important;
}

.page[data-page="mine"] .service-row i{
    font-size:18px !important;
}


/* 所有卡片之间明确分开 */
.page[data-page="mine"] .panel-card{
    margin:0 !important;

    border-radius:24px !important;

    box-shadow:
      0 7px 18px rgba(62,48,37,.06) !important;
}


/* 顶部齿轮稍微减小 */
.page[data-page="mine"] .profile-head .round-btn{
    width:48px !important;
    height:48px !important;
}


/* ====================================
   短屏手机
   ==================================== */
@media (max-height:760px){

    .page[data-page="mine"]{
        gap:9px !important;
    }

    .page[data-page="mine"] .profile-head{
        height:58px !important;
        min-height:58px !important;
        flex-basis:58px !important;
    }

    .page[data-page="mine"] .pets-panel{
        height:130px !important;
        min-height:130px !important;
        max-height:130px !important;
        flex-basis:130px !important;
    }

    .page[data-page="mine"] .pet-mini-list{
        height:79px !important;
        gap:6px !important;
    }

    .page[data-page="mine"] .pet-mini{
        height:79px !important;
        min-height:79px !important;
        max-height:79px !important;
    }

    .page[data-page="mine"] .pet-mini img{
        width:50px !important;
        height:51px !important;
    }

    .page[data-page="mine"] .stats-panel{
        height:106px !important;
        min-height:106px !important;
        max-height:106px !important;
        flex-basis:106px !important;
    }

    .page[data-page="mine"] .stat-grid{
        height:59px !important;
    }

    .page[data-page="mine"] .service-panel{
        min-height:140px !important;
        max-height:178px !important;
    }
}


/* ====================================
   特别短屏
   ==================================== */
@media (max-height:680px){

    .page[data-page="mine"]{
        gap:7px !important;
    }

    .page[data-page="mine"] .profile-head{
        height:50px !important;
        min-height:50px !important;
        flex-basis:50px !important;
    }

    .page[data-page="mine"] .profile-head p{
        display:none !important;
    }

    .page[data-page="mine"] .pets-panel{
        height:110px !important;
        min-height:110px !important;
        max-height:110px !important;
        flex-basis:110px !important;
    }

    .page[data-page="mine"] .pet-mini-list{
        height:64px !important;
    }

    .page[data-page="mine"] .pet-mini{
        height:64px !important;
        min-height:64px !important;
        max-height:64px !important;
    }

    .page[data-page="mine"] .pet-mini img{
        width:42px !important;
        height:40px !important;
    }

    .page[data-page="mine"] .stats-panel{
        height:92px !important;
        min-height:92px !important;
        max-height:92px !important;
        flex-basis:92px !important;
    }

    .page[data-page="mine"] .service-panel{
        min-height:125px !important;
        max-height:150px !important;
    }
}


/* ===== PET_STATS_V46 ===== */

/*
  当前宠物数据重新放大
  保持 4 列，不破坏现有单屏布局
*/

.page[data-page="mine"] .stats-panel{
    flex:0 0 136px !important;

    height:136px !important;
    min-height:136px !important;
    max-height:136px !important;

    padding:13px 15px 12px !important;
}


/* 标题 */
.page[data-page="mine"] .stats-panel .panel-title{
    height:27px !important;
}

.page[data-page="mine"] .stats-panel .panel-title h3{
    font-size:18px !important;
    font-weight:750 !important;
}

.page[data-page="mine"] .stats-panel .text-btn{
    font-size:11px !important;
}


/* 四项数据区域 */
.page[data-page="mine"] .stat-grid{
    height:82px !important;

    margin-top:7px !important;

    display:grid !important;
    grid-template-columns:repeat(4,1fr) !important;

    align-items:stretch !important;
}


/* 每一列 */
.page[data-page="mine"] .stat-grid > div{
    height:78px !important;

    display:flex !important;
    flex-direction:column !important;

    justify-content:center !important;
    align-items:center !important;

    gap:3px !important;
}


/* 图标明显放大 */
.page[data-page="mine"] .stat-grid span{
    font-size:25px !important;

    line-height:1 !important;

    margin-bottom:2px !important;
}


/* 91%、85%、2级、48 */
.page[data-page="mine"] .stat-grid b{
    font-size:25px !important;

    font-weight:800 !important;

    line-height:1 !important;

    letter-spacing:-0.5px !important;

    margin:2px 0 0 !important;
}


/* 饱食 / 心情 / 等级 / 经验 */
.page[data-page="mine"] .stat-grid small{
    font-size:11px !important;

    line-height:1 !important;

    margin-top:4px !important;

    color:#9a9086 !important;
}


/* 分割线稍微变淡 */
.page[data-page="mine"] .stat-grid > div:not(:last-child){
    border-right:1px solid #e8dfd5 !important;
}


/*
  因为数据卡加高 10px，
  下方服务区稍微压缩一点补回来
*/
.page[data-page="mine"] .service-panel{
    max-height:196px !important;
}


/* --------------------------------
   iPhone 较短屏
   -------------------------------- */

@media (max-height:760px){

    .page[data-page="mine"] .stats-panel{
        flex-basis:116px !important;

        height:116px !important;
        min-height:116px !important;
        max-height:116px !important;

        padding:10px 13px !important;
    }

    .page[data-page="mine"] .stats-panel .panel-title{
        height:22px !important;
    }

    .page[data-page="mine"] .stat-grid{
        height:68px !important;

        margin-top:5px !important;
    }

    .page[data-page="mine"] .stat-grid > div{
        height:66px !important;
    }

    .page[data-page="mine"] .stat-grid span{
        font-size:22px !important;
    }

    .page[data-page="mine"] .stat-grid b{
        font-size:22px !important;
    }

    .page[data-page="mine"] .stat-grid small{
        font-size:10px !important;
    }

    .page[data-page="mine"] .service-panel{
        max-height:168px !important;
    }
}


/* --------------------------------
   特别短屏
   -------------------------------- */

@media (max-height:680px){

    .page[data-page="mine"] .stats-panel{
        flex-basis:104px !important;

        height:104px !important;
        min-height:104px !important;
        max-height:104px !important;
    }

    .page[data-page="mine"] .stat-grid{
        height:58px !important;
    }

    .page[data-page="mine"] .stat-grid > div{
        height:56px !important;
    }

    .page[data-page="mine"] .stat-grid span{
        font-size:20px !important;
    }

    .page[data-page="mine"] .stat-grid b{
        font-size:20px !important;
    }

}

