*{box-sizing:border-box}
  html{width:100%;min-height:100%;background:#111827;-webkit-text-size-adjust:100%;text-size-adjust:100%}
  html,body{margin:0;font-family:ui-rounded,"SF Pro Rounded","Arial Rounded MT Bold",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
  body{--frame-gap:24px;width:100%;min-height:100vh;min-height:100dvh;display:grid;place-items:center;overflow-x:hidden;background:#111827;padding-top:max(12px,env(safe-area-inset-top));padding-right:max(12px,env(safe-area-inset-right));padding-bottom:max(12px,env(safe-area-inset-bottom));padding-left:max(12px,env(safe-area-inset-left));-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
  button{font:inherit;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent}button:focus-visible{outline:3px solid rgba(255,255,255,.95);outline-offset:3px}
  #syncPivotGameV3{width:100%;min-width:0;display:flex;justify-content:center}
  #syncPivotGameV3 .game{position:relative;width:min(100%,430px,calc((100dvh - var(--frame-gap) - env(safe-area-inset-top) - env(safe-area-inset-bottom))*9/16));max-width:430px;aspect-ratio:9/16;container-type:inline-size;margin:auto;overflow:hidden;isolation:isolate;border-radius:30px;color:#fff;user-select:none;-webkit-user-select:none;background:radial-gradient(circle at 50% 43%,rgba(255,255,255,.16),transparent 29%),linear-gradient(180deg,#249cf5 0%,#59a7ff 40%,#918ef4 72%,#cbd0de 100%);box-shadow:0 28px 70px rgba(0,0,0,.35);transform:translateZ(0)}
  #syncPivotGameV3 .game.shake{animation:impactShake 115ms linear}
  @keyframes impactShake{0%,100%{transform:translate(0,0)}25%{transform:translate(-2px,1px)}50%{transform:translate(2px,-1px)}75%{transform:translate(-1px,-1px)}}

  #syncPivotGameV3 .logo{position:absolute;z-index:6;top:2%;left:20%;width:60%;text-align:center;font-weight:1000;line-height:.78;letter-spacing:-.05em;filter:drop-shadow(0 7px 0 #172a74)}
  #syncPivotGameV3 .logo b{display:block;font-size:clamp(42px,14vw,72px);font-size:clamp(42px,14cqw,72px);color:#ffd83c;-webkit-text-stroke:2px #fff191;text-shadow:0 4px 0 #ef8b24,0 7px 0 #a63b2b}
  #syncPivotGameV3 .logo i{display:block;font-style:normal;margin-top:8px;font-size:clamp(30px,10.5vw,54px);font-size:clamp(30px,10.5cqw,54px);color:#31dcf7;-webkit-text-stroke:2px #aefaff;text-shadow:0 4px 0 #0c8fc8,0 7px 0 #124c98}

  #syncPivotGameV3 .hud{position:absolute;z-index:7;left:8%;right:8%;top:19%;min-height:8%;border-radius:999px;background:linear-gradient(#29558f,#204577);display:grid;grid-template-columns:1fr 1.45fr 1fr;align-items:center;padding:1.5% 4%;box-shadow:0 9px 20px rgba(29,67,135,.25),inset 0 1px rgba(255,255,255,.25)}
  #syncPivotGameV3 .cell{text-align:center;position:relative}
  #syncPivotGameV3 .cell+.cell:before{content:"";position:absolute;left:0;top:8%;bottom:8%;width:1px;background:rgba(255,255,255,.25)}
  #syncPivotGameV3 .key{display:block;color:#bad8ff;font-size:clamp(10px,2.8vw,14px);font-size:clamp(10px,2.8cqw,14px);font-weight:850}
  #syncPivotGameV3 .value{display:block;font-size:clamp(20px,6vw,31px);font-size:clamp(20px,6cqw,31px);font-weight:1000;line-height:1}
  #syncPivotGameV3 .yellow{color:#ffd23d}

  #syncPivotGameV3 .msg{position:absolute;z-index:7;left:20%;right:20%;top:28%;min-height:7.2%;padding:2% 5%;border-radius:22px;background:rgba(31,79,145,.94);display:flex;align-items:center;justify-content:center;text-align:center;font-size:clamp(12px,3.7vw,18px);font-size:clamp(12px,3.7cqw,18px);font-weight:850;line-height:1.25}
  #syncPivotGameV3 .start{position:absolute;z-index:18;left:34%;right:34%;top:36.3%;min-height:42px;border:0;border-radius:999px;background:linear-gradient(180deg,#ffe864,#ffc72b 55%,#efa518);color:#173a72;font-size:clamp(11px,3.3vw,15px);font-size:clamp(11px,3.3cqw,15px);font-weight:1000;letter-spacing:.03em;box-shadow:0 6px 0 #c48212,0 10px 16px rgba(38,65,120,.22),inset 0 3px 5px rgba(255,255,255,.42);cursor:pointer;transition:transform 80ms ease,filter 80ms ease;padding:0 12px;touch-action:manipulation}
  #syncPivotGameV3 .start:active:not(:disabled){transform:translateY(5px);box-shadow:0 1px 0 #c48212,0 5px 9px rgba(38,65,120,.2),inset 0 3px 5px rgba(255,255,255,.42)}
  #syncPivotGameV3 .start:disabled{opacity:.52;cursor:default;filter:saturate(.65)}

  #syncPivotGameV3 .statusRow{position:absolute;z-index:17;top:41.2%;left:7%;right:7%;display:flex;align-items:center;justify-content:space-between;gap:7px;pointer-events:none}
  #syncPivotGameV3 .streak,#syncPivotGameV3 .rankBadge{display:flex;align-items:center;gap:6px;min-height:29px;padding:6px 10px;border-radius:999px;background:rgba(26,65,125,.82);border:1px solid rgba(255,255,255,.18);box-shadow:0 5px 12px rgba(35,60,112,.18);font-size:clamp(9px,2.55vw,12px);font-size:clamp(9px,2.55cqw,12px);font-weight:900;white-space:nowrap;opacity:0;transform:scale(.96);transition:opacity 120ms,transform 120ms}
  #syncPivotGameV3 .streak.on,#syncPivotGameV3 .rankBadge.on{opacity:1;transform:scale(1)}
  #syncPivotGameV3 .streak.pop{animation:streakPop 180ms ease-out}
  #syncPivotGameV3 .streak strong{color:#ffd84b;font-size:1.1em}
  #syncPivotGameV3 .rankBadge{margin-left:auto;color:#dcebff}
  #syncPivotGameV3 .rankBadge strong{color:#7ff4ff}
  @keyframes streakPop{0%{transform:scale(.82)}100%{transform:scale(1)}}

  #syncPivotGameV3 .watch{position:absolute;width:34%;aspect-ratio:1;left:33%;top:42%;border:10px solid rgba(255,255,255,.10);border-radius:50%}
  #syncPivotGameV3 .watch:before{content:"";position:absolute;width:28%;height:12%;top:-21%;left:36%;border-radius:8px;background:rgba(255,255,255,.10)}
  #syncPivotGameV3 .watch:after{content:"";position:absolute;left:48%;top:23%;width:8px;height:34%;border-radius:8px;background:rgba(255,255,255,.10);transform-origin:bottom;transform:rotate(35deg)}

  #syncPivotGameV3 .table{position:absolute;left:-8%;right:-8%;bottom:-2%;height:35%;border-radius:50% 50% 0 0/7% 7% 0 0;background:linear-gradient(#fafbff,#dfe5f4 45%,#b8c2d7);box-shadow:inset 0 7px 12px rgba(255,255,255,.85)}
  #syncPivotGameV3 .row{position:absolute;z-index:6;left:5%;right:5%;bottom:10.5%;display:grid;grid-template-columns:1fr 1fr;gap:8%}
  #syncPivotGameV3 .wrap{position:relative;aspect-ratio:1}
  #syncPivotGameV3 .base{position:absolute;left:4%;right:4%;bottom:2%;height:36%;border-radius:50%;background:linear-gradient(#3a4558,#111620 62%,#29303f);box-shadow:0 11px 17px rgba(20,27,44,.35),inset 0 4px 5px rgba(255,255,255,.18)}
  #syncPivotGameV3 .button{position:absolute;left:8%;right:8%;bottom:15%;aspect-ratio:1.42/1;border:0;border-radius:50%;color:#fff;font-size:clamp(18px,6vw,31px);font-size:clamp(18px,6cqw,31px);font-weight:1000;text-shadow:0 2px 2px rgba(0,0,0,.22);transition:transform 65ms ease,filter 65ms ease;touch-action:manipulation}
  #syncPivotGameV3 .cpu{background:radial-gradient(circle at 50% 20%,#ff9a9a,#ff4942 31%,#ed1717 68%,#b90c0c);box-shadow:0 9px 0 #8b0909,0 0 0 5px #ff4438,0 0 23px rgba(255,42,38,.72),inset 0 7px 11px rgba(255,255,255,.45)}
  #syncPivotGameV3 .cpu.slam{animation:cpuSlam 150ms ease-out}
  @keyframes cpuSlam{0%{transform:translateY(0) scale(1)}30%{transform:translateY(13px) scale(1.04,.88)}72%{transform:translateY(7px) scale(1.02,.95)}100%{transform:translateY(10px) scale(1)}}
  #syncPivotGameV3 .tap{cursor:pointer;background:radial-gradient(circle at 50% 20%,#7af0ff,#18d5eb 31%,#00a9c9 68%,#007699);box-shadow:0 9px 0 #006680,0 0 0 5px #24d8eb,0 0 25px rgba(0,213,238,.7),inset 0 7px 11px rgba(255,255,255,.48)}
  #syncPivotGameV3 .tap:disabled{cursor:default;opacity:.68}
  #syncPivotGameV3 .button.down{transform:translateY(10px);filter:brightness(1.1)}

  #syncPivotGameV3 .pivot{position:absolute;z-index:13;left:25.5%;top:59%;width:30px;height:30px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 34% 28%,#667793,#28384f 58%,#111a28 100%);box-shadow:0 5px 9px rgba(25,31,48,.3),inset 0 3px rgba(255,255,255,.16);pointer-events:none}
  #syncPivotGameV3 .hammerArm{position:absolute;z-index:12;left:1%;top:55.7%;width:24.5%;height:7%;transform-origin:100% 50%;transform:rotate(0deg);transition:transform 90ms cubic-bezier(.42,0,.86,.5);will-change:transform;pointer-events:none}
  #syncPivotGameV3 .hammerArm.hit{transform:rotate(-90deg)}
  #syncPivotGameV3 .hammerArm.rebound{transform:rotate(-8deg);transition-duration:185ms;transition-timing-function:cubic-bezier(.13,.87,.25,1)}
  #syncPivotGameV3 .shaft{position:absolute;right:0;top:39%;width:68%;height:22%;border-radius:999px;background:linear-gradient(180deg,#e39b5c 0%,#bf7139 48%,#84451f 100%);box-shadow:inset 0 3px rgba(255,255,255,.2),inset 0 -3px rgba(75,33,15,.18),0 5px 8px rgba(31,35,52,.22)}
  #syncPivotGameV3 .head{position:absolute;left:0;top:2%;width:42%;height:96%;border-radius:20px;background:linear-gradient(180deg,#ffe873 0%,#ffbd31 30%,#f08c18 72%,#cf5513 100%);border:4px solid #704116;box-shadow:inset 0 6px 8px rgba(255,255,255,.5),inset 0 -6px 7px rgba(122,48,9,.24),0 7px 12px rgba(30,36,60,.27)}
  #syncPivotGameV3 .head:after{content:"";position:absolute;left:11%;top:15%;width:21%;height:45%;border-radius:50%;background:rgba(255,255,255,.33);filter:blur(1px)}
  #syncPivotGameV3 .striker{position:absolute;left:-12%;top:20%;width:25%;height:60%;border-radius:50%;background:linear-gradient(180deg,#ff746c,#ee332d 48%,#cc1714);border:3px solid #801512;box-shadow:inset 0 4px 4px rgba(255,255,255,.28),0 3px 5px rgba(92,13,12,.25)}

  #syncPivotGameV3 .impact{position:absolute;z-index:14;left:17%;bottom:30.5%;width:18%;aspect-ratio:1;opacity:0;transform:scale(.55);transition:opacity 45ms,transform 80ms}
  #syncPivotGameV3 .impact.on{opacity:1;transform:scale(1.22)}
  #syncPivotGameV3 .impact i{position:absolute;left:47%;top:0;width:7%;height:43%;border-radius:999px;background:#ffe85b;box-shadow:0 0 12px #ffeb69;transform-origin:50% 120%}
  #syncPivotGameV3 .impact i:nth-child(1){transform:rotate(-64deg)}#syncPivotGameV3 .impact i:nth-child(2){transform:rotate(-32deg)}#syncPivotGameV3 .impact i:nth-child(3){transform:rotate(0)}#syncPivotGameV3 .impact i:nth-child(4){transform:rotate(32deg)}#syncPivotGameV3 .impact i:nth-child(5){transform:rotate(64deg)}
  #syncPivotGameV3 .shock{position:absolute;z-index:13;left:25.5%;bottom:24.2%;width:15%;aspect-ratio:1;border:5px solid rgba(255,235,103,.9);border-radius:50%;opacity:0;transform:translateX(-50%) scale(.3);pointer-events:none}
  #syncPivotGameV3 .shock.on{animation:shockwave 260ms ease-out}
  @keyframes shockwave{0%{opacity:.95;transform:translateX(-50%) scale(.3)}100%{opacity:0;transform:translateX(-50%) scale(2.3)}}

  #syncPivotGameV3 .feedback{position:absolute;z-index:15;left:50%;top:44%;transform:translateX(-50%) scale(.9);min-width:118px;padding:8px 14px 9px;border-radius:16px;background:rgba(24,61,119,.9);border:1px solid rgba(255,255,255,.16);text-align:center;white-space:nowrap;opacity:0;transition:opacity 100ms,transform 100ms;box-shadow:0 8px 20px rgba(28,50,101,.2)}
  #syncPivotGameV3 .feedback.on{opacity:1;transform:translateX(-50%) scale(1)}
  #syncPivotGameV3 .feedback .timing{display:block;font-size:clamp(19px,5.2vw,27px);font-size:clamp(19px,5.2cqw,27px);font-weight:1000;line-height:1}
  #syncPivotGameV3 .feedback .grade{display:block;margin-top:3px;color:#dbe9ff;font-size:clamp(9px,2.5vw,12px);font-size:clamp(9px,2.5cqw,12px);font-weight:900;letter-spacing:.08em}

  #syncPivotGameV3 .stats{position:absolute;z-index:30;left:11%;right:11%;top:40.5%;padding:14px 15px 13px;border-radius:22px;background:linear-gradient(180deg,rgba(34,79,145,.98),rgba(24,57,112,.98));border:1px solid rgba(255,255,255,.2);box-shadow:0 16px 34px rgba(22,45,92,.30),inset 0 1px rgba(255,255,255,.15);opacity:0;transform:translateY(8px) scale(.96);pointer-events:none;transition:opacity 170ms,transform 170ms}
  #syncPivotGameV3 .stats.on{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
  #syncPivotGameV3 .statsTitle{text-align:center;font-weight:1000;font-size:clamp(14px,4vw,18px);font-size:clamp(14px,4cqw,18px);letter-spacing:.05em}
  #syncPivotGameV3 .newBest{text-align:center;margin-top:3px;color:#ffd84b;font-size:clamp(10px,2.8vw,13px);font-size:clamp(10px,2.8cqw,13px);font-weight:1000;min-height:15px}
  #syncPivotGameV3 .statsGrid{margin-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:7px}
  #syncPivotGameV3 .stat{padding:7px 8px;border-radius:12px;background:rgba(13,42,90,.42);text-align:center}
  #syncPivotGameV3 .stat span{display:block;color:#bcd8ff;font-size:clamp(8px,2.3vw,10px);font-size:clamp(8px,2.3cqw,10px);font-weight:850;letter-spacing:.05em}
  #syncPivotGameV3 .stat strong{display:block;margin-top:2px;font-size:clamp(15px,4.3vw,20px);font-size:clamp(15px,4.3cqw,20px);font-weight:1000}
  #syncPivotGameV3 .pbLine{margin-top:8px;text-align:center;color:#d9e7ff;font-size:clamp(9px,2.6vw,12px);font-size:clamp(9px,2.6cqw,12px);font-weight:800}


  #syncPivotGameV3 .globalRankLine{margin-top:9px;padding:8px 10px;border-radius:12px;background:rgba(9,35,78,.48);text-align:center;color:#eaf4ff;font-size:clamp(9px,2.6vw,12px);font-size:clamp(9px,2.6cqw,12px);font-weight:900;min-height:33px;display:flex;align-items:center;justify-content:center}
  #syncPivotGameV3 .leaderButton{width:100%;min-height:38px;margin-top:8px;border:1px solid rgba(255,255,255,.2);border-radius:12px;background:linear-gradient(180deg,#33dced,#0fb7d4);color:#07365f;font-size:clamp(10px,2.8vw,13px);font-size:clamp(10px,2.8cqw,13px);font-weight:1000;letter-spacing:.04em;cursor:pointer;box-shadow:0 4px 0 #087f9e,inset 0 2px rgba(255,255,255,.3);touch-action:manipulation}
  #syncPivotGameV3 .leaderButton:active{transform:translateY(3px);box-shadow:0 1px 0 #087f9e,inset 0 2px rgba(255,255,255,.3)}

  #syncPivotGameV3 .leaderOverlay{position:absolute;z-index:50;left:5%;right:5%;top:29%;bottom:4.5%;display:flex;flex-direction:column;padding:12px;border-radius:22px;background:linear-gradient(180deg,rgba(27,67,132,.99),rgba(17,43,91,.995));border:1px solid rgba(255,255,255,.22);box-shadow:0 20px 44px rgba(14,31,68,.38);opacity:0;transform:translateY(8px) scale(.97);pointer-events:none;transition:opacity 160ms,transform 160ms}
  #syncPivotGameV3 .leaderOverlay.on{opacity:1;transform:translateY(0) scale(1);pointer-events:auto}
  #syncPivotGameV3 .leaderHead{display:flex;align-items:center;justify-content:space-between;gap:8px}
  #syncPivotGameV3 .leaderTitle{font-size:clamp(15px,4.2vw,19px);font-size:clamp(15px,4.2cqw,19px);font-weight:1000;letter-spacing:.04em}
  #syncPivotGameV3 .leaderClose{width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:20px;font-weight:900;cursor:pointer;line-height:1}
  #syncPivotGameV3 .leaderTabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;margin-top:9px}
  #syncPivotGameV3 .leaderTab{min-height:34px;border:1px solid rgba(255,255,255,.15);border-radius:10px;background:rgba(10,40,86,.45);color:#cfe4ff;font-size:clamp(9px,2.5vw,11px);font-size:clamp(9px,2.5cqw,11px);font-weight:950;cursor:pointer}
  #syncPivotGameV3 .leaderTab.active{background:#ffd84b;color:#173a72;border-color:#ffec89}
  #syncPivotGameV3 .leaderYou{margin-top:8px;min-height:34px;padding:7px 9px;border-radius:10px;background:rgba(10,40,86,.52);color:#e8f3ff;text-align:center;font-size:clamp(9px,2.55vw,12px);font-size:clamp(9px,2.55cqw,12px);font-weight:900;display:flex;align-items:center;justify-content:center}
  #syncPivotGameV3 .leaderList{min-height:0;flex:1;margin-top:8px;overflow:auto;overscroll-behavior:contain;border-radius:12px;background:rgba(7,31,70,.34);scrollbar-width:thin}
  #syncPivotGameV3 .leaderRow{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:38px;padding:6px 9px;border-bottom:1px solid rgba(255,255,255,.08);font-size:clamp(9px,2.55vw,12px);font-size:clamp(9px,2.55cqw,12px)}
  #syncPivotGameV3 .leaderRow:last-child{border-bottom:0}
  #syncPivotGameV3 .leaderRow.you{background:rgba(55,220,237,.14)}
  #syncPivotGameV3 .leaderPos{color:#8fc7ff;font-weight:1000}
  #syncPivotGameV3 .leaderName{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#edf6ff;font-weight:850}
  #syncPivotGameV3 .leaderScore{color:#ffd84b;font-weight:1000}
  #syncPivotGameV3 .leaderEmpty{display:flex;align-items:center;justify-content:center;min-height:100%;padding:18px;text-align:center;color:#bed5f4;font-size:clamp(10px,2.7vw,12px);font-size:clamp(10px,2.7cqw,12px);font-weight:800;line-height:1.4}

  #syncPivotGameV3 .foot{position:absolute;z-index:7;bottom:4.5%;left:18%;right:18%;display:flex;align-items:center;gap:10px;color:rgba(255,255,255,.8);font-size:clamp(8px,2.5vw,12px);font-size:clamp(8px,2.5cqw,12px);font-weight:900;letter-spacing:.2em;white-space:nowrap}
  #syncPivotGameV3 .foot:before,#syncPivotGameV3 .foot:after{content:"";height:2px;flex:1;background:rgba(255,255,255,.6)}
