:root{
  --bg:#0b0c0e;--panel:#14161a;--card:#1b1e23;--card2:#20242a;--line:#30343b;
  --text:#f4f4f2;--muted:#999fa8;--yellow:#f0c400;--yellow2:#ffd83d;--green:#63d28a;--red:#ff6b6b;
  --shadow:0 12px 26px rgba(0,0,0,.28);--radius:18px;
}
*{box-sizing:border-box}
html{background:#070809;color-scheme:dark}
body{margin:0;background:linear-gradient(180deg,#090a0c 0,#0e1013 45%,#090a0c 100%);color:var(--text);font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;min-height:100vh}
button,input{font:inherit}
button{color:inherit}
.app-shell{max-width:760px;margin:0 auto;min-height:100vh;padding-bottom:88px}
.topbar{position:sticky;top:0;z-index:20;height:64px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;background:rgba(10,11,13,.94);backdrop-filter:blur(16px);border-bottom:1px solid #202328}
.brand{border:0;background:none;padding:0;display:flex;gap:9px;align-items:baseline;cursor:pointer}
.brand-mark{font-size:25px;font-weight:950;letter-spacing:-1.6px;color:var(--yellow)}
.brand-mark span{color:#fff}.brand-season{font-size:13px;font-weight:800;color:#e8e8e4}
.install-btn{border:1px solid #665b08;background:#302b07;color:var(--yellow2);border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800}.hidden{display:none!important}
.main{padding:16px}
.hero{position:relative;overflow:hidden;border:1px solid #3d3612;background:radial-gradient(circle at 84% 12%,rgba(240,196,0,.18),transparent 36%),linear-gradient(135deg,#1b1a12,#111318 60%);border-radius:24px;padding:20px;box-shadow:var(--shadow)}
.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:1.45px;color:var(--yellow);font-weight:900}
.hero h1{font-size:30px;line-height:1.02;margin:8px 0 4px;letter-spacing:-1.1px}.hero .score{font-size:48px;font-weight:950;color:var(--yellow2);letter-spacing:-2px;margin:14px 0 2px}.hero .sub{color:#c1c4c7;font-size:14px}
.section-head{display:flex;justify-content:space-between;align-items:end;margin:22px 2px 10px}.section-head h2{font-size:17px;margin:0}.section-head button{background:none;border:0;color:var(--yellow);font-weight:800;font-size:12px;cursor:pointer}
.card{background:linear-gradient(180deg,var(--card),#17191d);border:1px solid #292d33;border-radius:var(--radius);box-shadow:0 8px 20px rgba(0,0,0,.16)}
.kpi-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.kpi{padding:15px}.kpi b{display:block;font-size:23px;color:var(--yellow2)}.kpi span{font-size:12px;color:var(--muted)}
.top-list,.standings-list,.players-list,.round-list{display:flex;flex-direction:column;gap:7px}
.player-row,.round-row{border:1px solid #292d33;background:#181b1f;border-radius:15px;display:grid;align-items:center;cursor:pointer;transition:.12s ease}.player-row{grid-template-columns:34px 46px minmax(0,1fr) auto;padding:8px 11px}.player-row:active,.round-row:active{transform:scale(.993);background:#20242a}
.rank{font-weight:950;color:#d9d9d5;font-variant-numeric:tabular-nums}.rank.top{color:var(--yellow2)}
.avatar{width:38px;height:38px;border-radius:50%;object-fit:cover;background:#333;border:1px solid #41464e}.avatar-fallback{display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;color:#121212;background:var(--yellow)}
.player-main{min-width:0;padding-left:6px}.username{font-weight:830;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-meta{font-size:11px;color:var(--muted);margin-top:3px}.points{font-size:20px;font-weight:950;color:var(--yellow2);text-align:right}.points small{display:block;font-size:9px;color:var(--muted);font-weight:700}
.delta{font-size:11px;font-weight:800}.up{color:var(--green)}.down{color:var(--red)}.same{color:var(--muted)}
.search{width:100%;border:1px solid #32363d;background:#15181c;border-radius:14px;padding:12px 14px;color:#fff;font-size:16px;outline:none}.search:focus{border-color:#746500;box-shadow:0 0 0 3px rgba(240,196,0,.09)}
.toolbar{display:flex;gap:8px;margin-bottom:12px}.pill{border:1px solid #343840;background:#181b20;border-radius:999px;padding:8px 12px;font-size:12px;color:#ccc}.pill.active{background:#302b08;border-color:#766605;color:var(--yellow2)}
.round-row{grid-template-columns:48px minmax(0,1fr) auto;padding:13px}.round-no{font-size:18px;font-weight:950;color:var(--yellow2)}.round-match{font-weight:850}.round-meta{font-size:11px;color:var(--muted);margin-top:4px}.round-score{font-size:18px;font-weight:950}
.detail-header{padding:18px}.detail-header .back{border:0;background:none;color:var(--yellow);padding:0;margin-bottom:12px;font-weight:850;cursor:pointer}.detail-header h1{margin:0 0 4px;font-size:25px}.detail-header .big-score{font-size:38px;font-weight:950;color:var(--yellow2);margin-top:12px}
.tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;background:#121418;border:1px solid #292d33;border-radius:13px;padding:4px;margin:12px 0}.tabs button{border:0;border-radius:10px;background:none;padding:10px;color:#a9adb3;font-weight:800}.tabs button.active{background:#2a270f;color:var(--yellow2)}
.profile-head{padding:18px;display:grid;grid-template-columns:72px 1fr;gap:14px;align-items:center}.profile-avatar{width:72px;height:72px;border-radius:50%;object-fit:cover;border:2px solid #4a4216}.profile-head h1{font-size:23px;margin:0}.profile-rank{color:var(--yellow2);font-weight:900;margin-top:4px}
.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.mini-stat{padding:12px;text-align:center}.mini-stat b{display:block;color:var(--yellow2);font-size:20px}.mini-stat span{font-size:10px;color:var(--muted)}
.history{display:flex;flex-direction:column;gap:7px}.history-item{display:grid;grid-template-columns:36px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px 12px;border-radius:13px;background:#17191d;border:1px solid #292d33}.rp{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:950;background:#24272d}.rp.p5{background:#5a4b00;color:#ffe45f}.rp.p3{background:#333940;color:#f4f4f4}.rp.p1{background:#1d3627;color:#7ce29d}.rp.p0{color:#a0a4a9}.rp.abs{color:#666}.history-match{font-size:13px;font-weight:800}.history-meta{font-size:10px;color:var(--muted);margin-top:3px}.history-pos{font-size:12px;color:#c4c7cc;text-align:right}
.record{padding:14px;display:flex;justify-content:space-between;gap:12px;align-items:center}.record+.record{border-top:1px solid #292d33}.record-label{font-size:12px;color:var(--muted)}.record-value{font-weight:900;text-align:right;color:var(--yellow2)}
.empty{padding:28px;text-align:center;color:var(--muted)}
.loading-card{padding:20px;border-radius:16px;background:#17191d;color:#aaa;border:1px solid #292d33}
.bottom-nav{position:fixed;z-index:30;bottom:0;left:50%;transform:translateX(-50%);width:min(760px,100%);height:72px;padding:7px max(8px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));display:grid;grid-template-columns:repeat(7,1fr);background:rgba(10,11,13,.96);backdrop-filter:blur(18px);border-top:1px solid #25282d}.bottom-nav button{border:0;background:none;color:#7f858d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;cursor:pointer}.bottom-nav button span{font-size:19px;line-height:1}.bottom-nav button small{font-size:9px;font-weight:800}.bottom-nav button.active{color:var(--yellow2)}
.toast{position:fixed;left:50%;bottom:86px;transform:translateX(-50%);z-index:50;background:#20242a;border:1px solid #464b54;border-radius:13px;padding:10px 14px;font-size:12px;box-shadow:var(--shadow)}
@media (min-width:640px){.main{padding:22px}.kpi-grid{grid-template-columns:repeat(4,1fr)}.stat-grid{grid-template-columns:repeat(7,1fr)}}

/* ===== Mobile Home v2 ===== */
.ui-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;display:block}
.main{padding:14px 12px 18px}
.match-hero{position:relative;overflow:hidden;border:1px solid rgba(240,196,0,.38);border-radius:24px;padding:16px 14px 14px;background:
  radial-gradient(circle at 15% 12%,rgba(240,196,0,.18),transparent 32%),
  radial-gradient(circle at 90% 30%,rgba(255,216,61,.10),transparent 28%),
  linear-gradient(145deg,#181812 0%,#111318 48%,#0d0f12 100%);box-shadow:0 16px 32px rgba(0,0,0,.3)}
.match-hero:before{content:"";position:absolute;inset:0;opacity:.22;pointer-events:none;background:
  repeating-linear-gradient(115deg,transparent 0 24px,rgba(240,196,0,.045) 24px 25px),
  linear-gradient(180deg,transparent 0 58%,rgba(240,196,0,.055) 58% 60%,transparent 60%)}
.hero-glow{position:absolute;width:220px;height:220px;border-radius:50%;right:-100px;top:-110px;background:rgba(240,196,0,.12);filter:blur(12px)}
.hero-top,.scoreboard,.hero-stats{position:relative;z-index:1}
.hero-top{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.hero-matchday{color:#c7c9cc;font-size:12px;margin-top:4px}.hero-arrow{color:var(--yellow2);padding-top:3px}
.scoreboard{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:center;margin:16px 0 14px}
.hero-team{min-width:0;display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center}.hero-team strong{font-size:14px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.score-box{min-width:88px;padding:10px 12px;border-radius:15px;background:linear-gradient(180deg,#17191d,#0b0d0f);border:1px solid #3a3e44;color:#fff;font-size:33px;font-weight:950;letter-spacing:-1px;text-align:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
.team-crest{width:58px;height:64px;clip-path:polygon(50% 0,93% 13%,88% 72%,50% 100%,12% 72%,7% 13%);display:flex;align-items:center;justify-content:center;font-weight:950;font-size:13px;border:1px solid rgba(255,255,255,.1);box-shadow:0 6px 14px rgba(0,0,0,.26)}
.team-crest span{filter:drop-shadow(0 1px 1px rgba(0,0,0,.45))}.team-crest.aek{background:linear-gradient(145deg,#ffe55c,#d7a900);color:#17120a}.team-crest.volos{background:linear-gradient(135deg,#d9272e 0 47%,#243c86 48% 100%);color:#fff}.team-crest.aris{background:#e6b914;color:#111}.team-crest.iraklis{background:#2c63c7;color:#fff}.team-crest.kifisia{background:#2c75bc;color:#fff}.team-crest.nestos{background:#e03b36;color:#fff}.team-crest.lask{background:#eee;color:#1a1a1a}.team-crest.asteras{background:#f2cb1d;color:#182b61}.team-crest.panserraikos{background:#d6232a;color:#fff}.team-crest.levski{background:#2e5ab5;color:#fff}.team-crest.generic{background:#2b3037;color:#fff}
.hero-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.hero-stat{min-width:0;padding:9px 4px 8px;border-radius:13px;background:rgba(11,13,16,.82);border:1px solid #343941;text-align:center}.hero-stat-icon{display:block;font-size:18px;line-height:1}.hero-stat b{display:block;font-size:19px;margin-top:4px}.hero-stat small{display:block;color:#c5c8cc;font-size:9px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hero-stat.p5{border-color:#66580a}.hero-stat.p5 .hero-stat-icon,.hero-stat.p5 b{color:#ffd93d}.hero-stat.p3{border-color:#285d34}.hero-stat.p3 .hero-stat-icon,.hero-stat.p3 b{color:#58d36f}.hero-stat.p1 .hero-stat-icon,.hero-stat.p1 b{color:#cfd5dc}.hero-stat.nono{border-color:#5b2e78}.hero-stat.nono .hero-stat-icon,.hero-stat.nono b{color:#c66cff}
.section-head{margin:19px 2px 9px}.section-head h2{font-size:18px}.section-head button{font-size:11px}
.season-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.season-stat{display:grid;grid-template-columns:38px minmax(0,1fr);gap:8px;align-items:center;padding:12px 10px;border-radius:15px;background:linear-gradient(180deg,#1b1e23,#15171b);border:1px solid #2d3138}.season-icon{width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#111419;color:#ffd83d}.season-icon .ui-icon{width:21px;height:21px}.season-stat b{display:block;font-size:22px;line-height:1;color:#fff}.season-stat span{display:block;font-size:11px;font-weight:800;margin-top:4px}.season-stat small{display:block;color:#8f959d;font-size:9px;margin-top:1px}.stat-0 .season-icon{color:#52a7ff}.stat-1 .season-icon{color:#f7c937}.stat-2 .season-icon{color:#ffd83d}.stat-3 .season-icon{color:#61d778}.stat-4 .season-icon{color:#d5dae0}.stat-5 .season-icon{color:#c46aff}
.leaderboard-card{overflow:hidden;border-radius:18px;background:linear-gradient(180deg,#191c20,#15171a);border:1px solid #2d3137}.leader-row{display:grid;grid-template-columns:34px 44px minmax(0,1fr) 42px;align-items:center;gap:7px;padding:10px 9px;border-bottom:1px solid #282c32;cursor:pointer}.leader-row:last-child{border-bottom:0}.leader-row.leader{background:linear-gradient(90deg,rgba(240,196,0,.15),rgba(240,196,0,.025));box-shadow:inset 3px 0 #f0c400}.leader-rank{font-size:18px;text-align:center;font-weight:900}.leader-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;border:1px solid #474c54}.leader-main{min-width:0}.leader-main .username{font-size:13px}.leader-points{text-align:right;color:#ffd83d;font-size:21px;font-weight:950}.leader-points small{display:block;color:#838991;font-size:8px;font-weight:700}.form-strip{display:flex;gap:4px;margin-top:6px;align-items:center}.form-strip.compact{margin-top:5px}.form-dot{width:23px;height:23px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:950;border:1px solid rgba(255,255,255,.08);background:#242830;color:#b8bdc5}.form-strip.compact .form-dot{width:19px;height:19px;font-size:8px}.form-dot.p5{background:#d4aa00;color:#111}.form-dot.p3{background:#2f9b4a;color:#fff}.form-dot.p1{background:#4a5561;color:#fff}.form-dot.p0{background:#c33434;color:#fff}.form-dot.abs{background:#202328;color:#626871}
.latest-summary{padding:14px 15px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.player-row{grid-template-columns:32px 42px minmax(0,1fr) auto;padding:8px 10px}.player-main{padding-left:4px}.player-row .username{font-size:13px}.player-row .points{font-size:18px}
.bottom-nav{height:70px}.bottom-nav button span{display:flex;align-items:center;justify-content:center}.bottom-nav .ui-icon{width:20px;height:20px}
@media (min-width:520px){.season-grid{grid-template-columns:repeat(3,1fr)}.hero-stat small{font-size:10px}.leader-row{grid-template-columns:38px 48px minmax(0,1fr) 54px;padding:11px 12px}.leader-avatar{width:43px;height:43px}}

/* ===== Global visual refresh v3 ===== */
.screen-hero{position:relative;overflow:hidden;border:1px solid rgba(240,196,0,.28);border-radius:22px;padding:17px;background:radial-gradient(circle at 92% 10%,rgba(240,196,0,.16),transparent 33%),linear-gradient(145deg,#1b1d21,#111317 65%);box-shadow:0 14px 28px rgba(0,0,0,.25)}
.screen-hero.compact{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.screen-hero h1{margin:4px 0 2px;font-size:25px;letter-spacing:-.7px}.screen-hero p{margin:0;color:#a7acb3;font-size:11px}.hero-medal{width:46px;height:46px;border-radius:14px;display:flex;align-items:center;justify-content:center;color:var(--yellow2);background:#101215;border:1px solid #3a3520;flex:0 0 auto}.hero-medal .ui-icon{width:25px;height:25px}
.priority-head{margin-top:17px}.priority-head h2{font-size:19px}
/* triple-digit ranks must never collide with avatars */
.player-row{grid-template-columns:48px 44px minmax(0,1fr) minmax(44px,auto);gap:7px;padding:9px 10px}.player-row .rank{min-width:46px;text-align:center;font-size:13px;letter-spacing:-.2px;white-space:nowrap}.player-row .avatar{justify-self:center}.player-main{padding-left:1px}
/* richer shared list cards */
.player-row,.round-row,.history-item{background:linear-gradient(180deg,#1a1d21,#14171a);border-color:#2b3037;box-shadow:inset 0 1px rgba(255,255,255,.015)}
.player-row:active,.round-row:active{background:#22262c}
.standings-list .player-row:nth-child(-n+3){border-color:#4b4319;background:linear-gradient(90deg,rgba(240,196,0,.08),#16191d 42%)}
.search{margin-bottom:2px;background:#111419;border-color:#30353c}
/* negative No-Noi treatment */
.hero-stat.nono{border-color:#6d2d2d}.hero-stat.nono .hero-stat-icon,.hero-stat.nono b{color:#ff6f6f}.hero-stat-icon.hero-svg{height:20px;display:flex;align-items:center;justify-content:center}.hero-stat-icon.hero-svg .ui-icon{width:19px;height:19px}.stat-5 .season-icon{color:#ff6f6f}
/* rounds */
.round-row.rich{grid-template-columns:42px minmax(0,1fr) auto;gap:8px;padding:11px 10px}.round-clubs{display:grid;grid-template-columns:30px minmax(0,1fr) 30px;gap:7px;align-items:center}.round-clubs .team-crest{width:30px;height:34px;font-size:7px}.round-row .round-score{min-width:44px;text-align:right;color:var(--yellow2)}
/* profile */
.profile-head{margin-bottom:10px}.profile-head .profile-avatar{box-shadow:0 0 0 4px rgba(240,196,0,.08)}.stat-grid .mini-stat{background:linear-gradient(180deg,#1b1e23,#131519);border-color:#2d3138}
/* stats records */
.records-grid{display:grid;gap:8px}.records-grid .record{border:1px solid #2d3138;border-radius:15px;background:linear-gradient(180deg,#1b1e23,#141619)}.records-grid .record+.record{border-top:1px solid #2d3138}.records-grid .record-value{font-size:23px}
/* season deliberately de-emphasized at bottom */
.season-grid{opacity:.94}.season-stat{background:linear-gradient(180deg,#181b1f,#121417)}
@media(max-width:380px){.player-row{grid-template-columns:44px 40px minmax(0,1fr) 42px;gap:5px}.player-row .rank{min-width:42px;font-size:12px}.avatar{width:36px;height:36px}.form-strip.compact .form-dot{width:18px;height:18px}.hero-stats{gap:4px}.hero-stat{padding-inline:2px}}

/* v4 real club crests */
.team-crest.logo{clip-path:none;background:transparent!important;border:0;box-shadow:none;overflow:visible}
.team-crest.logo img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(0,0,0,.38))}
.team-crest.logo .logo-fallback{display:none;width:100%;height:100%;align-items:center;justify-content:center;border-radius:50%;background:#252a31;color:#fff;font-weight:900}
.round-clubs .team-crest.logo img{filter:drop-shadow(0 2px 4px rgba(0,0,0,.35))}

/* ===== v5 mobile polish — continues from v4 ===== */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior-y:none}
body{-webkit-tap-highlight-color:transparent}
button{touch-action:manipulation}
.topbar{padding-left:max(14px,env(safe-area-inset-left));padding-right:max(14px,env(safe-area-inset-right))}
.main{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right))}
.team-crest.logo{flex:0 0 auto}
.team-crest.logo img{display:block}
.round-detail-hero{padding-bottom:15px}
.detail-scoreboard{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:10px;align-items:center;margin:14px 0 11px}
.detail-team{min-width:0;display:flex;flex-direction:column;align-items:center;gap:7px;text-align:center}
.detail-team strong{max-width:100%;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.detail-scoreboard .big-score{margin:0;min-width:88px;padding:9px 10px;border-radius:14px;background:#0d0f12;border:1px solid #3a3f47;text-align:center;font-size:34px;line-height:1}
.detail-crest{width:58px!important;height:58px!important}
.detail-meta{text-align:center;line-height:1.45}
.bottom-nav button{min-height:44px}
.search{min-height:46px}
.round-row,.player-row,.leader-row{min-height:54px}

@media(max-width:430px){
  .app-shell{padding-bottom:calc(74px + env(safe-area-inset-bottom))}
  .topbar{height:56px}
  .brand-mark{font-size:23px}.brand-season{font-size:11px}
  .install-btn{padding:7px 10px;font-size:11px}
  .main{padding-top:11px;padding-bottom:14px}
  .match-hero{border-radius:20px;padding:14px 11px 12px}
  .scoreboard{gap:7px;margin:13px 0 12px}
  .team-crest{width:52px;height:56px}
  .hero-team{gap:5px}.hero-team strong{font-size:12px}
  .score-box{min-width:78px;padding:9px 8px;font-size:30px}
  .hero-stats{gap:5px}.hero-stat{padding:8px 2px 7px}.hero-stat b{font-size:18px}.hero-stat small{font-size:8px}
  .screen-hero{border-radius:19px;padding:14px}.screen-hero h1{font-size:22px}.screen-hero.compact{margin-bottom:11px}
  .section-head{margin-top:16px}
  .leader-row{grid-template-columns:31px 40px minmax(0,1fr) 40px;padding:9px 7px;gap:6px}
  .leader-avatar{width:38px;height:38px}.leader-points{font-size:19px}
  .player-row{grid-template-columns:43px 39px minmax(0,1fr) minmax(40px,auto);padding:8px 7px;gap:5px}
  .player-row .rank{min-width:41px;font-size:12px}.player-row .points{font-size:17px}
  .round-row.rich{grid-template-columns:38px minmax(0,1fr) 42px;padding:10px 7px;gap:6px}
  .round-clubs{grid-template-columns:28px minmax(0,1fr) 28px;gap:5px}.round-clubs .team-crest{width:28px;height:30px}
  .round-match{font-size:12px}.round-meta{font-size:9px}.round-row .round-score{font-size:16px}
  .detail-scoreboard{gap:7px}.detail-scoreboard .big-score{min-width:76px;font-size:30px;padding:8px 7px}.detail-crest{width:52px!important;height:52px!important}.detail-team strong{font-size:12px}
  .bottom-nav{height:calc(66px + env(safe-area-inset-bottom));padding-top:5px;padding-bottom:calc(5px + env(safe-area-inset-bottom))}
  .bottom-nav button{gap:2px}.bottom-nav button small{font-size:8px}.bottom-nav .ui-icon{width:19px;height:19px}
}

@media(max-width:350px){
  .brand-season{display:none}
  .scoreboard{grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);gap:4px}
  .team-crest{width:46px;height:50px}.hero-team strong{font-size:11px}
  .score-box{min-width:70px;font-size:27px;padding-inline:5px}
  .hero-stat-icon{font-size:16px}.hero-stat b{font-size:16px}.hero-stat small{font-size:7px}
  .season-grid{gap:6px}.season-stat{padding:10px 8px;grid-template-columns:33px minmax(0,1fr)}.season-icon{width:32px;height:32px}.season-stat b{font-size:19px}
  .form-strip{gap:3px}.form-dot{width:20px;height:20px}
  .detail-scoreboard{grid-template-columns:minmax(0,1fr) 68px minmax(0,1fr);gap:4px}.detail-scoreboard .big-score{min-width:68px;font-size:27px}.detail-crest{width:46px!important;height:46px!important}
}

/* ===== v6 consistency fixes ===== */
.brand{align-items:center;text-align:left;min-width:0}
.brand-title{display:flex;flex-direction:column;min-width:0;line-height:1.05}
.brand-title strong{font-size:15px;color:var(--yellow);font-weight:950;letter-spacing:-.35px;white-space:nowrap}
.brand-title small{font-size:10px;color:#e8e8e4;font-weight:800;margin-top:3px}
/* The AEK source artwork contains substantially more internal whitespace than the other crests. */
.team-crest.logo.aek img{transform:scale(1.72);transform-origin:center}
.round-clubs .team-crest.logo.aek img{transform:scale(1.62)}
.hero-arrow{display:none}
.round-back{border:0;background:none;color:var(--yellow);font-weight:850;padding:2px 0 9px;cursor:pointer}
.round-match-hero{margin-bottom:12px}
.round-leaderboard{margin-top:0}
.round-leader .round-prediction{color:#969ca4;font-size:9px;margin-top:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.round-leader .leader-points small{max-width:48px;margin-left:auto;line-height:1.05}
@media(max-width:430px){
  .brand-title strong{font-size:13px;letter-spacing:-.25px}
  .brand-title small{font-size:9px;margin-top:2px}
  .round-leader{grid-template-columns:31px 40px minmax(0,1fr) 40px;padding:9px 7px;gap:6px}
}
@media(max-width:350px){
  .brand-title strong{font-size:11px}
  .brand-title small{font-size:8px}
}

/* v8 fun stats */
.fun-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.fun-stat{position:relative;min-width:0;background:linear-gradient(145deg,#1b1e23,#101216);border:1px solid #30343b;border-radius:17px;padding:12px 10px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:8px;align-items:center;overflow:hidden}.fun-stat:first-child{border-color:#6a5b10}.fun-emoji{position:absolute;right:7px;top:4px;font-size:22px;opacity:.18}.fun-avatar,.mover-avatar,.winner-avatar{object-fit:cover;border-radius:50%;background:#292d34}.fun-avatar{width:38px;height:38px}.fun-copy{min-width:0}.fun-copy small,.fun-copy span{display:block;color:#9298a2;font-size:9px}.fun-copy strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin:2px 0}.fun-stat>b{font-size:19px;color:var(--yellow2)}
.winner-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}.winner-card{min-width:0;text-align:center;background:#15181d;border:1px solid #2d3239;border-radius:14px;padding:9px 3px;position:relative}.winner-card>span{position:absolute;top:3px;right:4px;font-size:12px}.winner-avatar{width:34px;height:34px;display:block;margin:0 auto 4px}.winner-card strong{display:block;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.winner-card b{display:block;color:var(--yellow2);font-size:17px;margin-top:3px}.winner-card small{font-size:8px;color:#8f959e}.movement-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}.movement-card{background:#15181d;border:1px solid #2d3239;border-radius:16px;padding:10px}.movement-card h3{font-size:12px;margin:0 0 7px}.mover{display:grid;grid-template-columns:28px minmax(0,1fr) auto;gap:6px;align-items:center;padding:6px 0;border-top:1px solid #252a31}.mover:first-of-type{border-top:0}.mover-avatar{width:28px;height:28px}.mover strong{font-size:10px;overflow:hidden;text-overflow:ellipsis}.mover span{font-size:10px;font-weight:900}.rise{color:#5bd56e}.fall{color:#ff6b6b}.compact-empty{font-size:10px;padding:8px}.h2h-card{background:#15181d;border:1px solid #30343b;border-radius:17px;padding:11px}.h2h-pickers{display:grid;grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr);gap:7px;align-items:center}.h2h-pickers select{width:100%;min-width:0;background:#0d0f12;color:#fff;border:1px solid #363b43;border-radius:10px;padding:9px 6px;font-size:11px}.h2h-pickers span{text-align:center;font-size:10px;font-weight:950;color:var(--yellow2)}#h2hResult{margin-top:9px}.h2h-row{display:grid;grid-template-columns:minmax(0,1fr) 52px 52px;gap:6px;padding:7px 3px;border-top:1px solid #292e35;font-size:10px}.h2h-row span{color:#9da3ac}.h2h-row b{text-align:center;font-size:11px}
@media(max-width:380px){.fun-grid{grid-template-columns:1fr}.winner-strip{gap:4px}.winner-avatar{width:30px;height:30px}.movement-grid{grid-template-columns:1fr}}

/* v9 player trajectory */
.trajectory-card{margin-top:12px;padding:12px 12px 9px;border-radius:17px;background:linear-gradient(145deg,#171a1f,#101216);border:1px solid #30343b}.trajectory-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.trajectory-head small{display:block;color:var(--yellow2);font-size:9px;font-weight:900;letter-spacing:.09em}.trajectory-head strong{display:block;margin-top:3px;font-size:12px}.trajectory-head>span{font-size:9px;color:#8f959e}.trajectory-chart{width:100%;height:128px;display:block;margin-top:5px;overflow:visible}.trajectory-chart line{stroke:#303640;stroke-width:1}.trajectory-chart polyline{fill:none;stroke:#f1c40f;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 4px rgba(241,196,15,.22))}.trajectory-chart circle{fill:#101216;stroke:#ffd93d;stroke-width:3}.trajectory-axis{display:flex;justify-content:space-between;gap:5px;color:#7f8791;font-size:8px}.trajectory-axis span:nth-child(2){text-align:center;flex:1}
.simple-stats-head{min-height:auto}.simple-stats-head h1{margin:0;font-size:24px}
.game-launch{margin:14px 0 4px;border:1px solid #66580a;background:linear-gradient(135deg,#24210b,#121419 60%);border-radius:18px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.game-launch>div{display:flex;align-items:center;gap:10px;min-width:0}.game-launch>div>span{font-size:28px}.game-launch strong{display:block;font-size:14px}.game-launch small{display:block;font-size:9px;color:#a9afb7;margin-top:2px}.game-launch button{border:1px solid #786c17;background:#373109;color:#ffd93d;border-radius:12px;padding:9px 12px;font-weight:950;font-size:10px}
body.game-open{overflow:hidden}.game-overlay{position:fixed;inset:0;z-index:9999;background:rgba(5,6,8,.92);display:flex;align-items:center;justify-content:center;padding:10px}.game-panel{width:min(430px,100%);background:#0d0f12;border:1px solid #343941;border-radius:22px;overflow:hidden;box-shadow:0 20px 80px #000}.game-top,.game-hud{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px}.game-top{border-bottom:1px solid #252a31}.game-top strong{display:block;color:#ffd93d;font-size:17px}.game-top small{display:block;color:#8f959e;font-size:9px;margin-top:2px}.game-close{width:34px;height:34px;border-radius:50%;border:1px solid #3a4049;background:#171a1f;color:#fff;font-size:22px}.game-hud{padding-top:8px;padding-bottom:8px;font-size:11px;color:#aeb4bc}.game-hud b{color:#fff;font-size:15px;margin-left:3px}.game-field{position:relative;height:min(58vh,470px);min-height:330px;overflow:hidden;background:linear-gradient(#15345a 0 52%,#8bc4eb 52% 72%,#263d1c 72% 100%);touch-action:none}.game-field:after{content:"";position:absolute;left:0;right:0;bottom:0;height:11%;background:repeating-linear-gradient(90deg,#29481b 0 12px,#355724 12px 24px);opacity:.65}.game-cloud{position:absolute;color:rgba(255,255,255,.75);font-size:44px;top:9%;z-index:1}.game-cloud.c1{left:10%}.game-cloud.c2{right:13%;top:20%;font-size:35px}.aek-fan{position:absolute;bottom:5%;left:50%;transform:translateX(-50%);width:58px;height:82px;z-index:8;transition:left .06s linear;display:flex;flex-direction:column;align-items:center}.fan-head{font-size:34px;line-height:34px;z-index:2}.fan-shirt{margin-top:-2px;width:54px;height:44px;border-radius:10px 10px 5px 5px;background:repeating-linear-gradient(90deg,#f4cf16 0 9px,#151515 9px 18px);color:#fff;text-shadow:0 1px 3px #000;display:grid;place-items:center;font-weight:950;font-size:12px;border:2px solid #111}.fall-item{position:absolute;top:-12%;transform:translateX(-50%);z-index:6;display:grid;place-items:center;width:48px;height:48px;border-radius:50%;font-weight:1000;font-size:15px;box-shadow:0 5px 12px rgba(0,0,0,.28)}.fall-item.p5{background:#ffd93d;color:#171717;border:3px solid #fff7b0}.fall-item.p3{background:#50d56b;color:#07170b;border:3px solid #bdf7c8}.fall-item.nono{width:58px;height:42px;border-radius:12px;background:#5a1f28;color:#ff858d;border:2px solid #ff646f;font-size:10px}.fall-item.caught{transform:translateX(-50%) scale(1.35);opacity:0}.game-message{position:absolute;z-index:20;left:50%;top:44%;transform:translate(-50%,-50%);width:min(260px,80%);background:rgba(10,12,15,.92);border:1px solid #4c535e;border-radius:18px;padding:18px;text-align:center}.game-message.hidden{display:none}.game-message strong{display:block;color:#ffd93d;font-size:22px}.game-message small{display:block;margin:6px 0 12px;color:#c4c9d0}.game-message button{border:1px solid #786c17;background:#39320a;color:#ffd93d;border-radius:12px;padding:10px 20px;font-weight:950}.game-controls{display:grid;grid-template-columns:52px 1fr 52px;align-items:center;gap:8px;padding:9px 11px}.game-controls button{height:40px;border-radius:12px;border:1px solid #3b414a;background:#1a1d22;color:#ffd93d;font-size:18px}.game-controls span{text-align:center;font-size:9px;color:#7f8791}


/* v10 NONOS identity + arcade game */
.nono-hero-avatar,.nono-kpi-avatar,.nono-inline,.nono-fun-avatar,.nono-rule-avatar,.nono-summary-avatar,.toast-nono{object-fit:cover;border-radius:50%;border:1px solid rgba(255,213,64,.8);background:#111}.nono-hero-avatar{width:22px;height:22px}.hero-stat-icon.nono-photo{height:23px;display:flex;align-items:center;justify-content:center}.nono-kpi-avatar{width:27px;height:27px;display:block}.nono-inline{width:18px;height:18px;vertical-align:middle;margin-right:5px}.h2h-nono{display:flex;align-items:center}.nono-fun-avatar{width:28px;height:28px;opacity:1;box-shadow:0 0 0 2px #4c1d1d,0 0 12px rgba(255,89,89,.35)}.fun-stat.nono-record{border-color:#6b3030}.fun-stat.nono-record .fun-emoji{opacity:1;top:6px;right:7px}.game-launch-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff 0 8%,#f6cf18 9% 48%,#121212 49% 58%,#f6cf18 59%);box-shadow:0 0 15px rgba(246,207,24,.28)}

body.game-open{overflow:hidden}.v10-game.game-overlay{background:rgba(3,4,5,.96);padding:0;align-items:stretch}.v10-game .game-panel{width:min(460px,100%);height:100%;max-height:none;margin:auto;border:0;border-radius:0;background:#08090b;box-shadow:none;display:flex;flex-direction:column}.v10-game .game-top{flex:0 0 auto;padding:9px 11px;background:linear-gradient(180deg,#11151a,#090b0e);border-bottom:1px solid #333841}.game-brand{display:flex;align-items:center;gap:8px;min-width:0}.game-ball{font-size:22px;filter:drop-shadow(0 0 6px rgba(255,211,50,.25))}.v10-game .game-top strong{font-size:16px;letter-spacing:.01em}.v10-game .game-top small{font-size:8px}.game-top-actions{display:flex;gap:6px}.game-pause,.v10-game .game-close{width:34px;height:34px;border-radius:10px;border:1px solid #454b55;background:#11151a;color:#fff;font-weight:900;font-size:17px}.v10-game .game-close{font-size:21px}.v10-game .game-hud{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:7px 8px 5px;background:#090b0e}.hud-box{min-width:0;background:#12151a;border:1px solid #2d333c;border-radius:9px;padding:5px 4px;text-align:center}.hud-box small{display:block;color:#7f8792;font-size:7px;font-weight:900;letter-spacing:.08em}.hud-box b{display:block!important;margin:1px 0 0!important;color:#fff!important;font-size:16px!important}.hud-box.combo b{color:#ffd83b!important}.hud-box.level b{color:#8ed3ff!important}.hud-lives{grid-column:1/-1;color:#ff4e5a;font-size:15px;letter-spacing:3px;text-align:center;line-height:18px;text-shadow:0 0 9px rgba(255,60,75,.35)}
.v10-game .game-field{flex:1 1 auto;height:auto;min-height:360px;max-height:none;background:#07111d;touch-action:none;isolation:isolate}.stadium-sky{position:absolute;inset:0 0 52% 0;background:radial-gradient(circle at 50% 70%,rgba(240,190,45,.15),transparent 38%),linear-gradient(#050b13,#101823 70%,#17171a);z-index:0}.floodlight{position:absolute;top:4%;width:94px;height:140px;z-index:1;opacity:.9;filter:drop-shadow(0 0 12px rgba(255,238,171,.7))}.floodlight:before{content:"";position:absolute;top:0;width:58px;height:24px;border:2px solid #aaa;background:repeating-linear-gradient(90deg,#fffbc6 0 7px,#8c8b75 7px 9px);box-shadow:0 0 30px #ffe58a}.floodlight:after{content:"";position:absolute;top:20px;width:4px;height:120px;background:#59606a}.floodlight.left{left:2%;transform:rotate(-6deg)}.floodlight.left:before{left:0}.floodlight.left:after{left:25px}.floodlight.right{right:2%;transform:scaleX(-1) rotate(-6deg)}.floodlight.right:before{left:0}.floodlight.right:after{left:25px}.stadium-stand{position:absolute;left:0;right:0;top:24%;height:45%;z-index:1;background:linear-gradient(180deg,#252018 0 10%,#111317 10% 78%,#222 78%);border-top:2px solid #544821;clip-path:polygon(0 10%,100% 0,100% 100%,0 100%)}.crowd{position:absolute;inset:8% 0 10%;opacity:.95;background:radial-gradient(circle at 10px 10px,#f6c721 0 2px,transparent 2.5px) 0 0/17px 15px,radial-gradient(circle at 6px 7px,#c9c9c9 0 1.6px,transparent 2px) 0 0/13px 12px,radial-gradient(circle at 9px 8px,#222 0 2px,transparent 2.5px) 0 0/11px 13px,linear-gradient(#29251c,#121212)}.banner{position:absolute;left:8%;right:8%;bottom:8%;padding:5px 3px;background:#c69d05;color:#111;border:2px solid #111;text-align:center;font-size:9px;font-weight:1000;letter-spacing:.12em;transform:rotate(-1deg);box-shadow:0 2px 0 #000}.pitch{position:absolute;left:0;right:0;bottom:0;height:38%;z-index:2;background:repeating-linear-gradient(90deg,#1d4d25 0 44px,#23592b 44px 88px);border-top:2px solid rgba(255,255,255,.35)}.pitch:before{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:1px solid rgba(255,255,255,.25)}.pitch:after{content:"";position:absolute;left:50%;top:0;width:100px;height:50px;border:1px solid rgba(255,255,255,.25);border-radius:0 0 100px 100px;transform:translateX(-50%)}.pitch span{position:absolute;left:0;right:0;bottom:10px;border-top:1px solid rgba(255,255,255,.2)}
.v10-game .aek-fan{bottom:3.5%;width:78px;height:105px;z-index:12;transition:left .035s linear;filter:drop-shadow(0 6px 5px rgba(0,0,0,.5))}.v10-game .fan-head{position:absolute;top:15px;left:29px;width:25px;height:27px;border-radius:45% 45% 48% 48%;background:linear-gradient(135deg,#e8b47f,#b87449);border:2px solid #28180f;z-index:4}.fan-hair{position:absolute;top:10px;left:27px;width:30px;height:17px;border-radius:60% 50% 30% 20%;background:#17120f;z-index:5;transform:rotate(-5deg)}.fan-body{position:absolute;left:18px;top:38px;width:48px;height:54px;border-radius:12px 12px 8px 8px;border:2px solid #0b0b0b;background:repeating-linear-gradient(90deg,#f3c817 0 8px,#171717 8px 16px);display:flex;align-items:center;justify-content:center;z-index:3}.fan-body b{font-size:10px;color:#fff;text-shadow:0 1px 2px #000;transform:rotate(-5deg)}.fan-arm{position:absolute;top:45px;width:10px;height:48px;background:#ca8a5c;border:2px solid #2b180f;border-radius:8px;z-index:2;transform-origin:top center}.arm-l{left:13px;transform:rotate(30deg)}.arm-r{right:7px;transform:rotate(-30deg)}.catcher{position:absolute;left:3px;top:72px;width:76px;height:24px;border:3px solid #322b12;border-radius:7px 7px 18px 18px;background:repeating-linear-gradient(90deg,#dbad16 0 7px,#8d6e09 7px 9px);z-index:6;box-shadow:inset 0 3px 0 #f7dd58}.catcher:before{content:"";position:absolute;left:8px;right:8px;top:-10px;height:10px;border:3px solid #e8c430;border-bottom:0;border-radius:50% 50% 0 0}.nono-hit{animation:nonoShake .36s linear}.nono-hit .fan-body{filter:saturate(.5)}@keyframes nonoShake{0%,100%{transform:translateX(-50%)}25%{transform:translateX(calc(-50% - 7px)) rotate(-4deg)}75%{transform:translateX(calc(-50% + 7px)) rotate(4deg)}}
.v10-game .fall-item{width:54px;height:54px;border:0;box-shadow:none;background:transparent;overflow:visible;z-index:10;transition:opacity .12s,transform .12s;will-change:top,left,transform}.v10-game .fall-item.p5{clip-path:polygon(50% 0,61% 34%,98% 35%,68% 56%,79% 93%,50% 72%,21% 93%,32% 56%,2% 35%,39% 34%);background:radial-gradient(circle,#fff7a6 0 18%,#ffd528 19% 58%,#e79d00 59% 100%);filter:drop-shadow(0 0 9px rgba(255,205,32,.9));border:0}.v10-game .fall-item.p5 span{font-size:13px;color:#191000;text-shadow:0 1px 0 #fff;font-weight:1000}.v10-game .fall-item.p3{border-radius:50%;background:radial-gradient(circle at 35% 28%,#fff 0 8%,#eef3f7 9% 32%,#99a5af 55%,#424952 78%,#dbe0e4 100%);border:2px solid #f5f7fa;box-shadow:0 0 13px rgba(197,223,255,.7),inset 0 0 8px #fff}.v10-game .fall-item.p3 span{font-size:13px;color:#111;text-shadow:0 1px #fff}.v10-game .fall-item.nono{width:62px;height:70px;border:0;border-radius:0;display:flex;flex-direction:column;gap:2px;background:transparent;filter:drop-shadow(0 0 7px rgba(255,59,75,.75))}.fall-nono-img{width:50px;height:50px;border-radius:50%;object-fit:cover;border:3px solid #ff4857;box-shadow:0 0 0 2px #2b090d}.v10-game .fall-item.nono em{font-style:normal;font-size:8px;color:#ff6975;background:#26090c;border:1px solid #7c2028;border-radius:8px;padding:2px 5px}.v10-game .fall-item.caught{opacity:0;transform:translateX(-50%) scale(1.65)}
.game-toast{position:absolute;z-index:30;left:50%;top:18%;transform:translate(-50%,-10px) scale(.92);opacity:0;pointer-events:none;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:900;white-space:nowrap;transition:.18s;background:rgba(7,9,12,.9);border:1px solid #49515b;color:#fff}.game-toast.show{opacity:1;transform:translate(-50%,0) scale(1)}.game-toast.good{border-color:#8d7510;color:#ffe258}.game-toast.bad{border-color:#7b232c;color:#ff8089}.game-toast.miss{border-color:#814129;color:#ff9a69}.game-toast.neutral{color:#dbe1e8}.toast-nono{width:24px;height:24px;vertical-align:middle;margin-right:5px}.game-burst{position:absolute;z-index:25;width:1px;height:1px;pointer-events:none}.game-burst i{position:absolute;width:7px;height:7px;border-radius:50%;background:#ffd83b;animation:burst .5s ease-out forwards}.game-burst.bad i{background:#ff4d5d}.game-burst i:nth-child(1){--x:34px;--y:-10px}.game-burst i:nth-child(2){--x:-30px;--y:-16px}.game-burst i:nth-child(3){--x:20px;--y:27px}.game-burst i:nth-child(4){--x:-23px;--y:25px}.game-burst i:nth-child(5){--x:3px;--y:-35px}.game-burst i:nth-child(6){--x:-2px;--y:36px}@keyframes burst{to{transform:translate(var(--x),var(--y)) scale(.1);opacity:0}}
.v10-game .game-message{top:46%;width:min(310px,88%);padding:16px 15px;border-color:#665713;background:linear-gradient(180deg,rgba(10,12,14,.96),rgba(5,6,8,.97));box-shadow:0 12px 30px rgba(0,0,0,.55),0 0 25px rgba(222,178,18,.13)}.game-title-art span{display:block;color:#f4c817;font-size:17px;font-weight:950;letter-spacing:.1em}.game-title-art strong{font-size:37px!important;line-height:.9!important;font-style:italic;letter-spacing:-.04em;text-shadow:2px 3px 0 #6b4100,0 0 15px rgba(255,205,36,.25)}.game-rules{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:13px 0 9px}.game-rules>div{min-width:0;background:#11151a;border:1px solid #333a43;border-radius:12px;padding:7px 4px;display:flex;align-items:center;justify-content:center;gap:5px}.game-rules b{font-size:13px;color:#fff}.rule-star,.rule-orb{display:grid;place-items:center;width:30px;height:30px;font-weight:1000;font-size:10px}.rule-star{clip-path:polygon(50% 0,61% 34%,98% 35%,68% 56%,79% 93%,50% 72%,21% 93%,32% 56%,2% 35%,39% 34%);background:#ffd62c;color:#191100}.rule-orb{border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#a8b0b8 55%,#40464d);color:#121212;border:1px solid #fff}.rule-nono{display:flex}.nono-rule-avatar,.nono-summary-avatar{width:30px;height:30px;border:2px solid #ff4f5d}.v10-game .game-message small{font-size:9px;line-height:1.45;margin:4px 0 12px}.v10-game .game-message button{width:100%;background:linear-gradient(#ffe04d,#efb90f);border:0;color:#15110a;padding:12px 14px;border-radius:13px;font-size:13px;box-shadow:0 4px 0 #8b6500}.v10-game .game-message button:active{transform:translateY(2px);box-shadow:0 2px 0 #8b6500}.v10-game .game-controls{flex:0 0 auto;background:#090b0e;padding:6px 8px 8px}.v10-game .game-controls button{height:42px}.v10-game .game-controls span{font-size:8px}.game-over .over-title{font-size:30px;font-weight:1000;line-height:.9;color:#ffd72f;text-shadow:2px 3px 0 #6c4500}.game-over .over-title span{color:#f14d3c}.final-score{margin:10px auto 8px;padding:8px 14px;border:1px solid #4b515a;border-radius:13px;background:#0e1115}.final-score small{margin:0!important;font-size:8px!important;letter-spacing:.12em}.final-score b{display:block;color:#ffe044;font-size:38px}.game-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-bottom:11px}.game-summary>div{border:1px solid #2d343c;border-radius:10px;padding:6px 3px;background:#101318;display:flex;align-items:center;justify-content:center;gap:4px;min-height:39px}.game-summary small{margin:0!important;font-size:7px!important}.game-summary b{font-size:12px}.game-summary .rule-star,.game-summary .rule-orb{width:25px;height:25px;font-size:8px}
@media(max-width:360px){.v10-game .game-top strong{font-size:14px}.v10-game .game-top small{font-size:7px}.hud-box b{font-size:14px!important}.v10-game .game-field{min-height:330px}.v10-game .game-message{width:91%;padding:13px 12px}.game-title-art strong{font-size:33px!important}.v10-game .aek-fan{transform:translateX(-50%) scale(.9);transform-origin:bottom center}}
@media(prefers-reduced-motion:reduce){.v10-game .fall-item,.game-toast,.game-burst i{transition:none!important;animation:none!important}}
/* v11 canvas arcade */
.v11-game.game-overlay{background:#030405;padding:0;align-items:stretch}.v11-game .game-panel{width:min(460px,100%);height:100%;margin:auto;border:0;border-radius:0;background:#08090b;display:flex;flex-direction:column}.v11-game .game-top{padding:9px 11px;background:#0b0e12}.v11-game .game-hud{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;padding:7px 8px 5px}.v11-game .canvas-wrap{position:relative;flex:1;min-height:390px;overflow:hidden;background:#050912;touch-action:none}.v11-game canvas{display:block;width:100%;height:100%;position:absolute;inset:0}.v11-game .game-message{top:46%;z-index:5}.v11-game .game-controls{background:#090b0e;padding:7px 9px 9px;grid-template-columns:64px 1fr 64px}.v11-game .game-controls button{height:48px;font-size:22px;touch-action:none;user-select:none}.v11-game .game-controls button:active{background:#302a0b;transform:scale(.97)}.v11-game .game-controls span{font-size:8px;font-weight:850;letter-spacing:.05em;color:#9098a2}.v11-game .hud-box{background:#12151a;border:1px solid #2d333c;border-radius:9px;padding:5px 4px;text-align:center}.v11-game .hud-box small{display:block;color:#7f8792;font-size:7px;font-weight:900}.v11-game .hud-box b{display:block!important;margin:1px 0 0!important;font-size:16px!important}.v11-game .hud-box.combo b{color:#ffd83b!important}.v11-game .hud-box.level b{color:#8ed3ff!important}.v11-game .hud-lives{grid-column:1/-1;color:#ff4e5a;text-align:center;letter-spacing:3px;line-height:18px}.v11-game .game-message{position:absolute;left:50%;transform:translate(-50%,-50%);width:min(310px,88%)}
@media(max-width:360px){.v11-game .canvas-wrap{min-height:350px}.v11-game .game-controls{grid-template-columns:58px 1fr 58px}}

/* v13 — standalone Arcade tab */
@media(max-width:430px){.bottom-nav{padding-left:max(4px,env(safe-area-inset-left));padding-right:max(4px,env(safe-area-inset-right))}.bottom-nav button small{font-size:7.5px}.bottom-nav .ui-icon{width:18px;height:18px}}
@media(max-width:350px){.bottom-nav button small{font-size:7px}.bottom-nav .ui-icon{width:17px;height:17px}}

/* ===== v18 data-driven next-round preview ===== */
.next-match-strip{margin:8px 0 0;padding:7px 10px;border:1px solid #343019;border-radius:13px;background:linear-gradient(90deg,rgba(240,196,0,.085),rgba(18,20,23,.92));display:flex;align-items:center;justify-content:space-between;gap:9px;min-height:42px}
.next-label{flex:0 0 auto;color:#d6b91c;font-size:8px;font-weight:950;letter-spacing:.09em;white-space:nowrap}.next-label span{color:#777}
.next-fixture{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:6px}.next-fixture strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.next-fixture strong span{color:#747980;margin:0 2px}.next-fixture small{font-size:8px;color:#8f959d;white-space:nowrap}
.next-match-strip .team-crest{width:25px!important;height:27px!important;font-size:6px!important}.next-match-strip .team-crest.logo.aek img{transform:scale(1.55)}
@media(max-width:380px){.next-match-strip{padding:6px 7px;gap:5px}.next-label{font-size:7px}.next-fixture{gap:4px}.next-fixture strong{font-size:10px}.next-fixture small{display:none}.next-match-strip .team-crest{width:22px!important;height:24px!important}}


/* ===== v19 History / Hall of Fame ===== */
.history-head{background:radial-gradient(circle at 92% 8%,rgba(255,207,42,.22),transparent 36%),linear-gradient(145deg,#1d1c17,#111317 68%)}
.history-tabs{display:flex;gap:5px;padding:4px;margin:0 0 12px;border:1px solid #2c3036;border-radius:14px;background:#121419;overflow-x:auto;scrollbar-width:none}.history-tabs::-webkit-scrollbar{display:none}.history-tabs button{border:0;border-radius:10px;padding:9px 11px;background:transparent;color:#9fa5ad;font-size:10px;font-weight:900;white-space:nowrap}.history-tabs button.active{color:#17130a;background:linear-gradient(180deg,#ffe35a,#f0c400);box-shadow:0 4px 12px rgba(240,196,0,.18)}
.history-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:10px}.history-kpis>div{padding:10px 5px;border:1px solid #2c3036;border-radius:14px;background:linear-gradient(145deg,#17191d,#111318);text-align:center}.history-kpis b{display:block;color:var(--yellow2);font-size:22px;line-height:1}.history-kpis small{display:block;margin-top:5px;color:#858b94;font-size:8px;line-height:1.2}
.history-king{display:grid;grid-template-columns:34px 56px minmax(0,1fr);gap:10px;align-items:center;margin-bottom:12px;padding:12px;border:1px solid #615415;border-radius:18px;background:radial-gradient(circle at 15% 10%,rgba(255,215,50,.15),transparent 38%),linear-gradient(135deg,#211d0c,#15171b 72%);box-shadow:0 12px 24px rgba(0,0,0,.25)}.king-crown{font-size:27px;color:#ffd62b;text-align:center}.king-avatar{width:54px;height:54px;border-radius:50%;overflow:hidden;border:2px solid #e7bb10;background:#222;display:flex;align-items:center;justify-content:center}.king-avatar img{width:100%;height:100%;object-fit:cover}.history-king small{font-size:8px;letter-spacing:.09em;color:#c9ad2a;font-weight:950}.history-king h2{margin:2px 0 1px;font-size:20px}.history-king p{margin:0;color:#9aa0a8;font-size:9px}
.history-section{margin:0 0 12px;padding:11px;border:1px solid #2b2f35;border-radius:17px;background:linear-gradient(145deg,#181a1e,#101216)}.history-section-title{display:flex;gap:9px;align-items:center;margin-bottom:9px}.history-section-title>span{width:34px;height:34px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:#0e1013;border:1px solid #39331a;font-size:18px}.history-section-title b{display:block;font-size:13px}.history-section-title small{display:block;margin-top:2px;color:#858b93;font-size:8px}
.hof-list{display:grid;gap:5px}.hof-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px 8px;border-radius:11px;background:#111318;border:1px solid #24282e}.hof-row.top{background:linear-gradient(90deg,rgba(240,196,0,.09),#111318 45%)}.hof-rank{text-align:center;font-weight:950;font-size:13px}.hof-name b{display:block;font-size:11px}.hof-name small{display:block;color:#7f858d;font-size:8px;margin-top:1px}.hof-medals{display:flex;gap:3px;justify-content:flex-end;flex-wrap:wrap;max-width:130px}.medal{padding:3px 5px;border-radius:999px;background:#202328;font-size:8px;font-weight:900;white-space:nowrap}.medal.gold{color:#ffd83d}.medal.silver{color:#d9dde4}.medal.bronze{color:#d18a4b}.medal.cup{color:#f2c400}
.voice-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}.voice-card{min-width:0;border:1px solid #2d3239;border-radius:14px;padding:8px;background:linear-gradient(145deg,#1a1c21,#111318);color:#fff;display:grid;grid-template-columns:40px minmax(0,1fr) 25px;gap:7px;align-items:center;text-align:left}.voice-card.playing{border-color:#806d14;box-shadow:0 0 0 1px rgba(240,196,0,.12) inset}.voice-avatar{width:38px;height:38px;border-radius:50%;overflow:hidden;border:1px solid #4b4f56;background:#222}.voice-avatar img{width:100%;height:100%;object-fit:cover}.voice-copy{min-width:0}.voice-copy b{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.voice-copy small{display:block;margin-top:2px;color:#8d939b;font-size:7px;line-height:1.25}.voice-play{width:25px;height:25px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#f0c400;color:#17130a;font-size:10px;font-weight:950}
.season-list{display:grid;gap:6px}.history-season{display:grid;grid-template-columns:56px minmax(0,1fr);gap:8px;padding:8px;border-radius:12px;border:1px solid #252930;background:#111318}.season-year{font-weight:950;color:#e7c52a;font-size:10px;display:flex;align-items:center}.season-title{min-width:0}.season-title small{display:block;color:#747b84;font-size:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.season-title b{display:block;font-size:11px;margin-top:1px}.podium-mini{grid-column:2;display:flex;gap:8px;color:#9298a0;font-size:8px;white-space:nowrap;overflow:hidden}.podium-mini span{overflow:hidden;text-overflow:ellipsis}.cup-season{grid-template-columns:56px minmax(0,1fr) 32px;align-items:center}.cup-season .season-title small{margin-top:2px}.season-cup{text-align:center;font-size:18px}
@media(max-width:430px){.bottom-nav button small{font-size:7px}.bottom-nav .ui-icon{width:17px;height:17px}.voice-grid{grid-template-columns:1fr}.hof-medals{max-width:105px}.history-section{padding:9px}.history-tabs button{padding:8px 9px;font-size:9px}}
@media(max-width:350px){.bottom-nav button small{font-size:6.4px}.bottom-nav .ui-icon{width:16px;height:16px}.history-king{grid-template-columns:28px 48px minmax(0,1fr)}.king-avatar{width:46px;height:46px}.hof-row{grid-template-columns:30px minmax(0,1fr)}.hof-medals{grid-column:2;justify-content:flex-start;max-width:none}}


/* ===== v20 History polish ===== */
.hof-podium{display:grid;grid-template-columns:1fr 1fr 1fr;gap:7px;align-items:end}.hof-podium-card{position:relative;min-width:0;padding:12px 6px 10px;border-radius:16px;text-align:center;border:1px solid #34373d;background:linear-gradient(160deg,#1b1e22,#101216);overflow:hidden}.hof-podium-card.p1{min-height:170px;border-color:#7b6716;background:radial-gradient(circle at 50% 0,rgba(255,214,48,.18),transparent 43%),linear-gradient(160deg,#211d0d,#111318)}.hof-podium-card.p2{min-height:155px}.hof-podium-card.p3{min-height:147px}.podium-rank{font-size:24px}.podium-avatar{width:54px;height:54px;margin:4px auto 7px;border-radius:50%;overflow:hidden;border:2px solid #d2b62a;background:#222;display:flex;align-items:center;justify-content:center;font-weight:950}.podium-avatar img{width:100%;height:100%;object-fit:cover}.hof-podium-card>b{display:block;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hof-podium-card small{display:block;color:#9197a0;font-size:8.5px;line-height:1.3;margin-top:5px}.podium-honours{display:flex;justify-content:center;gap:5px;margin-top:6px;flex-wrap:wrap}.podium-honours span{font-size:9px;font-weight:900;background:#202328;border-radius:999px;padding:3px 5px}
.honours-chart{display:grid;gap:8px}.chart-row{display:grid;grid-template-columns:94px minmax(0,1fr) 22px;gap:7px;align-items:center}.chart-row>span{font-size:10px;font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chart-track{height:9px;border-radius:99px;background:#24272d;overflow:hidden}.chart-track i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#af8e00,#ffdd2f)}.chart-row>b{text-align:right;font-size:11px;color:#f6d32a}
.hof-list.full{gap:7px}.hof-row-v20{display:grid;grid-template-columns:34px minmax(0,1fr);gap:7px;padding:9px;border:1px solid #292d33;border-radius:13px;background:#111318}.hof-row-v20.top{border-color:#504719;background:linear-gradient(90deg,rgba(240,196,0,.08),#111318 45%)}.hof-main{min-width:0}.hof-name-v20{display:flex;align-items:baseline;gap:7px;justify-content:space-between}.hof-name-v20 b{font-size:12px}.hof-name-v20 small{font-size:8.5px;color:#8b9199;text-align:right}.sport-breakdown{display:flex;gap:5px;margin-top:6px;flex-wrap:wrap}.sport-line{display:flex;align-items:center;gap:3px;padding:3px 5px;border-radius:9px;background:#1b1e22;border:1px solid #292d33}.sport-line>b{font-size:10px}.sport-medal{font-size:8.5px;color:#686e76;font-weight:850}.sport-medal.has{color:#dadddf}.cup-line .sport-medal.has{color:#f3d02c}
.collectors-intro{margin:-1px 0 9px;color:#8f959d;font-size:9px;line-height:1.4}.collectors-list{display:grid;gap:6px}.collector-card{display:grid;grid-template-columns:25px 40px minmax(0,1fr) 28px;gap:8px;align-items:center;padding:8px;border:1px solid #292d33;border-radius:13px;background:linear-gradient(145deg,#191b1f,#111317)}.collector-rank{font-size:10px;color:#7f858d;text-align:center;font-weight:900}.collector-avatar{width:38px;height:38px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;border:1px solid #444;background:#222;font-size:10px;font-weight:950}.collector-avatar img{width:100%;height:100%;object-fit:cover}.collector-copy b{display:block;font-size:11px}.collector-copy small{display:block;font-size:8.5px;color:#8b9198;margin:1px 0 4px}.collector-copy div{display:flex;gap:5px}.collector-copy span{font-size:8px;padding:2px 5px;border-radius:999px;background:#22262b}.collector-card>strong{font-size:18px;color:#f0c400;text-align:center}
.history-season{padding:10px 11px}.season-heading{display:flex;align-items:center;gap:7px;margin-bottom:8px}.season-heading b{font-size:12px;color:#e6c329;line-height:1.25}.season-heading span{font-size:7.5px;color:#7f858d;font-weight:900;letter-spacing:.08em}.season-podium{display:grid;gap:5px}.place{display:grid;grid-template-columns:22px minmax(0,1fr);gap:5px;align-items:center;padding:5px 7px;border-radius:9px;background:#181b1f}.place span{font-size:14px}.place b{font-size:11.5px}.place.winner{background:linear-gradient(90deg,rgba(240,196,0,.12),#181b1f)}.place.winner b{font-size:13.5px;color:#fff}.cup-season-v20{display:block}.cup-final{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center}.cup-final small{display:block;font-size:7.5px;color:#b99d21;font-weight:950}.cup-final b{display:block;font-size:14px;margin-top:2px}.cup-vs{font-size:12px;color:#9ca2aa;text-align:right}.cup-vs strong{font-size:12.5px;color:#e5e7ea}
@media(max-width:380px){.hof-podium{gap:4px}.hof-podium-card{padding-left:4px;padding-right:4px}.podium-avatar{width:48px;height:48px}.hof-podium-card>b{font-size:10.5px}.podium-honours{gap:3px}.podium-honours span{font-size:8px}.chart-row{grid-template-columns:80px minmax(0,1fr) 20px}.hof-name-v20{display:block}.hof-name-v20 small{display:block;text-align:left;margin-top:2px}}


/* ===== v21 History corrections ===== */
.league-season-v21{display:grid;grid-template-columns:minmax(128px,42%) minmax(0,1fr);gap:11px;align-items:start;padding:11px 12px}
.league-season-v21 .season-heading{display:block;margin:2px 0 0;min-width:0}
.league-season-v21 .season-heading b{display:block;font-size:12.5px;line-height:1.34;white-space:normal;overflow-wrap:anywhere}
.league-season-v21 .season-podium{min-width:0;gap:6px}
.league-season-v21 .place{padding:6px 8px;grid-template-columns:23px minmax(0,1fr)}
.league-season-v21 .place b{font-size:12.5px;line-height:1.2;white-space:normal;overflow-wrap:anywhere}
.league-season-v21 .place.winner b{font-size:14px}

.cup-season-v21{display:grid;grid-template-columns:46px minmax(0,1fr);gap:9px;align-items:center;padding:10px 11px}
.cup-season-v21 .season-heading{margin:0;align-self:center}
.cup-season-v21 .season-heading b{font-size:13px}
.cup-final-v21{display:grid;grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr);gap:6px;align-items:start;min-width:0}
.cup-person{min-width:0;text-align:center}
.cup-person small{display:block;min-height:11px;color:#8b9199;font-size:7.5px;font-weight:900;letter-spacing:.05em}
.cup-person.winner-person small{color:#c1a323}
.cup-person b{display:flex;align-items:center;justify-content:center;min-height:32px;margin-top:2px;font-size:13px;line-height:1.15;overflow-wrap:anywhere}
.cup-vs{align-self:end;display:flex;align-items:center;justify-content:center;min-height:32px;padding-bottom:1px;font-size:11px;font-weight:950;color:#d0b52a;text-align:center}

/* Hide empty award categories entirely; only existing honours render in JS. */
.sport-breakdown:empty{display:none}
.hof-name-v20 small:empty{display:none}

@media(max-width:380px){
  .league-season-v21{grid-template-columns:minmax(116px,40%) minmax(0,1fr);gap:8px;padding:9px}
  .league-season-v21 .season-heading b{font-size:11.5px}
  .league-season-v21 .place b{font-size:11.5px}
  .league-season-v21 .place.winner b{font-size:13px}
  .cup-season-v21{grid-template-columns:40px minmax(0,1fr);gap:6px;padding:9px}
  .cup-final-v21{grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr);gap:4px}
  .cup-person b{font-size:11.5px}
  .cup-vs{font-size:9.5px}
}
\n\n/* ===== v22 History layout corrections ===== */\n/* Hall of Fame top 3: clear, progressive hierarchy — no abrupt size drop. */\n.hof-podium-card.p1{min-height:174px;padding-top:13px}\n.hof-podium-card.p2{min-height:164px;padding-top:12px}\n.hof-podium-card.p3{min-height:154px;padding-top:11px}\n.hof-podium-card.p1 .podium-avatar{width:60px;height:60px}\n.hof-podium-card.p2 .podium-avatar{width:56px;height:56px}\n.hof-podium-card.p3 .podium-avatar{width:52px;height:52px}\n.hof-podium-card.p1>b{font-size:13px}\n.hof-podium-card.p2>b{font-size:12.5px}\n.hof-podium-card.p3>b{font-size:12px}\n.hof-podium-card.p1 .podium-rank{font-size:27px}\n.hof-podium-card.p2 .podium-rank{font-size:25px}\n.hof-podium-card.p3 .podium-rank{font-size:23px}\n\n/* Football/Basketball: season + season-name is a centered full-width heading. */\n.league-season-v21{display:block;padding:10px 11px 11px}\n.league-season-v21 .season-heading{display:block;margin:0 0 9px;padding:0 4px 8px;text-align:center;border-bottom:1px solid rgba(240,196,0,.19);background:transparent}\n.league-season-v21 .season-heading b{display:block;font-size:13.5px;line-height:1.3;color:#e8c72e;white-space:normal;overflow-wrap:anywhere}\n.league-season-v21 .season-podium{display:grid;gap:6px;max-width:100%}\n.league-season-v21 .place{padding:6px 9px;grid-template-columns:24px minmax(0,1fr)}\n.league-season-v21 .place b{font-size:12.8px}\n.league-season-v21 .place.winner b{font-size:14.2px}\n\n@media(max-width:380px){\n  .hof-podium-card.p1 .podium-avatar{width:54px;height:54px}\n  .hof-podium-card.p2 .podium-avatar{width:51px;height:51px}\n  .hof-podium-card.p3 .podium-avatar{width:48px;height:48px}\n  .hof-podium-card.p1>b{font-size:11.5px}\n  .hof-podium-card.p2>b{font-size:11px}\n  .hof-podium-card.p3>b{font-size:10.5px}\n  .league-season-v21{display:block;padding:9px}\n  .league-season-v21 .season-heading{margin-bottom:7px;padding-bottom:7px}\n  .league-season-v21 .season-heading b{font-size:12.2px}\n  .league-season-v21 .place b{font-size:11.7px}\n  .league-season-v21 .place.winner b{font-size:13.2px}\n}\n

/* ===== v23 History refinements ===== */
/* True podium composition: #1 centered and tallest, #2 left, #3 right. */
.hof-podium{grid-template-columns:1fr 1.08fr 1fr;align-items:end}
.hof-podium-card.p1{order:2;min-height:184px;padding-top:14px;transform:none}
.hof-podium-card.p2{order:1;min-height:166px;padding-top:12px;transform:none}
.hof-podium-card.p3{order:3;min-height:154px;padding-top:11px;transform:none}
.hof-podium-card.p1 .podium-avatar{width:64px;height:64px}
.hof-podium-card.p2 .podium-avatar{width:56px;height:56px}
.hof-podium-card.p3 .podium-avatar{width:50px;height:50px}
.hof-podium-card.p1>b{font-size:13.5px}
.hof-podium-card.p2>b{font-size:12.5px}
.hof-podium-card.p3>b{font-size:11.8px}
.hof-podium-card.p1 .podium-rank{font-size:29px}
.hof-podium-card.p2 .podium-rank{font-size:25px}
.hof-podium-card.p3 .podium-rank{font-size:22px}

/* Football/Basketball: season label stays on the left, vertically centered. */
.league-season-v21{display:grid;grid-template-columns:minmax(148px,46%) minmax(0,1fr);gap:10px;align-items:stretch;padding:11px 12px}
.league-season-v21 .season-heading{display:flex;align-items:center;justify-content:flex-start;min-width:0;margin:0;padding:0 4px 0 0;text-align:left;border:0;background:transparent}
.league-season-v21 .season-heading b{display:block;font-size:13px;line-height:1.34;color:#e8c72e;white-space:normal;overflow-wrap:anywhere}
.league-season-v21 .season-podium{align-self:center;display:grid;gap:6px;min-width:0}

@media(max-width:380px){
  .hof-podium{grid-template-columns:1fr 1.06fr 1fr;gap:4px}
  .hof-podium-card.p1{min-height:172px}
  .hof-podium-card.p2{min-height:158px}
  .hof-podium-card.p3{min-height:146px}
  .hof-podium-card.p1 .podium-avatar{width:57px;height:57px}
  .hof-podium-card.p2 .podium-avatar{width:51px;height:51px}
  .hof-podium-card.p3 .podium-avatar{width:46px;height:46px}
  .league-season-v21{grid-template-columns:minmax(132px,45%) minmax(0,1fr);gap:7px;padding:9px}
  .league-season-v21 .season-heading{margin:0;padding:0 3px 0 0}
  .league-season-v21 .season-heading b{font-size:11.8px}
}

/* v24 — kitrinomavro hosting credit + live data refresh */
.km-host{margin:12px 0 4px;padding:10px 12px;border:1px solid #3b3415;border-radius:15px;background:linear-gradient(135deg,#15171a,#11120d);display:flex;align-items:center;gap:12px;overflow:hidden}.km-host img{width:116px;max-width:34vw;height:auto;display:block}.km-host div{min-width:0}.km-host small{display:block;color:#b99d21;font-size:7px;font-weight:950;letter-spacing:.12em;margin-bottom:3px}.km-host b{display:block;font-size:10px;line-height:1.25;color:#e6e8eb}.data-update-toast{position:fixed;left:50%;bottom:calc(78px + env(safe-area-inset-bottom));z-index:9999;transform:translate(-50%,18px);opacity:0;pointer-events:none;max-width:calc(100vw - 32px);padding:9px 13px;border:1px solid #7b6817;border-radius:999px;background:#17150a;color:#ffe15a;font-size:10px;font-weight:900;box-shadow:0 10px 28px rgba(0,0,0,.45);transition:.22s ease;white-space:nowrap}.data-update-toast.show{opacity:1;transform:translate(-50%,0)}

/* v24b — kitrinomavro as title signature */
.brand-sub{display:flex!important;align-items:center;gap:4px;white-space:nowrap}
.brand-by{color:#9da1a8;font-size:.82em;font-weight:800;margin-left:1px}
.brand-km-logo{display:inline-block;width:74px;height:25px;object-fit:contain;object-position:left center;vertical-align:middle}
@media(max-width:430px){.brand-km-logo{width:66px;height:23px}}
@media(max-width:360px){.brand-km-logo{width:58px;height:20px}.brand-sub{gap:3px}}

/* v24c — clearer two-line title signature */
.brand-title{line-height:1.08}
.brand-title strong{font-size:14px;letter-spacing:-.45px;white-space:nowrap}
.brand-sub{margin-top:6px!important;display:flex!important;align-items:center;gap:7px;white-space:nowrap}
.brand-by{font-size:11px;color:#b8bbc0;font-weight:850;margin-left:0}
.brand-km-logo{width:104px;height:32px;object-fit:contain;object-position:left center}
@media(max-width:430px){.brand-title strong{font-size:13px}.brand-km-logo{width:98px;height:30px}.brand-sub{margin-top:5px!important}}
@media(max-width:360px){.brand-title strong{font-size:11.5px;letter-spacing:-.35px}.brand-km-logo{width:88px;height:27px}.brand-by{font-size:10px}}


/* ===== v25 optional match reminder ===== */
.match-reminder-card{margin:6px 0 0;padding:7px 9px;border:1px solid rgba(240,196,0,.2);border-radius:11px;background:rgba(18,20,23,.68);display:flex;align-items:center;gap:8px}
.match-reminder-card button{flex:0 0 auto;border:1px solid #6d5b12;background:#17170f;color:#f1cd22;border-radius:9px;padding:7px 9px;font-size:9px;font-weight:900;white-space:nowrap}
.match-reminder-card small{min-width:0;color:#838a94;font-size:7.5px;line-height:1.25}
.match-reminder-card.enabled{border-color:rgba(77,177,105,.34);background:rgba(15,34,22,.5)}
.match-reminder-card.enabled button{border-color:#39734b;background:#11271a;color:#82e69c}
.match-reminder-card.push-unavailable{opacity:.65}
.match-reminder-card.hidden{display:none}
.match-reminder-card button:disabled{opacity:.55;cursor:default}
@media(max-width:360px){.match-reminder-card{padding:6px 7px;gap:6px}.match-reminder-card button{font-size:8px;padding:6px 7px}.match-reminder-card small{font-size:7px}}


/* ===== v26 Κόντρες ===== */
.rivalry-hero{background:radial-gradient(circle at 90% 15%,rgba(240,196,0,.18),transparent 34%),linear-gradient(145deg,#1b1e23,#111317)}
.rivalry-picker-card{margin:0 0 11px;padding:10px;background:#15181d;border:1px solid #30343b;border-radius:17px}
.rivalry-pickers{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);gap:7px;align-items:center}
.rivalry-pickers select{width:100%;min-width:0;background:#0d0f12;color:#fff;border:1px solid #3a4048;border-radius:11px;padding:10px 7px;font-size:11px;font-weight:750}
.rivalry-pickers>span{text-align:center;color:var(--yellow2);font-size:11px;font-weight:950}
.rivalry-score-card{display:grid;grid-template-columns:minmax(0,1fr) 1.15fr minmax(0,1fr);gap:8px;align-items:center;padding:14px 9px;border:1px solid #4f4512;border-radius:18px;background:linear-gradient(145deg,#1b1d20,#111317);box-shadow:inset 0 0 25px rgba(240,196,0,.035)}
.rival-person{min-width:0;text-align:center}.rival-avatar{width:50px;height:50px;object-fit:cover;border-radius:50%;display:block;margin:0 auto 5px;border:2px solid #4d461b;background:#292d34}.rival-person b{display:block;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rival-person small{display:block;color:#9198a1;font-size:9px;margin-top:2px}.rival-score{text-align:center;min-width:0}.rival-score>small{display:block;color:#a98f22;font-size:7px;font-weight:950;letter-spacing:.08em}.rival-score strong{display:block;color:#fff;font-size:25px;line-height:1.15;margin:4px 0}.rival-score strong span{font-size:11px;color:#8e949d}.rival-score em{display:block;font-style:normal;color:#9fa5ad;font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rivalry-kpis{margin-top:9px;border:1px solid #30343b;border-radius:16px;overflow:hidden;background:#15181d}.rivalry-kpis>div{display:grid;grid-template-columns:minmax(0,1fr) 58px 58px;gap:6px;align-items:center;padding:8px 9px;border-top:1px solid #292e35}.rivalry-kpis>div:first-child{border-top:0}.rivalry-kpis span{font-size:10px;color:#a0a6ae}.rivalry-kpis b{text-align:center;font-size:12px;color:#fff;font-variant-numeric:tabular-nums}.rivalry-kpis b:nth-of-type(1){color:#f0c400}
.rivalry-chart-card{margin-top:10px;padding:11px 11px 8px}.rivalry-card-head{display:flex;justify-content:space-between;gap:10px}.rivalry-card-head small{display:block;color:var(--yellow2);font-size:8px;font-weight:950;letter-spacing:.08em}.rivalry-card-head strong{display:block;font-size:11px;margin-top:2px}.rivalry-card-head>span{font-size:8px;color:#8f959e}.rivalry-chart{width:100%;height:110px;display:block;margin-top:5px}.rivalry-chart line{stroke:#39404a;stroke-width:1}.rivalry-chart polyline{fill:none;stroke:#f0c400;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.rivalry-chart circle{fill:#ffd93d;stroke:#171717;stroke-width:1.5}.rivalry-axis{display:flex;justify-content:space-between;gap:8px;color:#747b84;font-size:7px}.rivalry-axis span:nth-child(2){text-align:center;flex:1}
.rivalry-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.rivalry-summary{min-width:0;background:#15181d;border:1px solid #30343b;border-radius:14px;padding:9px}.rivalry-summary small{display:block;color:#8f959e;font-size:7px;font-weight:900}.rivalry-summary b{display:block;margin-top:4px;font-size:10px;line-height:1.3;color:#fff}.duel-form{display:flex;gap:4px;margin-top:5px}.duel-form span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:9px;font-weight:950;background:#252a31;color:#aaa}.duel-form .a{background:#4f430b;color:#ffd93d}.duel-form .b{background:#283342;color:#cbd9ee}.duel-form .tie{background:#292d33;color:#aeb4bd}
.rivalry-rounds{display:flex;flex-direction:column;gap:6px}.rivalry-round{display:grid;grid-template-columns:minmax(64px,1.25fr) minmax(0,1fr) 45px minmax(0,1fr) 38px;gap:6px;align-items:center;padding:8px 9px;background:#15181d;border:1px solid #2d3239;border-radius:12px}.rivalry-round.a{border-left:3px solid #e0bb17}.rivalry-round.b{border-right:3px solid #8295b1}.rivalry-round>div{min-width:0}.rivalry-round>div b{display:block;font-size:10px;color:#e7c526}.rivalry-round>div small{display:block;font-size:7px;color:#777e87;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rivalry-round>span{font-size:9px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#c8ccd1}.rivalry-round>strong{text-align:center;font-size:12px;color:#fff}.rivalry-round>em{text-align:right;font-style:normal;font-size:8px;color:#8f959e}.season-compare{margin-top:0}
@media(max-width:390px){.rival-avatar{width:44px;height:44px}.rival-score strong{font-size:22px}.rivalry-kpis>div{grid-template-columns:minmax(0,1fr) 48px 48px}.rivalry-summary-grid{grid-template-columns:1fr}.rivalry-round{grid-template-columns:54px minmax(0,1fr) 40px minmax(0,1fr) 30px;padding:7px 6px;gap:4px}.rivalry-round>div small{display:none}}
/* v27 - clearer, fairer Κόντρες */
.rivalry-note,.rivalry-round-note{margin:7px 3px 0;color:#858c95;font-size:8.5px;line-height:1.45}.rivalry-note{text-align:center}.rivalry-spice{margin-top:9px;padding:9px 10px;border:1px solid #694028;border-radius:13px;background:linear-gradient(135deg,#21150f,#15181d);font-size:9px;line-height:1.45;color:#d8dadd}.rivalry-spice b{color:#ffad57;letter-spacing:.05em}.rivalry-round-head{display:grid;grid-template-columns:54px minmax(0,1fr) 40px minmax(0,1fr) 32px;gap:4px;align-items:end;padding:7px 6px;color:#8f959e;font-size:7px;font-weight:900;text-align:center;text-transform:uppercase}.rivalry-round-head>span:nth-child(2),.rivalry-round-head>span:nth-child(4){display:flex;align-items:center;justify-content:center;gap:4px;min-width:0;color:#d7d9dc;text-transform:none;font-size:8px}.rivalry-round-head small{display:none}.round-head-avatar{width:18px;height:18px;object-fit:cover;border-radius:50%;border:1px solid #514819;flex:0 0 18px}.season-faceoff{display:grid;grid-template-columns:1fr 28px 1fr;gap:8px;align-items:center;margin:0 0 7px}.season-faceoff>div{display:flex;align-items:center;justify-content:center;gap:6px;min-width:0;font-size:10px}.season-faceoff>div b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.season-faceoff>span{text-align:center;color:var(--yellow2);font-size:8px;font-weight:950}.season-face-avatar{width:30px;height:30px;object-fit:cover;border-radius:50%;border:1px solid #514819}.rivalry-round.none{opacity:.88}.rivalry-round.none strong{color:#8d949d}


/* ===== v29 Κόντρες polish ===== */
.rivalry-race-card{margin-top:10px;padding:10px 10px 8px;border:1px solid #3a3618;border-radius:17px;background:radial-gradient(circle at 50% 0,rgba(240,196,0,.10),transparent 45%),linear-gradient(180deg,#171a1f,#111318);overflow:hidden}
.rivalry-race-title{margin:0 1px 5px;align-items:center}.rivalry-race-title span{font-size:7.5px;color:#a38d34;font-weight:850}
.race-legend{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:7px;align-items:center;margin:4px 1px 2px}.race-legend>div{display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:5px;align-items:center;min-width:0}.race-legend>div:last-child{grid-template-columns:auto minmax(0,1fr) 26px}.race-legend>div:last-child .race-avatar{grid-column:3}.race-legend>div:last-child b{grid-column:2;grid-row:1;text-align:right}.race-legend>div:last-child strong{grid-column:1;grid-row:1}.race-avatar{width:26px;height:26px;object-fit:cover;border-radius:50%;border:1px solid #5b501b}.race-legend b{font-size:8.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.race-legend strong{font-size:12px;color:#fff}.race-legend>span{font-size:7.5px;color:#d9b92c;font-weight:950;text-align:center;white-space:nowrap}
.rivalry-race-chart{width:100%;height:132px;display:block}.race-grid line{stroke:#2b3037;stroke-width:1}.race-line-a,.race-line-b{fill:none;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 3px rgba(255,216,45,.18))}.race-line-a{stroke:url(#raceGlowA)}.race-line-b{stroke:url(#raceGlowB);filter:drop-shadow(0 0 3px rgba(203,217,238,.13))}.race-a-dot{fill:#ffd82d;stroke:#15171a;stroke-width:1.4}.race-b-dot{fill:#cbd9ee;stroke:#15171a;stroke-width:1.4}.race-labels text{fill:#686f79;font-size:6px;font-weight:800}.rivalry-race-note{text-align:center;color:#747b84;font-size:7.5px;line-height:1.35;margin-top:-2px}
.rivalry-metric-card{border:1px solid #30343b;border-radius:16px;overflow:hidden;background:#15181d}.metric-faceoff{display:grid;grid-template-columns:1fr 56px 1fr;gap:7px;align-items:center;padding:8px 9px;border-bottom:1px solid #30343b;background:linear-gradient(90deg,rgba(240,196,0,.055),transparent 42%,transparent 58%,rgba(129,149,178,.05))}.metric-faceoff>div{display:flex;align-items:center;gap:6px;min-width:0}.metric-faceoff>div:last-child{justify-content:flex-end}.metric-faceoff b{font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.metric-faceoff>span{text-align:center;color:#8d949d;font-size:7px;font-weight:950;letter-spacing:.08em}.metric-row{display:grid;grid-template-columns:56px minmax(0,1fr) 56px;gap:6px;align-items:center;padding:8px 9px;border-top:1px solid #292e35}.metric-faceoff+.metric-row{border-top:0}.metric-row span{text-align:center;font-size:10px;color:#a0a6ae}.metric-row b{font-size:12px;color:#fff;font-variant-numeric:tabular-nums}.metric-row b:first-child{text-align:left;color:#f0c400}.metric-row b:last-child{text-align:right;color:#dbe4f1}.season-compare{margin-top:0}
@media(max-width:390px){.race-legend{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.race-legend>span{font-size:6.8px}.metric-row{grid-template-columns:48px minmax(0,1fr) 48px;padding:7px 8px}.metric-faceoff{grid-template-columns:1fr 48px 1fr;padding:7px 8px}.metric-row span{font-size:9px}}

/* v30: keep NONOI label centered in rivalry metric rows */
.metric-row .h2h-nono{justify-content:center;width:100%;text-align:center}


/* ===== v31 Compact full Hall of Fame ===== */
.hof-compact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.hof-compact-grid .hof-compact-item{min-width:0;padding:7px 6px;grid-template-columns:25px minmax(0,1fr);gap:4px;border-radius:11px}
.hof-compact-grid .hof-compact-item.top{grid-column:1/-1;grid-template-columns:34px minmax(0,1fr);padding:9px}
.hof-compact-grid .hof-name-v20{display:block}
.hof-compact-grid .hof-name-v20 b{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hof-compact-grid .hof-compact-item.top .hof-name-v20 b{font-size:12px}
.hof-compact-grid .hof-rank{font-size:10px}
.hof-compact-grid .hof-compact-item.top .hof-rank{font-size:13px}
.hof-compact-grid .sport-breakdown{gap:3px;margin-top:4px;flex-wrap:wrap}
.hof-compact-grid .sport-line{gap:2px;padding:2px 4px;border-radius:7px}
.hof-compact-grid .sport-line>b{font-size:8px}
.hof-compact-grid .sport-medal{font-size:7px}
.hof-compact-grid .hof-compact-item.top .sport-line{padding:3px 5px}
.hof-compact-grid .hof-compact-item.top .sport-line>b{font-size:10px}
.hof-compact-grid .hof-compact-item.top .sport-medal{font-size:8.5px}
@media(max-width:390px){.hof-compact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:285px){.hof-compact-grid{grid-template-columns:1fr}}


/* ===== v32 Hall of Fame compact layout fix ===== */
.hof-full-top3{display:grid;grid-template-columns:1fr;gap:6px;margin-bottom:7px}
.hof-full-top-item{display:grid;grid-template-columns:34px minmax(0,1fr);gap:7px;padding:9px;border:1px solid #504719;border-radius:13px;background:linear-gradient(90deg,rgba(240,196,0,.08),#111318 45%)}
.hof-compact-rest{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.hof-compact-rest .hof-compact-item{min-width:0;padding:7px 6px;grid-template-columns:25px minmax(0,1fr);gap:4px;border-radius:11px}
.hof-compact-rest .hof-name-v20{display:block}
.hof-compact-rest .hof-name-v20 b{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hof-compact-rest .hof-rank{font-size:10px}
.hof-compact-rest .sport-breakdown{gap:3px;margin-top:4px;flex-wrap:wrap}
.hof-compact-rest .sport-line{gap:2px;padding:2px 4px;border-radius:7px}
.hof-compact-rest .sport-line>b{font-size:8px}
.hof-compact-rest .sport-medal{font-size:7px}
@media(min-width:460px){.hof-compact-rest{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:285px){.hof-compact-rest{grid-template-columns:1fr}}
