.victory-is-open { overflow: hidden; }
.victory-overlay { position: fixed; inset: 0; z-index: 10000; display: grid; place-items: center; padding: 20px; background: rgba(3,5,12,.9); isolation: isolate; }
.victory-effects { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.victory-card { position: relative; z-index: 1; width: min(620px, 100%); padding: clamp(28px, 7vw, 64px) clamp(18px, 7vw, 54px); overflow: hidden; border: 3px solid #f6c945; border-radius: 12px; color: #fff; text-align: center; background: linear-gradient(180deg, #191d31 0%, #080a12 100%); box-shadow: 0 0 0 6px #080a12, 0 0 0 9px #63a4ff, 0 24px 80px #000; }
.victory-card::before { content: ""; position: absolute; inset: 0; z-index: -1; opacity: .18; background: repeating-linear-gradient(0deg, transparent 0 3px, #fff 4px); pointer-events: none; }
.victory-tag { display: inline-block; margin-bottom: 14px; color: #63e6ff; font: 800 .76rem/1 ui-monospace, monospace; letter-spacing: .18em; text-transform: uppercase; }
.victory-card h2 { margin: 0; color: #f6c945; font: 900 clamp(2rem, 8vw, 4.5rem)/.95 Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif; letter-spacing: .035em; text-shadow: 4px 4px 0 #b52e55, 0 0 24px rgba(246,201,69,.35); animation: victory-pop .55s cubic-bezier(.2,.8,.2,1); }
.victory-subtitle { margin: 16px 0 22px; font: 900 clamp(1.25rem, 5vw, 2rem)/1 ui-monospace, monospace; letter-spacing: .15em; }
.victory-stats { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; margin: 0 0 26px; }
.victory-stats div { min-width: 112px; padding: 10px 14px; border: 1px solid rgba(99,230,255,.45); background: rgba(0,0,0,.35); }
.victory-stats dt { color: #aeb8d0; font: 700 .7rem/1.2 ui-monospace, monospace; letter-spacing: .12em; text-transform: uppercase; }
.victory-stats dd { margin: 5px 0 0; color: #fff; font: 900 1.1rem/1.2 ui-monospace, monospace; }
.victory-replay { min-width: 180px; min-height: 50px; padding: 12px 24px; border: 2px solid #fff; border-radius: 4px; color: #090b13; background: #f6c945; box-shadow: 5px 5px 0 #b52e55; font: 900 1rem/1 ui-monospace, monospace; letter-spacing: .08em; text-transform: uppercase; cursor: pointer; }
.victory-replay:hover { transform: translate(-1px,-1px); box-shadow: 7px 7px 0 #b52e55; }
.victory-replay:focus-visible { outline: 3px solid #63e6ff; outline-offset: 5px; }
@keyframes victory-pop { from { opacity: 0; transform: scale(.65) rotate(-2deg); } 70% { transform: scale(1.06) rotate(1deg); } to { opacity: 1; transform: scale(1); } }
@media (max-width: 520px) { .victory-overlay { padding: 12px; } .victory-card { border-width: 2px; } .victory-stats div { min-width: 90px; flex: 1 1 90px; } }
@media (prefers-reduced-motion: reduce) { .victory-card h2 { animation: none; } .victory-effects { display: none; } }
