@font-face {
  font-family: 'Puerul Display';
  src: local('Impact');
  font-display: swap;
}

:root {
  color-scheme: dark;
  --background: #071324;
  --surface: #0d1d33;
  --text: #f7f9fc;
  --muted: #a9b5c6;
  --line: #28384d;
  --yellow: #ffe145;
  --sky: #83ceef;
  --display: 'Puerul Display', Impact, 'Arial Narrow', sans-serif;
  font-family: Inter, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  font-synthesis: none;
  background: var(--background);
  color: var(--text);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 1.5rem; }
body { margin: 0; }
a { color: inherit; text-decoration: none; }
a:focus-visible { outline: 3px solid var(--sky); outline-offset: 6px; border-radius: 2px; }
::selection { color: var(--background); background: var(--yellow); }
.wrap { width: min(1240px, calc(100% - 96px)); margin-inline: auto; }
.skip-link { position: fixed; top: -8rem; left: 1rem; z-index: 10; padding: 1rem; color: var(--background); background: var(--yellow); }
.skip-link:focus { top: 1rem; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.site-header { border-bottom: 1px solid var(--line); }
.header-inner { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 2rem; }
.wordmark { display: inline-block; font-size: 2.65rem; line-height: 1; font-weight: 950; letter-spacing: -0.075em; font-style: italic; }
.wordmark span { color: var(--yellow); }
.header-note { color: var(--muted); font-size: .75rem; letter-spacing: .18em; font-weight: 650; }
.nav-link { display: flex; align-items: center; gap: 1.25rem; font-size: .875rem; font-weight: 650; min-height: 44px; }
.nav-link span { color: var(--yellow); font-size: 1.5rem; }
.nav-link:hover, .footer-links a:hover { color: var(--yellow); }

.hero { display: grid; grid-template-columns: 1fr 1.05fr; align-items: center; column-gap: 3rem; padding: 28px 0; }
.eyebrow { display: flex; align-items: center; gap: .65rem; margin: 0 0 1.3rem; font-size: .75rem; font-weight: 750; letter-spacing: .065em; }
.stripe { display: inline-block; flex-shrink: 0; width: 17px; height: 7px; background: linear-gradient(90deg, var(--yellow) 50%, var(--sky) 50%); transform: skewX(-20deg); }
h1 { font-family: var(--display); font-weight: 900; font-size: clamp(2.6rem, 4.4vw, 4.1rem); line-height: 1.08; letter-spacing: -.02em; margin: 0; }
h1 span { color: var(--yellow); }
.hero-description { margin: 1.5rem 0 1.1rem; color: var(--muted); font-size: 1rem; line-height: 1.6; }
.text-link { display: inline-flex; align-items: center; gap: 1.8rem; min-height: 44px; font-size: .875rem; font-weight: 650; border-bottom: 1px solid #69757f; }
.text-link span { color: var(--yellow); font-size: 1.25rem; transition: transform 160ms ease; }
.text-link:hover { color: var(--yellow); border-color: var(--yellow); }
.text-link:hover span { transform: translateY(3px); }
.duo { margin: 0; position: relative; min-width: 0; transform: rotate(-1deg); }
.duo::before { content: ''; position: absolute; z-index: -1; top: -9px; right: -9px; width: 43%; height: 55%; background: var(--yellow); }
.duo-photo { position: relative; aspect-ratio: 2.65; background: var(--surface); overflow: hidden; border: 1px solid #3b5066; }
.duo-photo img { width: 100%; height: 100%; display: block; object-fit: cover; object-position: 46% 43%; }
.photo-label { position: absolute; top: 1rem; left: 1rem; padding: .4rem .55rem; font-size: .75rem; font-weight: 800; letter-spacing: .13em; background: var(--background); }
.duo-caption { display: grid; grid-template-columns: 1fr 1fr; column-gap: .5rem; padding: 1.05rem .8rem; border: 1px solid var(--line); border-top: 0; background: var(--surface); font-size: .75rem; letter-spacing: .09em; font-weight: 750; }
.duo-caption span { display: flex; align-items: center; gap: .6rem; }
.duo-caption span:last-child { justify-content: flex-end; }
.duo-caption i { width: 6px; height: 16px; display: inline-block; transform: skewX(-15deg); flex-shrink: 0; }
.gaston-mark { background: var(--sky); }
.davoo-mark { background: var(--yellow); }

.games-section { padding: 27px 0 43px; border-top: 1px solid var(--line); }
.section-heading { display: flex; align-items: center; justify-content: space-between; gap: 1rem; margin-bottom: 1.25rem; }
h2 { font-family: var(--display); font-size: 1.8rem; letter-spacing: .01em; margin: 0; }
.section-kicker { font-size: .75rem; letter-spacing: .13em; color: var(--muted); }
.empty-state { display: flex; align-items: center; gap: 2rem; position: relative; padding: 1.7rem 2rem; background: var(--surface); border: 1px solid var(--line); border-left: 3px solid var(--yellow); }
.empty-number { font-family: var(--display); color: #405572; font-size: 4.9rem; line-height: 1; letter-spacing: -.02em; }
.empty-copy { max-width: 650px; }
.status-label { margin: 0 0 .6rem; font-size: .75rem; font-weight: 750; letter-spacing: .12em; color: var(--yellow); }
h3 { font-size: 1.375rem; letter-spacing: -.02em; margin: 0 0 .45rem; line-height: 1.3; }
.empty-copy > p:last-child { color: var(--muted); font-size: 1rem; line-height: 1.55; margin: 0; }
.empty-plus { color: #5b708b; font-size: 2.5rem; font-weight: 250; margin-left: auto; padding-left: 1.5rem; }
.game-catalog { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; }
[hidden] { display: none !important; }
.game-card { display: flex; flex-direction: column; align-items: flex-start; gap: .5rem; border: 1px solid var(--line); background: var(--surface); padding: 1.2rem; transition:border-color .15s; }
.game-card:hover { border-color:#68819d; }
.card-top { display:flex;align-items:center;justify-content:space-between;width:100%;margin-bottom:.6rem; }
.card-icon { display:flex;align-items:center;justify-content:center;min-width:52px;min-height:48px;color:var(--yellow);font-size:1.8rem;font-weight:850;letter-spacing:-.03em; }
.card-number { color:#69809a;font-size:.8rem;font-variant-numeric:tabular-nums; }
.game-card h3 { margin-bottom:0; }
.game-card .status-label { color:var(--sky);font-size:.75rem; }
.game-card a { min-height:44px;display:flex;align-items:center; }
.home-session { font-size:.875rem;color:var(--yellow);margin:0 0 1rem; }
.game-card p { margin: 0; color: var(--muted); font-size: 1rem; line-height: 1.5; }
.game-card a { margin-top: auto; padding-top: .75rem; color: var(--yellow); font-weight: 650; }

.site-footer { border-top: 1px solid var(--line); padding-block: 1.9rem 1.4rem; display: grid; grid-template-columns: 1fr auto; gap: 1.3rem 2rem; }
.footer-brand { display: flex; align-items: center; gap: 1.5rem; }
.wordmark-small { font-size: 1.6rem; }
.footer-brand p { margin: 0; color: var(--muted); font-size: .8125rem; line-height: 1.5; max-width: 355px; }
.footer-links { display: flex; align-items: center; gap: 1.5rem; }
.footer-links a { display: flex; align-items: center; gap: .65rem; font-size: .875rem; min-height: 44px; }
.footer-links span[aria-hidden] { color: var(--muted); }
.footer-note { grid-column: 1 / -1; color: var(--muted); font-size: .75rem; margin: 0; }

@media (min-width: 1600px) { .hero { column-gap: 5rem; } }
@media (max-width: 1000px) {
  .wrap { width: calc(100% - 64px); }
  .hero { column-gap: 2.5rem; grid-template-columns: .85fr 1.15fr; }
  .eyebrow { font-size: .75rem; letter-spacing: 0; gap: .4rem; }
  .duo-photo { aspect-ratio: 1.5; }
  .duo-caption { font-size: .75rem; letter-spacing: 0; padding: .9rem .6rem; }
  .duo-caption span { gap: .4rem; }
  .empty-state { gap: 1.5rem; }
}
@media (max-width: 700px) {
  .wrap { width: calc(100% - 40px); }
  .header-inner { min-height: 76px; gap: 1rem; flex-wrap:wrap; padding-block:.7rem; }
  .wordmark { font-size: 2.15rem; }
  .header-note { display: none; }
  .hero { grid-template-columns: 1fr; row-gap: 1rem; padding: 24px 0; }
  .hero-copy { position: relative; }
  .eyebrow { margin-bottom: 1.2rem; font-size: .75rem; letter-spacing: .035em; }
  h1 { font-size: clamp(2.55rem, 10.5vw, 4.5rem); line-height: 1.1; }
  .hero-description { margin: 1rem 0 .4rem; }
  .hero-description br { display: none; }
  .text-link { margin-top: .2rem; }
  .duo { margin: .2rem 5px 0 2px; }
  .duo-photo { aspect-ratio: 2; }
  .duo-caption { padding: .85rem .7rem; letter-spacing: .025em; }
  .section-heading { align-items: baseline; }
  h2 { font-size: 1.7rem; }
  .section-kicker { font-size: .75rem; max-width: 95px; text-align: right; line-height: 1.45; letter-spacing: .08em; }
  .games-section { padding: 24px 0 30px; }
  .empty-state { align-items: flex-start; gap: 1rem; padding: 1.5rem 1.15rem; }
  .empty-number { font-size: 2.9rem; margin-top: -.12rem; }
  .empty-plus { display: none; }
  h3 { font-size: 1.25rem; }
  .empty-copy > p:last-child { font-size: 1rem; }
  .game-catalog { grid-template-columns: 1fr; }
  .site-footer { grid-template-columns: 1fr; gap: 1rem; padding-block: 1.5rem; }
  .footer-brand { align-items: flex-start; gap: 1.3rem; flex-wrap:wrap; }
  .wordmark-small { font-size: 1.65rem; }
  .footer-brand p { font-size: .8125rem; max-width: 250px; }
  .footer-links { gap: 2rem; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .text-link span { transition: none; } }

.navigation-status:not([hidden]){position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:100;margin:0;padding:12px 20px;border:1px solid #86d4f2;border-radius:8px;background:#0c243c;color:#fff;box-shadow:0 5px 24px #0008;font-weight:750}
a.is-loading{outline:3px solid #f8d445;outline-offset:3px;cursor:progress;filter:brightness(1.15)}

.puerrul-lobby{background:#071d37;color:#f8fafb;--yellow:#ffe040;--sky:#86d4f2;--muted:#bed2e1;min-height:100dvh}.lobby-wrap{width:min(1680px,calc(100% - 48px));margin-inline:auto}
.lobby-header{background:#041429;border-bottom:1px solid #304c66}
.lobby-header>.lobby-wrap{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:20px;min-height:64px}
.lobby-header .wordmark{font-size:2.3rem;justify-self:start}
.lobby-header-title{font-size:.875rem;letter-spacing:.2em;color:var(--sky);font-weight:800;text-align:center}
.lobby-header-actions{display:flex;align-items:center;justify-self:end;gap:8px}
.lobby-about-link{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:40px;padding:0 14px;border:1px solid #68859d80;border-radius:8px;background:#0b2035;color:#e8f3ff;font-size:.8125rem;font-weight:600;line-height:1.3;text-decoration:none;white-space:nowrap;transition:background .15s,border-color .15s}
.lobby-about-link:hover{background:#15344d;border-color:#86d4f2}
@media(max-width:700px){.lobby-header>.lobby-wrap{grid-template-columns:auto minmax(0,1fr);gap:10px;min-height:60px}.lobby-header-title{display:none}.lobby-about-link{min-height:38px;padding-inline:10px;font-size:.75rem}}
@media(max-width:390px){.lobby-header .wordmark{font-size:1.85rem}.lobby-header-actions{gap:6px}.lobby-about-link{padding-inline:8px}}
.lobby-title{margin:20px 0}.lobby-title>div{display:grid;grid-template-columns:1fr minmax(360px,520px);gap:3px 24px;align-items:center}.lobby-kicker{color:var(--sky);font-size:.875rem;font-weight:800;letter-spacing:.14em;margin:0}.lobby-title h1{font-size:clamp(2.3rem,3.5vw,3.8rem);line-height:1.06;margin:0;grid-column:1}.lobby-score{grid-column:2;grid-row:1/3;display:grid;grid-template-columns:1fr auto;gap:8px 12px;margin:0;padding:0}.lobby-score[hidden]{display:none}.lobby-session-title{font-size:.875rem}.lobby-level-streaks{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.lobby-level-streak{display:flex;flex-direction:column;border-left:2px solid #41617d;padding-left:8px;gap:2px}.lobby-level-streak b,.lobby-level-streak>span{font-size:.875rem;line-height:1.25}.lobby-level-streak>span{color:var(--muted)}.lobby-session-points{display:flex;align-items:baseline;gap:6px;grid-column:2;grid-row:1}.lobby-session-points strong{color:var(--yellow);font-size:1.25rem}.lobby-session-points>span{font-size:.75rem}.lobby-session-kicker{display:none}
.lobby-layout{display:grid;grid-template-columns:minmax(0,.83fr) minmax(0,1.17fr);gap:22px;align-items:stretch}.lobby-studio-column{min-width:0;display:grid;grid-template-columns:155px minmax(0,1fr);grid-template-rows:minmax(380px,1fr) auto;gap:14px 0}#featured-game{grid-column:1/-1;grid-row:1;min-width:0}.lobby-studio{grid-column:1;grid-row:2;position:relative;isolation:isolate;background:#082740;border:1px solid #375570;border-right:0;border-radius:12px 0 0 12px;overflow:hidden}.lobby-studio>img{display:block;width:100%;height:110px;object-fit:contain}.studio-names{display:flex;justify-content:space-around;gap:8px;padding:4px;color:var(--sky);font-size:.875rem;font-weight:850}.studio-names>span:last-child{color:var(--yellow)}.studio-names small{display:none}.lobby-comment{grid-column:2;grid-row:2;display:flex;flex-direction:column;justify-content:center;gap:8px;padding:16px;background:#102f49;border:1px solid #375570;border-left:0;border-radius:0 12px 12px 0}.lobby-comment strong{font-size:.875rem;color:var(--yellow)}.lobby-comment p{font-size:1rem;line-height:1.4;margin:0}.lobby-comment[data-speaker=gaston] strong{color:var(--sky)}
.featured-match{display:flex;flex-direction:column;position:relative;isolation:isolate;height:100%;min-height:400px;padding:26px 26px 0;border:1px solid #78c7c0;border-radius:16px;overflow:hidden;background:linear-gradient(110deg,#041a2bf5,#08372dc9),url("/ui/assets/stadium.webp") center/cover;box-shadow:0 12px 28px #0003;transition:transform .25s,border-color .25s}.featured-kicker{font-size:.875rem;color:#a5f4d3;font-weight:800;letter-spacing:.12em}.featured-match h2{font-size:clamp(2.8rem,4.2vw,4.7rem);line-height:1.03;margin:10px 0}.featured-description{max-width:330px;color:#e0eeec;font-size:1.125rem;line-height:1.4;margin:0 0 15px}.featured-modes{display:flex;flex-wrap:wrap;gap:6px}.featured-modes>span{border:1px solid #b5e5e44a;background:#031c2abd;color:#d7f4f1;border-radius:99px;padding:5px 10px;font-size:.875rem}.featured-cta{display:flex;justify-content:space-between;align-items:center;min-height:54px;margin:0 -26px;padding:12px 24px;background:var(--yellow);color:#071d37;font-weight:900;font-size:1rem;letter-spacing:.05em}.featured-match:hover{transform:translateY(-3px);border-color:#ffe040}.featured-match:hover .featured-cta{background:#fff197}
.featured-lineup{position:relative;width:65%;height:155px;min-height:130px;margin:18px auto;flex:1;border:1px solid #92d3b57a;border-radius:6px;background:repeating-linear-gradient(0deg,#0a3d3b77 0 25%,#14574788 25% 50%);transform:perspective(650px) rotateX(18deg);box-shadow:0 14px 30px #0005}.featured-lineup:before{content:'';position:absolute;inset:8px;border:1px solid #b0d8c655}.featured-lineup:after{content:'';position:absolute;width:44px;height:44px;left:calc(50% - 22px);top:calc(50% - 22px);border:1px solid #b0d8c655;border-radius:50%}.lineup-dot{position:absolute;left:var(--x);top:var(--y);width:25px;height:25px;transform:translate(-50%,-50%);border:1px solid #fff5;border-radius:50%;background:#ffe040;color:#09233e;font-size:.875rem;display:grid;place-items:center;font-weight:850;z-index:1;box-shadow:0 3px 7px #0008;animation:pick-arrives .45s var(--delay) backwards}.featured-match:hover .lineup-dot{background:#fff49d}
.fixture-section{min-width:0}.fixture-heading{display:flex;align-items:center;margin:0 0 12px}.fixture-heading h2{font-size:1.4rem;letter-spacing:.04em;margin:0}.fixture-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fixture-link{--accent:#8edbff;--tone:#0e4a68;position:relative;isolation:isolate;overflow:hidden;display:grid;grid-template-columns:minmax(0,1fr) 80px;grid-template-rows:1fr auto;gap:7px 8px;min-height:124px;padding:14px 14px 10px;border:1px solid #42647b;border-top:3px solid var(--accent);border-radius:11px;background:#102b44;box-shadow:0 4px 10px #0002;transition:transform .22s,border-color .22s,box-shadow .22s}.fixture-link:before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(95deg,#05182dec 5%,#071c2ac9 65%,#061b2f70),url("/ui/assets/stadium.webp") center/cover;transition:transform .45s}.fixture-link:after{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(120deg,transparent 45%,var(--tone));opacity:.45}.fixture-copy{display:flex;flex-direction:column;gap:4px;align-self:center}.fixture-category{color:var(--accent);font-weight:800;letter-spacing:.1em;font-size:.75rem;line-height:1.25}.fixture-copy strong{font-family:var(--display);font-size:1.55rem;font-weight:700;line-height:1.08;color:#fff;text-shadow:0 2px 6px #0008}.fixture-description{color:#d4e2ed;font-size:.875rem;line-height:1.3}.fixture-card-action{grid-column:1/-1;display:block;color:var(--accent);font-size:.875rem;font-weight:850;letter-spacing:.09em}.fixture-link:hover{transform:translateY(-3px);border-color:var(--accent);box-shadow:0 8px 20px #0005}.fixture-link:hover:before{transform:scale(1.08)}.fixture-mechanic{align-self:center;justify-self:center;color:var(--accent);font-size:1.1rem;font-weight:850;text-align:center;white-space:nowrap;transition:transform .25s;filter:drop-shadow(0 3px 5px #0007)}.fixture-link:hover .fixture-mechanic{transform:translateY(-4px) rotate(-3deg)}
.fixture-link[data-game=recordas-partido]{--accent:#ffc784;--tone:#935a16}.fixture-link[data-game=recordas-partido] .fixture-mechanic{font-family:monospace;font-size:1.5rem;border:1px solid #ffc78488;background:#171513;padding:9px 6px;transform:rotate(3deg)}.fixture-link[data-game=carrera]{--accent:#9cdfff;--tone:#235b8b}.fixture-link[data-game=falta-uno]{--accent:#95f2b2;--tone:#23764e}.fixture-link[data-game=quien-soy]{--accent:#d0afff;--tone:#66458f}.fixture-link[data-game=uno-sobra]{--accent:#ffac95;--tone:#9a4138}.fixture-link[data-game=con-los-dos]{--accent:#9aeeef;--tone:#1b777a}.fixture-link[data-game=jugador-oculto]{--accent:#a8dbff;--tone:#294a98}.fixture-link[data-game=conexion]{--accent:#fac893;--tone:#92663d}.fixture-link[data-game=nombra-x]{--accent:#ffde61;--tone:#8b7021}.fixture-link[data-game=quien-tiene-mas]{--accent:#f4afd6;--tone:#863865}
.fixture-link[data-game=nombra-x] .fixture-mechanic{font-size:2.5rem;font-family:var(--display);border:2px solid #ffde6170;border-radius:50%;width:66px;height:66px;display:grid;place-items:center}.mini-order{display:flex;gap:7px}.mini-order>span{display:flex;flex-direction:column;align-items:center;gap:3px}.mini-order img{width:25px;height:28px;object-fit:contain}.mini-order small{font-size:.75rem}.mini-deduction{display:grid;grid-template-columns:repeat(3,22px);gap:3px}.mini-deduction>span{background:#163e5d;border:1px solid #78b7de65;font-size:1rem;line-height:23px}.mini-deduction>.mini-hit{background:#267361;color:#d7ffeb}.mini-xi{display:grid;grid-template-columns:repeat(2,28px);gap:5px;padding:9px;background:#155442b3;border:1px solid #9aefbf80;transform:rotate(-5deg)}.mini-xi>span{font-size:1rem;background:#9af6bd26;line-height:14px}.mini-xi>.mini-missing{color:#ffe040;border:1px dashed #ffe040}.mini-clues{display:flex;align-items:center;gap:6px}.mini-clues b{font-size:3.6rem;color:#dbbdff}.mini-clues small{display:block;font-size:.875rem;line-height:1.6}.mini-versus{display:flex;align-items:flex-end;gap:6px;height:60px}.mini-versus>span{font-size:1rem;align-self:center}.mini-versus i{display:block;width:15px;height:50px;background:#edb1d6}.mini-versus .mini-bar-b{height:32px;background:#7fc6ef}.fixture-link:hover .mini-bar-a{animation:chart-bounce .5s ease}.game-progress-badge{font-family:inherit;font-size:.75rem;display:inline-block;background:#50482f;color:#fff2ba;padding:3px 6px;border-radius:4px;margin-left:6px}
.lobby-footer{display:flex;align-items:center;gap:20px;margin-top:20px;border-top:1px solid #36516a;padding-block:14px}.lobby-footer>p{font-size:.8125rem;line-height:1.4;color:var(--muted);margin:0;flex:1}.lobby-footer>div{display:flex;gap:14px;font-size:.875rem}.lobby-footer>div a{display:flex;align-items:center;min-height:44px}.lobby-footer .wordmark{font-size:1.7rem}.puerrul-lobby a:focus-visible{outline:3px solid #fff;outline-offset:3px;box-shadow:0 0 0 6px #1267a5}.home-avatar-hitareas{position:absolute;inset:0;z-index:2;display:grid;grid-template-columns:1fr 1fr;pointer-events:none}.home-avatar-hit{appearance:none;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;color:transparent;cursor:pointer;pointer-events:auto;touch-action:manipulation}.home-avatar-hit:focus-visible{outline:3px solid #fff;outline-offset:-5px}
.featured-cta{margin-top:auto}
/* Original art stays behind live, accessible game labels and mechanic previews. */
.featured-match{background:linear-gradient(100deg,#041a2bd9,#062b2b40),url("/ui/assets/draft-locker.webp") center/cover}
.fixture-link[data-game=recordas-partido]:before,.fixture-link[data-game=carrera]:before,.fixture-link[data-game=quien-tiene-mas]:before{background-image:linear-gradient(95deg,#151b2ce8 10%,#071c2a99 70%,#061b2f30),url("/ui/assets/football-archive.webp")}
.fixture-link[data-game=quien-soy]:before,.fixture-link[data-game=jugador-oculto]:before,.fixture-link[data-game=uno-sobra]:before{background-image:linear-gradient(95deg,#11192de8 5%,#10182b99 70%,#061b2f30),url("/ui/assets/mystery-tunnel.webp");background-position:70% 40%}
.fixture-link[data-game=con-los-dos]:before,.fixture-link[data-game=conexion]:before{background-image:linear-gradient(95deg,#062639e8 5%,#071c2a99 70%,#061b2f40),url("/ui/assets/draft-locker.webp");background-position:80% 60%}
.fixture-link[data-game=carrera]:before{background-position:center 25%}.fixture-link[data-game=quien-tiene-mas]:before{background-position:80% 80%}.fixture-link[data-game=uno-sobra]:before{background-position:80% 70%}.fixture-link[data-game=nombra-x]:before{background-position:center 25%}
@keyframes pick-arrives{from{opacity:0;translate:0 9px}to{opacity:1;translate:0 0}}@keyframes chart-bounce{50%{transform:scaleY(.65);transform-origin:bottom}}
@media(min-width:1400px){.fixture-link{min-height:132px}.fixture-copy strong{font-size:1.7rem}.featured-lineup{max-height:220px}}
@media(max-width:1100px){.lobby-layout{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:16px}.fixture-link{grid-template-columns:1fr 60px;padding:12px 10px;gap:6px}.fixture-copy strong{font-size:1.35rem}.fixture-mechanic{font-size:.875rem;scale:.85}.featured-match{padding:20px 20px 0}.featured-cta{margin-inline:-20px}.lobby-studio-column{grid-template-columns:120px minmax(0,1fr)}.lobby-comment{padding:12px}.lobby-studio>img{height:100px}.studio-names{font-size:.75rem}}
@media(max-width:850px){.lobby-wrap{width:calc(100% - 32px)}.lobby-title>div{grid-template-columns:1fr}.lobby-score{grid-column:1;grid-row:auto;margin-top:12px;max-width:560px}.lobby-layout{grid-template-columns:1fr}.lobby-studio-column{grid-template-rows:auto auto;grid-template-columns:140px 1fr}.featured-match{min-height:370px;padding:24px 24px 0}.featured-match h2{font-size:3.5rem}.featured-description{max-width:55%}.featured-lineup{position:absolute;right:22px;top:125px;width:35%;height:170px;min-height:0;margin:0}.featured-modes{max-width:55%;margin-bottom:24px}.featured-cta{margin: auto -24px 0}.fixture-heading{margin-top:8px}.fixture-link{min-height:145px;padding:14px}.fixture-copy strong{font-size:1.6rem}.fixture-mechanic{scale:1}.lobby-header-title{font-size:.75rem;letter-spacing:.1em}.lobby-footer{flex-wrap:wrap}.lobby-footer>p{order:3;flex-basis:100%}}
@media(max-width:520px){.lobby-wrap{width:calc(100% - 24px)}.lobby-header-title{display:none}.lobby-title{margin:16px 0}.lobby-title h1{font-size:2.8rem}.lobby-level-streaks{gap:6px}.lobby-level-streak{padding-left:5px}.lobby-level-streak b,.lobby-level-streak>span{font-size:.8125rem}.featured-match{min-height:440px;padding:20px 20px 0}.featured-match h2{font-size:3.3rem}.featured-description{max-width:100%;font-size:1rem}.featured-lineup{position:relative;inset:auto;width:72%;height:145px;min-height:145px;flex:0 0 auto;margin:8px auto 16px}.featured-modes{max-width:none;margin:0 0 8px}.featured-modes>span{font-size:.8125rem;padding:5px 8px}.featured-cta{margin-inline:-20px}.fixture-list{gap:10px}.fixture-link{grid-template-columns:1fr;grid-template-rows:1fr 48px auto;min-height:200px;padding:12px;gap:6px}.fixture-copy strong{font-size:1.5rem}.fixture-category{font-size:.6875rem;letter-spacing:.07em}.fixture-description{font-size:.875rem}.fixture-mechanic{grid-row:2;justify-self:end;scale:.8;transform-origin:right center}.fixture-card-action{grid-row:3}.fixture-link:hover .fixture-mechanic{transform:none}.lobby-footer>div{margin-left:auto}.lobby-comment p{font-size:.9375rem}.lobby-studio-column{grid-template-columns:125px 1fr}}
.lobby-studio-column{grid-template-columns:minmax(180px,.8fr) minmax(0,1fr);grid-template-rows:auto minmax(380px,1fr)}#featured-game{grid-row:2}.lobby-studio,.lobby-comment{grid-row:1}.lobby-studio>img{height:170px}.studio-names{font-size:1rem;padding:6px}.lobby-comment{padding:18px}.lobby-comment p{font-size:1.05rem}
.lobby-score{padding:16px;border:1px solid #3f6686;border-radius:16px;background:linear-gradient(130deg,#113752,#091d36);box-shadow:0 8px 24px #0003;gap:12px}.lobby-session-title{color:#ffe040;letter-spacing:.05em;font-size:.875rem}.lobby-record-game{grid-column:1/-1;width:100%;min-height:40px;background:#071d32;color:#edf6ff;border:1px solid #6b91ac;border-radius:7px;padding:7px 10px;font:inherit;font-size:1rem}.lobby-level-streak{--record:#91e5b3;background:#143d36;border:1px solid #498c6b;border-top:3px solid var(--record);border-radius:9px;padding:10px;gap:5px}.lobby-level-streak[data-difficulty=medium]{--record:#91d7ff;background:#123952;border-color:#457c9b}.lobby-level-streak[data-difficulty=hard]{--record:#d5adff;background:#33264b;border-color:#82609d}.lobby-level-streak b{color:var(--record);font-size:.875rem}.lobby-level-streak .record-number{font-size:1.8rem;color:#fff;line-height:1}.lobby-level-streak>span{font-size:.875rem}.lobby-session-points>span{font-size:.75rem}.lobby-record-game:focus-visible{outline:3px solid #ffe040;outline-offset:3px}
@media(max-width:520px){.lobby-studio-column{grid-template-columns:150px minmax(0,1fr)}.lobby-studio>img{height:150px}.lobby-comment{padding:10px}.lobby-comment p{font-size:.9375rem}.lobby-score{padding:12px}.lobby-level-streak{padding:8px 6px}.lobby-level-streak b{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){.puerrul-lobby *,.puerrul-lobby *:before,.puerrul-lobby *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.puerrul-lobby main.lobby-wrap{padding-top:18px}
.featured-worldcup{border-color:#ffe040;background:linear-gradient(100deg,#041a2bd9,#062b2b32),url("/ui/assets/draft-locker.webp") center/cover;box-shadow:0 14px 34px #0006,0 0 0 1px #ffe04026}.featured-worldcup .featured-kicker{color:#ffe040}.featured-worldcup .featured-description{max-width:370px}.featured-modes .is-featured-mode{border-color:#ffe040;background:#ffe040;color:#071d37;font-weight:900;box-shadow:0 2px 8px #0005}.featured-worldcup .featured-cta{font-size:1.05rem}
@media(max-width:520px){.featured-worldcup .featured-cta{font-size:.9rem;letter-spacing:.02em}}
/* Eight regular games: four even rows, aligned with the studio + featured card. */
.fixture-link[data-game=otra-copa-mas]{--accent:#ffe040;--tone:#8b7021;border:2px solid #ffe040;border-top-width:4px;box-shadow:0 0 0 3px #ffe04018,0 4px 14px #0004}
.fixture-link[data-game=otra-copa-mas] .fixture-category{width:fit-content;background:#ffe040;color:#071d37;padding:3px 6px;border-radius:3px;font-size:.6875rem;letter-spacing:.035em}
.fixture-section{display:flex;flex-direction:column}
.fixture-list{flex:1;grid-auto-rows:1fr;align-content:stretch}
.fixture-copy,.fixture-link{min-width:0}
.fixture-copy strong{overflow-wrap:break-word}
@media(min-width:851px){.lobby-studio-column{grid-template-rows:auto minmax(380px,1fr)}.fixture-list{height:100%}}
@media(max-width:850px){.lobby-layout{gap:20px}.fixture-section{width:100%}}

.developer-signature{display:inline-flex;align-items:center;gap:6px;max-width:100%;margin:0;vertical-align:middle;text-decoration:none;color:#edf5fa;flex-shrink:0;text-align:left;line-height:1.3}
.developer-signature img{display:block;flex:none;width:24px;height:24px;object-fit:contain;border-radius:3px;background:#000}
.developer-signature>span{display:inline-flex;align-items:baseline;gap:4px}
.developer-signature small{font-size:12px;color:#b6c9d7;white-space:nowrap}
.developer-signature strong{font-size:12px;color:#b6c9d7;white-space:nowrap}
.developer-signature:hover strong{text-decoration:underline;text-underline-offset:4px}
.developer-signature:focus-visible{outline:3px solid #86d4f2;outline-offset:4px;border-radius:8px}
.lobby-footer{flex-wrap:wrap}
.footer-credits{display:flex;align-items:center;gap:4px 12px;flex-wrap:wrap}
.game-page>.site-footer{display:flex;align-items:center;flex-wrap:wrap;gap:4px 16px;padding-block:8px;font-size:12px}
.game-page>.site-footer p{margin:0;flex:1 1 560px;line-height:1.4}
.site-footer .footer-credits{margin:0}
.footer-credits [data-data-credits]{font-size:12px}
.footer-credits .developer-signature{margin:0}
.about-contact-dialog .developer-signature{margin:16px 0 0;text-decoration:none}
/* Credits belong after the game viewport, never in its reserved play space. */
.game-page:has(>.site-footer){height:auto;min-height:100dvh}
.game-page:has(>.site-footer)>main{flex:none;min-height:calc(100dvh - 52px)}
.lobby-footer .footer-credits .developer-signature{min-height:24px}
footer .fan-note-trigger{display:inline;margin:0;padding:0;border:0;border-radius:0;min-width:0;min-height:0;background:transparent;color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;text-transform:none;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px;cursor:pointer;vertical-align:baseline;box-shadow:none}
footer .fan-note-trigger:hover{text-decoration-thickness:2px;background:transparent;color:inherit}
.fan-note-trigger:focus-visible,.fan-note-dialog button:focus-visible,.fan-note-body:focus-visible{outline:3px solid #86d4f2;outline-offset:3px}
.fan-note-dialog{position:fixed;inset:0;width:min(660px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #58758f;border-radius:12px;background:#0a233d;color:#f4f7fb;box-shadow:0 20px 80px #0008;overflow:hidden;font-family:inherit;text-align:left}
.fan-note-dialog[open]{display:flex;flex-direction:column}
.fan-note-dialog::backdrop{background:#020e20bf}
.fan-note-header{display:flex;align-items:start;justify-content:space-between;gap:18px;padding:22px 24px 18px;border-bottom:1px solid #45627a;flex:none}
.fan-note-header h2{margin:0;color:#ffe040;font-family:inherit;font-size:1.25rem;font-weight:750;line-height:1.3;letter-spacing:0;text-transform:none}
.fan-note-dialog .fan-note-close{flex:none;min-height:40px;padding:8px 12px;margin:0;border:1px solid #86a8c4;border-radius:6px;background:#153955;color:#fff;font:inherit;font-size:.875rem;font-weight:700;cursor:pointer;line-height:1.2;box-shadow:none}
.fan-note-dialog .fan-note-close:hover{background:#224c6d}
.fan-note-body{min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:4px 24px 22px;font-size:1rem;line-height:1.65}
.fan-note-body p{margin:18px 0 0;max-width:none;color:inherit;font-size:inherit;line-height:inherit}
.fan-note-body p:last-child{font-weight:700;color:#86d4f2}
@media(max-width:480px){.fan-note-dialog{width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}.fan-note-header{padding:16px;gap:12px}.fan-note-header h2{font-size:1.125rem}.fan-note-body{padding:0 18px 20px;font-size:.9375rem}}

.about-contact-dialog{position:fixed;inset:0;box-sizing:border-box;width:min(380px,calc(100vw - 24px));max-width:none;max-height:calc(100dvh - 24px);margin:auto;padding:18px 20px 22px;border:1px solid #6888a3;border-radius:10px;background:#0a233d;color:#f4f7fb;box-shadow:0 20px 80px #0008;font-family:inherit;overflow:auto}
.about-contact-dialog::backdrop{background:#020e20bf}
.about-contact-header{display:flex;justify-content:space-between;align-items:center;gap:16px}
.about-contact-header h2{margin:0;color:#ffe040;font-family:inherit;font-size:1.3rem;line-height:1.2;font-weight:750;letter-spacing:0}
.about-contact-dialog .about-contact-close{display:grid;place-items:center;flex:none;width:40px;height:40px;min-height:40px;padding:0;margin:-6px -6px -6px 0;border:1px solid #7093ae;border-radius:5px;background:#163953;color:#fff;font-size:1.6rem;line-height:1;cursor:pointer}
.about-contact-dialog p{margin:16px 0 0;font-size:1rem;line-height:1.4;color:inherit}
.about-contact-dialog a{color:#aee1ff;text-decoration:underline;text-underline-offset:3px}
.about-contact-dialog :focus-visible{outline:3px solid #86d4f2;outline-offset:3px}
@media(max-width:380px){.about-contact-dialog{padding:16px}.about-contact-dialog p{font-size:.875rem}}

/* Mobile is a page, not a shrunken desktop frame. Keep all controls in flow. */
@media (max-width:700px){
 html{scroll-padding-top:66px}
 body.game-page{height:auto;min-height:100svh}
 .game-page .wrap{width:calc(100% - 24px);max-width:100%}
 .game-page main{display:block;height:auto;min-height:0;padding:12px 0 24px}
 .game-page .header-inner{min-height:52px;gap:12px}
 .game-page .wordmark{font-size:1.85rem}
 .game-page .site-header nav a{font-size:.875rem;min-height:44px;display:flex;align-items:center}
 .game-page .stream-topbar{display:flex;flex-direction:column;gap:10px;margin-bottom:12px}
 .game-page .game-heading{margin:0;gap:0}
 .game-page .game-intro .eyebrow{font-size:.7rem;margin:0 0 4px}
 .game-page .game-intro h1{font-size:1.85rem;margin:0}
 .game-page .game-intro>p:last-child:not(.eyebrow){display:none}
 #game-root .difficulty-controls{width:100%;margin:0;padding:8px;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr))}
 #game-root .difficulty-controls .session-score{padding:0;grid-column:1/-1;flex-direction:row;gap:6px;align-items:baseline}
 #game-root .session-score strong{font-size:1rem}
 #game-root .difficulty-controls .difficulty-button{display:flex;flex-direction:column;gap:4px;padding:8px 3px;min-height:70px}
 #game-root .difficulty-host{font-size:.78rem;overflow-wrap:normal}
 #game-root .difficulty-record{display:flex;flex-direction:column;gap:3px;margin:0}
 #game-root .difficulty-record .difficulty-streak{display:flex;flex-direction:row;gap:4px;border:0;padding:0;align-items:center}
 #game-root .difficulty-streak-value{font-size:1rem}
 #game-root .difficulty-streak-label{font-size:.65rem;max-width:none}
 #game-root .difficulty-record .difficulty-best{font-size:.7rem;margin:0}
 #game-root .match-mode-picker{gap:8px;order:2}
 .game-page .match-mode-choice{min-height:58px;padding:8px 10px}
 .game-page .match-mode-choice strong{font-size:1rem}
 .game-page .match-mode-choice span{font-size:.72rem}
 .game-page .game-surface{height:auto;min-height:0;padding:10px;overflow:visible}
 .game-page .game-surface>*{min-width:0;max-width:100%}
 .game-page .round-toolbar{margin:0 0 8px;gap:8px}
 .game-page .round-toolbar .quiet-button{font-size:.8rem}
 .game-page .challenge-prompt{font-size:1.12rem;line-height:1.3;margin-bottom:12px}
 .game-page .host-reaction{grid-template-columns:64px minmax(0,1fr);min-height:0;gap:8px;margin:8px 0 12px}
 .game-page .host-duo{width:64px;min-height:0;height:auto}
 .game-page .host-duo__art{width:64px;height:58px;object-fit:contain}
 .game-page .host-duo__names{font-size:9px;gap:2px}
 .game-page .host-dialogue{padding:9px;min-height:0;font-size:.875rem;line-height:1.35}
 .game-page .host-dialogue p{font-size:.875rem;line-height:1.35;margin:4px 0}
 .game-page .stream-console{margin-top:12px;min-height:0;max-width:100%;height:auto;overflow:visible}
 .game-page .stream-console:empty{display:none}
 .game-page #game-root>.timer{position:sticky;top:54px;z-index:5;padding:9px 12px;border:1px solid #ffe145;border-radius:8px;background:#09233a;margin:8px 0}
 .game-page main[data-phase=complete] .stream-console .host-duo{width:64px;height:76px;min-height:76px;max-height:76px}
 .game-page main[data-phase=complete] .stream-console .host-duo__art{height:58px;min-height:58px;max-height:58px}
 .game-page .game-surface,.game-page .stream-console,.once-mvp .od-live-match{scroll-margin-top:64px}
 .game-page input,.game-page select,.game-page textarea{font-size:16px!important}
 .game-page button,.game-page summary{touch-action:manipulation}
 .game-page summary{min-height:44px;padding-block:10px}
 .game-page .player-search{width:100%;max-width:none;margin:0}
 .game-page .play-answer-zone{padding:10px;margin:12px 0 0;min-width:0}
 .game-page .search-row{display:flex;flex-wrap:wrap;gap:8px}
 .game-page .search-input-wrap{flex:1 1 100%;min-width:0}
 .game-page .search-row>.button{flex:1 1 100%;width:100%;min-height:48px}
 .game-page .player-search .search-input-wrap{position:relative;overflow:visible}
 .game-page .player-search .suggestions{position:absolute;inset:auto 0;z-index:50;box-sizing:border-box;max-height:224px;overflow-y:auto;overscroll-behavior-y:contain;touch-action:pan-y;margin:0;box-shadow:0 8px 24px #0008;background:#102c43;border-radius:10px}
 .game-page .suggestions li{min-height:48px;padding:12px;line-height:1.4}
 .game-page .round-reveal-button{white-space:normal}
 .game-page .round-result{margin-top:12px}
 /* Completed rounds need a real mobile layout, not a tiny desktop sidebar. */
 .game-page main[data-phase=complete] .stream-console{display:flex;flex-direction:column;gap:16px;margin-top:16px}
 .game-page main[data-phase=complete] .stream-console .host-reaction{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin:0;min-height:0}
 .game-page main[data-phase=complete] .stream-console .host-duo{display:block;align-self:center;width:156px;max-width:100%;height:auto;min-height:0;max-height:none;padding:0;background:transparent}
 .game-page main[data-phase=complete] .stream-console .host-duo__art{width:100%;height:92px;min-height:0;max-height:none;object-fit:contain}
 .game-page main[data-phase=complete] .stream-console .host-duo__names{display:flex;gap:12px;padding:4px 0 0}
 .game-page main[data-phase=complete] .stream-console .host-duo__names>span{min-width:0;font-size:.875rem;line-height:1.3}
 .game-page main[data-phase=complete] .stream-console .host-dialogue{box-sizing:border-box;width:100%;max-width:none;min-height:0;padding:14px 16px;border-radius:12px;box-shadow:none}
 .game-page main[data-phase=complete] .stream-console .host-dialogue:before{display:none}
 .game-page main[data-phase=complete] .stream-console .host-reaction__text,
 .game-page main[data-phase=complete] .stream-console .host-reaction__line{font-size:1rem;line-height:1.45;overflow-wrap:break-word}
 .game-page main[data-phase=complete] .stream-console .round-result:not(:empty){margin:0;padding:14px 16px;border-width:1px;border-top-width:3px;border-radius:12px}
 .game-page main[data-phase=complete] .result-score{display:flex;flex-direction:column;align-items:flex-start;gap:6px;margin:0 0 14px}
 .game-page main[data-phase=complete] .result-score strong{font-size:1.75rem;line-height:1.15;letter-spacing:0}
 .game-page main[data-phase=complete] .result-score>span{font-size:.875rem;line-height:1.45}
 .game-page main[data-phase=complete] .result-actions{display:flex;flex-direction:column;gap:10px}
 .game-page main[data-phase=complete] .result-actions>.button{flex:none;width:100%;min-width:0;min-height:48px;padding:12px;font-size:1rem;line-height:1.25;white-space:normal}
 .game-page main[data-phase=complete] .round-feedback:not(:empty){margin:0;padding:12px 16px;border-radius:10px;font-size:.875rem;line-height:1.45}
 .game-page main[data-phase=complete] .round-feedback p{margin:0 0 8px}
 .game-page .action-status:not(:empty){max-width:calc(100vw - 24px);bottom:calc(12px + env(safe-area-inset-bottom));font-size:.875rem}
 .game-page dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 32px);padding:14px;overflow:auto;overscroll-behavior:contain}
 .game-page footer{position:static;margin-top:16px;padding-bottom:calc(16px + env(safe-area-inset-bottom))}
 /* Keep paired team badges, scores and inputs aligned even with long names. */
 .game-page .memory-teams{gap:8px}
 .game-page .memory-team{padding:10px 6px}
 .game-page .memory-team .club-badge>span{font-size:.875rem;line-height:1.25}
 .game-page .memory-score-label{font-size:.75rem}
 .game-page .memory-context{font-size:.8125rem}
 .game-page .memory-complete .memory-team{flex-direction:column;gap:6px}
 .game-page .memory-complete .memory-final-score{font-size:2rem}
 .game-page .scorer-bonus{padding:10px;min-width:0}
 .game-page[data-game=recordas-partido] .scorer-bonus .search-row{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
 .game-page[data-game=recordas-partido] .scorer-bonus .search-row>.button{width:100%}
 .game-page .scorer-bonus-actions{display:grid;grid-template-columns:1fr;width:100%}
 /* Compact but readable career tiles; no nested vertical scroller. */
 .game-page .career-route-counter{position:static;font-size:.8125rem;padding:8px}
 .game-page .game-carrera .club-sequence.full-career-route{--route-cell:104px;gap:16px 12px;padding:10px}
 .game-page .full-career-route .career-stage{padding:22px 5px 8px}
 .game-page .full-career-route .club-badge{font-size:.875rem}
 .game-page .game-carrera .full-career-route .club-badge img{width:38px;height:38px}
 .game-page[data-game=falta-uno] .history-pitch{height:430px}
 .game-page[data-game=falta-uno] .history-player--pitch{width:22%;padding:5px 2px}
 .game-page[data-game=falta-uno] .history-player-name{font-size:.75rem;line-height:1.18;overflow-wrap:anywhere}
 .game-page[data-game=falta-uno] .history-position{font-size:.625rem}
 .game-page .stream-pages{display:flex;flex-wrap:wrap;gap:6px}
 .game-page .stream-pages button{min-height:44px}
 /* Draft: choose first, inspect the pitch below. Position chips avoid round trips. */
 .once-mvp .od-grid,.once-mvp .od-draft-layout,.once-mvp .od-draft-layout.is-local{display:flex;flex-direction:column;gap:12px}
 .once-mvp .od-grid>*,.once-mvp .od-draft-layout>*{width:100%;min-width:0}
 .once-mvp .od-setup-panel,.once-mvp .od-draft-panel{order:-1;padding:10px}
 .once-mvp .od-heading{align-items:flex-start;flex-wrap:wrap;gap:8px}
 .once-mvp .od-toolbar{justify-content:flex-start;gap:6px}
 .once-mvp .od-toolbar .od-button{font-size:.75rem;padding:8px;min-height:44px}
 .once-mvp .od-surface>.od-hosts{display:none}
 .once-mvp .od-mode-options{grid-template-columns:1fr;gap:6px}
 .once-mvp .od-mode-options .od-button{min-height:48px}
 .once-mvp .od-candidate-heading{flex-wrap:wrap}
 .once-mvp .od-candidate-heading .od-note{display:none}
 .once-mvp .od-candidates{grid-template-columns:1fr}
 .once-mvp .od-player{min-height:100px;padding:12px;gap:8px}
 .once-mvp .od-attributes{font-size:.8125rem}
 .once-mvp .od-pitch{height:350px;min-height:350px}
 .once-mvp .od-two-pitches{display:grid;grid-template-columns:1fr;gap:12px}
 .once-mvp .od-slot{min-height:48px;width:23%;padding:4px 2px}
 .once-mvp .od-slot strong{font-size:.7rem}
 .once-mvp .od-draft-panel{scroll-margin-top:64px}
 .once-mvp .od-mobile-positions{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:5px;padding:4px 0 8px}
 .once-mvp .od-mobile-positions .od-button{min-width:0;min-height:44px;padding:6px 1px;font-size:.75rem}
 .once-mvp .od-mobile-positions .od-button[aria-pressed=true]{background:#ffe14c;color:#071d37}
 .once-mvp .od-match-arena{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
 .once-mvp .od-match-arena .od-live-match{padding:12px}
 .once-mvp .od-broadcast-score{gap:6px;font-size:1rem}
 .once-mvp .od-broadcast-score>b{font-size:2rem}
 .once-mvp .od-live-clock{font-size:1.25rem}
 .once-mvp .od-live-feed{max-height:180px;overscroll-behavior-y:contain}
 .once-mvp .od-live-feed li{font-size:.875rem}
 /* Keep the only progression action above Safari's bottom safe area. */
 .game-page:has(.od-match-arena) .stream-topbar,
 .once-mvp .od-surface:has(.od-match-arena)>.od-heading{display:none}
 .game-page:has(.od-match-arena) main{padding-top:8px;padding-bottom:calc(96px + env(safe-area-inset-bottom))}
 .once-mvp .od-match-arena .od-live-action{position:fixed;z-index:40;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));width:calc(100% - 24px);min-height:52px;margin:0;padding:14px 16px;border:2px solid #071b2e;border-radius:12px;background:var(--verdict,#ffe14c);color:#071b2e;font-size:1rem;font-weight:800;box-shadow:0 0 0 8px #071b2eee,0 -8px 24px #0005}
 .once-mvp .od-live-match>.od-kicker{font-size:.75rem;margin:0 0 8px}
 .once-mvp .od-live-match .od-broadcast-score{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);font-size:.9375rem;line-height:1.25;margin:12px 0}
 .once-mvp .od-live-match .od-broadcast-score>strong{min-width:0;overflow-wrap:normal;word-break:normal;hyphens:auto}
 .once-mvp .od-live-match .od-live-pitch{height:40px;margin:10px 0}
 .once-mvp .od-live-match .od-live-feed{height:140px;min-height:140px;max-height:140px;margin:10px 0}
 .once-mvp .od-live-lineup{padding:7px}
 .once-mvp .od-live-lineup li{grid-template-columns:1fr;font-size:.8125rem}
 .once-mvp .od-player-events{grid-column:1}
 .once-mvp .od-penalty-row{flex-direction:column;align-items:flex-start;gap:6px}
 .once-mvp .od-worldcup,.once-mvp .od-matchday-grid,.once-mvp .od-matchday-grid.is-knockout,.once-mvp .od-cup-ending{grid-template-columns:minmax(0,1fr)}
 .once-mvp .od-worldcup>*,.once-mvp .od-cup-ending>*{min-width:0;max-width:100%}
 .once-mvp .od-cup-ending{grid-template-rows:auto auto;align-items:start}
 .once-mvp .od-cup-ending>img{height:auto;min-height:0;max-height:none;aspect-ratio:3/2;object-fit:contain;align-self:start}
 .once-mvp .od-cup-ending>div{box-sizing:border-box;width:100%;padding:20px;align-self:start}
 .once-mvp .od-cup-ending>div>.od-kicker{margin:0 0 10px;line-height:1.4}
 .once-mvp .od-cup-ending>div>h2{margin:0 0 10px;line-height:1.15}
 .once-mvp .od-cup-ending>div>p:last-child{margin:0;line-height:1.5}
 .once-mvp .od-recent-results .od-cup-fixture{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);font-size:.8125rem;gap:5px;padding:8px 6px}
 .once-mvp .od-recent-results .od-cup-fixture>strong{white-space:normal;text-align:center;max-width:110px}
 .once-mvp .od-bracket{max-height:none;align-items:flex-start;scroll-snap-type:x proximity;overscroll-behavior-x:contain}
 .once-mvp .od-bracket-round{flex:0 0 85%;scroll-snap-align:start}
 .once-mvp .od-bracket-round h4{position:static}
 .once-mvp .od-bracket-nodes{height:auto;justify-content:flex-start}
 .once-mvp .od-bracket-match:after{display:none}
 .once-mvp .od-cup-table{font-size:.75rem;table-layout:auto}
 .once-mvp .od-cup-table th,.once-mvp .od-cup-table td{padding:6px 3px;overflow-wrap:anywhere}
 .once-mvp .od-cup-actions{flex-wrap:wrap;gap:8px}
 .once-mvp .od-cup-actions .od-button{flex:1 1 100%;min-height:48px}
 .once-mvp .od-tournament-stats{grid-template-columns:1fr}
 .puerrul-lobby .fixture-list{grid-template-columns:1fr}
 .puerrul-lobby .fixture-link{grid-template-columns:minmax(0,1fr) 65px;grid-template-rows:1fr auto;min-height:148px;padding:16px;gap:8px}
 .puerrul-lobby .fixture-mechanic{grid-column:2;grid-row:1/3;align-self:center}
 .puerrul-lobby .fixture-card-action{grid-row:2}
 .puerrul-lobby .fixture-copy strong{font-size:1.65rem}
 .puerrul-lobby .lobby-studio-column{grid-template-columns:130px minmax(0,1fr)}
 .puerrul-lobby .lobby-studio>img{height:120px}
 .puerrul-lobby .studio-names{font-size:.875rem;gap:6px;padding:6px 3px}
}
@media(min-width:701px){
 .once-mvp .od-mobile-positions{display:grid;grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:6px;padding:4px 0 12px}
 .once-mvp .od-mobile-positions .od-button{min-width:0;min-height:44px;padding:6px 4px;font-size:.875rem}
 .once-mvp .od-mobile-positions .od-button[aria-pressed=true]{background:#ffe14c;color:#071d37;border-color:#ffe14c}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.game-page *{animation-duration:.01ms!important;transition-duration:.01ms!important}}
