[hidden]{display:none!important}.asset-loading{position:fixed;inset:0;z-index:2147480001;display:grid;place-items:center;background:#07090ff5;color:#f7f2ff;padding:24px;text-align:center}.loading-card{width:min(520px,90vw);padding:30px;border:1px solid #9973c9;background:linear-gradient(135deg,#191023,#07130c);box-shadow:0 0 55px #743ab633}.loading-card h2,.clash-dialog h2{font:clamp(25px,4vw,40px) Impact,sans-serif;letter-spacing:2px}.loading-card progress{width:100%;height:14px;accent-color:#8bd94e}.loading-card p{line-height:1.5}.clash-dialog{width:min(580px,92vw);max-height:88dvh;overflow:auto;background:#0c0b12;color:#fff;border:1px solid #9371c5;padding:28px;box-shadow:0 0 60px #682f9f44}.clash-dialog::backdrop{background:#05060ad9}.clash-dialog label{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0;color:#d9cfeb}.clash-dialog select,.clash-dialog button{font:inherit;min-height:44px;color:#fff;background:#23152f;border:1px solid #7955a5;padding:10px 15px}.clash-dialog select{min-width:180px}.clash-dialog-actions{display:grid;gap:10px;margin-top:22px}.clash-dialog button:first-child{background:#29431b;border-color:#91ce50}.clash-dialog :focus-visible{outline:3px solid #9ade5d;outline-offset:3px}.options-note,.clash-dialog .menu-hint{color:#bbb1ce;font-size:13px;line-height:1.5}.game-screen-hosted{overflow:hidden!important}.game-screen-hosted> :not(iframe[data-system-clash-screen]){visibility:hidden!important}@media(max-width:450px){.clash-dialog{padding:18px}.clash-dialog label{display:grid;gap:6px}.clash-dialog select{width:100%}}

/* The same authored control plate across match, pause and title surfaces. */
.title-modes button,.selection-actions button,.enter-arena,.tournament-actions button,.pause-options button,.match-menu-actions button,.menu-actions button,dialog button{background-image:url('assets/ui/menu-plate.webp');background-size:100% 100%;background-repeat:no-repeat}

.title-modes button,.selection-actions button,.enter-arena,.pause-options button,.match-menu-actions button,.clash-dialog-actions button,.demo-header button,.demo-toolbar button,dialog button{border:0;background-color:transparent;border-radius:0;box-shadow:none;background-image:url('assets/ui/menu-plate.webp');background-size:100% 100%;background-repeat:no-repeat}
.title-modes button:hover,.clash-dialog button:hover{background-color:transparent;filter:brightness(1.22)}
.loading-card,.clash-dialog,#pause-menu,#controls-dialog{border:15px solid transparent;border-image:url('assets/ui/menu-plate.webp') 35 55 fill stretch;background:#08090ceb;box-shadow:0 22px 65px #0009}
.clash-dialog select,.stage-choice select{border:1px solid #8b65ae;background:#100c16 url('assets/ui/announcement-art.webp') center/100% 100% no-repeat;color:#fff}
.loading-card progress{appearance:none;border:0;background:transparent url('assets/ui/hud-rail-p1-art.webp') center/100% 100% no-repeat;padding:4px;height:24px}
.loading-card progress::-webkit-progress-bar{background:#08090c}
.loading-card progress::-webkit-progress-value{background:linear-gradient(90deg,#ba71ee,#b7f668)}

#demo-start,#start-fight,.ready-play-control,.demo-start{border:0;background:transparent url('assets/ui/menu-plate.webp') center/100% 100% no-repeat;box-shadow:none}

/* Slow signal drift only while a settings panel is open; no extra render loop. */
.clash-dialog[open],#pause-menu[open],#controls-dialog[open]{background-image:radial-gradient(ellipse at 15% 15%,#7c429a18,transparent 58%),radial-gradient(ellipse at 85% 85%,#719a4314,transparent 55%),linear-gradient(120deg,#100c17f7,#080b0ff7);background-size:130% 130%,130% 130%,100% 100%;animation:settings-signal-drift 14s ease-in-out infinite alternate}
@keyframes settings-signal-drift{from{background-position:0% 0%,100% 100%,0 0}to{background-position:100% 50%,0% 50%,0 0}}
body.motion-reduced .clash-dialog,body.motion-reduced #pause-menu,body.motion-reduced #controls-dialog{animation:none}
@media(prefers-reduced-motion:reduce){.clash-dialog,#pause-menu,#controls-dialog{animation:none!important}}
@media(pointer:coarse){.clash-dialog[open],#pause-menu[open],#controls-dialog[open]{animation-duration:20s}}