/* Fullscreen court: higher specificity deliberately replaces the old modal skin. */
#onlineOverlay.rebel-dialog.palace-online { --ivory:#fff3d8; --red:#c81932; position:fixed; inset:0; padding:0; background:#09090b; backdrop-filter:none; overflow:hidden; }
#onlineOverlay.rebel-dialog.palace-online > .online-panel { container-type:size; position:relative; isolation:isolate; width:100%; height:100dvh; max-width:none; max-height:none; margin:0; padding:0; border:0; border-radius:0; overflow:clip; box-shadow:none; background: #171313 url('./assets/ui/palace-online-bg.webp') center/cover no-repeat; color:var(--ivory); animation:none; }
#onlineOverlay.rebel-dialog.palace-online > .online-panel::before { content:''; position:absolute; inset:0; z-index:-1; pointer-events:none; background:linear-gradient(90deg,#09090b55,transparent 40%,transparent 60%,#09090b55),linear-gradient(0deg,#050506bb,transparent 22%,transparent 80%,#05050655); }
#onlineOverlay.palace-online [hidden], #onlineOverlay.palace-online .hidden { display:none!important; }
#onlineOverlay.rebel-dialog.palace-online button { min-height:36px; border:0; border-radius:0; padding:10px 24px; color:var(--ivory); background:#101014; font-family:'Songti SC','STSong',serif; font-weight:900; font-size:clamp(15px,1.6cqw,24px); text-shadow:none; box-shadow:none; transition:background 140ms,color 140ms,translate 140ms; }
#onlineOverlay.rebel-dialog.palace-online button:is(:hover,:focus-visible):not(:disabled) { color:#0a0a0d; background:#fffaf0; translate:2px -2px; box-shadow:none; text-shadow:none; filter:none; }
#onlineOverlay.rebel-dialog.palace-online button:disabled { background:#18171b; color:#aaa29a; opacity:.75; cursor:not-allowed; }
#onlineOverlay.rebel-dialog.palace-online :is(button,input):focus-visible { outline:3px solid var(--ivory); outline-offset:4px; }
#onlineOverlay.palace-online .palace-header { position:absolute; inset:3% 3% auto; display:flex; align-items:start; justify-content:space-between; gap:20px; z-index:5; }
#onlineOverlay.palace-online .palace-header-actions { display:flex; align-items:center; justify-content:flex-end; gap:16px; flex-shrink:0; }
#onlineOverlay.palace-online .online-mode-choice { margin:0; flex-wrap:nowrap; gap:8px; white-space:nowrap; }
#onlineOverlay.palace-online .online-mode-choice select { min-height:44px; padding:8px 12px; border:1px solid #b7a68a; border-radius:0; background:#101014; color:var(--ivory); font:inherit; }
#onlineOverlay.palace-online.in-room .online-mode-choice { display:none; }
#onlineOverlay.palace-online .palace-title { background:#08080bef; padding:10px 30px 17px 20px; clip-path:polygon(5% 0,100% 0,93% 83%,0 100%); border-bottom:5px solid var(--red); transform:rotate(-4deg); }
#onlineOverlay.palace-online .palace-title small { font:800 clamp(8px,.75cqw,13px)/1.5 system-ui; letter-spacing:.23em; }
#onlineOverlay.rebel-dialog.palace-online h2 { font:900 italic clamp(32px,4cqw,68px)/1.1 'Songti SC',serif; margin:4px 0 0; color:var(--ivory); text-shadow:3px 3px #8b0b20; transform:none; }
#onlineOverlay.palace-online :is(#closeOnlineButton,#leaveOnlineRoomButton) { clip-path:polygon(10% 0,100% 0,92% 100%,0 100%); padding:12px 30px; }
#onlineOverlay.palace-online #leaveOnlineRoomButton { display:none; }
@media(max-width:900px) {
  #onlineOverlay.palace-online .palace-header-actions { flex-direction:column-reverse; align-items:flex-end; gap:8px; }
  #onlineOverlay.palace-online.in-room .palace-header-actions { flex-direction:row; }
  #onlineOverlay.palace-online .online-mode-choice { font-size:12px; }
  #onlineOverlay.palace-online .online-mode-choice select { min-width:112px; }
}
#onlineOverlay.palace-online .room-share { display:none; }
#onlineOverlay.palace-online .palace-entry { position:absolute; top:40%; left:4%; right:4%; display:flex; align-items:center; justify-content:space-between; gap:10%; margin:0; }
#onlineOverlay.palace-online .palace-entry article { width:44%; padding:0; background:none; border:0; }
#onlineOverlay.rebel-dialog.palace-online #createRoomButton { width:100%; min-height:0; font-size:clamp(28px,4.5cqw,76px); background:var(--red); color:var(--ivory); padding:3cqh 2cqw; border-block:3px solid var(--ivory); clip-path:polygon(0 0,100% 8%,95% 89%,5% 100%); transform:rotate(-3deg); }
#onlineOverlay.rebel-dialog.palace-online #createRoomButton:is(:hover,:focus-visible):not(:disabled) { background:#fffaf0; color:#0b0b0e; }
#onlineOverlay.palace-online .palace-host p { display:table; margin:0 auto; padding:7px 22px; font:700 italic clamp(15px,1.8cqw,30px)/1.4 'Songti SC',serif; background:#09090bea; transform:rotate(-3deg); }
#onlineOverlay.palace-online .palace-join { background:#08080bef!important; padding:1.3cqw!important; border-block:2px solid #b7a68a!important; transform:rotate(-3deg); }
#onlineOverlay.palace-online .palace-join label { display:block; font-size:clamp(13px,1.3cqw,20px); margin:0 0 10px 8px; }
#onlineOverlay.palace-online .join-row { display:flex; gap:12px; }
#onlineOverlay.rebel-dialog.palace-online #joinRoomInput { min-width:0; width:100%; height:clamp(44px,6cqh,70px); border:1px solid #c9bda599; border-radius:0; background:#09090c; color:var(--ivory); padding:8px 14px; font-size:clamp(13px,1.5cqw,23px); }
#onlineOverlay.rebel-dialog.palace-online #joinRoomButton,#onlineOverlay.rebel-dialog.palace-online #copyInviteButton { background:var(--ivory); color:#101014; white-space:nowrap; }
#onlineOverlay.palace-online .palace-deck-area { position:absolute; bottom:7%; left:3%; width:32%; z-index:7; }
#onlineOverlay.rebel-dialog.palace-online #palaceDeckToggle { display:flex; gap:14px; width:100%; padding:12px 18px 12px 10px; text-align:left; border-top:1px solid #c2b38c; border-bottom:3px solid var(--red); background:#09090ced; align-items:center; }
#palaceDeckToggle > img { width:clamp(32px,4.5cqw,74px); height:clamp(45px,9cqh,96px); object-fit:cover; object-position:top; border:1px solid #c1b596; transform:rotate(-8deg); }
#palaceDeckToggle > span { min-width:0; flex:1; display:grid; gap:3px; }
#palaceDeckToggle small { font-size:clamp(10px,1cqw,15px); font-weight:500; }
#palaceDeckToggle strong { font-size:clamp(15px,1.65cqw,27px); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#onlineOverlay.palace-online #onlineLoadoutSummary { font:500 clamp(9px,.85cqw,13px)/1.3 system-ui; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; opacity:.7; }
#palaceDeckToggle b { font:300 36px/1 system-ui; }
#onlineOverlay.rebel-dialog.palace-online .online-loadout-bar { position:absolute; bottom:calc(100% + 12px); left:0; width:max(100%,270px); max-width:90vw; display:grid; gap:8px; padding:18px; margin:0; background:#0d0d11f5; border:1px solid #f9edd7; border-left:6px solid var(--red); box-shadow:8px 8px #900e26; }
#onlineOverlay.palace-online .online-loadout-bar > strong { font-size:20px; }
#onlineOverlay.palace-online .online-loadout-bar button { text-align:left; border-bottom:1px solid #ffffff33; }
#onlineOverlay.rebel-dialog.palace-online .online-status { position:absolute; inset:auto 3% 1.7%; max-height:3em; overflow:auto; margin:0; border:0; padding:4px 10px; font:500 clamp(10px,.9cqw,14px)/1.5 system-ui; color:#e4d9c7; background:#09090bbd; }
#onlineOverlay.palace-online.in-room .palace-entry,#onlineOverlay.palace-online.in-room #closeOnlineButton { display:none; }
#onlineOverlay.palace-online.in-room #leaveOnlineRoomButton { display:block; }
#onlineOverlay.palace-online.in-room .palace-title { padding:7px 23px 12px 12px; }
#onlineOverlay.rebel-dialog.palace-online.in-room h2 { font-size:clamp(25px,3cqw,50px); }
#onlineOverlay.palace-online.in-room .room-share { display:flex; align-items:center; gap:18px; margin:0 auto; padding:8px 10px 8px 22px; background:#08080bea; border-block:1px solid #bda77b; font:800 clamp(15px,2cqw,31px)/1.3 'Songti SC',serif; }
#onlineOverlay.palace-online.in-room .online-room-lobby { position:absolute; inset:15% 3% 6%; display:block; padding:0; margin:0; border:0; background:none; }
#onlineOverlay.palace-online .palace-seats { position:absolute; inset:0 0 20%; display:flex; justify-content:space-between; align-items:stretch; }
#onlineOverlay.palace-online .palace-seat { position:relative; width:33%; filter:drop-shadow(5px 5px #08080b); }
#onlineOverlay.palace-online .palace-portrait { position:absolute; inset:0 0 0; background:linear-gradient(135deg,#e4d4b6 0 1%,#111117db 1% 86%,#ad0c28 86% 89%,#111117 89%); clip-path:polygon(0 0,88% 4%,100% 90%,5% 100%,0 45%,6% 38%); border-bottom:4px solid var(--red); }
#onlineOverlay.palace-online .palace-portrait > img { height:115%; width:100%; object-fit:contain; object-position:50% 0; filter:drop-shadow(0 0 15px #000); }
#onlineOverlay.palace-online .palace-opponent .palace-portrait { clip-path:polygon(12% 4%,100% 0,94% 40%,100% 46%,95% 100%,0 90%); }
#onlineOverlay.palace-online .palace-opponent .palace-portrait > img { transform:scaleX(-1); }
#onlineOverlay.palace-online .is-empty .palace-portrait > img { filter:brightness(0) drop-shadow(1px 0 0 #d6caaa) drop-shadow(-1px 0 0 #d6caaa); opacity:.8; }
#onlineOverlay.palace-online .palace-nameplate { position:absolute; inset:auto 0 0; padding:13px 25px; background:#08080bf0; border-block:2px solid #d8c8a5; transform:rotate(-3deg); text-align:center; }
#onlineOverlay.palace-online .palace-nameplate strong { display:block; font:900 clamp(23px,3cqw,48px)/1.2 'Songti SC',serif; }
#onlineOverlay.palace-online .palace-nameplate span { display:block; margin-top:6px; font-size:clamp(12px,1.2cqw,19px); }
#onlineOverlay.palace-online .palace-opponent .palace-nameplate { transform:rotate(3deg); }
#onlineOverlay.palace-online .palace-duel-mark { align-self:center; font-size:5cqw; color:#f3dfb3; text-shadow:0 3px 10px #000; }
#onlineOverlay.palace-online .palace-stamp { position:absolute; left:7%; bottom:25%; border:5px double #ec1238; padding:2px 15px; color:#ff2548; background:#09090be8; transform:rotate(-12deg); font:900 clamp(29px,4cqw,65px)/1.2 'Songti SC',serif; animation:palace-stamp 260ms cubic-bezier(.2,1,.3,1) both; }
#onlineOverlay.palace-online .palace-ready-area { position:absolute; bottom:1%; left:37%; width:30%; display:grid; justify-items:stretch; text-align:center; gap:8px; }
#onlineOverlay.palace-online #palaceReadyStatus { color:var(--ivory); font-size:clamp(12px,1.3cqw,21px); text-shadow:0 2px 8px #000; }
#onlineOverlay.rebel-dialog.palace-online #onlineReadyButton { font:900 italic clamp(24px,3cqw,46px)/1.1 'Songti SC',serif; padding:12px 26px; background:var(--red); color:var(--ivory); clip-path:polygon(6% 0,100% 0,94% 100%,0 100%); min-height:48px; }
#onlineOverlay.rebel-dialog.palace-online #onlineReadyButton:is(:hover,:focus-visible):not(:disabled) { color:#09090b; background:#fffaf0; }
#onlineOverlay.rebel-dialog.palace-online.self-ready #onlineReadyButton { background:#111116e8; font-size:clamp(15px,1.6cqw,25px); }
#onlineOverlay.rebel-dialog.palace-online #onlineReadyButton:disabled { background:#18171bea; color:#aaa29a; font-size:clamp(14px,1.7cqw,28px); }
#onlineOverlay.palace-online .palace-accessible { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
#onlineOverlay.palace-online .palace-transition { position:absolute; inset:-30%; pointer-events:none; z-index:20; background:#c41230; opacity:0; transform:translateX(-130%) skewX(-25deg); }
#onlineOverlay.palace-online.room-enter .palace-transition { animation:palace-slash 450ms ease both; }
#onlineOverlay.palace-online:not(.hidden) .palace-title { animation:palace-title-in 300ms ease both; }
#onlineOverlay.palace-online .opponent-arrives { animation:palace-opponent-in 400ms cubic-bezier(.2,.9,.2,1) both; }
.palace-vs { position:fixed; inset:0; z-index:90; display:grid; place-content:center; text-align:center; pointer-events:none; color:#fff3d8; background:linear-gradient(125deg,#09090bf0 0 38%,#b9112eea 38% 65%,#09090bf0 65%); animation:palace-vs-in 1100ms both; }
.palace-vs.hidden { display:none; }
.palace-vs strong { font:900 italic clamp(100px,22vw,290px)/1 Georgia,serif; text-shadow:8px 8px #09090b; }
.palace-vs span,.palace-vs small { font:900 24px/1.5 'Songti SC',serif; letter-spacing:.3em; }
@keyframes palace-slash { 0%{opacity:1;transform:translateX(-130%) skewX(-25deg)} 45%{opacity:1;transform:translateX(0) skewX(-25deg)} 100%{opacity:1;transform:translateX(130%) skewX(-25deg)} }
@keyframes palace-stamp { from{opacity:0;scale:1.8} to{opacity:1;scale:1} }
@keyframes palace-opponent-in { from{opacity:0;translate:70px 0} to{opacity:1;translate:0 0} }
@keyframes palace-title-in { from{opacity:0;translate:-30px 0} to{opacity:1;translate:0 0} }
@keyframes palace-vs-in { 0%{opacity:0;translate:-15% 0} 15%,75%{opacity:1;translate:0 0} 100%{opacity:0;translate:15% 0} }
@media(max-height:500px) { #onlineOverlay.palace-online .palace-header{inset:2% 2% auto;gap:8px} #onlineOverlay.palace-online .palace-title small{display:none} #onlineOverlay.palace-online.in-room .room-share{gap:7px;padding:4px 8px;font-size:15px} #onlineOverlay.rebel-dialog.palace-online button{padding:7px 15px} #onlineOverlay.palace-online .palace-deck-area{width:34%;bottom:9%} #onlineOverlay.palace-online.in-room .online-room-lobby{inset:17% 2% 7%} #onlineOverlay.palace-online .palace-seats{bottom:24%} #onlineOverlay.palace-online .palace-nameplate{padding:6px 10px} #onlineOverlay.palace-online .palace-nameplate strong{font-size:23px} #onlineOverlay.palace-online .palace-nameplate span{margin-top:2px;font-size:11px} #onlineOverlay.palace-online .palace-ready-area{bottom:2%;gap:3px;left:38%;width:28%} #onlineOverlay.rebel-dialog.palace-online #onlineReadyButton{min-height:36px;padding:8px;font-size:25px} #onlineOverlay.palace-online #palaceDeckToggle{padding:6px;gap:7px} #onlineOverlay.palace-online #onlineLoadoutSummary{display:none} #onlineOverlay.palace-online .online-loadout-bar{padding:10px;gap:4px} }
@media(max-width:650px) { #onlineOverlay.palace-online .palace-title small{display:none} #onlineOverlay.palace-online .palace-header{gap:4px} #onlineOverlay.palace-online.in-room h2{font-size:22px} #onlineOverlay.palace-online.in-room .room-share{font-size:12px;gap:4px;padding:4px} #onlineOverlay.rebel-dialog.palace-online button{font-size:12px;padding:7px 10px} #onlineOverlay.palace-online .palace-nameplate strong{font-size:19px} #onlineOverlay.palace-online #palaceDeckName{font-size:12px} #onlineOverlay.palace-online .palace-join label{margin-bottom:4px} }
@media(prefers-reduced-motion:reduce) { #onlineOverlay.palace-online *, .palace-vs { animation:none!important;transition:none!important; } #onlineOverlay.palace-online .palace-transition,.palace-vs{display:none!important} }
.salon-reduced-motion #onlineOverlay.palace-online *, .salon-reduced-motion .palace-vs { animation:none!important;transition:none!important; }
.salon-reduced-motion #onlineOverlay.palace-online .palace-transition,.salon-reduced-motion .palace-vs{display:none!important}
/* The portrait is framed as a half-body leader, matching the approved room composition. */
#onlineOverlay.palace-online .palace-portrait > img { width:130%; max-width:none; height:170%; margin-left:-15%; }
#onlineOverlay.palace-online .palace-seat::before { content:''; position:absolute; inset:-6px; background:linear-gradient(135deg,#fff0d5 0 8%,#b8132d 8% 11%,#fff0d5 11% 46%,#b8132d 46% 54%,#fff0d5 54% 92%,#b8132d 92%); clip-path:polygon(0 0,88% 4%,100% 90%,5% 100%,0 45%,6% 38%); }
#onlineOverlay.palace-online .palace-opponent::before { clip-path:polygon(12% 4%,100% 0,94% 40%,100% 46%,95% 100%,0 90%); }
#onlineOverlay.palace-online #roomCodeText { font:inherit; letter-spacing:.08em; }
#onlineOverlay.rebel-dialog.palace-online #createRoomButton { font-style:italic; text-shadow:3px 3px #09090b; background-image:repeating-linear-gradient(120deg,transparent 0 4px,#08080b13 4px 5px); clip-path:polygon(0 0,100% 8%,93% 77%,97% 72%,90% 94%,5% 100%,7% 88%); }
#onlineOverlay.rebel-dialog.palace-online #createRoomButton:is(:hover,:focus-visible):not(:disabled) { text-shadow:none; }
#onlineOverlay.palace-online.in-room .room-share { flex-direction:row; flex-wrap:nowrap; flex-shrink:0; white-space:nowrap; }
@media(max-height:500px) { #onlineOverlay.palace-online.in-room .palace-header .palace-title{max-width:28%;padding:5px 12px 8px 7px} #onlineOverlay.palace-online.in-room .room-share{font-size:13px} #onlineOverlay.rebel-dialog.palace-online #copyInviteButton{font-size:13px;min-height:30px;padding:6px 10px} #onlineOverlay.palace-online #leaveOnlineRoomButton{font-size:13px;padding:9px 17px;min-height:30px} }
@media(max-width:650px) { #onlineOverlay.palace-online.in-room .room-share{font-size:10px;letter-spacing:0;gap:2px} #onlineOverlay.rebel-dialog.palace-online #copyInviteButton{font-size:11px;padding:5px 7px} #onlineOverlay.palace-online.in-room h2{font-size:19px} #onlineOverlay.palace-online #leaveOnlineRoomButton{font-size:11px;padding:8px 13px} }

#onlineOverlay.palace-online.scene-enter:not(.room-enter) .palace-transition { animation:palace-slash 380ms ease both; }
#onlineOverlay.palace-online .join-row { flex-direction:row; flex-wrap:nowrap; align-items:stretch; }
#onlineOverlay.palace-online #joinRoomButton { flex:0 0 auto; }
#onlineOverlay.rebel-dialog.palace-online #palaceDeckToggle:is(:hover,:focus-visible):not(:disabled) { background:#fffaf0; color:#0a0a0d; }

/* Recovery is a secondary action; keep the main ready/reconnect control reachable. */
#onlineOverlay.palace-online #resumeOnlineSessionButton { position:absolute; top:27%; left:50%; transform:translateX(-50%); white-space:nowrap; }
#onlineOverlay.palace-online #resumeOnlineSessionButton[hidden] { display:none; }
#onlineOverlay.palace-online #endOnlineRoomButton { min-height:30px; padding:4px 10px; font-size:11px; background:transparent; color:#d4beb5; border:0; box-shadow:none; }
#onlineOverlay.palace-online #endOnlineRoomButton:hover { background:#fff; color:#111; }
#onlineOverlay.palace-online.room-offline #onlineReadyButton { display:none; }

/* Solo battle entry shares the palace palette, but never covers a live timer. */
.solo-versus { position:fixed; inset:0; width:100%; height:100dvh; max-width:none; max-height:none; margin:0; padding:0; border:0; overflow:hidden; z-index:1100; color:#fff3d8; background:linear-gradient(115deg,#09090beb 0 46%,#9f102ada 46% 55%,#09090bdc 55%),url('./assets/ui/palace-online-bg.webp') center/cover; }
.solo-versus[hidden] { display:none!important; }
.solo-versus::backdrop { background:#09090b; }
.solo-versus > header { position:absolute; top:max(5%,env(safe-area-inset-top)); left:5%; right:5%; z-index:3; font:900 italic clamp(22px,4vw,52px)/1.2 'Songti SC',serif; border-bottom:2px solid #bd1731; padding-bottom:10px; }
.solo-versus header small { float:right; font:700 12px/2 system-ui; letter-spacing:.15em; }
.solo-seat { position:absolute; top:15%; bottom:16%; width:39%; margin:0; overflow:hidden; }
.solo-self { left:5%; --seat-enter:-65vw; }
.solo-enemy { right:5%; --seat-enter:65vw; }
.solo-seat img { width:100%; height:100%; object-fit:contain; object-position:center bottom; filter:drop-shadow(8px 5px 0 #0009); }
.solo-seat:not(.has-cutout) img { width:75%; margin-inline:12.5%; object-fit:cover; object-position:top; clip-path:polygon(8% 0,100% 0,92% 100%,0 100%); }
.solo-seat > div { position:absolute; bottom:0; left:0; right:0; padding:12px 7%; background:#0a090cec; border-bottom:4px solid #c81932; transform:skew(-5deg); }
.solo-seat small { display:block; color:#dbcab3; font:600 12px/1.5 system-ui; }
.solo-seat strong { display:block; font:900 clamp(18px,2.7vw,40px)/1.3 'Songti SC',serif; }
.solo-vs-mark { position:absolute; z-index:2; left:50%; top:46%; transform:translate(-50%,-50%) rotate(-9deg); font:900 italic clamp(70px,15vw,210px)/1 Georgia,serif; text-shadow:6px 6px #9f102a,-3px -3px #09090b; }
.solo-versus > footer { position:absolute; bottom:max(5%,env(safe-area-inset-bottom)); left:5%; right:5%; display:flex; align-items:center; justify-content:space-between; font:600 12px/1.4 system-ui; gap:12px; }
.solo-versus footer button { min-height:36px; padding:9px 22px; border:1px solid #fff3d8; border-radius:0; background:#b9112e; color:#fff3d8; font:800 12px/1.4 system-ui; cursor:pointer; }
.solo-versus footer button:is(:hover,:focus-visible) { background:#fffaf0; color:#09090b; outline:2px solid #fff3d8; outline-offset:3px; }
.battle-entry-active .game-shell { visibility:hidden!important; pointer-events:none!important; }
.solo-versus:not(.is-playing) :is(.solo-seat,.solo-vs-mark) { visibility:hidden; }
.solo-versus.is-playing .solo-seat { animation:solo-seat-in 650ms cubic-bezier(.16,1,.3,1) both; }
.solo-versus.is-playing .solo-vs-mark { animation:solo-vs-hit 600ms 180ms cubic-bezier(.16,1,.3,1) both; }
@keyframes solo-curtain-in { from { clip-path:polygon(0 0,0 0,0 100%,0 100%); } to { clip-path:polygon(0 0,100% 0,100% 100%,0 100%); } }
@keyframes solo-seat-in { from { translate:var(--seat-enter) 0; } to { translate:0 0; } }
@keyframes solo-vs-hit { from { opacity:0; scale:1.8; } to { opacity:1; scale:1; } }
@media (max-height:450px) { .solo-versus > header { font-size:22px; padding-bottom:5px; top:3%; } .solo-seat { top:17%; bottom:19%; } .solo-seat > div { padding:5px 7%; } .solo-seat strong { font-size:18px; } .solo-seat small { font-size:10px; } .solo-versus > footer { bottom:3%; } }
@media(prefers-reduced-motion:reduce) { .solo-versus, .solo-versus * { animation:none!important; } }
.salon-reduced-motion .solo-versus, .salon-reduced-motion .solo-versus * { animation:none!important; }

.solo-versus.is-leaving .solo-seat { animation:solo-seat-out 560ms cubic-bezier(.55,0,.85,.4) both; }
.solo-versus.is-leaving :is(.solo-vs-mark,header,footer) { animation:solo-label-out 220ms ease both; }
@keyframes solo-seat-out { from { translate:var(--seat-exit-start,0 0); } to { translate:var(--seat-enter) 0; } }
@keyframes solo-label-out { to { opacity:0; } }
