.gp-shell{--gp-ui:#f4f4f5;--gp-dim:#a9abb5;--gp-panel:#ffffff0e;--gp-line:#ffffff1a;--gp-red:#e8413a;color:var(--gp-ui);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:radial-gradient(120% 60% at 50% 0,#1c1e26 0%,#0000 60%),#0d0e12;flex-direction:column;font-family:ui-rounded,SF Pro Rounded,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:flex;position:fixed;inset:0;overflow:hidden}.gp-shell button{touch-action:manipulation;font-family:inherit}.gp-top{padding:calc(env(safe-area-inset-top) + 8px) 12px 4px;align-items:center;gap:10px;display:flex}.gp-brand{letter-spacing:-.02em;align-items:center;gap:4px;font-style:italic;font-weight:900;display:flex}.gp-brand-word{font-size:15px}.gp-brand-gp{background:var(--gp-red);border-radius:4px;padding:1px 5px;font-size:11px;transform:skew(-12deg)}.gp-round{min-width:0;color:var(--gp-dim);white-space:nowrap;flex:1;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.gp-round-num{border:1px solid var(--gp-line);color:var(--gp-ui);letter-spacing:.08em;border-radius:999px;padding:2px 6px;font-size:10px}.gp-round-name{text-overflow:ellipsis;overflow:hidden}.gp-top-actions{gap:6px;display:flex}.gp-icon-button{width:34px;height:34px;color:var(--gp-ui);cursor:pointer;background:#ffffff14;border:0;border-radius:50%;place-items:center;font-size:15px;transition:background .15s;display:grid}.gp-icon-button:hover{background:#ffffff29}.gp-info-button{font-size:17px;font-style:italic;font-weight:700;font-family:Georgia,Times New Roman,serif!important}.gp-stage{flex:1;justify-content:center;align-items:center;min-height:0;padding:4px 8px;display:flex;position:relative}.gp-board-frame{width:100%;max-width:720px;height:100%}.gp-board-svg{filter:drop-shadow(0 12px 28px #0000008c);width:100%;height:100%;display:block}.gp-car{transition:transform .2s cubic-bezier(.3,.7,.4,1)}.gp-car-hop{animation:.21s ease-out gp-hop}.gp-car-halo{animation:1.3s ease-in-out infinite gp-halo}.gp-space-flash{pointer-events:none;animation:1s ease-out forwards gp-flash}.gp-callout{pointer-events:none}.gp-callout-rise{animation:2.2s ease-out forwards gp-rise}@keyframes gp-hop{45%{transform:scale(1.2)}}@keyframes gp-halo{0%,to{opacity:.9;transform:scale(.88)}50%{opacity:.25;transform:scale(1.12)}}@keyframes gp-flash{0%{opacity:0}20%{opacity:.8}45%{opacity:.15}65%{opacity:.7}to{opacity:0}}@keyframes gp-rise{0%{opacity:0;transform:translateY(8px)scale(.7)}12%{opacity:1;transform:translateY(0)scale(1.08)}20%{transform:translateY(0)scale(1)}80%{opacity:1;transform:translateY(-6px)}to{opacity:0;transform:translateY(-14px)}}.gp-dock{padding:4px 10px calc(env(safe-area-inset-bottom) + 10px)}.gp-ticker{color:#d4d5db;text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:560px;min-height:2.6em;margin:0 auto 8px;font-size:13px;line-height:1.3;display:-webkit-box;overflow:hidden}.gp-dock-row{grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;max-width:560px;margin:0 auto;display:grid}.gp-player{border:1.5px solid var(--gp-line);background:var(--gp-panel);border-radius:16px;min-width:0;padding:8px 9px;transition:border-color .2s,background .2s,box-shadow .2s}.gp-player-active{border-color:var(--gp-car);background:color-mix(in srgb, var(--gp-car) 16%, transparent);box-shadow:0 0 0 3px color-mix(in srgb, var(--gp-car) 22%, transparent)}.gp-player-head{align-items:center;gap:5px;display:flex}.gp-mini-car{flex:none;width:30px;height:18px}.gp-player-name{white-space:nowrap;align-items:center;gap:4px;min-width:0;font-size:12px;font-weight:800;display:flex;overflow:hidden}.gp-player-cpu{letter-spacing:.06em;background:#ffffff24;border-radius:4px;padding:0 4px;font-size:9px}.gp-player-meter{background:#ffffff1a;border-radius:999px;height:5px;margin:7px 0 5px;overflow:hidden}.gp-player-meter span{border-radius:inherit;background:var(--gp-car);height:100%;transition:width .2s;display:block}.gp-player-status{color:var(--gp-dim);font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:center;gap:4px;font-size:11px;font-weight:700;display:flex}.gp-badge{color:#ff9a8f;letter-spacing:.04em;background:#3b1f1f;border-radius:4px;padding:0 4px;font-size:9px}.gp-badge-sc{color:#ffd23f;background:#3a3212}.gp-die-slot{flex-direction:column;align-items:center;gap:8px;width:112px;display:flex}.gp-prompt{min-height:2.4em;color:var(--gp-dim);text-align:center;font-size:11px;font-weight:700;line-height:1.2}.gp-die{--size:70px;--bevel:calc(var(--size) * .075);--bevel-color:#e2dccf;width:var(--size);height:var(--size);cursor:pointer;perspective:420px;background:0 0;border:0;padding:0;position:relative}.gp-die:before{background:radial-gradient(circle, color-mix(in srgb, var(--gp-glow) 70%, transparent) 0%, transparent 70%);content:"";opacity:0;border-radius:26px;transition:opacity .25s;position:absolute;inset:-10px}.gp-die:disabled{cursor:default}.gp-die:focus-visible{outline:none}.gp-die:focus-visible:before{opacity:.9}.gp-die-inviting{animation:2.6s ease-in-out infinite gp-die-wiggle}.gp-die-inviting:before{animation:1.3s ease-in-out infinite gp-die-glow}.gp-die-toss{width:100%;height:100%;transform-style:preserve-3d;display:block}.gp-die-toss-a{animation:.82s cubic-bezier(.3,.6,.4,1) gp-toss-a}.gp-die-toss-b{animation:.82s cubic-bezier(.3,.6,.4,1) gp-toss-b}.gp-die-cube{width:100%;height:100%;transform-style:preserve-3d;transition:transform .8s cubic-bezier(.2,.75,.25,1);display:block;position:relative}.gp-die-face,.gp-die-core,.gp-die-edge,.gp-die-corner{position:absolute}.gp-die-face{--depth:calc(var(--size) / 2);inset:var(--bevel);backface-visibility:hidden;background:linear-gradient(145deg,#fff 0%,#ece8df 100%);border-radius:2px;place-items:center;display:grid}.gp-die-core,.gp-die-edge,.gp-die-corner{background:var(--bevel-color)}.gp-die-core{--depth:calc(var(--size) / 2 - var(--bevel) * .7);inset:calc(var(--bevel) * .7)}.gp-die-edge{--depth:calc((var(--size) - var(--bevel)) * .7071);inset:var(--bevel)}.gp-die-edge-y{left:calc(50% - var(--bevel) * .7071);right:calc(50% - var(--bevel) * .7071);transform:rotateY(var(--turn)) translateZ(var(--depth))}.gp-die-edge-x,.gp-die-edge-z{top:calc(50% - var(--bevel) * .7071);bottom:calc(50% - var(--bevel) * .7071)}.gp-die-edge-x{transform:rotateX(var(--turn)) translateZ(var(--depth))}.gp-die-edge-z{transform:rotateZ(var(--turn)) rotateY(90deg) translateZ(var(--depth))}.gp-die-corner{--depth:calc((var(--size) / 2 - var(--bevel) * .6667) * 1.7321);inset:calc(50% - var(--bevel) * .8165)}.gp-die-corner-bottom{clip-path:polygon(6.7% 25%,93.3% 25%,50% 100%);transform:rotateY(var(--turn)) rotateX(-35.264deg) translateZ(var(--depth))}.gp-die-corner-top{clip-path:polygon(6.7% 75%,93.3% 75%,50% 0%);transform:rotateY(var(--turn)) rotateX(35.264deg) translateZ(var(--depth))}.gp-die-at-1{transform:translateZ(var(--depth))}.gp-die-at-6{transform:rotateY(180deg) translateZ(var(--depth))}.gp-die-at-2{transform:rotateY(90deg) translateZ(var(--depth))}.gp-die-at-5{transform:rotateY(-90deg) translateZ(var(--depth))}.gp-die-at-3{transform:rotateX(90deg) translateZ(var(--depth))}.gp-die-at-4{transform:rotateX(-90deg) translateZ(var(--depth))}.gp-die-face-grid{grid-template:repeat(3,1fr)/repeat(3,1fr);width:86%;height:86%;display:grid}.gp-pip,.gp-pip-gap{aspect-ratio:1;border-radius:50%;width:68%;margin:auto}.gp-pip{background:radial-gradient(circle at 35% 35%,#4a4a4a 0%,#121212 70%);box-shadow:inset 0 1px 1px #0009}.gp-die-face.gp-die-at-1 .gp-pip{background:radial-gradient(circle at 35% 35%,#ff6159 0%,#b3140d 75%);width:92%}@keyframes gp-toss-a{0%{transform:translateY(0)scale(1)}32%{transform:translateY(-38px)scale3d(1.14,1.14,1.14)}66%{transform:translateY(0)scale3d(.95,.95,.95)}82%{transform:translateY(-7px)scale3d(1.02,1.02,1.02)}to{transform:translateY(0)scale(1)}}@keyframes gp-toss-b{0%{transform:translateY(0)scale(1)}32%{transform:translateY(-38px)scale3d(1.14,1.14,1.14)}66%{transform:translateY(0)scale3d(.95,.95,.95)}82%{transform:translateY(-7px)scale3d(1.02,1.02,1.02)}to{transform:translateY(0)scale(1)}}@keyframes gp-die-wiggle{0%,70%,to{transform:rotate(0)}76%{transform:rotate(-7deg)}82%{transform:rotate(6deg)}88%{transform:rotate(-3deg)}}@keyframes gp-die-glow{0%,to{opacity:.35}50%{opacity:.85}}.gp-overlay{z-index:5;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#08090c80;place-items:center;padding:16px;animation:.25s ease-out both gp-fade;display:grid;position:absolute;inset:0}.gp-card{border:1px solid var(--gp-line);text-align:center;background:#16171df5;border-radius:24px;width:min(100%,360px);padding:22px 18px 18px;animation:.32s cubic-bezier(.2,.9,.3,1.2) both gp-pop;box-shadow:0 24px 60px #0000008c}.gp-kicker{color:var(--gp-dim);letter-spacing:.14em;text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:800}.gp-title{letter-spacing:-.04em;text-transform:none;justify-content:center;align-items:center;gap:8px;margin:0;padding:0;font-size:40px;font-style:italic;font-weight:900;line-height:1;display:flex}.gp-title-gp{background:var(--gp-red);border-radius:8px;padding:2px 9px;font-size:26px;transform:skew(-12deg)}.gp-card-copy{color:#cfd0d6;margin:12px 0 0;font-size:14px;line-height:1.45}.gp-card-cars{color:var(--gp-dim);justify-content:center;align-items:center;gap:10px;margin:14px 0 4px;font-size:12px;font-weight:800;display:flex}.gp-card-cars .gp-mini-car{width:64px;height:38px}.gp-card-actions{grid-template-columns:1fr 1fr;gap:10px;margin-top:16px;display:grid}.gp-button{border:1px solid var(--gp-line);color:var(--gp-ui);cursor:pointer;background:#ffffff12;border-radius:16px;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;font-size:15px;font-weight:800;transition:transform .12s,background .15s;display:flex}.gp-button small{color:#ffffffa6;font-size:11px;font-weight:600}.gp-button:hover{background:#ffffff1f}.gp-button:active{transform:scale(.97)}.gp-button-primary{background:var(--gp-red);border-color:#0000}.gp-button-primary:hover{background:#f2564f}.gp-link-button{color:var(--gp-dim);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;margin-top:14px;padding:4px;font-size:12px;font-weight:700;text-decoration:underline}.gp-flag{width:72px;height:54px;margin:0 auto}.gp-flag-cloth{transform-origin:8px 20px;animation:.9s ease-in-out infinite alternate gp-wave}.gp-win-title{color:var(--gp-car);letter-spacing:-.03em;margin:0;font-size:32px;font-style:italic;font-weight:900}.gp-win-car .gp-mini-car{width:92px;height:56px;margin:6px auto 0;animation:1.4s ease-in-out infinite alternate gp-zoom}@keyframes gp-fade{0%{opacity:0}}@keyframes gp-pop{0%{opacity:0;transform:translateY(16px)scale(.94)}}@keyframes gp-wave{0%{transform:skewY(-4deg)scaleX(.96)}to{transform:skewY(4deg)scaleX(1)}}@keyframes gp-zoom{0%{transform:translate(-8px)}to{transform:translate(8px)}}.gp-sheet-backdrop{z-index:20;background:#00000080;animation:.2s ease-out both gp-fade;position:fixed;inset:0}.gp-sheet{max-width:520px;max-height:84dvh;padding:8px 18px calc(env(safe-area-inset-bottom) + 18px);-webkit-user-select:text;user-select:text;background:#17181d;border-radius:24px 24px 0 0;margin:0 auto;animation:.28s cubic-bezier(.2,.9,.3,1) both gp-sheet-up;position:absolute;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -20px 50px #00000080}.gp-sheet-grip{background:#fff3;border-radius:999px;width:40px;height:5px;margin:0 auto 8px}.gp-sheet-head{justify-content:space-between;align-items:center;display:flex}.gp-sheet-head h2{letter-spacing:-.02em;margin:0;font-size:20px;font-weight:900}.gp-rules{color:#d4d5db;margin:10px 0 0;padding-left:18px;font-size:14px;line-height:1.5;list-style:outside}.gp-rules li+li{margin-top:4px}.gp-sheet-sub{color:var(--gp-dim);letter-spacing:.14em;text-transform:uppercase;margin:18px 0 8px;font-size:11px;font-weight:800}.gp-legend{gap:8px;margin:0;padding:0;list-style:none;display:grid}.gp-legend li{grid-template-columns:40px 1fr;align-items:center;gap:10px;display:grid}.gp-legend strong{color:var(--gp-ui);font-size:14px;display:block}.gp-legend span{color:var(--gp-dim);font-size:13px}.gp-legend-glyph{border-radius:10px;width:40px;height:40px}.gp-legend-ben{background:#f4e18c}.gp-legend-ring{background:#4b4f56}.gp-sheet-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}@keyframes gp-sheet-up{0%{transform:translateY(100%)}}@media (height<=600px){.gp-die{--size:56px}.gp-ticker{-webkit-line-clamp:1;min-height:1.3em}}@media (prefers-reduced-motion:reduce){.gp-car,.gp-die-cube{transition-duration:1ms}.gp-car-hop,.gp-car-halo,.gp-die-inviting,.gp-die-toss-a,.gp-die-toss-b,.gp-flag-cloth,.gp-win-car .gp-mini-car{animation:none}}
