/* Product landing layer for game URLs. The actual table keeps its original game stylesheet. */
body:not(.game-running) .game-shell{display:none!important}body.game-running .game-landing{display:none!important}.game-landing{--portal-bg:#0b0c0f;--portal-surface:#12141a;--portal-text:#f3f1ea;--portal-muted:#9c9da3;--portal-line:#2a2d35;--portal-accent:#f4c54c;min-height:100vh;background:var(--portal-bg);color:var(--portal-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5}.game-landing *{box-sizing:border-box}.game-landing a{color:inherit}.game-landing button,.game-landing select,.game-landing input{font:inherit}.game-landing .hidden{display:none!important}.portal-wrap{width:min(1180px,100%);margin:0 auto;padding-left:28px;padding-right:28px}.portal-topbar{min-height:82px;border-bottom:1px solid var(--portal-line);display:flex;align-items:center;justify-content:space-between;gap:24px}.portal-brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;letter-spacing:.08em;font-size:.92rem;font-weight:800}.portal-brand svg{width:34px;height:34px;fill:none;stroke:currentColor;stroke-width:2.4}.portal-brand svg path{stroke-linecap:round;stroke-linejoin:round}.portal-nav{display:flex;align-items:center;gap:22px}.portal-nav>a{color:#d8d5cd;text-decoration:none;font-weight:650;font-size:.92rem}.portal-nav>a:hover{color:#fff}.portal-account{display:flex;align-items:center;gap:14px}.portal-account-link{display:flex;align-items:center;gap:9px;text-decoration:none;font-weight:650}.portal-account-link img{width:34px;height:34px;border-radius:50%;object-fit:cover}.portal-text-button{border:0;background:transparent;color:var(--portal-muted);padding:8px 0;cursor:pointer}.portal-text-button:hover{color:#fff}.portal-hero{padding-top:74px;padding-bottom:80px;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:72px;align-items:center}.portal-kicker{margin:0 0 18px;color:var(--portal-accent);font-size:.75rem;letter-spacing:.18em;font-weight:800}.portal-hero h1{font-size:clamp(3.1rem,6.6vw,6rem);line-height:.92;letter-spacing:-.06em;margin:0 0 26px}.portal-hero-copy>p:not(.portal-kicker){font-size:1.12rem;color:#c1c1c3;max-width:720px;margin:0}.portal-start-card{border:1px solid var(--portal-line);background:var(--portal-surface);padding:30px}.portal-start-card h2{font-size:1.8rem;letter-spacing:-.03em;margin:0 0 9px}.portal-start-card>p{color:var(--portal-muted);margin:0 0 24px}.portal-field{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 0;border-top:1px solid var(--portal-line)}.portal-field label{font-weight:700}.portal-field input[type=number]{width:90px;background:#0d0f13;color:#fff;border:1px solid #3a3d45;padding:10px}.portal-check{display:flex;align-items:flex-start;gap:12px;padding:18px 0;border-top:1px solid var(--portal-line);color:#d5d3cc}.portal-check input{margin-top:5px}.portal-check span{display:block}.portal-check small{display:block;color:var(--portal-muted);margin-top:4px;line-height:1.45}.portal-primary-button,.portal-secondary-button{min-height:50px;padding:0 20px;border:1px solid var(--portal-accent);font-weight:800;cursor:pointer}.portal-primary-button{width:100%;background:var(--portal-accent);color:#17130a}.portal-primary-button:hover{background:#ffd667}.portal-secondary-button{margin-top:12px;width:100%;background:transparent;color:#f3f1ea;border-color:#484b54}.portal-secondary-button:hover{border-color:#747985}.portal-section{border-top:1px solid var(--portal-line);padding-top:82px;padding-bottom:82px}.portal-heading{display:flex;justify-content:space-between;align-items:end;gap:46px;margin-bottom:38px}.portal-heading h2{font-size:clamp(2.25rem,4vw,4.1rem);line-height:1;letter-spacing:-.045em;margin:0}.portal-heading p{max-width:470px;color:var(--portal-muted);margin:0}.portal-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--portal-line);border:1px solid var(--portal-line)}.portal-column{background:var(--portal-surface);padding:28px}.portal-column h3{font-size:1.35rem;margin:0 0 10px}.portal-column p{color:var(--portal-muted);margin:0}.portal-board{border:1px solid var(--portal-line);background:var(--portal-surface)}.portal-board-head{padding:24px;display:flex;justify-content:space-between;align-items:end;gap:22px;border-bottom:1px solid var(--portal-line)}.portal-board-head h3{font-size:1.5rem;margin:0}.portal-filters{display:flex;gap:14px}.portal-filters label{color:var(--portal-muted);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.portal-filters select{display:block;margin-top:7px;min-width:98px;border:1px solid var(--portal-line);border-radius:0;padding:8px 28px 8px 9px;background:#0f1116;color:var(--portal-text)}.portal-table-wrap{overflow-x:auto}.portal-board table{width:100%;border-collapse:collapse}.portal-board th,.portal-board td{padding:15px 18px;text-align:left;border-bottom:1px solid var(--portal-line)}.portal-board th{color:#777b84;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}.portal-board tbody tr:last-child td{border-bottom:0}.portal-board td:nth-child(1){width:44px;color:#777b84}.portal-board td:nth-child(n+3),.portal-board th:nth-child(n+3){text-align:right}.portal-board .player-cell{display:inline-flex;align-items:center;gap:10px;font-weight:650}.portal-board .player-cell img,.portal-board .avatar-placeholder{width:28px;height:28px;border-radius:50%;object-fit:cover;background:#272a31}.portal-board .empty-row{height:110px;color:var(--portal-muted);text-align:center!important}.portal-profile{display:grid;grid-template-columns:1.15fr .85fr;gap:24px}.portal-profile-main,.portal-stats{border:1px solid var(--portal-line);background:var(--portal-surface);padding:28px}.portal-profile-id{display:flex;align-items:center;gap:16px;margin-bottom:26px}.portal-profile-id img{width:58px;height:58px;border-radius:50%;object-fit:cover}.portal-profile-id h3{font-size:1.45rem;margin:0 0 3px}.portal-profile-id p{color:var(--portal-muted);margin:0}.portal-level{display:flex;justify-content:space-between;gap:20px;margin-bottom:10px}.portal-level span{color:var(--portal-muted)}.portal-progress{height:8px;background:#282b32}.portal-progress span{display:block;height:100%;background:var(--portal-accent)}.portal-stats{display:grid;grid-template-columns:1fr 1fr;gap:1px;padding:0;background:var(--portal-line)}.portal-stats div{padding:24px;background:var(--portal-surface)}.portal-stats strong{display:block;font-size:1.8rem}.portal-stats span{color:var(--portal-muted);font-size:.9rem}.portal-signin{border:1px solid var(--portal-line);background:var(--portal-surface);padding:30px;display:flex;align-items:center;justify-content:space-between;gap:28px}.portal-signin h2{font-size:1.55rem;margin:0 0 8px}.portal-signin p{color:var(--portal-muted);margin:0;max-width:680px}.portal-footer{border-top:1px solid var(--portal-line);padding-top:34px;padding-bottom:48px;color:var(--portal-muted)}.portal-footer-main{display:flex;justify-content:space-between;align-items:center;gap:30px}.portal-footer .footer-locales{margin-top:26px;padding-top:22px;border-top:1px solid var(--portal-line);display:flex;flex-wrap:wrap;gap:8px 16px}.portal-footer .footer-locales a{color:var(--portal-muted);text-decoration:none;font-size:.8rem;line-height:1.4}.portal-footer .footer-locales a:hover,.portal-footer .footer-locales a[aria-current="page"]{color:var(--portal-text)}.portal-footer a{color:var(--portal-text);text-decoration:none}.final-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#111923;border:1px solid var(--line);border-radius:16px;padding:12px 14px;box-shadow:var(--shadow)}.final-actions.hidden{display:none}.final-actions-copy{font-size:12px;color:var(--muted)}.final-actions-copy strong{display:block;color:var(--text);font-size:14px}.final-actions-buttons{display:flex;gap:8px;flex-wrap:wrap}.final-actions a{text-decoration:none;display:inline-flex;align-items:center}.game-shell-end-link{color:inherit}
@media(max-width:900px){.portal-hero{grid-template-columns:1fr;gap:38px}.portal-columns,.portal-profile{grid-template-columns:1fr}.portal-heading{display:block}.portal-heading p{margin-top:16px}.portal-topbar{flex-wrap:wrap;padding-top:18px;padding-bottom:18px}.portal-nav{order:3;width:100%}}
@media(max-width:650px){.portal-wrap{padding-left:18px;padding-right:18px}.portal-hero{padding-top:50px;padding-bottom:60px}.portal-hero h1{font-size:clamp(3rem,15vw,5rem)}.portal-nav{gap:14px;overflow-x:auto}.portal-account-link span{display:none}.portal-heading{margin-bottom:28px}.portal-section{padding-top:62px;padding-bottom:62px}.portal-board-head{align-items:flex-start;flex-direction:column}.portal-filters{width:100%;flex-wrap:wrap}.portal-filters label{flex:1;min-width:100px}.portal-filters select{width:100%}.portal-signin,.portal-footer-main{align-items:flex-start;flex-direction:column}.final-actions{align-items:flex-start;flex-direction:column}.final-actions-buttons{width:100%}.final-actions-buttons .btn,.final-actions-buttons a{flex:1;justify-content:center}.game-running main{padding-bottom:330px!important}.game-running .player.human{position:fixed!important;left:8px;right:8px;bottom:8px;z-index:60;max-height:42vh;min-height:0!important;overflow:auto;box-shadow:0 16px 60px rgba(0,0,0,.72)!important}.game-running .player.human .cards{flex-wrap:nowrap;overflow-x:auto;align-items:flex-end;padding-bottom:5px}.game-running .player.human .card{flex:0 0 auto}.game-running .player.human .human-footer{position:sticky;bottom:0;background:linear-gradient(180deg,rgba(16,23,33,.78),rgba(16,23,33,.99) 25%);padding-bottom:3px}.game-running .banner{top:118px}}

/* v7: image-backed landing heroes, richer rules and mobile game space */
.portal-hero{position:relative;isolation:isolate}
.portal-hero::before{content:"";position:absolute;z-index:-2;top:0;bottom:0;left:50%;width:100vw;transform:translateX(-50%);background:linear-gradient(90deg,rgba(10,13,18,.9) 0%,rgba(10,13,18,.72) 48%,rgba(10,13,18,.84) 100%),var(--portal-hero-image,linear-gradient(#666,#555)) center/cover no-repeat,#60656b}
.portal-hero::after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(7,10,14,.04),rgba(7,10,14,.25));pointer-events:none}
.portal-hero--flip7{--portal-hero-image:url('/assets/img/hero-flip7-placeholder.svg')}
.portal-hero--vengeance{--portal-hero-image:url('/assets/img/hero-vengeance-placeholder.svg')}
.portal-hero .start-card{background:rgba(17,23,31,.88);backdrop-filter:blur(8px)}
.portal-field select{width:100%;box-sizing:border-box;background:#0e151e;color:#f5f8fb;border:1px solid #344456;border-radius:10px;padding:10px 11px;font:inherit}
.portal-rules{margin-top:22px}
.portal-rules h3{margin:22px 0 8px;font-size:18px}
.portal-rules p,.portal-rules li{color:var(--muted,#aab5c2);line-height:1.65}
.portal-rules ul,.portal-rules ol{padding-left:22px}
.portal-rules li+li{margin-top:7px}
.ranking-table td:nth-child(3),.ranking-table td:nth-child(4),.ranking-table td:nth-child(5),.ranking-table th:nth-child(3),.ranking-table th:nth-child(4),.ranking-table th:nth-child(5){text-align:right}
.game-standings{margin-top:18px;border-top:1px solid #2b3848;padding-top:14px}
.game-standings h3{margin:0 0 9px;font-size:16px}
.game-standing-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.07);font-size:13px}
.game-standing-place{font-weight:950;color:#ffe184}
.game-standing-score{font-weight:950}
.game-standing-flip7{color:#9eb0c4;font-size:12px;white-space:nowrap}

@media(max-width:650px){
  body.game-running .game-shell{padding-bottom:250px!important}
  body.game-running .player.human{max-height:36vh!important;padding:10px 10px 8px!important}
  body.game-running .player.human .player-head{margin-bottom:6px!important}
  body.game-running .player.human .cards{min-height:62px!important}
  body.game-running .player.human .human-footer{margin-top:7px!important;padding-top:7px!important}
  .game-standing-row{grid-template-columns:32px minmax(0,1fr) auto;gap:7px}
  .game-standing-flip7{grid-column:2/4;font-size:11px;margin-top:-4px}
  .portal-hero::before{background-position:62% center}
}

/* v7.2: player-count range and dynamic mobile fixed-hand spacing */
.portal-range-field{display:block}.portal-range-field label{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:13px}.portal-range-field label strong{font-size:1.35rem;color:var(--portal-accent)}.portal-range-field input[type=range]{width:100%;accent-color:var(--portal-accent);cursor:pointer}.portal-board-grid{display:grid;grid-template-columns:1fr;gap:22px}.portal-rating-loading,.rating-loading{color:var(--portal-muted)}
@media(max-width:650px){.game-running main{padding-bottom:var(--mobile-human-space,190px)!important}}


/* v8 localized portal chrome */
.portal-tools{display:flex;align-items:center;gap:12px;min-width:0}.portal-brand-image,.portal-footer-logo{display:inline-flex;align-items:center;text-decoration:none}.portal-brand-image img{display:block;width:176px;max-width:30vw;height:42px;object-fit:contain;object-position:left center}.portal-footer-logo img{display:block;width:158px;height:38px;object-fit:contain}.portal-locale-select{max-width:170px;border:1px solid var(--portal-line,#2d3847);background:#101722;color:#f4f7fb;padding:8px 28px 8px 10px;border-radius:9px}.portal-locale-control label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}html[dir="rtl"] .portal-brand-image img{object-position:right center}html[dir="rtl"] .portal-rules ul,html[dir="rtl"] .portal-rules ol{padding-left:0;padding-right:22px}html[dir="rtl"] .cards{direction:ltr}
@media(max-width:650px){.portal-brand-image img{width:128px;height:34px}.portal-tools{gap:7px}.portal-locale-select{max-width:118px;padding:7px 23px 7px 7px;font-size:11px}.portal-footer-logo img{width:140px}}
