#own-game { min-height: min(606px, 78vh, 144.4vw - 46px); overflow: visible; background: none; border: 0; scroll-margin-top: 8px; }
.ku { display: flex; flex-direction: column; align-items: center; }
.ku-stage { position: relative; width: min(100%, 420px, calc(78vh * 360 / 520)); aspect-ratio: 360 / 520; overflow: hidden; border-radius: 18px; box-shadow: 0 0 0 3px #2a3a4e, 0 18px 50px rgba(0, 140, 255, 0.22); }
.ku-stage canvas { display: block; width: 100%; height: 100%; touch-action: manipulation; user-select: none; -webkit-user-select: none; }
.ku-stage canvas.ku-live-game { touch-action: none; }
.ku-live { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }

.ku-sound { position: absolute; top: 10px; left: 10px; z-index: 2; display: grid; place-items: center; width: 38px; height: 38px; padding: 0; background: rgba(4, 12, 24, 0.6); border: 2px solid rgba(255, 255, 255, 0.28); border-radius: 50%; color: #fff; cursor: pointer; }

.ku-panel { position: absolute; inset: 0; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: 14px; padding: 13% 20px 20px; background: radial-gradient(circle at 50% 30%, rgba(4, 12, 24, 0.5), transparent 62%); text-align: center; }
.ku-panel[hidden] { display: none; }

.ku-logo { display: flex; flex-direction: column; color: #fff; font-size: clamp(3rem, 15vw, 4.1rem); font-style: italic; font-weight: 900; letter-spacing: -0.02em; line-height: 0.92; text-transform: uppercase; text-shadow: 0 4px 0 #0a4f8a, 0 7px 0 #04233f, 0 12px 22px rgba(0, 0, 0, 0.6); transform: rotate(-4deg); }
.ku-logo span:last-child { color: #ffc454; text-shadow: 0 4px 0 #a15c00, 0 7px 0 #4d2b00, 0 12px 22px rgba(0, 0, 0, 0.6); }
.ku-tip { color: #fff; font-size: 1.02rem; font-weight: 700; text-shadow: 0 2px 6px #000; }

.ku-go { min-width: 200px; padding: 14px 30px 12px; background: linear-gradient(#6ff0a9, #22b86e); border: 0; border-bottom: 7px solid #0d7a46; border-radius: 16px; box-shadow: 0 8px 18px rgba(0, 0, 0, 0.45); color: #04301b; font: italic 900 1.45rem/1.1 var(--font); letter-spacing: 0.01em; text-transform: uppercase; cursor: pointer; animation: ku-beat 1.3s ease-in-out infinite; }
.ku-go:hover { filter: brightness(1.07); }
.ku-go:active { border-bottom-width: 2px; transform: translateY(5px); }
@keyframes ku-beat { 50% { transform: scale(1.05); } }

/* The stadium scoreboard */
.ku-board { width: min(100%, 260px); overflow: hidden; background: #0a1420; border: 4px solid #33465c; border-radius: 16px; box-shadow: 0 8px 0 #0a1420, 0 16px 30px rgba(0, 0, 0, 0.6); }
.ku-board h2 { padding: 7px 8px 5px; background: #ffc454; color: #2e1e00; font-size: 1.05rem; font-style: italic; font-weight: 900; letter-spacing: 0.04em; text-transform: uppercase; }
.ku-final { padding: 6px 0 2px; color: #7fffd0; font-size: 4.3rem; font-weight: 900; line-height: 1; text-shadow: 0 0 18px rgba(127, 255, 208, 0.55); font-variant-numeric: tabular-nums; }
.ku-rows { display: grid; grid-template-columns: 1fr 1fr; padding: 4px 0 10px; color: #9fb0c2; font-size: 0.74rem; font-weight: 700; letter-spacing: 0.04em; text-transform: uppercase; }
.ku-rows b { display: block; color: #fff; font-size: 1.25rem; letter-spacing: 0; }
.ku-record { border-color: #ffc454; animation: ku-win 0.9s ease-in-out 3; }
@keyframes ku-win { 50% { box-shadow: 0 8px 0 #0a1420, 0 0 42px 8px #ffc454; } }

.ku-share { display: flex; gap: 10px; }
.ku-share a { display: grid; place-items: center; min-width: 58px; min-height: 44px; padding: 8px 14px; border-radius: 12px; font-size: 0.92rem; font-weight: 800; text-decoration: none; }
.ku-wa { background: #25d366; box-shadow: 0 4px 0 #128c4b; color: #05321a; }
.ku-x { background: #000; box-shadow: 0 4px 0 #3a4552; color: #fff; }

@media (prefers-reduced-motion: reduce) {
  .ku-go, .ku-record { animation: none; }
}
