/* Loose, portrait playing cards. Controls stay outside the moving sheets. */
.site-rival-deck .opponent-content{padding:22px 100px 38px;scroll-padding:22px 100px 38px;overflow-x:hidden}
.site-rival-deck .rival-collectible{width:min(350px,100%);padding:0;border:0;background:none;box-shadow:none;display:block;--rival-art-height:clamp(160px,23dvh,220px)}
.site-rival-deck .rival-collectible::after{content:none}
.rival-pile{position:relative;isolation:isolate}
.site-rival-deck .rival-sheet{position:relative;z-index:4;display:grid;gap:12px;padding:16px 14px 18px;border:4px solid var(--brand-ink);border-radius:20px 15px 22px 16px;background:var(--rival-paper,#fff2da);box-shadow:inset 0 0 0 5px var(--rival-accent,#ed8a35),0 6px 0 var(--brand-ink),0 12px 18px #03263333;transform:translate(var(--pile-x,0px),var(--pile-y,0px)) rotate(var(--card-tilt,-1.2deg));transform-origin:50% 70%;--rival-accent:#ed8a35;--rival-paper:#fff2da}
/* Broad round corners, square corners and opposite diagonals alternate in the deck. */
.site-rival-deck .rival-sheet[data-character="classic"]{border-radius:36px;--rival-stage-corners:26px}
.site-rival-deck .rival-sheet[data-character="sir_return"]{--rival-accent:#647e9a;--rival-paper:#eaf0f8;border-radius:3px;--rival-stage-corners:2px}
.site-rival-deck .rival-sheet[data-character="joker"]{--rival-accent:#b27dde;--rival-paper:#f4ebff;border-radius:4px 50px 4px 50px;--rival-stage-corners:3px 36px 3px 36px}
.site-rival-deck .rival-sheet[data-character="goat"]{--rival-accent:#55a89f;--rival-paper:#eaf5ed;border-radius:44px 18px 44px 18px;--rival-stage-corners:32px 12px 32px 12px;outline:1px solid var(--rival-accent);outline-offset:-10px}
.site-rival-deck .rival-sheet[data-character="bull"]{--rival-accent:#e45a43;--rival-paper:#fff0e8;border-radius:2px 14px 2px 14px;--rival-stage-corners:2px 12px 2px 12px}
.site-rival-deck .rival-sheet[data-character="white_geisha"]{--rival-accent:#d97fa3;--rival-paper:#fff0f6;border-radius:48px 48px 22px 22px;--rival-stage-corners:36px 36px 12px 12px}
.site-rival-deck .rival-sheet[data-character="lion"]{--rival-accent:#d8ad36;--rival-paper:#fff5d7;border-radius:46px 4px 46px 4px;--rival-stage-corners:32px 3px 32px 3px}
.site-rival-deck .rival-sheet[data-character="graefin"]{--rival-accent:#8e66b0;--rival-paper:#f1eaf8;border-radius:12px 2px 12px 2px;--rival-stage-corners:8px 2px 8px 2px}
.site-rival-deck .rival-sheet[data-character="carrot"]{--rival-accent:#83ac4d;--rival-paper:#f2f7e5;border-radius:52px 8px 8px 52px;--rival-stage-corners:38px 5px 5px 38px}
.site-rival-deck .rival-sheet[data-character="sirena"]{--rival-accent:#42a9be;--rival-paper:#e8f8fc;border-radius:10px 40px 48px 10px;--rival-stage-corners:6px 28px 36px 6px}
.site-rival-deck .rival-underlay{position:absolute;inset:0;pointer-events:none;overflow:hidden}
.site-rival-deck .rival-leaving{z-index:6}
.site-rival-deck .fighter{grid-template-rows:auto auto;gap:10px}
.site-rival-deck .rival-card-header{justify-content:space-between;gap:12px;padding:0 3px;min-height:36px}
.site-rival-deck .fighter-name{font-size:30px}
.rival-emblem{display:grid;place-items:center;width:38px;height:38px;flex-shrink:0;font:900 28px/1 'Segoe Print',cursive;color:var(--rival-accent);text-shadow:1px 1px 0 var(--brand-ink);rotate:8deg}
.rival-emblem img{display:block;width:27px;height:27px;object-fit:contain}
.site-rival-deck .rival-sheet:not([data-character="classic"]) .rival-emblem{font-size:0;width:40px;height:40px;background-position:center;background-repeat:no-repeat;background-size:contain;border:0}
.site-rival-deck .rival-sheet[data-character="joker"] .rival-emblem{background-image:url('../opponents/emblems/joker.svg?v=2f259604949c')}
.site-rival-deck .rival-sheet[data-character="bull"] .rival-emblem{background-image:url('../opponents/emblems/bull.svg?v=2f259604949c')}
.site-rival-deck .rival-sheet[data-character="lion"] .rival-emblem{background-image:url('../opponents/emblems/lion.svg?v=2f259604949c')}
.site-rival-deck .rival-sheet[data-character="carrot"] .rival-emblem{background-image:url('../opponents/emblems/carrot.svg?v=2f259604949c')}
.site-rival-deck .rival-sheet[data-character="goat"] .rival-emblem{background-image:url('../opponents/emblems/goat.svg?v=2f259604949c')}
.site-rival-deck .rival-sheet[data-character="sir_return"] .rival-emblem{background-image:url('../opponents/emblems/sir_return.svg?v=2f259604949c')}
.site-rival-deck .rival-sheet[data-character="white_geisha"] .rival-emblem{background-image:url('../opponents/emblems/white_geisha.svg?v=2f259604949c')}
.site-rival-deck .rival-sheet[data-character="sirena"] .rival-emblem{background-image:url('../opponents/emblems/sirena.svg?v=2f259604949c')}
.site-rival-deck .rival-sheet[data-character="graefin"] .rival-emblem{background-image:url('../opponents/emblems/graefin.svg?v=2f259604949c')}
.site-rival-deck .rival-sheet[data-character="classic"] .rival-emblem{width:38px;height:38px;border-radius:0;background:none;rotate:0deg}
.site-rival-deck .rival-sheet[data-character="classic"] .rival-emblem img{width:36px;height:36px}
.site-rival-deck .fighter-stage{height:var(--rival-art-height);border-radius:var(--rival-stage-corners,12px 9px 15px 9px);container-type:size}
/* Match the showcase's available silhouette height, including narrow cards.
   Portrait metrics account for transparent padding and keep the feet at 16px. */
.site-rival-deck .fighter-portrait{--figure-height:min(calc(100cqh - 30px),calc((100cqw - 20px)/1.55))}
.site-rival-deck .rival-sheet[data-character="classic"] .fighter-stage::after{content:"";position:absolute;inset:-4px auto auto 12px;width:48px;height:15px;border-radius:1px;background:#fff5c8c9;rotate:-12deg;box-shadow:0 1px 2px #0003}
.site-rival-deck .rival-sheet[data-character="bull"] .fighter-stage{box-shadow:5px 5px 0 var(--rival-accent)}
.site-rival-deck .rival-sheet[data-character="lion"] .rival-card-header{border-bottom:3px double var(--rival-accent);padding-bottom:5px}
.site-rival-deck .rival-sheet[data-character="carrot"] .rival-emblem{rotate:0deg}
.site-rival-deck .rival-sheet[data-character="goat"] .rival-emblem{border:0;border-radius:0;rotate:0deg}
.site-rival-deck .rival-dossier{gap:12px}
.site-rival-deck .rival-intro .rival-quote{position:relative;margin:2px 0 8px;padding:14px 16px 16px;border:2px solid var(--brand-ink);border-radius:16px 10px 16px 5px;background:#fffdf5;color:var(--brand-ink);font-family:var(--font-display);font-size:17px;font-weight:400;line-height:1.4;text-align:center;transform:rotate(-1deg);box-shadow:3px 4px 0 var(--rival-accent)}
.site-rival-deck .rival-intro .rival-quote::before{content:'';position:absolute;left:24px;bottom:-8px;width:13px;height:13px;background:#fffdf5;border-right:2px solid var(--brand-ink);border-bottom:2px solid var(--brand-ink);rotate:45deg}
.site-rival-deck .rival-intro .rival-quote::after{content:none}
.site-rival-deck .trait-columns{gap:9px}
.site-rival-deck .rival-traits{padding:8px 6px}
.site-rival-deck .rival-traits li{font-size:12px;line-height:1.35}
.site-rival-deck .rival-arrow{top:45%;z-index:10}
.rival-pile{touch-action:pan-y pinch-zoom}
.site-rival-deck .rival-swipe-hint{display:none;position:relative;margin:40px 0 0;color:var(--brand-cream);font-size:12px;line-height:1.5;font-weight:800;text-align:center}
.site-rival-deck .rival-arrow .arrow-symbol{width:25px;height:25px;stroke-width:3}
.site-rival-deck .rival-arrow.previous{left:-95px}
.site-rival-deck .rival-arrow.next{right:-95px}
@media(max-width:759px){
  .site-rival-deck .opponent-content{padding:20px 54px 34px;scroll-padding:20px 54px 34px}
  .site-rival-deck .rival-collectible{width:min(350px,100%);--rival-art-height:clamp(175px,25dvh,240px)}
  .site-rival-deck .rival-sheet{padding:13px 10px 16px;gap:10px}
  .site-rival-deck .fighter-name{font-size:25px}
  .site-rival-deck .rival-arrow.previous{left:-49px}
  .site-rival-deck .rival-arrow.next{right:-49px}
  .site-rival-deck .rival-traits li{font-size:11px}
  .site-rival-deck .rival-intro .rival-quote{font-size:16px;padding:13px 12px 15px}
}
@media(max-width:759px),(max-width:950px) and (max-height:540px){
  #app[data-touch="true"] #opponent-screen .rival-swipe-hint{display:block}
}
@media(max-width:420px){
  .site-rival-deck .opponent-content{padding-inline:34px}
  .site-rival-deck .rival-collectible{width:290px;max-width:100%}
  .site-rival-deck .rival-arrow{top:37%}
  .site-rival-deck .rival-arrow.previous{left:-27px}
  .site-rival-deck .rival-arrow.next{right:-27px}
}

.site-rival-deck .rival-sheet[data-character="classic"]{--rival-backdrop:url("/assets/opponents/backgrounds-comic-v2/classic.webp?v=2f259604949c");--card-tilt:-1.2deg;--portrait-height:1.3559322033898304;--portrait-bottom:-0.07062146892655367;--portrait-offset:0.0014124293785310734}
.site-rival-deck .rival-sheet[data-character="joker"]{--rival-backdrop:url("/assets/opponents/backgrounds-comic-v2/joker.webp?v=2f259604949c");--card-tilt:2deg;--portrait-height:1.5434083601286173;--portrait-bottom:-0.08360128617363344;--portrait-offset:-0.003215434083601286}
.site-rival-deck .rival-sheet[data-character="bull"]{--rival-backdrop:url("/assets/opponents/backgrounds-comic-v2/bull.webp?v=2f259604949c");--card-tilt:-2deg;--portrait-height:1.5789473684210527;--portrait-bottom:-0.08552631578947369;--portrait-offset:0.029605263157894735}
.site-rival-deck .rival-sheet[data-character="lion"]{--rival-backdrop:url("/assets/opponents/backgrounds-comic-v2/lion.webp?v=2f259604949c");--card-tilt:1.1deg;--portrait-height:1.708185053380783;--portrait-bottom:-0.09252669039145907;--portrait-offset:-0.07295373665480427}
.site-rival-deck .rival-sheet[data-character="carrot"]{--rival-backdrop:url("/assets/opponents/backgrounds-comic-v2/carrot.webp?v=2f259604949c");--card-tilt:-0.8deg;--portrait-height:1.348314606741573;--portrait-bottom:-0.07303370786516854;--portrait-offset:-0.10252808988764045}
.site-rival-deck .rival-sheet[data-character="goat"]{--rival-backdrop:url("/assets/opponents/backgrounds-comic-v2/goat.webp?v=2f259604949c");--card-tilt:1.6deg;--portrait-height:1.6842105263157894;--portrait-bottom:-0.0912280701754386;--portrait-offset:-0.03859649122807018}
.site-rival-deck .rival-sheet[data-character="sir_return"]{--rival-backdrop:url("/assets/opponents/backgrounds-comic-v2/sir_return.webp?v=2f259604949c");--card-tilt:-1.4deg;--portrait-height:1.4814814814814814;--portrait-bottom:-0.08024691358024691;--portrait-offset:-0.0941358024691358}
.site-rival-deck .rival-sheet[data-character="white_geisha"]{--rival-backdrop:url("/assets/opponents/backgrounds-comic-v2/white_geisha.webp?v=2f259604949c");--card-tilt:0.8deg;--portrait-height:1.4457831325301205;--portrait-bottom:-0.0783132530120482;--portrait-offset:0.061746987951807226}
.site-rival-deck .rival-sheet[data-character="sirena"]{--rival-backdrop:url("/assets/opponents/backgrounds-comic-v2/sirena.webp?v=2f259604949c");--card-tilt:-0.7deg;--portrait-height:1.6724738675958188;--portrait-bottom:-0.09059233449477352;--portrait-offset:-0.11672473867595819}
.site-rival-deck .rival-sheet[data-character="graefin"]{--rival-backdrop:url("/assets/opponents/backgrounds-comic-v2/graefin.webp?v=2f259604949c");--card-tilt:1.3deg;--portrait-height:1.4814814814814814;--portrait-bottom:-0.08024691358024691;--portrait-offset:-0.09104938271604938}