:root{color-scheme:light;font-family:Arial Rounded MT Bold,Noto Sans TC,system-ui,sans-serif;color:#2d2417;background:#e9c874;user-select:none;-webkit-user-select:none;touch-action:manipulation}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{min-height:100vh;margin:0;overflow-x:hidden;overscroll-behavior-x:none;background:linear-gradient(180deg,#6ed5ff,#e4fbff 35%,#78c25d)}button,select{font:inherit}.hidden{display:none!important}.vine-app{width:min(100%,980px);max-width:100vw;min-height:100vh;margin:0 auto;padding:calc(12px + env(safe-area-inset-top)) 12px calc(34px + env(safe-area-inset-bottom));display:grid;align-content:start;gap:12px;overflow-x:clip}.topbar{position:relative;z-index:4;min-width:0;width:100%;display:grid;grid-template-columns:46px 1fr auto;gap:10px;align-items:center}.topbar p,.topbar h1{margin:0}.topbar p{font-size:.72rem;font-weight:950;opacity:.68}.topbar h1{font-size:clamp(1.25rem,5vw,2.35rem);line-height:1}.menu-copy button,.result-card button,.result-card a{min-height:44px;border:0;border-radius:18px;display:grid;place-items:center;background:linear-gradient(180deg,#fff5bd,#ffcb56 54%,#d98925);color:#3b2815;box-shadow:inset 0 2px #ffffffb3,0 7px #815024,0 14px 24px #37220c33;font-weight:950;text-decoration:none}.icon-btn{width:46px;aspect-ratio:1;grid-template-columns:14px 24px;gap:3px}.icon-btn img{width:24px;height:24px;object-fit:contain}.stage-shell-head{grid-column:1 / -1;display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px}.stage-shell-head>div{display:grid;gap:3px}.stage-shell-head strong{font-size:1.1rem}.stage-shell-head span{color:#60471f;font-size:.78rem;line-height:1.3}body.is-vine-stage-select .wp-stage-shell-header>.wp-shell-settings>.wp-shell-settings-popover{transform:scale(var(--vine-stage-inverse-scale, 1))!important;transform-origin:top right!important}body.is-vine-stage-select .wp-stage-shell-header>.wp-shell-settings[data-wp-popover-edge=left]>.wp-shell-settings-popover{transform-origin:top left!important}.stage-return{display:grid;width:44px;height:44px;place-items:center;border:0;border-radius:14px;background:#fff5bd;color:#3b2815;font-size:1.35rem;font-weight:950}.language-picker{min-width:112px;display:grid;gap:4px;font-size:.72rem;font-weight:950}.language-picker select{width:100%;border:0;border-radius:14px;padding:9px 10px;background:#ffffffeb;color:#2d2417;font-weight:950}.menu-panel{display:grid;gap:12px}.cover{width:min(100%,560px);margin:0 auto;aspect-ratio:1;border-radius:28px;object-fit:cover;box-shadow:0 18px 38px #294e1c47}.menu-copy,.result-card{border-radius:24px;padding:16px;display:grid;gap:12px;background:#fff7d8f0;box-shadow:inset 0 0 0 2px #fff9,0 14px 28px #3627132e;font-weight:900}.result-card{grid-template-columns:repeat(3,minmax(0,1fr))}.result-card>:not(button):not(a){grid-column:1 / -1}.result-card button,.result-card a{min-width:0}.result-card button:disabled{cursor:not-allowed;filter:grayscale(.7);opacity:.56;box-shadow:inset 0 0 0 2px #5b492d47,0 3px #5844247a}.menu-copy strong{font-size:clamp(1.15rem,5vw,2rem)}.result-card .result-primary{outline:4px solid #fff3a7;outline-offset:2px;box-shadow:inset 0 2px #ffffffc7,0 7px #6b421d,0 0 0 7px #ffe05b57,0 16px 28px #37220c3d}.result-card .result-secondary{background:#fff8df;box-shadow:inset 0 0 0 2px #d4a74d,0 5px #815024,0 10px 18px #37220c29}.hud-pill{min-height:44px;border-radius:16px;padding:8px 10px;display:flex;align-items:center;justify-content:center;gap:8px;background:#ffffffeb;box-shadow:0 8px 16px #36271329;font-weight:950}.playfield{position:relative;width:min(100%,620px);max-width:100%;max-height:100%;margin:0 auto;align-self:center;aspect-ratio:3 / 5;overflow:hidden;border-radius:28px;background-image:linear-gradient(#081c2047,#081c209e),url(../../assets/animal-rope-rescue-forest-voxel-v1.png);background-size:cover;background-position:center;box-shadow:inset 0 0 0 5px #fff4b4a6,0 18px 36px #294e1c42;touch-action:none}.playfield:after{content:"";position:absolute;inset:0;z-index:1;background:radial-gradient(circle at 50% 34%,rgba(255,255,255,.24),transparent 42%),linear-gradient(180deg,#ffffff1f,#fff6c847);pointer-events:none}.target-guide,.fall-guide{position:absolute;top:9%;bottom:6%;transform:translate(-50%);pointer-events:none;z-index:2;opacity:.52}.target-guide{width:clamp(56px,14%,92px);border-radius:999px;background:linear-gradient(180deg,#fff59200,#ffe5524d 56%,#ffc74285);box-shadow:0 0 24px #ffe65157}.target-guide.active{opacity:.84;animation:guideGlow 1s ease-in-out infinite}.fall-guide{width:0;border-left:4px dotted rgba(255,255,255,.72);filter:drop-shadow(0 0 6px rgba(54,104,45,.38));opacity:0}.fall-guide.active{opacity:.9}.aim-guide{position:absolute;height:0;border-top:4px dashed rgba(255,244,146,.72);transform-origin:left center;pointer-events:none;z-index:2;opacity:0;filter:drop-shadow(0 0 8px rgba(64,111,42,.42))}.aim-guide:after{content:"";position:absolute;right:-8px;top:-7px;width:14px;height:14px;border-radius:999px;background:#ffe45d;box-shadow:0 0 16px #ffe45da8}.aim-guide.active{opacity:.82;animation:aimGuidePulse 1.1s ease-in-out infinite}.target-zone{position:absolute;left:50%;bottom:4%;width:31%;transform:translate(-50%);display:grid;justify-items:center;pointer-events:none;z-index:3;will-change:left}#targetAnimal{width:74%;max-width:132px;object-fit:contain;filter:drop-shadow(0 8px 8px rgba(41,31,18,.22))}.basket{width:100%;margin-top:-12%;object-fit:contain;filter:drop-shadow(0 8px 5px rgba(52,30,15,.22))}.vine-button{position:absolute;left:50%;top:0;width:clamp(82px,18%,120px);height:45%;transform:translate(-50%);border:0;background:transparent;padding:0;display:grid;justify-items:center;cursor:pointer;z-index:5;touch-action:manipulation}.vine-button.cut{opacity:.18;pointer-events:none}.vine-img{width:62%;height:100%;object-fit:fill;filter:drop-shadow(0 4px 3px rgba(20,70,24,.25))}.vine-button span{position:absolute;bottom:4px;min-width:44px;border-radius:999px;padding:6px 10px;background:#fff9d2f0;color:#2d6c27;font-size:.78rem;font-weight:950;box-shadow:0 4px 9px #274c1a2e;animation:cutPulse 1.25s ease-in-out infinite}.cut-now-btn{width:min(100%,360px);min-height:54px;margin:0 auto;border:0;border-radius:20px;display:grid;place-items:center;background:linear-gradient(180deg,#fff8c9,#ffdb63,#d78a28);color:#34200f;box-shadow:inset 0 2px #ffffffb8,0 8px #7c4b20,0 14px 24px #37220c38;font-size:1.08rem;font-weight:950}.cut-now-btn.cut,.cut-now-btn:disabled{opacity:.58;filter:grayscale(.35);transform:none;box-shadow:inset 0 2px #fff9,0 4px #7c4b20,0 8px 18px #37220c29}.fruit{position:absolute;width:14%;max-width:82px;transform:translate(-50%,-50%);object-fit:contain;filter:drop-shadow(0 9px 5px rgba(48,32,15,.24));pointer-events:none;will-change:left,top,rotate;z-index:3}.leaf-paddle{position:absolute;left:50%;bottom:17%;width:34%;max-width:190px;transform:translate(-50%);object-fit:contain;filter:drop-shadow(0 8px 6px rgba(30,70,24,.24));pointer-events:none;will-change:left;z-index:3;animation:paddleReady 1.5s ease-in-out infinite}.playfield.is-vine-cut .leaf-paddle{animation:none}.float-text{position:absolute;left:50%;top:42%;transform:translate(-50%,-50%);border-radius:999px;padding:10px 16px;background:#2f2312e0;color:#fff3a7;font-weight:950;pointer-events:none;animation:float-pop .9s ease forwards}.toast{position:fixed;left:50%;top:46%;z-index:30;transform:translate(-50%,-50%);border-radius:999px;padding:12px 18px;background:#2f2312eb;color:#fff3a7;font-weight:950;box-shadow:0 12px 24px #211c1047;animation:float-pop 1.1s ease forwards;pointer-events:none}.hint-text{margin:0;text-align:center;font-weight:950;color:#315528}.result-panel,.loading-panel{inset:0;z-index:20;padding:18px;display:grid;place-items:center;background:#232f186b;backdrop-filter:blur(8px)}.leaf-paddle:focus-visible{outline:4px solid #fff3a7;outline-offset:5px;border-radius:18px}.result-panel{position:absolute!important;inset:0!important;width:100%;height:100%}.leave-panel{position:fixed!important;inset:0!important;z-index:1000!important;pointer-events:auto!important}body.is-vine-playing #gamePanel .result-panel:not(.hidden):not(.is-hidden){max-height:100%!important;overflow:hidden!important}.loading-panel{position:fixed}.result-card,.loading-card{width:min(100%,360px);text-align:center}.result-card :is(strong,span,p){color:#34200f!important}#gamePanel.leave-open>:not(#leavePanel){pointer-events:none}#gamePanel.leave-open .playfield *{animation-play-state:paused!important}.leave-card strong{font-size:1.35rem}.leave-card span{line-height:1.45}#continueRescueBtn{outline:3px solid rgba(255,255,255,.9);outline-offset:2px}#leaveStageBtn{background:#fff8df;box-shadow:inset 0 0 0 2px #d4a74d,0 5px #815024,0 10px 18px #37220c29}.stars{color:#f4a51f;font-size:2rem;letter-spacing:0}.loading-card{border-radius:24px;padding:18px;display:grid;gap:12px;background:#fff9daf5;font-weight:950}.loading-card div{height:12px;overflow:hidden;border-radius:999px;background:#5e4a1c2e}.loading-card i{display:block;width:0%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#61d66f,#ffe36b)}@keyframes float-pop{0%{opacity:0;transform:translate(-50%,-30%) scale(.85)}25%{opacity:1;transform:translate(-50%,-50%) scale(1.05)}to{opacity:0;transform:translate(-50%,-90%) scale(1)}}@keyframes cutPulse{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(-2px) scale(1.05)}}@keyframes paddleReady{0%,to{transform:translate(-50%) scale(1)}34%{transform:translate(-57%) scale(1.025)}67%{transform:translate(-43%) scale(1.025)}}@media(prefers-reduced-motion:reduce){.leaf-paddle{animation:none}}@keyframes guideGlow{0%,to{box-shadow:0 0 18px #ffe65147}50%{box-shadow:0 0 34px #ffe6519e}}@keyframes aimGuidePulse{0%,to{opacity:.62}50%{opacity:.96}}body.is-vine-playing .hint-text{min-height:calc(44px * var(--wp-battle-canvas-inverse-scale, 1));padding:calc(10px * var(--wp-battle-canvas-inverse-scale, 1)) calc(8px * var(--wp-battle-canvas-inverse-scale, 1)) calc(2px * var(--wp-battle-canvas-inverse-scale, 1));line-height:1.3;font-size:calc(14px * var(--wp-battle-canvas-inverse-scale, 1));color:#eef7f6!important}body.is-vine-playing #battleWorkspace{display:grid!important;grid-template-rows:minmax(0,1fr) auto auto!important;align-content:stretch;align-items:center;gap:6px!important;min-height:0}body.is-vine-playing #playfield{width:auto!important;height:100%!important;max-width:100%!important;max-height:100%!important;aspect-ratio:3 / 5;justify-self:center;margin:0 auto}
