.pp-input{z-index:10;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;position:absolute;inset:0}.pp-input[hidden]{display:none}.pp-stick-zone{top:var(--pp-top-h,80px);pointer-events:auto;touch-action:none;width:50%;position:absolute;bottom:0;left:0}.pp-input.pp-swap .pp-stick-zone{left:auto;right:0}.pp-stick-hint{left:max(18px, env(safe-area-inset-left));bottom:calc(var(--pp-strip-pad,22px) + env(safe-area-inset-bottom));pointer-events:none;border:2px dashed #f4eede4d;border-radius:50%;width:96px;height:96px;transition:opacity .12s;position:absolute}.pp-input.pp-swap .pp-stick-hint{left:auto;right:max(18px, env(safe-area-inset-right))}.pp-stick-zone.pp-active .pp-stick-hint{opacity:0}.pp-stick-base,.pp-stick-knob{pointer-events:none;will-change:transform;border-radius:50%;display:none;position:absolute;top:0;left:0}.pp-stick-base{background:#f4eede1f;border:2px solid #f4eede8c;width:112px;height:112px;margin:-56px 0 0 -56px;box-shadow:0 0 0 4px #1b244059}.pp-stick-knob{background:#4fd8e8;border:3px solid #f4eede;width:52px;height:52px;margin:-26px 0 0 -26px;box-shadow:0 2px 8px #0006}.pp-stick-zone.pp-active .pp-stick-base,.pp-stick-zone.pp-active .pp-stick-knob{display:block}.pp-place-btn{right:max(20px, env(safe-area-inset-right));bottom:calc(var(--pp-strip-pad,22px) + env(safe-area-inset-bottom));color:#fff7ea;pointer-events:auto;touch-action:none;cursor:pointer;-webkit-tap-highlight-color:transparent;background:radial-gradient(circle at 35% 30%,#ff9a7a,#ff6a45 70%);border:4px solid #f4eede;border-radius:50%;justify-content:center;align-items:center;width:92px;height:92px;padding:0;transition:transform 50ms,box-shadow 50ms,opacity .15s;display:flex;position:absolute;box-shadow:0 6px #b8421f,0 10px 18px #00000059}.pp-input.pp-swap .pp-place-btn{right:auto;left:max(20px, env(safe-area-inset-left))}.pp-place-btn svg{pointer-events:none;width:46px;height:46px}.pp-place-btn.pp-pressed{filter:brightness(1.12);transform:translateY(5px)scale(.96);box-shadow:0 1px #b8421f,0 3px 8px #00000059}[data-can-place=false] .pp-place-btn:not(.pp-pressed){opacity:.55}.pp-place-btn:focus-visible{outline-offset:3px;outline:3px solid #4fd8e8}@media (max-height:620px){.pp-place-btn{width:80px;height:80px}.pp-place-btn svg{width:40px;height:40px}.pp-stick-hint{width:84px;height:84px}}:root{--pp-dusk:#1b2440;--pp-dusk-2:#263259;--pp-dusk-3:#34427a;--pp-ink:#0f1530;--pp-coral:#ff6a45;--pp-cyan:#4fd8e8;--pp-cream:#f4eede;--pp-amber:#ffd35c;--pp-line:#f4eede47;--pp-bar:50px;--pp-stats-h:30px}html,body{overscroll-behavior:none;background:var(--pp-dusk);height:100%;margin:0;overflow:hidden}.pp-root{background:var(--pp-dusk);color:var(--pp-cream);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;touch-action:manipulation;--pp-top-h:80px;--pp-strip-h:128px;--pp-strip-pad:22px;font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Noto Sans SC,system-ui,sans-serif;font-size:16px;line-height:1.3;position:fixed;inset:0;overflow:hidden}.pp-root.pp-compact{--pp-bar:48px;--pp-stats-h:26px}.pp-root *,.pp-root :before,.pp-root :after{box-sizing:border-box}.pp-root [hidden]{display:none!important}.pp-root button,.pp-root input{font:inherit;color:inherit}.pp-root input[type=text]{-webkit-user-select:text;user-select:text}.pp-root :focus-visible{outline:3px solid var(--pp-cyan);outline-offset:2px}.pp-ui{z-index:20;pointer-events:none;position:absolute;inset:0}.pp-probe{visibility:hidden;width:0;height:0;padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);position:absolute}.pp-icon{flex:none;width:24px;height:24px;display:block}.pp-hud{pointer-events:none;position:absolute;inset:0}.pp-topbar{top:env(safe-area-inset-top,0px);left:env(safe-area-inset-left,0px);right:env(safe-area-inset-right,0px);height:var(--pp-bar);grid-template-columns:1fr auto 1fr;align-items:center;padding:0 10px;display:grid;position:absolute}.pp-iconbtn{border:2px solid var(--pp-line);cursor:pointer;pointer-events:auto;background:#0f1530b8;border-radius:14px;justify-content:center;justify-self:start;align-items:center;width:44px;height:44px;padding:0;display:flex}.pp-iconbtn:active{background:var(--pp-dusk-3);transform:translateY(1px)}.pp-timer,.pp-alive{border:2px solid var(--pp-line);font-variant-numeric:tabular-nums;background:#0f1530b8;border-radius:999px;align-items:center;gap:6px;height:36px;padding:0 12px;font-weight:800;display:flex}.pp-timer{justify-content:center;min-width:96px;font-size:20px}.pp-timer .pp-icon{width:20px;height:20px;color:var(--pp-cyan)}.pp-alive{justify-self:end;font-size:18px}.pp-alive .pp-icon{width:22px;height:22px;color:var(--pp-coral)}.pp-timer.pp-low{color:var(--pp-amber);border-color:var(--pp-amber)}.pp-overtime .pp-timer{color:var(--pp-coral);border-color:var(--pp-coral);animation:1s ease-in-out infinite pp-pulse}.pp-stats{top:calc(env(safe-area-inset-top,0px) + var(--pp-bar));height:var(--pp-stats-h);justify-content:center;align-items:center;gap:8px;display:flex;position:absolute;left:0;right:0}.pp-chip{height:calc(var(--pp-stats-h) - 4px);border:2px solid var(--pp-line);font-variant-numeric:tabular-nums;background:#0f1530b8;border-radius:999px;align-items:center;gap:5px;padding:0 10px 0 7px;font-size:14px;font-weight:800;display:flex}.pp-chip .pp-icon{width:18px;height:18px}.pp-chip-cap .pp-icon{color:var(--pp-cream)}.pp-chip-range .pp-icon{color:var(--pp-cyan)}.pp-chip-speed .pp-icon{color:var(--pp-amber)}.pp-countdown{top:var(--pp-top-h);bottom:var(--pp-strip-h);color:var(--pp-cream);text-shadow:0 6px 0 var(--pp-coral), 0 10px 24px #00000080;pointer-events:none;justify-content:center;align-items:center;font-size:128px;font-weight:900;animation:.55s cubic-bezier(.2,1.4,.4,1) pp-pop;display:flex;position:absolute;left:0;right:0}.pp-countdown.pp-go{color:var(--pp-amber);font-size:72px}.pp-toasts{top:calc(var(--pp-top-h) + 8px);pointer-events:none;flex-direction:column;align-items:center;gap:6px;padding:0 12px;display:flex;position:absolute;left:0;right:0}.pp-toast{border:2px solid var(--pp-cyan);background:#0f1530e6;border-radius:999px;align-items:center;gap:8px;max-width:100%;padding:8px 14px;font-size:15px;font-weight:700;animation:.25s ease-out pp-toast-in;display:flex}.pp-toast .pp-icon{width:20px;height:20px}.pp-k-warn{border-color:var(--pp-coral)}.pp-k-warn .pp-icon{color:var(--pp-coral)}.pp-k-powerup{border-color:var(--pp-cream);padding:6px 16px 6px 6px;animation:.4s cubic-bezier(.2,1.4,.4,1) pp-pop}.pp-pu-icon{width:38px;height:38px;color:var(--pp-ink);background:var(--pp-cyan);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.pp-pu-icon .pp-icon{width:24px;height:24px}.pp-pu-range .pp-pu-icon{background:var(--pp-coral)}.pp-pu-speed .pp-pu-icon{background:var(--pp-amber)}.pp-pu-text{text-align:left;flex-direction:column;line-height:1.2;display:flex}.pp-pu-text small{opacity:.85;font-size:13px;font-weight:600}.pp-hint{background:var(--pp-cream);width:max-content;max-width:min(240px,50% - 16px);color:var(--pp-ink);text-align:center;pointer-events:none;border-radius:16px;padding:10px 14px;font-size:16px;font-weight:800;animation:1.4s ease-in-out infinite pp-bob;position:absolute;box-shadow:0 4px #0000004d}.pp-hint.pp-t-arena{max-width:min(300px,100% - 32px);left:50%;top:calc(var(--pp-top-h) + (100% - var(--pp-top-h) - var(--pp-strip-h)) * .5);translate:-50% -50%}.pp-hint.pp-t-joystick,.pp-hint.pp-t-button{bottom:calc(var(--pp-strip-h) + 4px)}.pp-hint.pp-t-joystick{left:max(10px, env(safe-area-inset-left,0px))}.pp-hint.pp-t-button{right:max(10px, env(safe-area-inset-right,0px))}.pp-hint.pp-t-joystick.pp-swap{left:auto;right:max(10px, env(safe-area-inset-right,0px))}.pp-hint.pp-t-button.pp-swap{right:auto;left:max(10px, env(safe-area-inset-left,0px))}.pp-hint.pp-t-joystick:after,.pp-hint.pp-t-button:after{content:"";border:10px solid #0000;border-bottom:0;border-top-color:var(--pp-cream);position:absolute;bottom:-9px}.pp-hint.pp-t-joystick:after{left:48px}.pp-hint.pp-t-button:after{right:48px}.pp-hint.pp-t-joystick.pp-swap:after{left:auto;right:48px}.pp-hint.pp-t-button.pp-swap:after{left:48px;right:auto}.pp-ring{border:4px solid var(--pp-cyan);width:108px;height:108px;bottom:calc(var(--pp-strip-pad) + env(safe-area-inset-bottom,0px) - 8px);pointer-events:none;border-radius:50%;animation:1.1s ease-in-out infinite pp-ring;position:absolute;box-shadow:0 0 18px #4fd8e8b3}.pp-ring.pp-t-joystick{left:calc(max(18px, env(safe-area-inset-left,0px)) - 6px)}.pp-ring.pp-t-button{right:calc(max(20px, env(safe-area-inset-right,0px)) - 8px)}.pp-ring.pp-t-joystick.pp-swap{left:auto;right:calc(max(18px, env(safe-area-inset-right,0px)) - 6px)}.pp-ring.pp-t-button.pp-swap{right:auto;left:calc(max(20px, env(safe-area-inset-left,0px)) - 8px)}.pp-compact .pp-ring{width:96px;height:96px}.pp-screens,.pp-modals{pointer-events:none;position:absolute;inset:0}.pp-modals{z-index:2}.pp-screen,.pp-rotate{padding:calc(env(safe-area-inset-top,0px) + 16px) calc(env(safe-area-inset-right,0px) + 16px) calc(env(safe-area-inset-bottom,0px) + 16px) calc(env(safe-area-inset-left,0px) + 16px);pointer-events:auto;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;overflow-y:auto}.pp-bg{background:radial-gradient(circle at 18% 12%, #4fd8e829, transparent 42%), radial-gradient(circle at 85% 88%, #ff6a452e, transparent 46%), radial-gradient(1.5px 1.5px at 20px 30px, #f4eedecc, transparent), radial-gradient(1.5px 1.5px at 90px 120px, #f4eede99, transparent), radial-gradient(2px 2px at 150px 60px, #f4eedeb3, transparent), var(--pp-dusk);background-size:auto,auto,170px 170px,170px 170px,170px 170px,auto}.pp-dim{background:#0f1530e0}.pp-center{text-align:center;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:340px;margin:auto;display:flex}.pp-logo{filter:drop-shadow(0 6px #00000040);flex:none;width:112px;height:112px}.pp-title{letter-spacing:2px;color:var(--pp-cream);text-shadow:0 3px 0 var(--pp-coral), 0 7px 0 #00000047;margin:0;font-size:46px;font-weight:900;line-height:1.1}.pp-sub{letter-spacing:1px;color:var(--pp-cyan);margin:0;font-size:14px;font-weight:700}.pp-hint-text,.pp-detail{color:#f4eeded1;margin:0;font-size:15px}.pp-menu{flex-direction:column;gap:12px;width:100%;margin-top:8px;display:flex}.pp-mode-row{gap:10px;width:100%;display:flex}.pp-mode-row>.pp-btn{flex:1 1 0;min-width:0;padding:0 10px}.pp-btn{border:3px solid var(--pp-ink);cursor:pointer;border-radius:16px;flex-wrap:nowrap;justify-content:center;align-items:center;gap:0 10px;min-height:54px;padding:8px 20px;font-size:18px;font-weight:800;transition:transform 50ms,box-shadow 50ms;display:flex;box-shadow:0 5px #0006}.pp-btn:active{transform:translateY(4px);box-shadow:0 1px #0006}.pp-btn:has(.pp-btn-sub){flex-wrap:wrap}.pp-btn-lg{min-height:62px;font-size:22px}.pp-btn-sm{border-radius:14px;min-height:44px;padding:4px 14px;font-size:16px}.pp-btn-sub{text-align:center;opacity:.8;flex-basis:100%;font-size:12px;font-weight:700}.pp-root .pp-btn-primary,.pp-root .pp-btn-coral{background:var(--pp-coral);color:var(--pp-ink)}.pp-root .pp-btn-secondary{background:var(--pp-cyan);color:var(--pp-ink)}.pp-root .pp-btn-ghost{background:var(--pp-dusk-3);color:var(--pp-cream);border-color:var(--pp-line)}.pp-card{border:3px solid var(--pp-line);background:#34427a9e;border-radius:22px;flex-direction:column;gap:10px;padding:14px;display:flex}.pp-card-title{text-align:left;font-size:20px;font-weight:900}.pp-picker-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.pp-picker-label,.pp-row-label{font-size:16px;font-weight:700}.pp-seg{background:var(--pp-ink);border-radius:14px;gap:4px;padding:4px;display:inline-flex}.pp-seg-btn{cursor:pointer;background:0 0;border:0;border-radius:10px;min-width:48px;height:44px;padding:0 12px;font-size:18px;font-weight:800}.pp-seg-btn.pp-on{background:var(--pp-cyan);color:var(--pp-ink)}.pp-home-gear{top:calc(env(safe-area-inset-top,0px) + 10px);right:calc(env(safe-area-inset-right,0px) + 12px);z-index:1;width:48px;height:48px;position:absolute}.pp-home .pp-center{gap:8px}.pp-panel{background:var(--pp-dusk-2);border:3px solid var(--pp-line);text-align:center;border-radius:26px;flex-direction:column;gap:12px;width:min(100%,360px);max-height:100%;margin:auto;padding:20px 18px;display:flex;box-shadow:0 8px #0000004d}.pp-panel-scroll{text-align:left;overscroll-behavior:contain;overflow-y:auto}.pp-panel-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.pp-h2{margin:0;font-size:28px;font-weight:900}.pp-h3{letter-spacing:1px;color:var(--pp-cyan);margin:8px 0 0;font-size:14px}.pp-medal{background:var(--pp-cyan);width:64px;height:64px;color:var(--pp-ink);border:3px solid var(--pp-cream);border-radius:50%;justify-content:center;align-items:center;margin:0 auto;display:flex}.pp-medal .pp-icon{width:36px;height:36px}.pp-medal-warn,.pp-res-win .pp-medal{background:var(--pp-amber)}.pp-res-lose .pp-medal{background:var(--pp-coral)}.pp-result-title{font-size:34px}.pp-res-win .pp-result-title{color:var(--pp-amber)}.pp-duration{font-variant-numeric:tabular-nums;color:#f4eeded9;margin:0;font-size:15px;font-weight:700}.pp-plist{flex-direction:column;gap:6px;margin:4px 0;padding:0;list-style:none;display:flex}.pp-prow{text-align:left;background:#0f153080;border-radius:14px;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;min-height:44px;padding:6px 12px 6px 8px;font-weight:700;display:grid}.pp-prow.pp-me{outline:2px solid var(--pp-cyan);background:#4fd8e82e}.pp-prow.pp-out .pp-pname{opacity:.7}.pp-badge{background:var(--c,var(--pp-cyan));width:32px;height:32px;color:var(--pp-ink);border:2px solid var(--pp-ink);border-radius:50%;justify-content:center;align-items:center;display:flex}.pp-badge .pp-icon{width:18px;height:18px}.pp-pname{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.pp-you{background:var(--pp-cyan);color:var(--pp-ink);border-radius:999px;margin-left:6px;padding:1px 7px;font-size:12px;font-style:normal}.pp-pstatus{font-variant-numeric:tabular-nums;color:#f4eeded9;font-size:14px}.pp-progress{background:var(--pp-ink);border:2px solid var(--pp-line);border-radius:999px;width:220px;height:14px;margin-top:6px;overflow:hidden}.pp-progress-fill{background:var(--pp-coral);transform-origin:0;width:100%;height:100%;transition:transform .15s linear;transform:scaleX(0)}.pp-row{justify-content:space-between;align-items:center;gap:12px;min-height:48px;display:flex}.pp-slider{grid-template-columns:76px 1fr 32px;display:grid}.pp-range-val{text-align:right;font-variant-numeric:tabular-nums;font-size:14px}.pp-range{appearance:none;touch-action:pan-y;background:0 0;width:100%;height:44px;margin:0}.pp-range::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--pp-cyan) var(--fill,50%), var(--pp-ink) var(--fill,50%));border-radius:999px;height:10px}.pp-range::-moz-range-track{background:var(--pp-ink);border-radius:999px;height:10px}.pp-range::-moz-range-progress{background:var(--pp-cyan);border-radius:999px;height:10px}.pp-range::-webkit-slider-thumb{-webkit-appearance:none;background:var(--pp-cream);border:3px solid var(--pp-ink);border-radius:50%;width:30px;height:30px;margin-top:-10px}.pp-range::-moz-range-thumb{background:var(--pp-cream);border:3px solid var(--pp-ink);border-radius:50%;width:24px;height:24px}.pp-row-text{flex-direction:column;min-width:0;display:flex}.pp-row-hint{opacity:.75;font-size:12px}.pp-switch{border:3px solid var(--pp-ink);background:var(--pp-dusk-3);cursor:pointer;border-radius:999px;flex:none;width:64px;height:44px;padding:0;position:relative}.pp-switch-knob{background:var(--pp-cream);border-radius:50%;width:30px;height:30px;transition:transform .12s;position:absolute;top:4px;left:4px}.pp-switch.pp-on{background:var(--pp-cyan)}.pp-switch.pp-on .pp-switch-knob{background:var(--pp-ink);transform:translate(20px)}.pp-text{border:2px solid var(--pp-line);background:var(--pp-ink);border-radius:12px;width:170px;min-width:0;height:44px;padding:0 12px;font-size:16px}.pp-rotate{z-index:100;display:none}@media (orientation:landscape) and (pointer:coarse) and (max-height:520px){.pp-rotate{display:flex}}.pp-spin .pp-icon{animation:2.4s ease-in-out infinite pp-turn}.pp-compact .pp-logo{width:80px;height:80px}.pp-compact .pp-title{font-size:38px}.pp-compact .pp-center{gap:6px}.pp-compact .pp-menu{gap:10px;margin-top:4px}.pp-compact .pp-btn{min-height:50px}.pp-compact .pp-btn-lg{min-height:56px;font-size:20px}.pp-compact .pp-btn-sm{min-height:44px}.pp-compact .pp-card{gap:8px;padding:10px 12px}.pp-compact .pp-panel{gap:8px;padding:14px}.pp-compact .pp-medal{width:48px;height:48px}.pp-compact .pp-medal .pp-icon{width:28px;height:28px}.pp-compact .pp-h2{font-size:24px}.pp-compact .pp-result-title{font-size:28px}.pp-compact .pp-prow{min-height:40px;padding-top:3px;padding-bottom:3px}.pp-compact .pp-plist{gap:4px}.pp-compact .pp-countdown{font-size:96px}.pp-compact .pp-screen{padding-top:calc(env(safe-area-inset-top,0px) + 10px);padding-bottom:calc(env(safe-area-inset-bottom,0px) + 10px)}.pp-compact .pp-row{min-height:44px}@keyframes pp-pop{0%{opacity:0;transform:scale(1.6)}to{opacity:1;transform:scale(1)}}@keyframes pp-toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes pp-pulse{50%{transform:scale(1.06)}}@keyframes pp-bob{50%{transform:translateY(-4px)}}@keyframes pp-ring{50%{opacity:.7;transform:scale(1.08)}}@keyframes pp-turn{0%,20%{transform:rotate(0)}60%,to{transform:rotate(-90deg)}}@media (prefers-reduced-motion:reduce){.pp-root *,.pp-root :before,.pp-root :after{transition:none!important;animation:none!important}}.pp-root.pp-reduce-flash *,.pp-root.pp-reduce-flash :before,.pp-root.pp-reduce-flash :after{animation:none!important}.pp-mode-row>.pp-btn{white-space:nowrap;gap:6px;font-size:16px}.pp-mode-row>.pp-btn .pp-icon{width:20px;height:20px}.pp-canvas{z-index:0;touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.pp-marker{z-index:5;box-sizing:border-box;pointer-events:none;border:3px solid #4fd8e8;border-radius:12px;animation:1s ease-in-out infinite pp-marker;position:absolute;translate:-50% -50%;box-shadow:0 0 14px #4fd8e8d9,inset 0 0 12px #4fd8e873}.pp-marker[hidden]{display:none}@keyframes pp-marker{0%,to{opacity:.75;scale:.92}50%{opacity:1;scale:1.06}}.pp-reduce-flash .pp-marker{animation:none}.pp-spectating .pp-stick-zone,.pp-spectating .pp-place-btn{visibility:hidden}
