/* Perfect Split inherits Cursor Curling's controls, surfaces, typography and Pix. */
.game-switch{margin-top:17px;font-size:14px;color:var(--muted);padding:8px 0}
.perfect-split.menu-open{background:radial-gradient(ellipse at 65% 40%,#16496b 0,transparent 60%),#0b1e2e}
.perfect-split #menu h1 b{font-size:21cqw;letter-spacing:-.06em}.perfect-split #menu h1>span{font-size:28cqw;letter-spacing:.015em}.perfect-split #menu .tagline{font-size:5.2cqw}.perfect-split #menu .menu-signature{display:none}
.perfect-split .menu-art:before{content:'';position:absolute;right:12%;top:15%;width:310px;height:310px;background:linear-gradient(137deg,#bfdff2 49.7%,#12bcff 49.8%,#12bcff 50.2%,#8ba9c3 50.3%);clip-path:polygon(10% 0,100% 15%,85% 100%,0 80%);transform:rotate(-9deg);filter:drop-shadow(0 12px 40px #008cff33)}
.split-game{display:grid;grid-template-columns:230px minmax(0,1fr) 260px;gap:26px;max-width:1720px;margin:0 auto;padding:20px 32px 35px;align-items:start}
.split-center{min-width:0;display:flex;flex-direction:column;align-items:center}.split-field-heading{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px;font-size:12px;margin-bottom:12px}.split-field-heading .eyebrow{margin:0}
.split-field{width:min(100%,max(360px,calc(100vh - 400px)),640px);height:auto;aspect-ratio:1;display:block;overflow:visible;stroke:none;border:1px solid #23516e;border-radius:24px;background:radial-gradient(circle,#173d59aa,#08223355 70%);user-select:none;cursor:crosshair}
.split-source{fill:#c4dfed;stroke:#e0f3ff;stroke-width:2;stroke-linejoin:round;filter:drop-shadow(0 14px 20px #0003)}.split-preview{stroke:var(--cyan);stroke-width:2.5;stroke-dasharray:7 5;pointer-events:none}.split-cut{stroke:#fff;stroke-width:2;transition:opacity .4s}.revealed .split-cut{opacity:0}
.split-piece{transition:transform .45s cubic-bezier(.2,.7,.2,1);transform:translate(0,0)}.split-piece polygon{stroke-width:1.5;stroke:#ddf5ff}.split-piece-0{fill:#16a9e8}.split-piece-1{fill:#ed467e}.revealed .split-piece{transform:translate(var(--part-x),var(--part-y))}.split-part-label{fill:#fff;stroke:#082238;stroke-width:1.5px;stroke-linejoin:round;paint-order:stroke;font-size:25px;font-weight:700;font-variant-numeric:tabular-nums;text-anchor:middle;dominant-baseline:middle;opacity:0;transition:opacity .3s .2s}.revealed .split-part-label{opacity:1}
.split-turn{text-align:center;color:var(--muted);margin:16px 0;font-size:15px}.split-center>.primary{min-height:48px;font-size:16px;min-width:245px}.split-right{display:grid;gap:16px}.split-right h2{font-size:19px;margin:10px 0}.split-right p{font-size:14px;line-height:1.65}.split-no-timer{font-size:12px;color:#53c6fc}.split-result>strong{font-size:48px;display:block;line-height:1.2;margin-top:12px;font-variant-numeric:tabular-nums}.split-percentages{display:flex;gap:12px;font-size:22px;font-weight:650}.part-0{color:#28beff}.part-1{color:#ff6694}#split-area{font-size:11px}.split-scale ul{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:11px}.split-scale li{display:flex;justify-content:space-between;gap:12px;font-size:12px;color:var(--muted)}.split-scale li span:first-child{color:#43beff;font-variant-numeric:tabular-nums}.split-pointer-note{font-size:12px!important;margin:0}
#split-players.player-wheel{display:grid;grid-template-columns:1fr;gap:0;max-height:none;overflow:visible;padding:0;perspective:650px}#split-players .player-card{height:78px;min-height:78px;padding:12px 13px 12px 20px;gap:10px;transform-origin:center}#split-players .wheel-previous{transform:scale(.9) rotateX(20deg);opacity:.45}#split-players .wheel-next{transform:scale(.9) rotateX(-20deg);opacity:.45}#split-players .wheel-empty{visibility:hidden}#split-players .player-name{font-size:16px}#split-players .player-distance{font-size:13px}#split-players .player-state{font-size:12px}#split-players .player-number{font-size:27px}
#split-pix{display:flex;height:clamp(260px,32vh,380px);width:100%;margin-top:16px}#split-pix .pix-image-wrap{width:100%;height:100%;flex-basis:100%}#split-pix img{width:100%;height:100%;object-fit:contain}
.split-final{max-width:1140px;margin:25px auto 50px;padding:0 30px;display:grid;grid-template-columns:1.2fr 1fr;gap:55px;align-items:center}.split-final h1{font-size:clamp(28px,3vw,44px);line-height:1.15}.split-final .split-field{width:100%;max-width:520px}.split-final-details{min-width:0}.split-final-details>.primary,.split-final-details>.secondary{width:100%;margin-top:14px;min-height:48px}.split-result-player{border:0;background:none;color:var(--text);font:inherit;text-align:left;min-width:0;overflow-wrap:anywhere;cursor:pointer}.split-result-player[aria-pressed=true]{color:var(--cyan)}
#split-statistics{max-width:1320px}#split-statistics .stats-panel{border:1px solid var(--panel-border);border-radius:var(--panel-radius);background:var(--panel-background);padding:22px 24px;margin-bottom:16px}#split-statistics .stats-tables{gap:16px}#split-statistics h2{font-size:21px;margin:0 0 12px}#split-statistics .metric{display:flex;align-items:center;gap:14px;border:1px solid var(--card-border);border-radius:13px;padding:18px;background:var(--card-background)}#split-statistics .metric strong{display:block;font-size:29px}#split-statistics .metric div>span{font-size:12px;color:var(--muted)}#split-statistics .metric-icon{display:grid;place-items:center;width:44px;height:48px;background:#0d3856;border-radius:12px;color:var(--cyan);flex-shrink:0}#split-search{width:220px;border:1px solid var(--control-border);border-radius:12px;padding:12px;background:#061c2b;color:var(--text)}#split-statistics .players-table button{font:inherit;background:none;color:inherit;border:0;cursor:pointer}.split-stats-note{font-size:12px;line-height:1.6}#split-statistics .players-table{min-width:670px}#split-statistics .training-table{width:100%}
@media(min-width:1700px){.split-game{grid-template-columns:270px minmax(0,1fr) 300px;gap:36px}.split-right p{font-size:16px}.split-scale li{font-size:14px}}
@media(max-width:1150px){.split-game{grid-template-columns:190px minmax(0,1fr) 220px;gap:16px;padding:10px 20px 30px}.split-right .panel{padding:16px}.split-right h2{font-size:17px}.split-right p{font-size:13px}#split-players .player-name{font-size:14px}#split-players .player-card{padding-left:15px;gap:8px}.split-scale li{font-size:11px}}
@media(max-width:850px){.split-game{grid-template-columns:minmax(0,1fr) 225px}.split-left{grid-column:1/-1;display:grid;grid-template-columns:1fr 170px;align-items:center}.split-left>.eyebrow{display:none}#split-pix{height:210px;margin:0}#split-players .player-card{height:65px;min-height:65px}#split-players .player-name{font-size:17px}.split-field{width:100%}.split-scale{display:none}.split-final{gap:25px}#split-statistics .stat-metrics{grid-template-columns:1fr 1fr}.perfect-split .menu-art:before{width:230px;height:230px;top:0}}
@media(max-width:600px){.split-game{display:flex;flex-direction:column;padding:8px 16px 30px;gap:18px}.split-left{display:grid;width:100%;grid-template-columns:minmax(0,1fr) 105px}.split-center,.split-right{width:100%}#split-pix{height:175px}#split-players .player-card{height:56px;min-height:56px;padding:8px 10px}#split-players .player-name{font-size:13px}#split-players .player-number{font-size:21px}#split-players .player-state{font-size:10px}#split-players .player-distance{font-size:11px}.split-field{border-radius:18px}.split-turn{font-size:13px}.split-right{gap:12px}.split-instructions{order:1}.split-pointer-note{order:2}.split-result{order:0}.split-final{display:flex;flex-direction:column;padding:0 16px;margin-top:10px}.split-final>div{width:100%}.split-final h1{font-size:30px}#split-statistics .stats-panel{padding:18px 14px}#split-statistics .metric{gap:9px;padding:12px 9px}#split-statistics .metric strong{font-size:24px}#split-statistics .metric-icon{width:30px;height:40px}#split-statistics .stats-tools{margin-left:0;width:100%}#split-search{width:100%;min-width:0}.perfect-split .menu-art:before{right:10%;top:-20px;width:170px;height:170px}}
@media(prefers-reduced-motion:reduce){.split-piece,.split-part-label,.split-cut{transition:none}}

.split-right:has(#split-result:not([hidden])) .split-instructions{display:none}

/* The target must not move under the pointer during a screen transition. */
.split-game{animation:none}
@media(min-width:851px){.split-field{width:min(100%,calc(100vh - 350px),640px)}.split-turn{margin:10px 0}}
@media(min-width:851px) and (max-height:800px){.split-field{width:min(100%,calc(100vh - 290px))}.split-game{padding-top:8px;padding-bottom:15px}.split-field-heading{margin-bottom:8px}.split-center>.primary{min-height:44px}}
/* Shared entry point, with the same controls, colors and surfaces as both games. */
.hub-open{background:radial-gradient(ellipse at 50% 0,#234e70,transparent 65%),#0b1e2e}
.hub-open .topbar .wordmark,.hub-open .brand-note,.hub-open .games-counter{visibility:hidden}.hub-open .topbar{height:80px}
.game-hub{max-width:1120px;margin:0 auto;padding:12px 32px 40px}.hub-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.hub-heading h1{font-size:clamp(34px,4vw,57px);letter-spacing:-.04em;line-height:1.1;margin:12px 0 18px}.hub-heading p{font-size:19px;margin:0}.hub-heading img{width:130px;height:165px;object-fit:contain;margin-right:36px}.hub-games{display:grid;grid-template-columns:1fr 1fr;gap:24px}.game-choice{display:flex;flex-direction:column;text-decoration:none;color:var(--text);background:var(--panel-background);border:1px solid var(--panel-border);border-radius:var(--panel-radius);padding:22px 28px 25px;transition:border-color .2s,transform .2s,background .2s}.game-choice:hover{border-color:var(--cyan);background:#0c2b43;transform:translateY(-4px)}.game-choice:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}.hub-art{height:190px;display:block;margin-bottom:25px}.hub-art svg{width:100%;height:100%;stroke:#5e9ec4;stroke-width:1.3}.hub-target{fill:var(--pink);stroke:none}.hub-cursor{fill:#e5f4ff;stroke:#6bb9eb;stroke-width:1.5}.hub-split svg path:first-child{fill:#18a9e7;stroke:#72d4ff}.hub-split svg path:nth-child(2){fill:#e9477a;stroke:#ff85aa}.hub-slice{stroke:#d3f3ff!important;stroke-dasharray:4 6;stroke-width:1}.hub-game-name{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:24px;letter-spacing:-.03em}.hub-game-name>span{font-size:25px;color:var(--cyan)}.hub-description{color:#b9d2e6;font-size:16px;line-height:1.5;margin-top:12px}.hub-meta{font-size:12px;color:var(--muted);margin-top:12px}.hub-play{display:flex;justify-content:space-between;align-items:center;margin-top:25px;padding-top:18px;border-top:1px solid var(--panel-border);color:#53c6fc;font-size:14px;font-weight:600}.hub-footnote{text-align:center;margin:25px 0 0;font-size:12px}.hub-open footer{max-width:1120px;margin:auto}
@media(max-width:600px){.hub-open .topbar{height:65px}.game-hub{padding:0 20px 25px}.hub-heading{margin-bottom:22px}.hub-heading h1{font-size:34px}.hub-heading .eyebrow{font-size:10px}.hub-heading p{font-size:14px;max-width:210px}.hub-heading img{width:76px;height:115px;margin:0}.hub-games{grid-template-columns:1fr;gap:16px}.game-choice{padding:18px 21px}.hub-art{height:130px;margin-bottom:15px}.hub-game-name{font-size:22px}.hub-description{font-size:14px}.hub-meta{font-size:11px}.hub-play{margin-top:18px;padding-top:14px}.hub-footnote{line-height:1.7}.hub-open .topbar .wordmark{display:none}}
.split-clock{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px!important;color:var(--muted);font-size:13px}.split-clock strong{color:var(--text);font-size:26px;font-variant-numeric:tabular-nums}.split-clock.urgent strong{color:var(--pink)}
