
:root{--primary:#262b33;--primary-strong:#14171c;--primary-bright:#4a5260;--primary-soft:#cdd2d9;--primary-tint:#eef0f3;--primary-deep:#101318;--navy-950:#171717;--navy-800:#212121;--navy-600:#2c2c2c;--text:#182230;--text-2:#475467;--muted:#667085;--faint:#98a2b3;--bg:#fff;--bg-soft:#f8fafc;--bg-mute:#eef2f6;--card:#fff;--line:#dfe7f1;--line-strong:#c9d6e5;--success:#0d8f63;--success-bright:#18b982;--success-soft:#b3ecd4;--success-tint:#e8fff5;--gold:#f4b63f;--gold-strong:#e8a020;--gold-deep:#9a6710;--gold-ink:#5a3b00;--gold-soft:#f4d58a;--gold-tint:#fff4df;--live:#d84b00;--live-tint:#fff1e8;--danger:#e12d39;--danger-bright:#ff8b6e;--danger-soft:#f5c6c6;--danger-deep:#b42731;--danger-tint:#ffecef;--pink:#e05c7a;--purple:#7c4dd8;--purple-soft:#a98cff;--purple-tint:#f0eaff;--purple-deep:#2b145f;--bronze:#c07840;--bronze-deep:#8a4e1a;--bronze-soft:#d4a882;--grad-brand:linear-gradient(135deg,var(--primary),var(--success-bright));--grad-primary:linear-gradient(135deg,var(--primary),var(--primary-bright));--r-sm:8px;--r-md:12px;--r-lg:16px;--r-xl:20px;--r-2xl:24px;--r-full:999px;--shadow-sm:0 6px 16px rgba(0,0,0,.06);--shadow:0 14px 32px rgba(0,0,0,.08);--shadow-lg:0 22px 48px rgba(0,0,0,.16);--glow-primary:0 8px 18px rgba(38,43,51,.22);--s2:8px;--s3:12px;--s4:16px;--s5:20px;--s6:24px;--s7:28px;--s8:32px;--side-w:280px;--ink-950:#151a23;--ink-900:#1d2430;--ink-800:#252d3a;--ink-700:#303948;--ink-text:#aeb8c6}*{box-sizing:border-box}html{overflow-y:scroll;scrollbar-gutter:stable}body{margin:0;background:var(--bg);font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",Arial,sans-serif;color:var(--text)}a{text-decoration:none;color:inherit}.site-header{background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.nav-shell{max-width:1240px;margin:0 auto;height:72px;display:flex;align-items:center;gap:28px;padding:0 22px}.brand{display:flex;align-items:center;gap:12px;min-width:230px}.brand-mark{width:42px;height:42px;border-radius:16px;background:linear-gradient(135deg,var(--primary),var(--success-bright));color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800}.site-header .brand-mark{background:linear-gradient(135deg,var(--gold-soft),var(--gold));color:var(--gold-ink);box-shadow:0 8px 18px rgba(244,182,63,.28)}.brand strong{display:block;font-size:18px}.brand small{display:block;color:var(--muted);font-size:12px;margin-top:2px}.main-nav{display:flex;gap:6px;margin-left:auto}.main-nav a{padding:10px 14px;border-radius:var(--r-sm);font-size:14px;font-weight:600;color:var(--text-2)}.main-nav a.active,.main-nav a:hover{background:var(--primary-tint);color:var(--primary)}.profile-mini{display:flex;align-items:center;gap:10px;background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--r-md);padding:6px 10px}.avatar{width:34px;height:34px;border-radius:50%;background:var(--primary-tint);color:var(--primary);font-weight:800;display:flex;align-items:center;justify-content:center}.profile-mini strong{display:block;font-size:13px}.profile-mini img{height:18px;display:block;margin-top:2px}.page-shell{max-width:1240px;margin:0 auto;padding:28px 22px 58px}.site-footer{text-align:center;color:var(--faint);font-size:12px;padding:26px}

/* announce bar */
.announce{background:linear-gradient(90deg,var(--navy-950),var(--navy-600));color:var(--primary-soft);border-bottom:1px solid rgba(255,255,255,.08)}.announce-inner{max-width:1240px;margin:0 auto;display:flex;align-items:center;gap:12px;padding:8px 22px;font-size:13px;overflow:hidden}.announce-pill{background:var(--gold);color:var(--gold-ink);font-weight:800;padding:3px 10px;border-radius:999px;white-space:nowrap}.marquee{overflow:hidden;white-space:nowrap;flex:1;-webkit-mask-image:linear-gradient(90deg,transparent,#000 5%,#000 95%,transparent)}.marquee-track{display:inline-block;padding-left:100%;animation:v44marquee 32s linear infinite;font-weight:600}.sep{margin:0 22px;color:var(--text-2)}@keyframes v44marquee{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}

/* platform footer */
.site-footer{margin-top:18px;background:var(--card);border-top:1px solid var(--line);color:var(--text-2);text-align:left;padding:0}.footer-shell{max-width:1240px;margin:0 auto;padding:34px 22px 24px;display:grid;grid-template-columns:1.25fr 1.6fr 1.15fr;gap:34px;align-items:start}.footer-brand{display:flex;gap:12px;align-items:flex-start}.footer-brand .brand-mark{flex:0 0 auto}.footer-brand strong{display:block;font-size:16px;color:var(--text);margin-bottom:6px}.footer-brand p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.footer-col h3{margin:0 0 12px;font-size:13px;color:var(--text)}.footer-col a{display:block;color:var(--muted);font-size:13px;font-weight:600;margin-top:9px}.footer-col a:hover{color:var(--primary)}.responsible-card{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:14px;display:flex;gap:12px;align-items:flex-start}.rg-logo{width:44px;height:44px;border:2px solid var(--muted);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--text-2);font-size:16px;font-weight:900;letter-spacing:-.5px;flex:0 0 auto}.responsible-card h3{margin:0 0 5px;font-size:13px;color:var(--text)}.responsible-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.6}.footer-bottom{max-width:1240px;margin:0 auto;border-top:1px solid var(--line);padding:14px 22px 20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--faint);font-size:12px}

/* hero grid */
.hero-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.85fr);gap:22px;align-items:stretch}

/* promo carousel card */
.promo-card{background:linear-gradient(135deg,var(--primary-deep) 0%,var(--primary) 52%,var(--success-bright) 100%);color:#fff;border-radius:var(--r-lg);padding:26px;height:420px;position:relative;overflow:hidden}.promo-top,.card-top{display:flex;align-items:center;justify-content:space-between;gap:14px}.status{display:inline-flex;align-items:center;border-radius:999px;padding:6px 11px;font-size:12px;font-weight:800;background:var(--bg-mute);color:var(--text-2)}.status.open{background:var(--primary-tint);color:var(--primary)}.status.live{background:var(--live-tint);color:var(--live)}.deadline{font-size:13px;font-weight:700;opacity:.9}.promo-main{margin-top:36px;display:flex;justify-content:space-between;gap:20px;align-items:flex-end}.promo-main h1{font-size:44px;line-height:1;margin:0;font-weight:800;letter-spacing:-1px}.promo-main p,.issue{margin:8px 0 0;color:inherit;opacity:.82;font-weight:700}.promo-tags{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.promo-tags span{font-size:12px;font-weight:700;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.13);border-radius:999px;padding:7px 10px}.promo-stats{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;gap:1px;margin-top:34px;border-radius:20px;overflow:hidden;background:rgba(255,255,255,.22);border:1px solid rgba(255,255,255,.25)}.stat{padding:15px;background:rgba(255,255,255,.12)}.stat small{display:block;font-size:12px;color:var(--muted);font-weight:700;margin-bottom:7px}.promo-card .stat small{color:rgba(255,255,255,.75)}.stat strong{font-size:24px;font-weight:800;line-height:1}.stat.big strong{font-size:28px}.promo-card .actions{margin-top:22px;justify-content:flex-start}

/* v44 carousel */
.v44-slides{position:absolute;inset:0}.v44-slide{display:none;position:absolute;inset:0;padding:26px;overflow:hidden}.v44-slide.active{display:flex;flex-direction:column;animation:v44fade .25s ease}@keyframes v44fade{from{opacity:.25;transform:translateY(4px)}to{opacity:1;transform:none}}.v44-carousel-ctrl{position:absolute;bottom:16px;left:0;right:0;z-index:2;display:flex;align-items:center;justify-content:center;gap:10px}.v44-carousel-ctrl button{width:34px;height:34px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.12);color:#fff;font-size:18px;cursor:pointer}.v44-dots{display:flex;gap:7px}.v44-dots span{width:8px;height:8px;border-radius:999px;background:rgba(255,255,255,.35);display:block}.v44-dots span.active{width:24px;background:var(--card)}

/* active card (右侧进行中) */
.active-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:26px;display:flex;flex-direction:column;min-height:380px}.active-card h2{font-size:28px;margin:0 0 4px;line-height:1.1}.active-card .issue{color:var(--muted);font-size:14px;font-weight:700;margin:0 0 16px}.active-card .meta-row{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap}.active-card .meta-row span{font-size:12px;font-weight:700;background:var(--bg-soft);border:1px solid var(--line);color:var(--text-2);border-radius:999px;padding:6px 10px}.active-kpis{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.active-kpis .stat{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:15px}.active-kpis .stat strong{font-size:28px;color:var(--danger)}.home-live-board{display:grid;gap:8px;margin-top:16px}.home-live-board div{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;padding:8px 10px}.home-live-board b{width:22px;height:22px;border-radius:50%;background:var(--primary-tint);color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:12px}.home-live-board span{font-size:13px;font-weight:800;color:var(--text-2)}.home-live-board strong{font-size:13px;color:var(--success-bright)}.active-card .cta-single,.home-live-actions{margin-top:auto;padding-top:16px}.active-card .cta-single .btn{width:100%;justify-content:center}.home-live-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.home-live-actions .btn{padding-left:10px;padding-right:10px}

/* flash line */
.flash-line{display:flex;align-items:center;gap:12px;margin-top:18px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:10px 14px}.flash-line>span{background:var(--live-tint);color:var(--live);font-size:12px;font-weight:800;padding:5px 10px;border-radius:999px;white-space:nowrap}.flash-line .marquee-track{color:var(--muted);animation-duration:36s}
.inline-player-link{font-weight:900;color:var(--primary);border-radius:8px;padding:1px 4px;margin:0 -2px}.inline-player-link:hover{background:var(--primary-tint)}

/* event flow row */
.event-flow{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px 28px;margin-top:18px}.event-flow-title{font-size:13px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:16px}.event-flow-steps{display:flex;align-items:flex-start;gap:0}.event-flow-step{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}.event-flow-step:not(:last-child)::after{content:'';position:absolute;top:18px;left:calc(50% + 22px);right:calc(-50% + 22px);height:2px;background:linear-gradient(90deg,var(--primary),var(--success-bright));opacity:.3}.event-flow-icon{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--primary),var(--success-bright));color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;margin-bottom:10px;flex-shrink:0}.event-flow-step h4{font-size:13px;font-weight:800;margin:0 0 4px;color:var(--text)}.event-flow-step p{font-size:12px;color:var(--muted);margin:0;line-height:1.5;padding:0 4px}

/* section */
.section-block{margin-top:34px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.section-head h2{margin:0;font-size:22px}.section-head p{margin:6px 0 0;color:var(--muted);font-size:14px}.page-title{margin:4px 0 28px}.page-title h1{font-size:32px;margin:0}.page-title p{margin:6px 0 0;color:var(--muted);font-size:14px}

.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.news-grid article{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}.news-grid figure{height:132px;margin:0;background:var(--line)}.news-grid figure img{width:100%;height:100%;object-fit:cover;display:block}.news-card-body{padding:18px 20px 20px}.news-grid span{display:inline-flex;color:var(--primary);background:var(--primary-tint);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900}.news-grid h3{font-size:18px;margin:12px 0 8px;line-height:1.3}.news-grid p{margin:0;color:var(--muted);font-size:13px;line-height:1.6}
.home-news-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.home-news-grid figure{height:118px}.home-news-grid .news-card-body{padding:16px}.home-news-grid h3{font-size:16px}
.news-showcase-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px;display:grid;grid-template-columns:250px minmax(0,1fr);gap:18px;overflow:hidden}.news-showcase-intro{border-radius:20px;background:linear-gradient(135deg,var(--primary-tint) 0%,var(--bg-soft) 58%,var(--success-tint) 100%);padding:24px;display:flex;flex-direction:column;justify-content:center;min-height:292px}.news-showcase-intro span{align-self:flex-start;color:var(--primary);background:var(--card);border:1px solid var(--primary-tint);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.news-showcase-intro h2{font-size:32px;line-height:1.05;margin:18px 0 10px}.news-showcase-intro p{margin:0;color:var(--text-2);font-size:14px;line-height:1.65;font-weight:700}.news-showcase-intro .btn{align-self:flex-start;margin-top:24px}.news-showcase-track{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;min-width:0}.news-showcase-card{position:relative;display:block;min-height:292px;border-radius:20px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow);background:var(--line);color:#fff;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}.news-showcase-card:hover{transform:translateY(-3px);border-color:var(--primary-soft);box-shadow:var(--shadow-lg)}.news-showcase-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s ease}.news-showcase-card:hover img{transform:scale(1.035)}.news-showcase-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,12,12,.04) 8%,rgba(12,12,12,.18) 42%,rgba(12,12,12,.86) 100%)}.news-showcase-tag{position:absolute;top:14px;left:14px;z-index:1;display:inline-flex;align-items:center;border-radius:999px;background:rgba(255,255,255,.94);color:var(--primary);padding:7px 10px;font-size:12px;font-weight:900;box-shadow:var(--shadow-sm)}.news-showcase-tag.green{color:var(--success)}.news-showcase-tag.gold{color:var(--gold-deep)}.news-showcase-tag.orange{color:var(--live)}.news-showcase-body{position:absolute;left:16px;right:16px;bottom:16px;z-index:1}.news-showcase-body h3{font-size:18px;line-height:1.25;margin:0 0 8px}.news-showcase-body p{font-size:13px;line-height:1.55;margin:0;color:rgba(255,255,255,.86);font-weight:700}.news-showcase-body time{display:block;margin-top:16px;color:rgba(255,255,255,.48);font-size:12px;font-weight:500}
.news-list-grid article{min-height:300px}.news-list-grid figure{height:150px}.news-card-body time{display:block;margin-top:16px;color:var(--faint);font-size:12px;font-weight:500}.news-feature a{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);align-items:stretch;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);overflow:hidden;color:inherit}.news-feature img{width:100%;height:100%;min-height:310px;object-fit:cover;display:block}.news-feature div{padding:30px;display:flex;flex-direction:column;justify-content:center}.news-feature span{display:inline-flex;align-self:flex-start;color:var(--primary);background:var(--primary-tint);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.news-feature h2{font-size:32px;line-height:1.15;margin:16px 0 12px}.news-feature p{margin:0;color:var(--text-2);font-size:14px;line-height:1.75}.news-feature time{display:block;margin-top:18px;color:var(--faint);font-size:12px;font-weight:500}
.news-grid a{display:block;color:inherit}.news-grid a article{height:100%;transition:transform .15s,box-shadow .15s,border-color .15s}.news-grid a:hover article{transform:translateY(-3px);border-color:var(--primary-soft);box-shadow:var(--shadow-lg)}.news-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) var(--side-w);gap:var(--s4);align-items:start}.news-detail{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:32px}.news-detail>span{display:inline-flex;color:var(--primary);background:var(--primary-tint);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.news-detail h1{font-size:36px;line-height:1.15;margin:16px 0 18px}.news-detail p{font-size:14px;line-height:1.8;color:var(--text-2);margin:0 0 14px}.news-ad-side{display:grid;gap:var(--s4);position:sticky;top:96px}.news-ad-card{min-height:180px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:20px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;position:relative;color:inherit;transition:transform .15s,border-color .15s,box-shadow .15s}.news-ad-card:hover{transform:translateY(-2px);border-color:var(--primary-soft);box-shadow:var(--shadow-lg)}.news-ad-card::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(38,43,51,.1),rgba(24,185,130,.12));pointer-events:none}.news-ad-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.news-ad-card.ad-image::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(12,12,12,.08),rgba(12,12,12,.78))}.news-ad-card span{position:relative;z-index:1;align-self:flex-start;color:var(--primary);background:var(--primary-tint);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900}.news-ad-card strong{position:relative;z-index:1;margin-top:14px;font-size:20px;line-height:1.2;color:var(--text)}.news-ad-card small{position:relative;z-index:1;margin-top:8px;color:var(--muted);font-size:12px;font-weight:800;line-height:1.5}.news-ad-card.ad-large{min-height:320px}.news-ad-card.ad-image span{background:rgba(255,255,255,.92);color:var(--primary)}.news-ad-card.ad-image strong,.news-ad-card.ad-image small{color:#fff}.news-ad-card.ad-rank{background:linear-gradient(135deg,var(--primary-deep),var(--navy-600) 58%,var(--success-bright))}.news-ad-card.ad-rank::before{background:radial-gradient(circle at 80% 12%,rgba(244,182,63,.28),transparent 38%)}.news-ad-card.ad-rank span{background:rgba(255,255,255,.92)}.news-ad-card.ad-rank strong,.news-ad-card.ad-rank small{color:#fff}.news-suggest{border-top:1px solid var(--line);margin-top:28px;padding-top:22px}.news-suggest h2{font-size:20px;margin:0 0 14px}.news-suggest-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.news-suggest-grid a{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:16px;color:inherit;transition:transform .15s,border-color .15s}.news-suggest-grid a:hover{transform:translateY(-2px);border-color:var(--primary-soft)}.news-suggest-grid span{display:block;color:var(--primary);font-size:12px;font-weight:900;margin-bottom:8px}.news-suggest-grid strong{display:block;font-size:16px;line-height:1.35}

.value-card-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.value-card-grid article{position:relative;overflow:hidden;background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:22px;display:flex;justify-content:space-between;gap:18px;min-height:150px}.value-card-grid article::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,var(--primary),var(--success-bright))}.value-card-grid span{display:inline-flex;color:var(--primary);background:var(--primary-tint);border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900}.value-card-grid h3{font-size:20px;line-height:1.2;margin:12px 0 8px}.value-card-grid p{margin:0;color:var(--muted);font-size:13px;line-height:1.65}.value-card-grid strong{align-self:flex-start;color:var(--success);background:var(--success-tint);border:1px solid var(--success-soft);border-radius:16px;padding:12px 14px;font-size:18px;white-space:nowrap}
.value-showcase{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:26px}.value-showcase-head{text-align:center;margin-bottom:24px}.value-showcase-head h2{font-size:28px;line-height:1.15;margin:0}.value-showcase-head p{margin:10px 0 0;color:var(--muted);font-size:14px;font-weight:800}.value-showcase-grid{display:grid;grid-template-columns:minmax(300px,.62fr) minmax(0,1fr);gap:18px;align-items:stretch}.value-reason-list{display:grid;gap:12px}.value-reason-list article{position:relative;display:grid;grid-template-columns:54px minmax(0,1fr) 64px;align-items:center;gap:14px;min-height:104px;padding:18px 18px;background:var(--bg-soft);border:1px solid var(--line);border-radius:20px}.value-reason-list article.active{background:linear-gradient(135deg,var(--primary-tint),var(--card));border-color:var(--primary-bright);box-shadow:0 14px 30px rgba(38,43,51,.14)}.value-reason-list article.active::after{content:"";position:absolute;top:50%;right:-13px;width:24px;height:24px;background:var(--card);border-top:1px solid var(--primary-bright);border-right:1px solid var(--primary-bright);transform:translateY(-50%) rotate(45deg)}.value-reason-list b{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--bg-mute);color:var(--text-2);font-size:16px;font-weight:900}.value-reason-list .active b{background:var(--card);color:var(--primary);box-shadow:0 8px 18px rgba(38,43,51,.14)}.value-reason-list h3{font-size:20px;line-height:1.2;margin:0 0 7px}.value-reason-list p{margin:0;color:var(--muted);font-size:13px;font-weight:800;line-height:1.45}.value-reason-list span{width:64px;height:64px;border-radius:20px;background:var(--primary-tint);display:grid;place-items:center;overflow:hidden}.value-reason-list span img{width:64px;height:64px;object-fit:cover;display:block}.value-feature-panel{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--bg-soft) 0%,var(--card) 48%,var(--primary-tint) 100%);border:1px solid var(--line);border-radius:20px;padding:42px;display:grid;grid-template-columns:minmax(0,.92fr) minmax(280px,.8fr);gap:24px;align-items:center;min-height:452px}.value-feature-panel::before{content:"";position:absolute;right:-70px;bottom:-120px;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(38,43,51,.12),transparent 66%);pointer-events:none}.value-feature-panel>div{position:relative;z-index:1}.value-feature-panel span{display:inline-flex;color:var(--primary);background:var(--primary-tint);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}.value-feature-panel h3{font-size:36px;line-height:1.1;margin:18px 0 18px}.value-feature-panel p{margin:0;color:var(--text-2);font-size:14px;line-height:1.85;max-width:430px}.value-feature-points{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.value-feature-points small{border:1px solid var(--line);background:var(--card);border-radius:999px;padding:7px 10px;color:var(--text-2);font-size:12px;font-weight:800}.value-feature-visual{height:310px;display:flex;align-items:flex-end;justify-content:center;gap:12px}.value-feature-visual i{display:block;width:48px;border-radius:16px 16px 8px 8px;background:linear-gradient(180deg,var(--primary-bright),var(--primary));box-shadow:0 12px 28px rgba(38,43,51,.22)}.value-feature-visual i:nth-child(1){height:78px;opacity:.72}.value-feature-visual i:nth-child(2){height:126px;opacity:.82}.value-feature-visual i:nth-child(3){height:188px;opacity:.92}.value-feature-visual i:nth-child(4){height:250px}.value-feature-visual strong{position:absolute;right:62px;top:48px;width:94px;height:94px;border-radius:24px;display:grid;place-items:center;background:var(--primary-tint);border:1px solid rgba(38,43,51,.12);box-shadow:0 18px 30px rgba(38,43,51,.18);overflow:hidden}.value-feature-visual strong img{width:94px;height:94px;object-fit:cover;display:block}
.value-reason-list article{cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease}.value-reason-list article:hover{transform:translateY(-2px);border-color:var(--primary-soft)}.value-reason-list article:focus-visible{outline:3px solid rgba(38,43,51,.28);outline-offset:3px}.value-reason-list span img{object-fit:contain}.value-feature-panel{display:block}.value-slide{display:none;grid-template-columns:minmax(0,.92fr) minmax(280px,.8fr);gap:24px;align-items:center;min-height:368px;animation:valueFade .2s ease}.value-slide.active{display:grid}@keyframes valueFade{from{opacity:.35;transform:translateY(4px)}to{opacity:1;transform:none}}.value-slide>div{position:relative;z-index:1}.value-feature-visual strong img{object-fit:contain}.value-feature-visual.shield i{background:linear-gradient(180deg,var(--line-strong),var(--muted))}.value-feature-visual.goal i{background:linear-gradient(180deg,var(--primary-bright),var(--primary))}.value-feature-visual.glory i{background:linear-gradient(180deg,var(--line),var(--muted))}
.value-showcase{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0}.value-feature-panel{background:transparent;border:0;border-radius:0;box-shadow:none;padding:12px 0 12px 28px;overflow:visible;min-height:auto}.value-feature-panel::before{display:none}.value-reason-list span{width:76px;height:76px;border-radius:50%;background:var(--primary-tint);overflow:visible}.value-reason-list span img{width:74px;height:74px;object-fit:contain}.value-feature-visual strong{width:118px;height:118px;border-radius:50%;background:transparent;border:0;box-shadow:none;overflow:visible}.value-feature-visual strong img{width:118px;height:118px;object-fit:contain}
.value-showcase{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px 24px 24px}.value-showcase>.section-head{margin-bottom:18px}.value-showcase-grid{align-items:center}.value-feature-panel{padding:4px 0 4px 28px}
.value-showcase{padding:18px 20px 20px}.value-showcase>.section-head{margin-bottom:14px}.value-showcase-grid{gap:14px}.value-reason-list{gap:10px}.value-reason-list article{min-height:86px;padding:12px 14px;grid-template-columns:46px minmax(0,1fr) 58px}.value-reason-list h3{font-size:18px;margin-bottom:5px}.value-reason-list p{font-size:12px;line-height:1.35}.value-reason-list b{width:36px;height:36px;font-size:14px}.value-reason-list span{width:58px;height:58px;border-radius:50%;overflow:hidden;background:var(--primary-tint)}.value-reason-list span img{width:76px;height:76px;object-fit:cover;display:block;transform:translate(-9px,-9px)}.value-feature-panel{padding:0 0 0 22px}.value-slide{min-height:300px}.value-feature-panel h3{font-size:32px;margin:14px 0 12px}.value-feature-panel p{font-size:14px;line-height:1.7}.value-feature-points{margin-top:18px}.value-feature-visual{height:250px}.value-feature-visual i{width:42px}.value-feature-visual i:nth-child(1){height:64px}.value-feature-visual i:nth-child(2){height:102px}.value-feature-visual i:nth-child(3){height:150px}.value-feature-visual i:nth-child(4){height:204px}.value-feature-visual strong{width:96px;height:96px;border-radius:50%;overflow:hidden}.value-feature-visual strong img{width:124px;height:124px;object-fit:cover;transform:translate(-14px,-14px)}
.value-reason-list article{grid-template-columns:62px minmax(0,1fr);gap:14px}.value-reason-list article.active::after{right:-11px}.value-feature-panel h3{margin-top:0}
.value-reason-list article{opacity:.48}.value-reason-list article.active{opacity:1;background:var(--bg-soft);border-color:var(--line);box-shadow:var(--shadow)}.value-reason-list article.active::after{display:none}.value-reason-list article:hover{opacity:.78;border-color:var(--line);transform:none}.value-reason-list article.active:hover{opacity:1}

.text-link{font-size:14px;color:var(--primary);font-weight:800;white-space:nowrap}.live-hall-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.live-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:20px;display:flex;flex-direction:column}.live-card h3{font-size:24px;line-height:1.1;margin:16px 0 5px}.live-card p{margin:0;color:var(--muted);font-size:13px;font-weight:800}.live-board{display:grid;gap:8px;margin:16px 0}.live-board div{display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;padding:9px 10px}.live-board b{width:22px;height:22px;border-radius:50%;background:var(--primary-tint);color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:12px}.live-board span{font-size:13px;font-weight:800;color:var(--text-2)}.live-board strong{font-size:13px;color:var(--success-bright)}.live-empty{min-height:137px;border:1px dashed var(--line);border-radius:16px;background:var(--bg-soft);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:6px;margin:16px 0;color:var(--muted);text-align:center}.live-empty strong{font-size:18px;color:var(--text)}.live-empty span{font-size:13px;font-weight:800}.live-card .btn{width:100%;margin-top:auto}

/* other events grid - 3-col, same style as active card */
.other-event-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.event-unified-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);overflow:hidden;display:flex;flex-direction:column}.event-unified-card .event-cover{height:120px;position:relative;overflow:hidden;background:var(--line);flex-shrink:0}.event-unified-card .event-cover img{width:100%;height:100%;object-fit:cover;display:block}.event-unified-card .event-cover .status{position:absolute;top:12px;left:12px}.event-unified-body{padding:18px;display:flex;flex-direction:column;flex:1}.event-unified-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:6px}.event-unified-title-row h3{font-size:18px;margin:0;line-height:1.2}.event-unified-title-row span{font-size:12px;color:var(--muted);font-weight:700;display:block;margin-top:4px}.event-unified-title-row b{font-size:12px;color:var(--primary);background:var(--primary-tint);border-radius:999px;padding:5px 9px;white-space:nowrap;flex-shrink:0}.event-desc{font-size:13px;line-height:1.55;color:var(--muted);margin:8px 0 0}.event-unified-meta{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0 0}.event-unified-meta span{font-size:12px;font-weight:700;color:var(--text-2);background:var(--bg-soft);border:1px solid var(--line);border-radius:999px;padding:5px 9px}.event-unified-reward{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--line);padding-top:12px;margin:12px 0 14px}.event-unified-reward strong{font-size:14px}.event-unified-reward span{font-size:13px;color:var(--muted);font-weight:700}.event-unified-kpis{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:10px 0 14px}.event-unified-kpis .stat{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:12px}.event-unified-kpis .stat strong{font-size:22px;color:var(--danger)}.event-unified-card .btn{width:100%;justify-content:center;margin-top:auto}.btn-disabled{background:var(--bg-mute)!important;color:var(--faint)!important;border:1px solid var(--line)!important;cursor:not-allowed!important}

/* event system -> 赛事一览 2x2 */
.event-overview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.event-card{overflow:hidden;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow)}.event-cover{height:128px;position:relative;overflow:hidden;background:var(--line)}.event-cover img{width:100%;height:100%;object-fit:cover;display:block}.event-cover .status{position:absolute;top:12px;left:12px}.event-body{padding:16px}.event-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.event-title-row h3{font-size:18px;margin:0}.event-title-row span{display:block;color:var(--muted);font-size:12px;font-weight:700;margin-top:5px}.event-title-row b{font-size:13px;color:var(--primary);background:var(--primary-tint);border-radius:999px;padding:6px 10px}.event-desc{font-size:13px;line-height:1.55;color:var(--muted);margin:10px 0 0}.compact-meta{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}.compact-meta span{font-size:12px;font-weight:700;color:var(--text-2);background:var(--bg-soft);border:1px solid var(--line);border-radius:999px;padding:6px 9px}

/* btn */
.btn{display:inline-flex;align-items:center;justify-content:center;height:42px;padding:0 18px;border-radius:12px;font-size:14px;font-weight:800;border:0;cursor:pointer;transition:background .15s,border-color .15s,color .15s,box-shadow .15s}.btn:focus-visible{outline:3px solid rgba(38,43,51,.28);outline-offset:2px}.btn.primary{background:var(--primary);color:#fff}.btn.primary:hover{background:var(--primary-strong)}.btn.success{background:var(--success-bright);color:#fff}.btn.success:hover{background:var(--success)}.btn.dark{background:var(--navy-950);color:#fff}.btn.dark:hover{background:var(--navy-800)}.btn.secondary{background:var(--card);border:1px solid var(--line);color:var(--text-2)}.btn.secondary:hover{background:var(--bg-soft);border-color:var(--line-strong)}.btn.danger{background:var(--danger);color:#fff}.btn.danger:hover{background:var(--danger-deep)}.btn.sm{height:32px;padding:0 12px;font-size:12px;border-radius:8px}.btn.full{width:100%}.actions{display:flex;align-items:center;gap:10px}

/* my-event-hero (arena page) */
.my-event-hero{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,1fr) 200px;gap:20px;align-items:center}.my-event-hero.compact{grid-template-columns:minmax(0,1fr) minmax(320px,1fr) 150px}.my-event-main .card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.my-event-main h2{font-size:28px;margin:16px 0 4px;line-height:1.1}.my-event-main .issue{color:var(--muted);font-size:14px;margin:0 0 10px}.my-event-main .meta-row{display:flex;align-items:center;justify-content:flex-start;gap:8px;flex-wrap:wrap}.my-event-main .meta-row span{font-size:12px;font-weight:700;background:var(--bg-soft);border:1px solid var(--line);color:var(--text-2);border-radius:999px;padding:6px 10px}.my-event-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.my-event-kpis .stat{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:14px}.my-event-kpis .stat strong{font-size:24px;color:var(--danger)}.my-event-actions{display:grid;gap:10px}.my-event-actions .btn{justify-content:center}

/* data table */
.data-table{background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden}.data-head,.data-row{display:grid;grid-template-columns:repeat(var(--cols),1fr);align-items:center}.data-head{background:var(--bg-soft);color:var(--muted);font-size:12px;font-weight:800}.data-head span,.data-row span{padding:13px 16px;border-bottom:1px solid var(--line)}.data-row{font-size:14px}

/* filters */
.filters{display:flex;gap:10px}select{height:38px;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:0 12px;color:var(--text-2);font-weight:700}

/* tabs */
.tabs{display:flex;gap:8px;margin-bottom:18px;flex-wrap:wrap}.tabs button{height:38px;border-radius:999px;border:1px solid var(--line);background:var(--card);padding:0 14px;font-weight:800;color:var(--text-2)}.tabs button.active{background:var(--primary);border-color:var(--primary);color:#fff}

/* leaderboard */
.leader-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px}.leader-main,.leader-side{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:20px}.leader-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.leader-head h2{margin:0;font-size:22px}.leader-head span{color:var(--muted);font-weight:700}.rank-table-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);overflow-x:auto}.v44-rank-head,.v44-rank-row{display:grid;grid-template-columns:90px minmax(0,1fr) 150px 100px;align-items:center}.v44-rank-head{background:var(--bg-soft);color:var(--muted);font-size:12px;font-weight:800;border-radius:16px 16px 0 0}.v44-rank-head span,.v44-rank-row>div{padding:12px}.v44-rank-row{border-bottom:1px solid var(--line)}.rank-no{font-size:18px;font-weight:800;color:var(--primary)}.player-cell{display:flex;align-items:center;gap:12px;min-width:0}.player-cell strong{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.player-cell img{height:18px;display:block;margin-top:3px;max-width:90px}.score{font-weight:800}.profit{color:var(--success)}.rank-row.highlight{background:var(--success-tint)}.rank-tier{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--line);border-radius:16px;margin-bottom:10px;background:var(--bg-soft)}.rank-tier img{display:none}.rank-tier strong{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:0 11px;border-radius:var(--r-full);background:var(--bg-mute);color:var(--text-2);font-size:14px;font-weight:900}.rank-tier span{display:block;color:var(--muted);font-size:12px;margin-top:5px}

/* sidebar layout for glory-center and profile */
.sidebar-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:28px;align-items:start}.sidebar-nav{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);overflow:hidden;position:sticky;top:92px}.sidebar-nav-title{padding:16px 18px 12px;font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--line)}.sidebar-nav a{display:flex;align-items:center;gap:10px;padding:13px 18px;font-size:14px;font-weight:700;color:var(--text-2);border-bottom:1px solid var(--line);transition:background .15s}.sidebar-nav a:last-child{border-bottom:0}.sidebar-nav a:hover{background:var(--bg-soft)}.sidebar-nav a.active{background:var(--primary-tint);color:var(--primary)}.sidebar-nav a .nav-icon{font-size:16px;width:20px;text-align:center}.sidebar-content .sub-page{display:none}.sidebar-content .sub-page.active{display:block}

/* profile */
.profile-hero{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:26px;display:flex;justify-content:space-between;align-items:center}.profile-left{display:flex;align-items:center;gap:16px}.avatar.xl{width:72px;height:72px;font-size:24px;border-radius:50%;background:var(--primary-tint);color:var(--primary);font-weight:800;display:flex;align-items:center;justify-content:center}.profile-left h1{margin:0 0 6px;font-size:28px}.rank-tag-large{height:26px;display:block;margin:4px 0}.profile-left p{margin:6px 0 0;color:var(--muted);font-size:13px}.profile-rank-icon{width:110px;height:110px;object-fit:contain}.profile-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.profile-stats .stat{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:15px}.progress-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:20px}.progress-top{display:flex;align-items:center;justify-content:space-between;font-weight:800}.progress{height:10px;border-radius:999px;background:var(--line);margin-top:14px;overflow:hidden}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--primary),var(--success-bright))}

/* help center */
.help-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px;margin-bottom:16px}.help-card h2{font-size:20px;margin:0 0 10px}.help-card p{font-size:14px;line-height:1.7;color:var(--text-2);margin:0}.rank-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.rank-tier.big{margin:0}

/* register */
.register-layout{display:grid;grid-template-columns:1fr 340px;gap:18px}.rule-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:20px}.rule-card h2{margin-top:0}.promo-stats.light{background:var(--bg-soft);border-color:var(--line);color:var(--text)}.promo-stats.light .stat{background:var(--card);border-right:1px solid var(--line)}.promo-stats.light .stat small{color:var(--muted)}.actions.vertical{display:grid;gap:10px}

/* betting */
.betting-header{background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:var(--r-lg);padding:18px 20px;margin-bottom:18px;display:flex;align-items:center;gap:18px}.betting-header h1{font-size:24px;margin:8px 0 4px}.betting-header p{margin:0;color:var(--muted);font-size:13px}.betting-kpis{display:grid;grid-template-columns:repeat(3,auto);gap:34px;margin-left:auto}.betting-kpis .stat{border:0;border-radius:0;background:transparent;padding:0;min-width:0}.betting-kpis .stat small{margin-bottom:4px}.betting-kpis .stat strong{font-size:22px}.betting-actions{display:flex;gap:8px;flex:0 0 auto}.betting-actions .btn{white-space:nowrap;padding-left:14px;padding-right:14px}.betting-frame{background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:var(--shadow)}.betting-frame iframe{width:100%;height:860px;border:0;display:block}

@media(max-width:1100px){.hero-grid,.leader-layout,.register-layout,.sidebar-layout,.news-detail-layout{grid-template-columns:1fr}.sidebar-nav,.news-ad-side{position:static}.event-overview-grid{grid-template-columns:1fr}.other-event-grid,.news-grid,.live-hall-grid,.value-card-grid{grid-template-columns:1fr}.news-feature a{grid-template-columns:1fr}.news-feature img{min-height:220px}.my-event-hero,.my-event-hero.compact{grid-template-columns:1fr}.betting-header{align-items:flex-start;flex-direction:column}.betting-kpis{margin-left:0;width:100%}.profile-stats{grid-template-columns:repeat(2,1fr)}.rank-grid{grid-template-columns:repeat(2,1fr)}.footer-shell{grid-template-columns:1fr 1fr}.responsible-card{grid-column:1/-1}}

/* banner slide - no padding, pure image */
.v44-slide-banner{padding:0!important}
.v44-slide-banner img{width:100%;height:100%;object-fit:cover;display:block}
.v44-slide-bg{background-image:var(--slide-bg);background-size:cover;background-position:center}
.v44-slide-bg>.v44-slide-bg-img{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;display:block}
.v44-slide-bg>*{position:relative;z-index:1}

/* v47 merge: keep v46 banner-rich home, but tighten the first fold */
.hero-grid{gap:18px}
.promo-card{height:auto;min-height:360px;padding:20px}
.v44-slide{padding:20px}
.promo-main{margin-top:22px;gap:16px}
.promo-main h1{font-size:36px}
.promo-tags span{padding:6px 9px}
.promo-stats{margin-top:24px;border-radius:16px}
.promo-stats .stat{padding:12px}
.promo-stats .stat strong{font-size:22px}
.promo-stats .stat.big strong{font-size:24px}
.promo-card .actions{margin-top:16px}
.v44-carousel-ctrl{bottom:12px}
.v44-carousel-ctrl button{width:30px;height:30px;font-size:16px}
.v44-slide:not(.v44-slide-banner){padding:24px 28px 56px;justify-content:space-between}
.v44-slide:not(.v44-slide-banner) .promo-top{flex:0 0 auto}
.v44-slide:not(.v44-slide-banner) .promo-main{flex:1;align-items:center;margin-top:0}
.v44-slide:not(.v44-slide-banner) .promo-main h1{font-size:36px;letter-spacing:0}
.v44-slide:not(.v44-slide-banner) .promo-main p{font-size:16px}
.v44-slide:not(.v44-slide-banner) .promo-tags{max-width:300px}
.v44-slide:not(.v44-slide-banner) .promo-tags span{padding:8px 11px}
.v44-slide:not(.v44-slide-banner) .promo-stats{margin-top:0;background:transparent;border:0;border-radius:0;overflow:visible;gap:10px}
.v44-slide:not(.v44-slide-banner) .promo-stats .stat{border:1px solid rgba(255,255,255,.24);border-radius:16px;background:rgba(255,255,255,.12)}
.v44-slide:not(.v44-slide-banner) .actions{margin-top:18px}
.v44-slide:not(.v44-slide-banner) .btn{min-width:128px}

/* unified tournament card rhythm */
.active-card,.event-unified-card,.upcoming-card,.register-hero-card{position:relative}
.active-card .card-top,.event-unified-card .card-top,.upcoming-header,.register-hero-card .card-top{margin-bottom:16px}
.active-card h2,.event-unified-title-row h3,.upcoming-title-block h3,.register-hero-card h2{font-size:28px;line-height:1.08;letter-spacing:0;margin:0}
.active-card .issue,.event-unified-title-row span,.upcoming-issue{font-size:13px;font-weight:800;color:var(--muted);margin-top:6px}
.active-card .meta-row span,.event-unified-meta span,.upcoming-info-row span,.register-meta span{font-size:12px;font-weight:800;color:var(--text-2);background:var(--bg-soft);border:1px solid var(--line);border-radius:999px;padding:6px 10px}
.active-kpis,.event-unified-kpis,.upcoming-kpis,.register-hero-card .promo-stats{gap:10px}
.active-kpis .stat,.event-unified-kpis .stat,.upcoming-kpis .stat,.register-hero-card .promo-stats .stat{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:13px}
.active-kpis .stat strong,.event-unified-kpis .stat strong,.upcoming-kpis .stat strong,.register-hero-card .promo-stats .stat strong{font-size:24px;line-height:1.05}
.event-unified-card .event-cover{height:150px}
.event-unified-body,.upcoming-body{gap:12px}
.event-unified-reward{margin:0;padding-top:12px}
.event-unified-card .btn,.upcoming-cta-inline .btn{height:42px}
.active-actions-fixed,.home-live-actions,.event-unified-card .btn,.upcoming-cta-inline{margin-top:auto}
.active-card{min-height:300px;padding:20px}
.active-card h2{font-size:24px}
.active-kpis{margin-top:20px}
.active-kpis .stat{padding:12px}
.active-kpis .stat strong{font-size:24px}
.hero-grid>.promo-card{min-height:390px}
.hero-grid>.active-card{min-height:260px}

/* overview bar */
.overview-bar{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:20px 28px;display:flex;align-items:center;gap:0;flex-wrap:wrap}
.overview-stat{flex:1;min-width:120px;text-align:center;padding:8px 12px}
.overview-stat small{display:block;font-size:12px;color:var(--muted);font-weight:700;margin-bottom:6px}
.overview-stat strong{font-size:22px;font-weight:800;line-height:1}
.overview-divider{width:1px;height:40px;background:var(--line);flex-shrink:0}

/* active events grid - 2 col */
.active-events-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.active-card{min-height:320px}

/* upcoming list */
.upcoming-list{display:flex;flex-direction:column;gap:14px}
.upcoming-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);display:grid;grid-template-columns:180px 1fr auto;align-items:stretch;overflow:hidden}
.upcoming-cover{display:flex;align-items:stretch}
.upcoming-cover img{width:180px;height:100%;object-fit:cover;display:block}
.upcoming-body{padding:18px 20px}
.upcoming-top{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.upcoming-top h3{font-size:18px;margin:0 0 6px}
.upcoming-top h3 span{font-size:13px;color:var(--muted);font-weight:700;margin-left:6px}
.upcoming-meta{display:flex;gap:8px;flex-wrap:wrap}
.upcoming-meta span{font-size:12px;font-weight:700;color:var(--text-2);background:var(--bg-soft);border:1px solid var(--line);border-radius:999px;padding:4px 9px}
.upcoming-status-col{text-align:right;flex-shrink:0}
.upcoming-time{font-size:12px;font-weight:700;color:var(--muted);margin-top:6px}
.upcoming-kpis{display:flex;gap:12px;margin-top:14px}
.upcoming-kpis .stat{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:10px 14px;min-width:90px}
.upcoming-kpis .stat strong{font-size:18px}
.upcoming-cta{padding:0 20px;flex-shrink:0}

/* event cover link (首页赛事一览) */
.event-cover-link{display:block;border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow);transition:transform .15s,box-shadow .15s}
.event-cover-link:hover{transform:translateY(-3px);box-shadow:var(--shadow-lg)}
.event-cover-link img{width:100%;height:160px;object-fit:cover;display:block}

/* partners */
.partners-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:center;gap:22px 34px;padding:4px 0 0}
.partner-logo{height:52px;display:flex;align-items:center;justify-content:center;opacity:.78;filter:grayscale(1);transition:opacity .15s ease,filter .15s ease;min-width:0}
.partner-logo:hover{opacity:1;filter:grayscale(1)}
.partner-logo img{display:block;width:min(100%,180px);height:52px;object-fit:contain}

/* leaderboard tabs */
.lb-tab{display:none}.lb-tab.active{display:block}

/* season leaderboard table */
.season-rank-head,.season-rank-row{display:grid;grid-template-columns:70px minmax(0,1.8fr) 90px 80px 130px 160px;align-items:center;min-width:0}
.season-rank-head{background:var(--bg-soft);color:var(--muted);font-size:12px;font-weight:800;border-radius:16px 16px 0 0}
.season-rank-head span,.season-rank-row>div{padding:13px 14px;border-bottom:1px solid var(--line)}
.season-rank-row{font-size:14px}
.season-rank-row.highlight{background:var(--success-tint)}
.rank-no{font-size:16px;font-weight:800;color:var(--primary)}
.rank-no.top1{color:var(--gold-strong)}
.rank-no.top2{color:var(--muted)}
.rank-no.top3{color:var(--live)}
.lb-arrow{background:none;border:1px solid var(--line);border-radius:8px;width:30px;height:30px;cursor:pointer;font-size:16px;color:var(--muted);display:flex;align-items:center;justify-content:center}
.lb-arrow:hover{background:var(--primary-tint);color:var(--primary);border-color:var(--primary)}.score-arrow-cell{display:flex;align-items:center;justify-content:space-between;gap:8px}
.lb-divider{text-align:center;padding:10px;color:var(--muted);font-size:16px;background:var(--bg-soft);border-bottom:1px solid var(--line)}

@media(max-width:1100px){.active-events-grid{grid-template-columns:1fr}.upcoming-card{grid-template-columns:1fr}.upcoming-cover{height:120px}.season-rank-head,.season-rank-row{grid-template-columns:60px 1fr 80px 100px 50px}.season-rank-head span:nth-child(3),.season-rank-row>div:nth-child(3),.season-rank-head span:nth-child(4),.season-rank-row>div:nth-child(4){display:none}.partners-bar{justify-content:center}}
@media(max-width:900px){.partners-bar{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 28px}.partner-logo img{width:min(100%,170px)}}
@media(max-width:520px){.partners-bar{grid-template-columns:1fr;gap:14px}.partner-logo img{width:min(100%,180px)}.footer-shell{grid-template-columns:1fr;gap:24px}.footer-links{grid-template-columns:1fr 1fr}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:6px}.responsible-card{display:block}.rg-logo{margin-bottom:10px}}

/* Fix table row height - align to player-cell height */
.v44-rank-row{min-height:58px}.v44-rank-head span,.v44-rank-row>div{padding:12px 14px}

/* lb-table-title */
.lb-table-title{padding:14px 16px;font-size:14px;font-weight:800;color:var(--muted);border-bottom:1px solid var(--line);background:var(--bg-soft);border-radius:16px 16px 0 0}

/* rank table in glory-center */
.rank-table-row span{display:flex;align-items:center;gap:10px}
.rank-table-icon{width:36px;height:36px;object-fit:contain}
.rank-table-tag{height:20px;object-fit:contain}

/* fix index event-overview-grid - preserve 16:9 ratio */
.event-overview-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.event-cover-link img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}

/* v70 account center and nav refresh */
.nav-account{display:flex;align-items:center;gap:10px;margin-left:8px}
.nav-bell,.nav-wallet,.account-profile{height:42px;border:1px solid var(--line);background:var(--card);border-radius:var(--r-md);display:inline-flex;align-items:center;justify-content:center;position:relative;box-shadow:var(--shadow-sm)}
.nav-bell{width:42px}
.nav-bell::before{content:"";width:18px;height:18px;background:var(--text-2);display:block;mask:radial-gradient(circle at 50% 18%,transparent 0 5px,currentColor 5px) center/100% 100%}
.nav-bell::after{content:"";width:16px;height:15px;border:2px solid var(--text-2);border-bottom:0;border-radius:12px 12px 4px 4px;position:absolute;top:10px}
.nav-badge{position:absolute;top:-6px;right:-6px;min-width:18px;height:18px;padding:0 5px;border-radius:var(--r-full);background:var(--danger);color:#fff;font-size:10px;font-weight:800;display:flex;align-items:center;justify-content:center}
.nav-wallet{gap:7px;padding:0 12px;color:var(--gold-deep);font-size:14px;font-weight:800}
.wallet-flat-icon{width:18px;height:14px;border:2px solid currentColor;border-radius:4px;position:relative;display:inline-block}
.wallet-flat-icon::after{content:"";position:absolute;right:-2px;top:3px;width:7px;height:6px;border:2px solid currentColor;border-radius:5px 0 0 5px;background:var(--card)}
.account-profile{gap:10px;padding:4px 10px 4px 6px;list-style:none;cursor:pointer}
.account-profile::-webkit-details-marker{display:none}
.account-profile .avatar{width:34px;height:34px}
.account-name strong,.account-name small{display:block;line-height:1.1;white-space:nowrap}
.account-name strong{font-size:13px;color:var(--text)}
.account-name small{font-size:12px;color:var(--gold-deep);font-weight:800;margin-top:3px}
.account-chevron{width:6px;height:6px;border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);transform:rotate(45deg) translate(-1px,-1px);flex:0 0 auto;transition:transform .15s}.profile-menu[open] .account-chevron{transform:rotate(225deg) translate(-2px,-2px)}
.account-drop{min-width:210px;padding:8px;right:0}
.account-drop a{display:flex;align-items:center;justify-content:space-between;height:42px;border-radius:var(--r-md);padding:0 14px;font-weight:800;color:var(--text-2)}
.account-drop a:hover{background:var(--primary-tint);color:var(--primary)}
.account-drop i{width:7px;height:7px;border-radius:50%;background:var(--danger);display:inline-block}
.profile-menu-sep{border:0;border-top:1px solid var(--line);margin:8px -8px}

.account-page{padding-top:26px}
.account-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:24px;align-items:start}
.account-side{position:sticky;top:94px;display:grid;gap:16px}
.account-id-card,.account-card,.fund-hero,.referral-hero,.achievement-summary-card,.glory-hero-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow)}
.account-id-card{padding:20px;text-align:center}
.account-avatar-block{display:grid;justify-items:center;gap:10px;margin-bottom:8px}
.account-id-card .avatar.xl{width:78px;height:78px}
.avatar-change-btn{height:30px;border:1px solid var(--line);background:var(--card);border-radius:var(--r-sm);padding:0 12px;color:var(--text-2);font-size:12px;font-weight:800;cursor:pointer}
.account-id-card>strong{display:block;font-size:18px;line-height:1.2}
.rank-title{display:inline-flex;margin-top:6px;padding:5px 10px;border-radius:var(--r-full);background:var(--gold-tint);color:var(--gold-deep);font-size:12px;font-weight:800}
.account-score{display:flex;align-items:end;justify-content:center;gap:10px;margin-top:18px}
.account-score b{font-size:28px;line-height:1}
.account-score span{color:var(--muted);font-size:12px;font-weight:800}
.account-progress,.gold-progress{height:9px;background:var(--bg-mute);border-radius:var(--r-full);overflow:hidden}
.account-progress{margin:14px 0 10px}
.account-progress i{display:block;width:84%;height:100%;background:var(--grad-primary)}
.gold-progress i{display:block;width:84%;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-strong))}
.account-id-card p{margin:0;color:var(--muted);font-size:12px;font-weight:700}
.account-id-card em{font-style:normal;color:var(--gold-deep);font-weight:900}
.account-side-nav{background:var(--card);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow);padding:8px}
.account-side-nav a{height:44px;border-radius:var(--r-md);display:flex;align-items:center;padding:0 16px;color:var(--text-2);font-size:14px;font-weight:800}
.account-side-nav a:hover,.account-side-nav a.active{background:var(--primary-tint);color:var(--primary)}
.account-title{margin-bottom:22px}
.account-title h1{font-size:32px;line-height:1.15;margin:0 0 8px}
.account-title p{margin:0;color:var(--muted);font-size:14px;font-weight:700}
.account-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}
.account-stat-grid article{background:var(--card);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow);padding:20px}
.account-stat-grid span{display:block;color:var(--muted);font-size:13px;font-weight:800;margin-bottom:12px}
.account-stat-grid strong{display:block;font-size:28px;line-height:1.05}
.account-stat-grid small{display:block;margin-top:12px;color:var(--muted);font-size:12px;font-weight:700}
.profit{color:var(--success)!important}.loss{color:var(--danger)!important}
.invite-banner,.referral-hero,.fund-hero,.achievement-summary-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;gap:22px;align-items:center;padding:22px;margin-bottom:22px}
.gift-block{width:82px;height:82px;border-radius:var(--r-xl);background:var(--grad-primary);position:relative;box-shadow:var(--glow-primary)}
.gift-block::before,.gift-block::after{content:"";position:absolute;background:var(--card);border-radius:var(--r-sm)}
.gift-block::before{width:14px;top:8px;bottom:8px;left:34px}.gift-block::after{height:14px;left:8px;right:8px;top:34px}
.invite-banner h2{font-size:22px;margin:0 0 8px}
.invite-banner p,.fund-hero p,.referral-hero p{margin:0;color:var(--text-2);font-size:14px;line-height:1.6;font-weight:700}
.invite-earn span,.fund-hero span,.referral-hero span{display:block;color:var(--muted);font-size:12px;font-weight:800}
.invite-earn strong,.fund-hero strong,.referral-hero strong{display:block;color:var(--primary);font-size:26px;margin-top:5px}
.invite-earn small{display:block;color:var(--muted);font-size:12px;font-weight:700;margin-top:6px}
.account-two-col,.stats-layout,.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.account-card{padding:22px;margin-bottom:18px}
.account-card h2{font-size:20px;margin:0 0 16px}
.mini-event-list,.activity-list,.managed-event-list,.message-list{display:grid;gap:10px}
.mini-event-list>div,.managed-event-list>a,.message-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:var(--r-md);padding:12px;color:inherit;background:var(--card)}
.mini-event-list img{width:44px;height:44px;border-radius:var(--r-md);object-fit:cover}
.mini-event-list b small{color:var(--muted);font-size:12px;margin-left:4px}
.mini-event-list em,.managed-event-list em{font-style:normal;color:var(--success);font-weight:900;white-space:nowrap}
.activity-list div{padding:13px 0;border-bottom:1px solid var(--line)}
.activity-list div:last-child{border-bottom:0}
.activity-list b,.activity-list span{display:block}
.activity-list b{font-size:14px}.activity-list span{margin-top:5px;color:var(--muted);font-size:12px;font-weight:700}
.status.ended{background:var(--bg-mute);color:var(--text-2)}
.status.booked{background:var(--primary-tint);color:var(--primary)}
.account-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}
.my-event-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:18px}
.my-event-feature{background:var(--navy-950);color:#fff;border-radius:var(--r-xl);padding:22px;display:flex;align-items:center;justify-content:space-between;gap:16px;box-shadow:var(--shadow)}
.my-event-feature.muted{background:var(--card);color:var(--text);border:1px solid var(--line)}
.my-event-feature h2{font-size:22px;margin:12px 0 8px}.my-event-feature p{margin:0;color:var(--muted);font-weight:700}
.managed-event-list>a{grid-template-columns:auto minmax(0,1.2fr) minmax(160px,.8fr) auto;color:inherit}
.season-switch{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:18px}
.season-switch button{height:38px;border:1px solid var(--line);background:var(--card);border-radius:var(--r-full);padding:0 14px;font-size:13px;font-weight:800;color:var(--text-2);cursor:pointer}
.season-switch button.active{background:var(--primary);border-color:var(--primary);color:#fff}
.glory-hero-card{display:grid;grid-template-columns:230px minmax(0,1fr) 220px;gap:22px;align-items:center;padding:24px;margin-bottom:18px;background:linear-gradient(135deg,var(--navy-950),var(--primary-deep));color:#fff}
.glory-rank-emblem{text-align:center}.glory-rank-emblem img{display:none}.glory-rank-emblem h2{display:inline-flex;align-items:center;justify-content:center;margin:0 0 8px;padding:8px 16px;border-radius:var(--r-full);background:var(--gold-tint);color:var(--gold-deep);font-size:20px;font-weight:900}.glory-rank-emblem span,.glory-score-block span,.glory-rank-side span{color:var(--primary-soft);font-size:12px;font-weight:800}
.glory-score-block strong{display:block;font-size:44px;line-height:1.1;margin:10px 0}.glory-score-block p{color:var(--primary-soft);font-size:13px;font-weight:700;margin:10px 0 0}
.glory-rank-side b,.glory-rank-side strong{display:block}.glory-rank-side b{font-size:13px;color:var(--primary-soft)}.glory-rank-side strong{font-size:22px;margin:6px 0 4px}.glory-rank-side hr{border:0;border-top:1px solid var(--navy-600);margin:18px 0}
.rank-road{display:grid;grid-template-columns:repeat(7,1fr);gap:10px}.rank-road div{border:1px solid var(--line);border-radius:var(--r-md);padding:14px 10px;text-align:center;background:var(--bg-soft)}.rank-road div.current{border-color:var(--gold-soft);background:var(--gold-tint)}.rank-road img{display:none}.rank-road span,.rank-road small{display:block}.rank-road span{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:0 12px;border-radius:var(--r-full);background:var(--bg-mute);color:var(--text-2);font-size:13px;font-weight:900}.rank-road .current span{background:var(--gold-tint);color:var(--gold-deep)}.rank-road small{font-size:11px;color:var(--muted);margin-top:8px}
.season-bars{height:220px;display:grid;grid-template-columns:repeat(5,1fr);gap:14px;align-items:end}.season-bars.compact{height:180px;grid-template-columns:repeat(4,1fr)}.season-bars div{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:8px}.season-bars b{font-size:12px}.season-bars i{width:34px;height:var(--h);border-radius:var(--r-full);background:var(--primary-tint);display:block}.season-bars .active i{background:var(--primary)}.season-bars span{font-size:12px;color:var(--muted);font-weight:800}
.best-grid,.unlock-grid,.decor-grid,.badge-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.best-grid article,.unlock-grid article,.badge-grid article{border:1px solid var(--line);background:var(--bg-soft);border-radius:var(--r-md);padding:14px}.best-grid span,.unlock-grid span,.badge-grid span{display:block;color:var(--muted);font-size:12px;font-weight:700}.best-grid strong{display:block;font-size:22px;margin:8px 0}.locked{opacity:.55}
.decor-grid article{border:1px solid var(--line);border-radius:var(--r-md);padding:12px;background:var(--bg-soft)}.decor-grid img{width:100%;height:96px;border-radius:var(--r-sm);object-fit:cover}.decor-grid b,.decor-grid span{display:block}.decor-grid b{font-size:14px;margin-top:10px}.decor-grid span{font-size:12px;color:var(--muted);font-weight:700}
.stats-layout{grid-template-columns:1fr 1fr}.h-bars{display:grid;gap:14px}.h-bars div{display:grid;grid-template-columns:70px 1fr 36px;align-items:center;gap:10px}.h-bars i{height:10px;border-radius:var(--r-full);background:var(--primary-tint);position:relative}.h-bars i::before{content:"";display:block;height:100%;width:var(--w);border-radius:inherit;background:var(--primary)}.metric-table{display:grid;gap:10px}.metric-table div,.settings-list div{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;border-bottom:1px solid var(--line);padding:10px 0}.metric-table div:last-child,.settings-list div:last-child{border-bottom:0}.metric-table span{color:var(--muted);font-size:12px;font-weight:700}.metric-table em{font-style:normal;font-weight:900}.donut-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.donut-list div{border:1px solid var(--line);border-radius:var(--r-md);padding:18px;background:var(--bg-soft)}
.fund-hero,.referral-hero,.achievement-summary-card{grid-template-columns:minmax(0,1fr) auto}
.fund-actions{display:flex;gap:10px}.fund-hero strong{font-size:36px}.wallet-action-modal{max-width:440px;width:100%}.wallet-action-modal p{color:var(--muted);font-size:13px;font-weight:700}.form-line{display:grid;gap:8px;margin-bottom:16px}.form-line span{font-size:12px;color:var(--muted);font-weight:900}.form-line input,.form-line select{height:42px;border:1px solid var(--line);border-radius:var(--r-md);padding:0 12px;font:inherit;font-size:14px;font-weight:700;color:var(--text);background:var(--card)}
.quick-amounts,.method-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.quick-amounts button,.method-row button{height:36px;border:1px solid var(--line);background:var(--card);border-radius:var(--r-md);padding:0 14px;font-weight:800;color:var(--text-2);cursor:pointer}.quick-amounts button.active,.method-row button.active{background:var(--primary-tint);border-color:var(--primary-bright);color:var(--primary)}
.message-layout{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:18px}.message-row{grid-template-columns:minmax(0,1fr) auto;align-items:start}.message-row b,.message-row span{display:block}.message-row span{grid-column:1;line-height:1.55;color:var(--muted);font-size:13px;font-weight:700}.message-row small{grid-column:2;grid-row:1 / span 2;color:var(--faint);font-weight:800}.message-row.unread{border-color:var(--primary-soft);background:var(--primary-tint)}.message-preview{background:var(--card);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow);padding:20px}.message-preview h2{font-size:18px;margin:0 0 14px}.message-preview div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 0}.message-preview div:last-child{border-bottom:0}
.referral-hero strong{letter-spacing:.08em}.rule-list p{display:flex;gap:12px;align-items:flex-start;color:var(--text-2);font-size:14px;font-weight:700}.rule-list b{width:24px;height:24px;border-radius:50%;background:var(--primary-tint);color:var(--primary);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto}
/* 专属邀请码 hero — gold accent so it reads as a customized code, not another generic card */
.referral-hero{
  position:relative;overflow:hidden;
  background:linear-gradient(135deg,var(--gold-tint) 0%,var(--card) 60%);
  border:1px solid var(--gold-soft);
  box-shadow:0 14px 32px rgba(244,182,63,.14);
}
.referral-hero::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(circle at 0% 0%,rgba(244,182,63,.16),transparent 55%);
}
.referral-hero>*{position:relative;z-index:1}
.referral-hero>div>span{color:var(--gold-deep);font-weight:800;letter-spacing:.04em}
.referral-hero strong{
  display:inline-block;margin-top:6px;
  color:var(--gold);
  padding:6px 16px;
  border:1.5px dashed var(--gold-soft);
  border-radius:10px;
  background:rgba(244,182,63,.08);
  font-family:"SF Mono",SFMono-Regular,Menlo,Consolas,monospace;
  letter-spacing:.14em;
}
.achievement-summary-card img{width:76px;height:76px;object-fit:contain;float:left;margin-right:16px}.achievement-summary-card h2{font-size:24px;margin:8px 0 6px}.achievement-summary-card p{margin:0;color:var(--muted);font-weight:700}.badge-grid{grid-template-columns:repeat(3,1fr)}
.settings-grid{align-items:start}.settings-avatar-row{display:flex;align-items:center;gap:14px;margin-bottom:18px}.switch-row{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:12px 0;font-weight:800}.switch-row:last-child{border-bottom:0}.switch-row label{position:relative;width:44px;height:24px}.switch-row input{opacity:0}.switch-row i{position:absolute;inset:0;background:var(--bg-mute);border-radius:var(--r-full)}.switch-row i::after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:var(--card);top:3px;left:3px;transition:transform .2s}.switch-row input:checked+i{background:var(--primary)}.switch-row input:checked+i::after{transform:translateX(20px)}.muted-note{color:var(--muted);font-size:13px;font-weight:700}.settings-save{display:flex;justify-content:flex-end;gap:10px}
[hidden]{display:none!important}

@media(max-width:1100px){
  .nav-account{display:none}
  .account-layout,.account-two-col,.stats-layout,.settings-grid,.message-layout{grid-template-columns:1fr}
  .account-side{position:static}
  .account-stat-grid,.best-grid,.unlock-grid{grid-template-columns:repeat(2,1fr)}
  .glory-hero-card{grid-template-columns:1fr}
  .rank-road{grid-template-columns:repeat(2,1fr)}
  .my-event-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .account-stat-grid,.decor-grid,.badge-grid{grid-template-columns:1fr}
  .invite-banner{grid-template-columns:1fr}
  .managed-event-list>a,.mini-event-list>div{grid-template-columns:1fr}
  .account-toolbar{align-items:flex-start;flex-direction:column}
}

/* v70 final account-nav overrides after legacy blocks */
.site-header .nav-shell{gap:18px}
.site-header .main-nav{margin-left:auto}
.site-header .nav-account{display:flex;align-items:center;gap:10px;margin-left:0}
.site-header .nav-bell,
.site-header .nav-wallet,
.site-header .account-profile{height:42px;border:1px solid var(--line);background:var(--card);border-radius:var(--r-md);box-shadow:var(--shadow-sm)}
.site-header .nav-bell{width:42px}
.site-header .nav-wallet{padding:0 12px;color:var(--gold-deep);font-weight:800;gap:7px}
.site-header .account-profile{padding:4px 10px 4px 6px;gap:10px;border-radius:var(--r-md)}
.site-header .profile-menu summary.account-profile::after{display:none}
.site-header .account-profile .avatar{width:34px;height:34px}
.site-header .account-drop.profile-menu-drop{min-width:210px;padding:8px;gap:2px;border-radius:var(--r-lg)}
.site-header .account-drop.profile-menu-drop a{height:42px;border-radius:var(--r-md);padding:0 14px;color:var(--text-2);font-size:14px;justify-content:space-between}
.site-header .account-drop.profile-menu-drop a:hover{background:var(--primary-tint);color:var(--primary)}
.site-header .account-drop .profile-menu-sep{margin:8px -8px}
@media(max-width:1100px){.site-header .nav-account{display:none}}

/* v71 account split sidebars and compact profile */
.account-id-card{padding:14px 16px;text-align:left}
.account-avatar-block{display:flex;align-items:center;gap:12px;margin-bottom:10px}
.account-id-card .avatar.xl{width:58px;height:58px;flex:0 0 auto}
.account-id-card>strong{font-size:16px;margin-top:2px}
.account-id-card .rank-title{margin-top:4px;padding:4px 8px;font-size:11px}
.account-score{justify-content:flex-start;margin-top:12px;gap:8px}
.account-score b{font-size:24px}
.account-progress{margin:10px 0 8px}
.account-id-card p{font-size:12px;line-height:1.45}
.account-id-card .avatar-change-btn{height:28px;padding:0 10px}
.invite-banner{background:var(--card);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow);padding:20px}
.compact-events{display:grid;gap:10px}
.mini-event-row{display:grid;grid-template-columns:minmax(0,1fr) 190px 92px;gap:14px;align-items:center;border:1px solid var(--line);border-radius:var(--r-md);padding:12px 14px;background:var(--card);color:inherit;transition:border-color .15s,background .15s}
.mini-event-row:hover{border-color:var(--primary-soft);background:var(--bg-soft)}
.mini-event-main{display:flex;align-items:center;gap:10px;min-width:0}
.mini-event-main strong{font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mini-event-main small{color:var(--muted);font-size:12px;margin-left:4px}
.mini-event-result{display:grid;grid-template-columns:1fr 1fr;gap:8px;color:var(--muted);font-size:12px;font-weight:800}
.mini-event-result b,.mini-event-result em{font-size:14px;font-style:normal;font-weight:900;color:var(--text)}
.mini-event-result em{color:var(--success)}
.mini-event-row .btn{justify-self:end;align-self:center}
.utility-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;align-items:start}
.utility-side{position:sticky;top:94px;display:grid;gap:16px}
.utility-nav,.utility-mini-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-xl);box-shadow:var(--shadow)}
.utility-nav{padding:8px}
.utility-nav a{display:block;border-radius:var(--r-md);padding:12px 14px;color:var(--text-2);border:1px solid transparent}
.utility-nav a:hover,.utility-nav a.active{background:var(--primary-tint);border-color:var(--primary-soft);color:var(--primary)}
.utility-nav span{display:block;font-size:14px;font-weight:900;line-height:1.2}
.utility-nav small{display:block;margin-top:5px;color:var(--muted);font-size:12px;font-weight:700;line-height:1.4}
.utility-nav a.active small,.utility-nav a:hover small{color:var(--primary)}
.utility-mini-card{padding:16px}
.utility-mini-card span,.utility-mini-card small{display:block;color:var(--muted);font-size:12px;font-weight:800}
.utility-mini-card strong{display:block;margin:8px 0;color:var(--text);font-size:24px;line-height:1}
.utility-main{min-width:0}
.utility-page .fund-hero,.utility-page .referral-hero{margin-bottom:18px}
.utility-page .account-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1100px){
  .utility-layout{grid-template-columns:1fr}
  .utility-side{position:static}
  .utility-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .mini-event-row{grid-template-columns:1fr}
  .mini-event-main{flex-wrap:wrap}
  .mini-event-row .btn{justify-self:start}
}
@media(max-width:720px){
  .utility-nav,.utility-page .account-stat-grid{grid-template-columns:1fr}
  .mini-event-result{grid-template-columns:1fr}
}

/* v72 account pages use one calm body surface */
.account-main,.utility-main{background:var(--bg-soft);border:1px solid var(--line);border-radius:var(--r-xl);padding:24px;min-width:0}
.account-main>.account-title,.utility-main>.account-title{margin-bottom:20px}
.account-main>.account-title h1,.utility-main>.account-title h1{font-size:28px}
.account-main .account-card,.utility-main .account-card,.account-main .account-stat-grid article,.utility-main .account-stat-grid article,.utility-main .fund-hero,.utility-main .referral-hero,.account-main .invite-banner{box-shadow:none}
.account-main .account-card,.utility-main .account-card{border-radius:var(--r-lg);margin-bottom:16px}
.account-main .account-stat-grid,.utility-main .account-stat-grid{margin-bottom:16px}
.account-main .account-stat-grid article,.utility-main .account-stat-grid article{padding:16px;border-radius:var(--r-lg)}
.account-main .account-stat-grid strong,.utility-main .account-stat-grid strong{font-size:24px}
.utility-nav a{padding:13px 14px}
.utility-nav small{display:none}
.utility-mini-card{display:none}
.utility-page .utility-side{gap:0}
.utility-page .utility-nav{border-radius:var(--r-lg)}
.utility-page .fund-hero,.utility-page .referral-hero{border-radius:var(--r-lg);box-shadow:none}
.utility-page{padding-top:34px}
.utility-standalone{width:100%;margin:0 auto}
.wallet-standalone{max-width:none}
.referral-standalone{max-width:none}
.settings-standalone{max-width:none}
.utility-standalone .account-title{max-width:680px}
.wallet-standalone .account-stat-grid,.referral-standalone .account-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.referral-standalone .account-two-col{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}
.settings-standalone .settings-clean,.settings-standalone .settings-save{max-width:820px}
.settings-grid{display:none}
.settings-clean{display:grid;gap:16px}
.settings-clean-section{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.settings-clean-section h2{font-size:18px;margin:0;padding:18px 20px;border-bottom:1px solid var(--line)}
.settings-clean-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px);align-items:center;gap:18px;padding:16px 20px;border-bottom:1px solid var(--line)}
.settings-clean-row:last-child{border-bottom:0}
.settings-clean-row strong{display:block;font-size:14px;color:var(--text)}
.settings-clean-row span{display:block;margin-top:4px;color:var(--muted);font-size:12px;font-weight:700;line-height:1.5}
.settings-clean-row input,.settings-clean-row select{height:40px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);padding:0 12px;color:var(--text);font:inherit;font-size:14px;font-weight:700;width:100%}
.settings-row-control{display:flex;align-items:center;justify-content:flex-end;gap:12px}
.settings-row-control .avatar{width:42px;height:42px}
.password-settings-row{align-items:start}
.password-fieldset{display:grid;grid-template-columns:1fr;gap:10px;width:100%;max-width:340px;justify-self:end}
.password-fieldset label{display:grid;gap:5px}
.password-fieldset label span{margin:0;font-size:11px;font-weight:800;color:var(--muted)}
.password-fieldset .btn{justify-self:end;margin-top:2px}
.switch-row-control{justify-self:end;position:relative;width:44px;height:24px}
.switch-row-control input{opacity:0;width:0;height:0}
.switch-row-control i{position:absolute;inset:0;background:var(--bg-mute);border-radius:var(--r-full)}
.switch-row-control i::after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:var(--card);top:3px;left:3px;transition:transform .2s}
.switch-row-control input:checked+i{background:var(--primary)}
.switch-row-control input:checked+i::after{transform:translateX(20px)}
@media(max-width:900px){.utility-standalone{max-width:100%}.wallet-standalone .account-stat-grid,.referral-standalone .account-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.referral-standalone .account-two-col{grid-template-columns:1fr}.settings-clean-row{grid-template-columns:1fr;gap:10px}.settings-row-control{justify-content:flex-start}.password-fieldset{justify-self:stretch;max-width:none}.password-fieldset .btn{justify-self:start}.switch-row-control{justify-self:start}}
@media(max-width:560px){.wallet-standalone .account-stat-grid,.referral-standalone .account-stat-grid{grid-template-columns:1fr}.fund-hero,.referral-hero{grid-template-columns:1fr}.fund-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}}
.settings-save{padding-top:2px}
@media(max-width:900px){
  .account-main,.utility-main{padding:18px}
  .settings-clean-row{grid-template-columns:1fr;gap:10px}
  .settings-row-control,.switch-row-control{justify-self:start}
}

/* v73 compact typography and account refinements */
body{font-size:14px}
.main-nav a{font-size:13px;padding:9px 12px}
.brand strong{font-size:16px}
.brand small{font-size:11px}
.btn{height:38px;font-size:13px;padding:0 14px}
.btn.sm{height:30px;font-size:12px}
.page-title h1,.account-title h1,.utility-main>.account-title h1,.account-main>.account-title h1{font-size:26px}
.page-title p,.account-title p{font-size:13px}
.section-head h2,.account-card h2,.settings-clean-section h2{font-size:18px}
.account-card{padding:18px}
.account-stat-grid span{font-size:12px;margin-bottom:8px}
.account-main .account-stat-grid strong,.utility-main .account-stat-grid strong,.account-stat-grid strong{font-size:22px}
.account-stat-grid small{font-size:12px;margin-top:8px}
.status{font-size:12px;padding:5px 9px}
.data-head,.data-row,.wallet-tx-row,.message-row{font-size:13px}
.compact-profile-card{padding:12px 14px}
.compact-profile-head{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);gap:12px;align-items:center;margin-bottom:10px}
.compact-profile-head .avatar.xl{width:52px;height:52px}
.compact-profile-info strong{display:block;font-size:16px;line-height:1.15;color:var(--text)}
.compact-profile-info .rank-title{margin-top:5px}
.avatar-edit-fab{position:absolute;left:-5px;top:-5px;width:24px;height:24px;border-radius:var(--r-full);border:1px solid var(--line);background:var(--card);color:var(--primary);font-size:0;font-weight:900;line-height:0;display:grid;place-items:center;box-shadow:var(--shadow-sm);cursor:pointer;z-index:2;text-decoration:none}
.avatar-edit-fab::before{content:"";display:block;width:14px;height:14px;background:url('icons/edit.svg') center/contain no-repeat;grid-area:1/1;opacity:.92}
.avatar-edit-fab::after{display:none}
.compact-profile-card .account-score{margin-top:8px}
.compact-profile-card .account-score b{font-size:22px}
.compact-profile-card .account-progress{height:7px;margin:9px 0 7px}
.compact-profile-card p{font-size:12px}
.message-layout{grid-template-columns:1fr}
.message-preview{display:none}
.message-row{grid-template-columns:minmax(0,1fr) 72px;padding:12px 14px}
.mini-event-row{grid-template-columns:minmax(0,1.4fr) 168px 86px;padding:11px 12px}
.mini-event-main{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}
.mini-event-main strong{font-size:13px;white-space:normal;overflow:visible;text-overflow:clip}
.mini-event-main small{font-size:12px}
.mini-event-result{font-size:12px}
.mini-event-result b,.mini-event-result em{font-size:13px}
.wallet-tx-info strong,.message-row b,.activity-list b{font-size:13px}
.wallet-tx-amount{font-size:14px}
.settings-clean-row{padding:14px 18px}
.settings-clean-section h2{padding:16px 18px}
@media(max-width:1100px){.mini-event-row{grid-template-columns:1fr}.mini-event-main{grid-template-columns:auto minmax(0,1fr);}.mini-event-main .status{grid-column:1/-1;justify-self:start}}

/* upcoming card redesign */
.upcoming-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);display:grid;grid-template-columns:minmax(300px,34%) 1fr;align-items:stretch;overflow:hidden}
.upcoming-cover{width:100%;flex-shrink:0;background:var(--bg-soft);display:flex;align-items:center;justify-content:center}
.upcoming-cover img{width:100%;height:100%;object-fit:contain;display:block}
.upcoming-body{padding:20px 22px;display:flex;flex-direction:column;gap:12px}
.upcoming-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.upcoming-title-block h3{font-size:20px;margin:0 0 4px;font-weight:800}
.upcoming-issue{margin:0;font-size:13px;color:var(--muted);font-weight:700}
.upcoming-info-row{display:flex;gap:8px;flex-wrap:wrap}
.upcoming-info-row span{font-size:12px;font-weight:700;color:var(--text-2);background:var(--bg-soft);border:1px solid var(--line);border-radius:999px;padding:5px 10px}
.upcoming-kpis{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:auto}
.upcoming-kpis .stat{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:10px 14px;min-width:80px}
.upcoming-kpis .stat strong{font-size:18px}
.upcoming-cta-inline{margin-left:auto}

/* v47 hybrid merge helpers */

.status.booked{background:var(--primary-tint);color:var(--primary)}
.btn.muted{background:var(--bg-mute);color:var(--faint);cursor:not-allowed}
.active-card.refined-active-card{min-height:300px}
.active-card .meta-row.stacked{align-items:flex-start}
.active-kpis.k3{grid-template-columns:repeat(3,1fr)}
.active-kpis .stat.pos strong{color:var(--success-bright)}
.active-actions-fixed{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto;padding-top:18px}
.active-actions-fixed .btn{width:100%;justify-content:center}
.active-actions-fixed:has(.btn:only-child){grid-template-columns:1fr}
.other-event-grid.two-plus{grid-template-columns:repeat(2,1fr)}
.leader-layout{grid-template-columns:minmax(0,1fr) var(--side-w)}
.lb-bar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:4px 0 14px}
.lb-bar h2{font-size:22px;margin:0}
.rank-head,.rank-row{display:grid;grid-template-columns:90px minmax(0,1fr) 150px 100px;align-items:center}
.rank-head{background:var(--bg-soft);color:var(--muted);font-size:12px;font-weight:800;border-radius:16px 16px 0 0}
.rank-head span,.rank-row>div,.rank-row>a.player-cell{padding:12px 14px;border-bottom:1px solid var(--line)}
.rank-row.me{background:var(--success-tint)}
.my-rank-summary{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);gap:var(--s4);align-items:center;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:20px}
.my-rank-profile{display:flex;align-items:center;gap:16px;min-width:0}
.my-rank-profile .avatar.xl{width:68px;height:68px;font-size:24px;flex:0 0 68px}
.my-rank-profile small,.my-rank-metrics small{display:block;color:var(--muted);font-size:12px;font-weight:800;margin-bottom:4px}
.my-rank-profile strong{display:block;font-size:36px;line-height:1;color:var(--primary)}
.my-rank-profile span{display:block;color:var(--text-2);font-weight:800;margin-top:6px}
.my-rank-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.my-rank-metrics>div{border-left:1px solid var(--line);padding-left:16px}
.my-rank-metrics strong{display:block;font-size:22px;color:var(--text)}
.leader-controls{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:14px}
.leader-controls .tabs{margin:0;flex:1}
.leader-controls .filters{flex:0 0 auto}
.leader-filter-group{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.leader-filter-group label{display:flex;align-items:center;gap:8px}
.leader-filter-group select:disabled{opacity:.48;cursor:not-allowed}
.leaderboard-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--s4);align-items:start}
.leaderboard-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:20px;overflow:hidden}
.leaderboard-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.leaderboard-panel-head h2{margin:0;font-size:22px;line-height:1.2;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.leaderboard-panel-head span{display:inline-flex;align-items:center;justify-content:center;min-width:52px;padding:7px 10px;border-radius:999px;background:var(--primary-tint);color:var(--primary);font-size:12px;font-weight:900}
.leaderboard-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.text-link{border:0;background:transparent;color:var(--primary);font-weight:900;font-size:13px;cursor:pointer;padding:6px 0}
.text-link:hover{text-decoration:underline}
.mini-rank-head,.mini-rank-row{display:grid;align-items:center;gap:10px}
.mini-rank-head{background:var(--bg-soft);color:var(--muted);font-size:12px;font-weight:900;border-radius:16px;padding:11px 12px}
.mini-rank-head.glory,.mini-rank-row.glory{grid-template-columns:58px minmax(0,1fr) 92px 100px}
.mini-rank-head.weekly,.mini-rank-row.weekly{grid-template-columns:58px minmax(0,1fr) 112px 92px}
.mini-rank-row{padding:13px 12px;border-bottom:1px solid var(--line);font-size:14px;color:var(--text-2)}
.mini-rank-row:last-child{border-bottom:0}
.mini-rank-row.me{background:var(--success-tint);border-radius:16px;border-bottom:0;margin-top:2px}
.mini-rank-row .rank-no{font-size:16px}
.mini-player{display:flex;align-items:center;gap:10px;min-width:0;color:var(--text)}
.mini-player .avatar{width:34px;height:34px;flex:0 0 34px}
.mini-player strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.player-cell small{display:block;margin-top:3px;color:var(--muted);font-size:12px;font-weight:800}
.player-link{color:inherit;border-radius:12px;transition:background .15s ease,color .15s ease}
.player-link:hover{background:var(--primary-tint);color:var(--primary)}
.mini-rank-row .player-link{padding:5px;margin:-5px}
.rank-row>a.player-cell{min-height:58px}
.live-board a,.home-live-board a{font-size:13px;font-weight:800;color:var(--text-2);border-radius:8px;padding:4px 6px;margin-left:-6px;transition:background .15s ease,color .15s ease}
.live-board a:hover,.home-live-board a:hover{background:var(--primary-tint);color:var(--primary)}
.mini-rank-row .profit{font-weight:900}
.full-leaderboard{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:20px}
.full-leaderboard .leader-controls{background:transparent;border:0;box-shadow:none;border-radius:0;margin-bottom:14px;padding:0}
.full-head{margin-bottom:14px}
.leaderboard-full-table{box-shadow:none;border-radius:16px;overflow-x:auto}
.leaderboard-full-table .rank-head,.leaderboard-full-table .rank-row{grid-template-columns:74px minmax(260px,1fr) minmax(140px,.45fr) minmax(130px,.38fr);min-width:680px}
.leaderboard-full-table .rank-head span,.leaderboard-full-table .rank-row>div,.leaderboard-full-table .rank-row>a.player-cell{display:flex;align-items:center;min-height:58px}
.leaderboard-full-table .rank-head span:nth-child(3),.leaderboard-full-table .rank-row>div:nth-child(3){justify-content:flex-start}
.leaderboard-full-table .rank-head span:nth-child(4),.leaderboard-full-table .rank-row>div:nth-child(4){justify-content:flex-end;text-align:right}
.leaderboard-full-table .player-cell{min-width:0}
.help-layout{display:grid;grid-template-columns:var(--side-w) minmax(0,1fr);gap:18px;align-items:start}
.help-side{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:10px;position:sticky;top:92px}
.help-side a{display:block;padding:12px 14px;border-radius:12px;font-weight:800;color:var(--text-2);font-size:14px}
.help-side a.active,.help-side a:hover{background:var(--primary-tint);color:var(--primary)}
.help-stack{display:grid;gap:16px}
.help-sec{scroll-margin-top:96px}
.rule-list{display:grid;gap:10px}.rule-list p{margin:0;color:var(--text-2);font-size:14px;font-weight:600;line-height:1.7}.rule-list.cols{grid-template-columns:repeat(2,1fr)}
.faq-grid{display:grid;gap:12px}
.leader-layout:has(.leader-main:only-child){grid-template-columns:1fr}
@media(max-width:1100px){.my-rank-summary,.leaderboard-split,.help-layout{grid-template-columns:1fr}.leader-controls{align-items:flex-start;flex-direction:column}.leader-controls .filters{width:100%;justify-content:flex-start}.my-rank-metrics>div{border-left:0;border-top:1px solid var(--line);padding:12px 0 0}.help-side{position:static}.other-event-grid.two-plus,.active-kpis.k3,.rule-list.cols{grid-template-columns:1fr}.lb-bar{align-items:flex-start;flex-direction:column}}

/* v47 selected profile + refined game-page layouts */
.profile-layout{display:grid;grid-template-columns:var(--side-w) minmax(0,1fr);gap:18px;align-items:start}
.profile-side{position:sticky;top:90px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:24px 22px;text-align:center}
.profile-side .avatar.xl{margin:0 auto 14px;width:84px;height:84px;font-size:28px}
.ps-emblem{width:22px;height:22px;object-fit:contain}
.profile-side h1{font-size:24px;margin:0 0 10px}
.ps-tier{font-weight:800;color:var(--gold-deep);background:var(--gold-tint);border-radius:var(--r-full);margin-top:4px;padding:5px 10px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.ps-tier img{display:none}
.ps-score{margin-top:16px}
.ps-score small{display:block;color:var(--muted);font-weight:700;font-size:12px;margin-bottom:4px}
.ps-score strong{display:block;font-size:36px;font-weight:800;letter-spacing:-1.5px;line-height:1;color:var(--primary)}
.profile-side .progress-top{font-size:12px;margin-top:20px}
.profile-side .progress-top span{color:var(--muted);font-weight:700}
.ps-note{color:var(--muted);font-size:12px;margin-top:8px}
.profile-main{display:flex;flex-direction:column;gap:18px}
.profile-main .section-block,.profile-main .profile-stats,.profile-main .profile-overview{margin-top:0}
.profile-event-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,32%);gap:14px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 14px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.profile-event-strip::-webkit-scrollbar{height:8px}
.profile-event-strip::-webkit-scrollbar-track{background:var(--bg-mute);border-radius:999px}
.profile-event-strip::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px}
.profile-event-card{scroll-snap-align:start;background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:16px;display:flex;flex-direction:column;min-height:220px}
.profile-event-card h3{font-size:20px;line-height:1.15;margin:0 0 6px}
.profile-event-card p{margin:0;color:var(--muted);font-size:13px;font-weight:700;line-height:1.45}
.profile-event-summary{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:13px 0;margin:18px 0;display:flex;align-items:baseline;justify-content:space-between;gap:14px}
.profile-event-summary strong{font-size:24px;line-height:1;color:var(--primary)}
.profile-event-summary span{font-size:13px;font-weight:800;color:var(--muted);text-align:right}
.profile-event-card .btn{margin-top:auto;width:100%;justify-content:center}
.profile-identity-card{overflow:hidden}
.profile-identity-card .avatar.xl{width:72px;height:72px;font-size:28px;margin-bottom:12px}
.profile-identity-card h1{font-size:28px;margin-bottom:8px}
.profile-identity-card .ps-tier{display:inline-flex;background:var(--gold-tint);color:var(--gold-deep);border-radius:999px;padding:7px 12px;margin-top:0}
.profile-identity-card .ps-score{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;margin-top:18px}
.profile-identity-card .ps-score strong{font-size:44px;letter-spacing:0}
.profile-rank-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:18px}
.profile-rank-pair>div{background:transparent;border:0;border-radius:0;padding:6px 8px}
.profile-rank-pair>div+div{border-left:1px solid var(--line)}
.profile-rank-pair small{display:block;color:var(--muted);font-size:12px;font-weight:800;margin-bottom:4px}
.profile-rank-pair strong{display:block;color:var(--primary);font-size:24px;line-height:1}
.profile-identity-card .progress{height:8px}
.profile-side-btn{width:100%;justify-content:center;margin-top:18px;background:var(--bg-soft)}
.profile-pride-overview .overview-stat strong{color:var(--primary)}
.profile-goal-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(180px,.7fr) minmax(180px,.7fr);gap:14px}
.profile-goal-card,.profile-highlight-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:18px}
.section-head.compact{margin-bottom:14px}.section-head.compact h2{font-size:20px}
.profile-goal-main{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:16px}
.profile-goal-main strong{font-size:24px;line-height:1;color:var(--primary)}
.profile-goal-main span{font-size:13px;color:var(--muted);font-weight:800;text-align:right}
.profile-goal-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.profile-goal-meta span{font-size:12px;font-weight:800;color:var(--text-2);background:var(--bg-soft);border:1px solid var(--line);border-radius:999px;padding:6px 10px}
.profile-highlight-card{display:flex;flex-direction:column;justify-content:space-between;min-height:146px}
.profile-highlight-card small{color:var(--muted);font-size:12px;font-weight:900}
.profile-highlight-card strong{font-size:28px;line-height:1;color:var(--primary)}
.profile-highlight-card span{color:var(--text-2);font-size:13px;font-weight:800;line-height:1.45}
.achievement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.achievement-card{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:16px;display:flex;align-items:center;gap:12px;min-height:96px}
.achievement-card img{width:42px;height:42px;object-fit:contain;flex:0 0 42px}
.achievement-card strong{display:block;font-size:14px;line-height:1.25}
.achievement-card span{display:block;color:var(--muted);font-size:12px;font-weight:800;margin-top:5px}
.achievement-card.locked{background:var(--bg-soft);box-shadow:none}
.achievement-card.locked img{filter:grayscale(1);opacity:.48}
.profile-achievement-summary{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:20px}
.profile-achievement-showcase{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);gap:16px;align-items:center}
.profile-achievement-feature{display:flex;align-items:center;gap:14px;min-width:0}
.profile-achievement-feature img{width:62px;height:62px;object-fit:contain;flex:0 0 62px}
.profile-achievement-feature small{display:block;color:var(--muted);font-size:12px;font-weight:900;margin-bottom:4px}
.profile-achievement-feature strong{display:block;font-size:24px;line-height:1.1}
.profile-achievement-feature span{display:block;color:var(--muted);font-size:13px;font-weight:800;margin-top:5px}
.profile-achievement-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-left:1px solid var(--line)}
.profile-achievement-stats div{text-align:center;padding:8px 10px;border-right:1px solid var(--line)}
.profile-achievement-stats div:last-child{border-right:0}
.profile-achievement-stats strong{display:block;color:var(--primary);font-size:28px;line-height:1}
.profile-achievement-stats span{display:block;color:var(--muted);font-size:12px;font-weight:900;margin-top:6px}
.profile-achievement-rail{display:flex;align-items:center;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);margin-top:18px;padding-top:14px}
.profile-achievement-rail span,.profile-achievement-rail a{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--bg-soft);border-radius:999px;color:var(--text-2);font-size:12px;font-weight:900;padding:7px 10px}
.profile-achievement-rail img{width:22px;height:22px;object-fit:contain}
.profile-achievement-rail .locked{color:var(--faint)}
.profile-achievement-rail .locked img{filter:grayscale(1);opacity:.48}
.profile-achievement-rail a{background:var(--primary-tint);color:var(--primary);border-color:var(--primary-soft)}
.achievement-hero{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:26px;display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.75fr);gap:24px;align-items:center}
.achievement-hero-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.75fr);gap:24px;align-items:center}
.achievement-kicker{display:inline-flex;color:var(--primary);background:var(--primary-tint);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:900}
.achievement-hero h1{font-size:36px;line-height:1.1;margin:14px 0 10px}
.achievement-hero p{margin:0;color:var(--text-2);font-size:14px;line-height:1.7;max-width:620px}
.achievement-hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.achievement-hero-stats div{background:var(--bg-soft);border:1px solid var(--line);border-radius:16px;padding:16px;text-align:center}
.achievement-hero-stats small{display:block;color:var(--muted);font-size:12px;font-weight:900;margin-bottom:6px}
.achievement-hero-stats strong{display:block;color:var(--primary);font-size:28px;line-height:1}
.achievement-focus-grid{display:grid;grid-template-columns:minmax(0,1fr) var(--side-w);gap:var(--s4);align-items:stretch}
.achievement-focus-card,.achievement-next-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:22px}
.achievement-focus-card{display:flex;align-items:center;gap:18px}
.achievement-focus-card img{width:86px;height:86px;object-fit:contain;flex:0 0 86px}
.achievement-focus-card small,.achievement-next-card small{display:block;color:var(--muted);font-size:12px;font-weight:900;margin-bottom:8px}
.achievement-focus-card h2{font-size:28px;margin:0 0 8px}
.achievement-focus-card p{margin:0;color:var(--text-2);line-height:1.65;font-size:14px}
.achievement-next-card{display:flex;flex-direction:column;gap:10px}
.achievement-next-card strong{font-size:28px;color:var(--primary);line-height:1}
.achievement-next-card span{color:var(--text-2);font-size:13px;font-weight:800}
.achievement-next-card .btn{margin-top:auto;width:100%;justify-content:center}
.achievement-page-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.achievement-page-card{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:16px;display:grid;grid-template-columns:48px minmax(0,1fr);gap:12px;align-items:center;position:relative;min-height:116px}
.achievement-page-card img{width:48px;height:48px;object-fit:contain}
.achievement-page-card strong{display:block;font-size:16px;line-height:1.25}
.achievement-page-card span{display:block;color:var(--muted);font-size:12px;font-weight:800;margin-top:5px;line-height:1.35}
.achievement-page-card b{position:absolute;top:12px;right:12px;border-radius:999px;background:var(--primary-tint);color:var(--primary);font-size:12px;padding:5px 8px}
.achievement-page-card.featured{border-color:var(--primary-soft);background:var(--bg-soft)}
.achievement-page-card.locked{background:var(--bg-soft);box-shadow:none}
.achievement-page-card.locked img{filter:grayscale(1);opacity:.45}
.achievement-page-card.locked b{background:var(--bg-mute);color:var(--muted)}
.back-link{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-weight:700;font-size:14px;margin-bottom:10px}
.back-link:hover{color:var(--primary)}
.back-link .chev{font-size:20px;line-height:1;margin-top:-2px}
.betting-header{padding:12px 18px;gap:16px;margin-bottom:14px}
.betting-header .bh-row{display:flex;align-items:center;gap:10px}
.betting-header h1{font-size:20px;margin:0}
.betting-header p{font-size:12px;margin-top:3px}
.betting-kpis{gap:28px}
.betting-kpis .stat{min-width:96px;padding:8px 14px}
.betting-kpis .stat small{margin-bottom:2px;font-size:12px}
.betting-kpis .stat strong{font-size:18px}
.game-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);overflow:hidden;margin-bottom:18px}
.game-panel .betting-header{border:0;border-radius:0;box-shadow:none;margin:0}
.game-panel .betting-frame{border:0;border-radius:0;box-shadow:none}
@media(max-width:1100px){.profile-layout{grid-template-columns:1fr}.profile-side{position:static}.profile-goal-grid{grid-template-columns:1fr}.achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.achievement-hero,.achievement-focus-grid{grid-template-columns:1fr}.achievement-page-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-achievement-showcase{grid-template-columns:1fr}.profile-achievement-stats{border-left:0;border-top:1px solid var(--line);padding-top:14px}}

@media(max-width:1100px) and (min-width:901px){.news-showcase-panel{grid-template-columns:220px minmax(0,1fr)}.news-showcase-track{grid-auto-flow:column;grid-auto-columns:minmax(220px,33%);grid-template-columns:none;overflow-x:auto;overflow-y:hidden;padding:2px 2px 12px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.news-showcase-track::-webkit-scrollbar{height:8px}.news-showcase-track::-webkit-scrollbar-track{background:var(--bg-mute);border-radius:999px}.news-showcase-track::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px}.news-showcase-card{scroll-snap-align:start}}

/* v47 help-center polish */
.help-layout{gap:22px}
.help-side{padding:12px}
.help-nav-title{padding:8px 12px 12px;color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.6px}
.help-side a{display:flex;align-items:center;gap:10px;min-height:40px}
.help-side a span{width:24px;height:24px;border-radius:8px;background:var(--bg-soft);color:var(--muted);display:grid;place-items:center;font-size:12px;font-weight:900;flex:0 0 auto}
.help-side a.active span,.help-side a:hover span{background:var(--primary-tint);color:var(--primary)}
.help-stack{gap:18px}
.help-sec{padding:24px 28px}
.help-sec>h2{margin:0 0 18px;font-size:22px;letter-spacing:0}
.help-sec .data-table{box-shadow:none;border-radius:16px;overflow-x:auto}
.help-sec .data-head,.help-sec .data-row{min-width:760px}
.help-sec .data-head span,.help-sec .data-row span{padding:11px 12px}
.help-metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:14px}
.help-metric-grid div{background:var(--bg-soft);border-radius:12px;padding:14px}
.help-metric-grid small{display:block;color:var(--muted);font-size:12px;font-weight:800;margin-bottom:6px}
.help-metric-grid strong{display:block;font-size:22px;color:var(--primary);line-height:1}
.rule-list{gap:0;border-top:1px solid var(--line)}
.rule-list p{background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:12px 0}
.rule-list.cols{grid-template-columns:repeat(2,minmax(0,1fr))}
.rank-grid{grid-template-columns:repeat(3,1fr)}
.rank-tier.big{padding:12px}
.rank-tier.big img{width:38px;height:38px}
.help-columns{display:grid;grid-template-columns:1.35fr 1fr;gap:28px}
.help-columns h3{font-size:14px;margin:0 0 10px;color:var(--text-2)}
.help-qa-list{margin:0;border-top:1px solid var(--line)}
.help-qa-list div{padding:14px 0;border-bottom:1px solid var(--line)}
.help-qa-list dt{font-weight:900;color:var(--text);font-size:14px;line-height:1.35}
.help-qa-list dd{margin:6px 0 0;color:var(--muted);font-size:14px;line-height:1.65}
@media(max-width:900px){.help-metric-grid,.rank-grid,.help-columns,.rule-list.cols{grid-template-columns:1fr}.help-sec .data-head,.help-sec .data-row{min-width:700px}}

/* v47 spacing audit */

.page-shell{padding:var(--s6) 22px 44px}
.site-footer{margin-top:0}
.footer-shell{padding:var(--s8) 22px var(--s6);gap:var(--s7)}
.footer-bottom{padding:var(--s4) 22px var(--s5)}
.page-title{margin:0 0 var(--s6)}
.page-title h1{font-size:32px;line-height:1.15}
.page-title p{margin-top:var(--s2);line-height:1.6}
.section-block{margin-top:var(--s7)}
.section-after-overview{margin-top:var(--s6)}
.section-head{margin-bottom:var(--s4);gap:var(--s4)}
.hero-grid,.active-events-grid,.other-event-grid,.event-overview-grid,.register-layout,.leader-layout,.profile-layout,.help-layout{gap:var(--s4)}
.flash-line,.event-flow{margin-top:var(--s4)}
.event-flow{padding:var(--s5) var(--s6)}
.overview-bar{padding:var(--s4) var(--s5)}
.overview-stat{padding:var(--s2) var(--s3)}
.active-card,.rule-card,.leader-main,.leader-side,.profile-side,.help-sec{padding:var(--s5)}
.active-card.refined-active-card{min-height:280px}
.active-kpis{gap:10px;margin-top:var(--s4)}
.active-actions-fixed{padding-top:var(--s4)}
.event-unified-body{padding:var(--s4)}
.event-unified-meta{margin-top:10px}
.event-unified-reward{margin:10px 0 var(--s3);padding-top:10px}
.event-unified-kpis{margin:var(--s3) 0 var(--s4)}
.upcoming-list{gap:var(--s3)}
.upcoming-body{padding:var(--s4) var(--s5);gap:10px}
.upcoming-kpis{gap:8px}
.upcoming-kpis .stat{padding:9px var(--s3)}
.partners-bar{gap:var(--s5) var(--s7)}
.tabs{margin-bottom:var(--s4)}
.leader-toolbar{display:flex;align-items:center;justify-content:space-between;gap:var(--s4);margin-bottom:var(--s4)}
.leader-toolbar .tabs{margin-bottom:0;flex:1}
.leader-toolbar .filters{flex:0 0 auto}
.lb-bar{margin:0 0 var(--s4)}
.lb-bar-controls{justify-content:flex-end}
.filter-label{align-self:center;color:var(--muted);font-weight:700;font-size:13px}
.rank-head span,.rank-row>div,.data-head span,.data-row span{padding:12px 14px}
.profile-identity-card{padding:28px 22px}
.profile-identity-card .avatar.xl{width:72px;height:72px;font-size:28px;margin-bottom:12px}
.profile-identity-card h1{font-size:28px;margin-bottom:8px}
.profile-identity-card .ps-score{padding:18px 0;margin-top:18px}
.rule-list{gap:8px}
.faq-grid{gap:var(--s3)}
.faq-grid .help-card{padding:var(--s4)}
.help-stack{gap:var(--s4)}
.help-sec>h2{margin-bottom:var(--s4)}
.help-sec{padding:24px 28px}
.help-sec .rule-list{gap:0}
.profile-main{gap:var(--s4)}
.profile-side .avatar.xl{margin-bottom:var(--s3)}
.profile-side h1{margin-bottom:var(--s2)}
.ps-score{margin-top:var(--s4)}
.profile-side .progress-top{margin-top:var(--s4)}
.back-link{margin-bottom:var(--s3)}
.game-panel{margin-bottom:0}
.betting-header{padding:var(--s3) var(--s4);gap:var(--s4)}
.betting-kpis .stat{padding:0;min-width:0;border:0;background:transparent}
.promo-card{padding:var(--s5)}
.v44-slide{padding:var(--s5)}
.promo-main{margin-top:var(--s5)}
.promo-stats{margin-top:var(--s5)}
.register-meta{margin-top:var(--s3);justify-content:flex-start;flex-wrap:wrap}
.register-layout{align-items:start}
.register-main{display:grid;gap:var(--s4)}
.register-hero-card h2{font-size:28px;margin:var(--s4) 0 var(--s2)}
.register-confirm{position:sticky;top:96px}
.register-confirm h2{font-size:24px}
.confirm-summary{margin:var(--s4) 0 0;display:grid;gap:0;border-top:1px solid var(--line)}
.confirm-summary div{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}
.confirm-summary dt{color:var(--muted);font-size:13px;font-weight:800}
.confirm-summary dd{margin:0;text-align:right;color:var(--text);font-size:14px;font-weight:800}
.event-points .confirm-summary{margin-bottom:var(--s4)}
.event-points .actions{margin-top:var(--s4)}
.event-side-stack{display:grid;gap:var(--s4);align-self:start;position:sticky;top:96px}
.event-side-stack .register-confirm{position:static}
.event-rewards .confirm-summary{margin-top:var(--s4)}
.event-rewards .confirm-summary dd{color:var(--primary);font-size:14px}
.register-notice{margin:var(--s4) 0;color:var(--muted);font-size:13px;line-height:1.6}
.register-timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.register-timeline div{border:1px solid var(--line);background:var(--bg-soft);border-radius:16px;padding:14px}
.register-timeline span{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--primary-tint);color:var(--primary);font-size:12px;font-weight:900;margin-bottom:10px}
.register-timeline strong{display:block;font-size:14px;margin-bottom:4px}
.register-timeline small{display:block;color:var(--muted);font-size:12px;font-weight:700;line-height:1.45}
.lang-switch{display:flex;gap:3px;border:1px solid var(--line);border-radius:999px;padding:3px;background:var(--card)}
.lang-switch span{font-size:12px;font-weight:800;color:var(--faint);padding:5px 8px;border-radius:999px}
.lang-switch .on{background:var(--primary-tint);color:var(--primary)}
.lang-menu{position:relative;flex:0 0 auto}
.lang-menu summary{list-style:none;display:flex;align-items:center;gap:5px;height:34px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--primary);font-size:12px;font-weight:900;padding:0 10px;cursor:pointer}
.lang-menu summary::-webkit-details-marker{display:none}
.lang-menu summary::after{content:"";width:6px;height:6px;border-right:1.5px solid var(--faint);border-bottom:1.5px solid var(--faint);transform:rotate(45deg) translate(-1px,-1px);flex:0 0 auto;transition:transform .15s}.lang-menu[open] summary::after{transform:rotate(225deg) translate(-2px,-2px)}
.lang-menu[open] summary{border-color:var(--primary-soft);background:var(--primary-tint)}
.lang-menu div{position:absolute;right:0;top:40px;z-index:30;min-width:86px;background:var(--card);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);padding:6px}
.lang-menu a{display:block;border-radius:8px;padding:8px 10px;font-size:12px;font-weight:900;color:var(--text-2);white-space:nowrap}
.lang-menu a:hover{background:var(--primary-tint);color:var(--primary)}

/* platform-wide event card alignment */
.active-card h2,.active-card.refined-active-card h2,.event-unified-title-row h3,.upcoming-title-block h3,.register-hero-card h2{font-size:28px;line-height:1.08;letter-spacing:0;margin:0}
.active-card .card-top,.upcoming-header,.register-hero-card .card-top{margin-bottom:var(--s4)}
.active-card .issue,.event-unified-title-row span,.upcoming-issue{font-size:13px;font-weight:800;color:var(--muted);margin-top:6px}
.active-card .meta-row,.event-unified-meta,.upcoming-info-row,.register-meta{display:flex;flex-wrap:wrap;gap:8px}
.active-card .meta-row span,.event-unified-meta span,.upcoming-info-row span,.register-meta span{font-size:12px;font-weight:800;color:var(--text-2);background:var(--bg-soft);border:1px solid var(--line);border-radius:999px;padding:6px 10px}
.active-kpis,.event-unified-kpis,.upcoming-kpis,.register-hero-card .promo-stats{gap:10px}
.active-kpis .stat,.event-unified-kpis .stat,.upcoming-kpis .stat,.register-hero-card .promo-stats .stat{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:13px}
.active-kpis .stat strong,.event-unified-kpis .stat strong,.upcoming-kpis .stat strong,.register-hero-card .promo-stats .stat strong{font-size:24px;line-height:1.05}
.event-unified-card .event-cover{height:150px}
.event-unified-body,.upcoming-body{display:flex;flex-direction:column;gap:12px}
.event-unified-reward{margin:0;padding-top:12px}
.event-unified-card .btn,.upcoming-cta-inline,.active-actions-fixed,.home-live-actions{margin-top:auto}
.register-hero-card{display:flex;flex-direction:column;gap:12px}
.event-overview-grid{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/4);grid-template-columns:none;gap:16px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 14px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
.event-overview-grid::-webkit-scrollbar{height:8px}
.event-overview-grid::-webkit-scrollbar-track{background:var(--bg-mute);border-radius:999px}
.event-overview-grid::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px}
.event-cover-link{scroll-snap-align:start;min-width:0}
.event-cover-link img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}
.event-flow{background:transparent;border:0;box-shadow:none;border-radius:0;padding:0;margin-top:var(--s7);overflow:visible}
.event-flow-steps{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr) 34px minmax(0,1fr) 34px minmax(0,1fr);column-gap:14px;row-gap:18px;align-items:stretch;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:24px}
.event-flow-step{background:transparent;border:0;border-radius:0;box-shadow:none;padding:0;align-items:center;text-align:center;min-height:220px;position:relative}
.event-flow-step:not(:last-child)::after{display:none}
.event-flow-arrow{align-self:center;justify-self:center;width:34px;height:34px;color:var(--primary);display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:900;line-height:1}
.event-flow-visual{width:128px;height:128px;border-radius:50%;background:var(--primary-tint);display:flex;align-items:center;justify-content:center;margin:0 auto 14px;overflow:hidden}
.event-flow-visual img{width:128px;height:128px;object-fit:cover}
.event-flow-no{display:inline-block;color:var(--primary);font-size:24px;font-weight:900;line-height:1;margin-right:8px}
.event-flow-step h4{display:inline-block;font-size:18px;margin:0 0 10px;vertical-align:baseline}
.event-flow-step p{font-size:13px;line-height:1.65;padding:0;color:var(--text-2);margin:0 auto;max-width:210px}

@media(max-width:900px){
  .page-shell{padding:var(--s5) 18px 38px}
  .value-showcase{padding:16px}
  .value-showcase-head{text-align:left}
  .value-showcase-head h2{font-size:24px}
  .value-showcase-grid{grid-template-columns:1fr}
  .value-reason-list article.active::after{display:none}
  .value-feature-panel{grid-template-columns:1fr;min-height:auto;padding:0}
  .value-slide{grid-template-columns:1fr;min-height:auto}
  .value-feature-panel h3{font-size:28px}
  .value-feature-visual{height:168px}
  .value-feature-visual i{width:42px}
  .value-feature-visual i:nth-child(1){height:48px}.value-feature-visual i:nth-child(2){height:76px}.value-feature-visual i:nth-child(3){height:112px}.value-feature-visual i:nth-child(4){height:150px}
  .value-feature-visual strong{right:28px;top:auto;bottom:94px;width:82px;height:82px;border-radius:50%;overflow:hidden}
  .value-feature-visual strong img{width:106px;height:106px;transform:translate(-12px,-12px)}
  .news-showcase-panel{grid-template-columns:1fr;padding:18px}
  .news-showcase-intro{min-height:auto;padding:20px}
  .news-showcase-intro h2{font-size:28px}
  .news-showcase-intro .btn{margin-top:18px}
  .news-showcase-track{grid-auto-flow:column;grid-auto-columns:minmax(250px,72vw);grid-template-columns:none;overflow-x:auto;overflow-y:hidden;padding:2px 2px 12px;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
  .news-showcase-track::-webkit-scrollbar{height:8px}
  .news-showcase-track::-webkit-scrollbar-track{background:var(--bg-mute);border-radius:999px}
  .news-showcase-track::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px}
  .news-showcase-card{min-height:280px;scroll-snap-align:start}
  .event-overview-grid{grid-auto-columns:minmax(260px,62vw)}
  .event-flow-steps{grid-template-columns:repeat(2,1fr)}
  .event-flow-arrow{display:none}
  .event-flow-step:not(:last-child)::after{display:none}
  .overview-bar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding:var(--s3)}
  .overview-divider{display:none}
  .overview-stat{text-align:left;border-bottom:1px solid var(--line)}
  .overview-stat:nth-last-child(-n+2){border-bottom:0}
  .footer-shell{grid-template-columns:1fr;gap:var(--s5)}
  .footer-links{grid-template-columns:repeat(3,minmax(0,1fr))}
  .active-card,.rule-card,.leader-main,.leader-side,.profile-side,.help-sec{padding:var(--s4)}
  .register-confirm{position:static}
  .event-side-stack{position:static}
  .register-timeline{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:1100px){.upcoming-card{grid-template-columns:1fr}.upcoming-cover{width:100%;height:auto}.upcoming-cover img{width:100%;height:auto;object-fit:contain}}

@media(max-width:720px){
  .nav-shell{height:auto;min-height:72px;flex-wrap:wrap;gap:10px 14px;padding:12px 18px}
  .brand{min-width:0;flex:1}
  .main-nav{order:3;width:100%;overflow-x:auto;padding-bottom:2px;margin-left:0}
  .profile-mini{margin-left:auto}
  .lang-switch,.lang-menu{display:none}
  .promo-card{min-height:320px}
  .v44-slide:not(.v44-slide-banner){padding:20px 20px 56px}
  .promo-main{align-items:flex-start;flex-direction:column}
  .promo-main h1,.v44-slide:not(.v44-slide-banner) .promo-main h1{font-size:28px}
  .v44-slide:not(.v44-slide-banner) .promo-main p{font-size:14px}
  .v44-slide:not(.v44-slide-banner) .promo-tags{max-width:none}
  .promo-tags{justify-content:flex-start}
  .promo-stats{grid-template-columns:1fr 1fr}
  .betting-kpis{grid-template-columns:1fr;width:100%}
  .rank-head,.rank-row{grid-template-columns:62px minmax(0,1fr) 110px 76px}
  .leader-toolbar{align-items:flex-start;flex-direction:column}
  .leader-toolbar .filters{width:100%;justify-content:flex-start}
}

@media(max-width:520px){
  .page-shell{padding:18px 14px 34px}
  .value-showcase{padding:16px}
  .value-showcase-head h2{font-size:24px}
  .value-reason-list article{grid-template-columns:56px minmax(0,1fr);padding:12px}
  .value-reason-list span{display:grid;width:52px;height:52px;border-radius:50%;overflow:hidden}
  .value-reason-list span img{width:68px;height:68px;object-fit:cover;transform:translate(-8px,-8px)}
  .value-reason-list h3{font-size:18px}
  .value-feature-panel{padding:0}
  .value-feature-panel h3{font-size:24px}
  .value-feature-visual{height:138px}
  .value-feature-visual strong{width:68px;height:68px;border-radius:50%;right:18px;bottom:78px;overflow:hidden}
  .value-feature-visual strong img{width:88px;height:88px;transform:translate(-10px,-10px)}
  .event-overview-grid{grid-auto-columns:84vw}
  .profile-event-strip{grid-auto-columns:84vw}
  .event-flow-steps{grid-template-columns:1fr}
  .news-detail{padding:24px}.news-detail h1{font-size:28px}.news-suggest-grid{grid-template-columns:1fr}
  .page-title{margin-bottom:var(--s5)}
  .page-title h1{font-size:28px}
  .section-block{margin-top:var(--s6)}
  .overview-bar{grid-template-columns:1fr}
  .overview-stat{border-bottom:1px solid var(--line)}
  .overview-stat:last-child{border-bottom:0}
  .footer-links{grid-template-columns:1fr 1fr}
  .footer-shell{padding:var(--s6) 18px var(--s5)}
  .footer-bottom{padding:var(--s3) 18px var(--s4)}
  .active-kpis.k3,.event-unified-kpis,.promo-stats{grid-template-columns:1fr}
  .rank-head,.rank-row{grid-template-columns:54px minmax(0,1fr) 96px}
  .rank-head span:nth-child(4),.rank-row>div:nth-child(4){display:none}
  .leaderboard-full-table .rank-head,.leaderboard-full-table .rank-row{grid-template-columns:54px minmax(180px,1fr) 96px 104px;min-width:520px}
  .leaderboard-full-table .rank-head span:nth-child(4),.leaderboard-full-table .rank-row>div:nth-child(4){display:flex}
  .my-rank-summary,.full-leaderboard{padding:16px}
  .my-rank-profile{align-items:flex-start}
  .my-rank-profile .avatar.xl{width:54px;height:54px;font-size:22px;flex-basis:54px}
  .my-rank-profile strong{font-size:28px}
  .my-rank-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}
  .achievement-grid{grid-template-columns:1fr}
  .profile-achievement-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .profile-achievement-stats div:nth-child(2){border-right:0}
  .profile-achievement-stats div:nth-child(-n+2){border-bottom:1px solid var(--line)}
  .achievement-hero{padding:20px}.achievement-hero h1{font-size:28px}.achievement-hero-stats{grid-template-columns:1fr}
  .achievement-focus-card{align-items:flex-start;flex-direction:column}
  .achievement-page-grid{grid-template-columns:1fr}
  .profile-goal-main{align-items:flex-start;flex-direction:column}
  .profile-highlight-card{min-height:140px}
  .leader-filter-group,.leader-filter-group label{width:100%}
  .leader-filter-group select{width:100%}
  .leaderboard-panel{padding:16px}
  .leaderboard-panel-head{align-items:flex-start;flex-direction:column}
  .leaderboard-panel-head h2{font-size:20px}
  .leaderboard-actions{width:100%;justify-content:space-between}
  .mini-rank-head.glory,.mini-rank-row.glory{grid-template-columns:48px minmax(0,1fr) 88px}
  .mini-rank-head.weekly,.mini-rank-row.weekly{grid-template-columns:48px minmax(0,1fr) 86px}
  .mini-rank-head.glory span:nth-child(3),.mini-rank-row.glory>div:nth-child(3),.mini-rank-head.weekly span:nth-child(3),.mini-rank-row.weekly>div:nth-child(3){display:none}
  .mini-rank-head,.mini-rank-row{gap:8px;padding-left:10px;padding-right:10px}
  .data-table{overflow-x:auto}
  .data-head,.data-row{min-width:560px}
  .register-timeline{grid-template-columns:1fr}
}

/* value icon alignment */
.value-reason-list span,.value-feature-visual strong{display:grid;place-items:center;overflow:visible;background:transparent}
.value-reason-list span img{width:62px;height:62px;object-fit:contain;object-position:center;border-radius:0;transform:none}
.value-feature-visual strong img{width:112px;height:112px;object-fit:contain;object-position:center;border-radius:0;transform:none}
/* transparent value icons */
.value-reason-list span{width:58px;height:58px;border-radius:0;overflow:visible;background:transparent}
.value-reason-list span img{width:58px;height:58px;object-fit:contain;object-position:center;border-radius:0;transform:none}
.value-feature-visual strong{width:122px;height:122px;border-radius:0;overflow:visible;background:transparent;border:0;box-shadow:none}
.value-feature-visual strong img{width:122px;height:122px;object-fit:contain;object-position:center;border-radius:0;transform:none}
@media(max-width:760px){
  .value-reason-list span{width:52px;height:52px;border-radius:0;overflow:visible;background:transparent}
  .value-reason-list span img{width:52px;height:52px;object-fit:contain;object-position:center;transform:none}
  .value-feature-visual strong{width:82px;height:82px;border-radius:0;overflow:visible;background:transparent}
  .value-feature-visual strong img{width:82px;height:82px;object-fit:contain;object-position:center;transform:none}
}
/* value icon optical alignment */
.value-reason-list article:nth-child(2) span img{transform:translateX(3px)}
.value-reason-list article:nth-child(3) span img{transform:translateX(-3px)}
.value-reason-list article:nth-child(4) span img{transform:translateX(3px)}
.value-slide[data-value-panel="1"] .value-feature-visual strong img{transform:translateX(6px)}
.value-slide[data-value-panel="2"] .value-feature-visual strong img{transform:translateX(-6px)}
.value-slide[data-value-panel="3"] .value-feature-visual strong img{transform:translateX(6px)}
@media(max-width:760px){
  .value-reason-list article:nth-child(2) span img{transform:translateX(2px)}
  .value-reason-list article:nth-child(3) span img{transform:translateX(-2px)}
  .value-reason-list article:nth-child(4) span img{transform:translateX(2px)}
  .value-slide[data-value-panel="1"] .value-feature-visual strong img{transform:translateX(4px)}
  .value-slide[data-value-panel="2"] .value-feature-visual strong img{transform:translateX(-4px)}
  .value-slide[data-value-panel="3"] .value-feature-visual strong img{transform:translateX(4px)}
}
/* value main graphics */
.value-feature-visual{height:260px;align-items:center;justify-content:center}
.value-feature-visual i{display:none}
.value-feature-visual strong{position:relative;inset:auto;width:240px;height:240px;display:grid;place-items:center;border-radius:50%;overflow:hidden}
.value-feature-visual strong img{width:240px;height:240px;object-fit:cover;object-position:center;border-radius:50%}
@media(max-width:980px){
  .value-feature-visual{height:190px}
  .value-feature-visual strong{width:170px;height:170px;border-radius:50%;overflow:hidden}
  .value-feature-visual strong img{width:170px;height:170px;object-fit:cover;border-radius:50%}
}
@media(max-width:760px){
  .value-feature-visual{height:132px}
  .value-feature-visual strong{width:118px;height:118px;border-radius:50%;overflow:hidden}
.value-feature-visual strong img{width:118px;height:118px;object-fit:cover;border-radius:50%}
}
/* betting game frame no internal scroll */
.betting-frame iframe{height:clamp(640px,calc(100vh - 184px),760px)!important;overflow:hidden!important}
/* table alignment normalization */
.data-table{overflow-x:auto}
.data-head,.data-row{grid-template-columns:repeat(var(--cols),minmax(0,1fr));width:100%;box-sizing:border-box}
.data-head span,.data-row span{display:flex;align-items:center;min-width:0;box-sizing:border-box;white-space:nowrap}
.rank-table-card{overflow-x:auto}
.rank-head,.rank-row{--rank-cols:72px minmax(0,1fr) 140px 110px;display:grid;grid-template-columns:var(--rank-cols);align-items:center;width:100%;box-sizing:border-box}
.rank-head span,.rank-row>div,.rank-row>a.player-cell{display:flex;align-items:center;min-width:0;box-sizing:border-box;padding:12px 14px;border-bottom:1px solid var(--line)}
.rank-head span:nth-child(3),.rank-row>div:nth-child(3){justify-content:flex-start}
.rank-head span:nth-child(4),.rank-row>div:nth-child(4){justify-content:flex-end;text-align:right}
.rank-row>a.player-cell{color:inherit}
.leaderboard-full-table .rank-head,.leaderboard-full-table .rank-row{--rank-cols:74px minmax(260px,1fr) minmax(140px,.45fr) minmax(130px,.38fr);min-width:680px}
.leader-main .rank-head,.leader-main .rank-row{--rank-cols:72px minmax(220px,1fr) 150px 110px;min-width:620px}
.mini-rank-head,.mini-rank-row{display:grid;align-items:center;width:100%;box-sizing:border-box;gap:0}
.mini-rank-head.glory,.mini-rank-row.glory{grid-template-columns:58px minmax(0,1fr) 92px 100px}
.mini-rank-head.weekly,.mini-rank-row.weekly{grid-template-columns:58px minmax(0,1fr) 112px 92px}
.mini-rank-head>span,.mini-rank-row>div,.mini-rank-row>a{display:flex;align-items:center;min-width:0;padding:0 10px;box-sizing:border-box}
.mini-rank-row .player-link{padding:0 10px;margin:0}
.mini-rank-head>span:nth-child(4),.mini-rank-row>div:nth-child(4){justify-content:flex-end;text-align:right}
.v44-rank-head,.v44-rank-row{display:grid;grid-template-columns:90px minmax(0,1fr) 150px 100px;align-items:center;width:100%;box-sizing:border-box}
.v44-rank-head span,.v44-rank-row>div{display:flex;align-items:center;min-width:0;box-sizing:border-box}
.v44-rank-head span:nth-child(4),.v44-rank-row>div:nth-child(4){justify-content:flex-end;text-align:right}
@media(max-width:520px){
  .rank-head,.rank-row{--rank-cols:54px minmax(0,1fr) 96px}
  .rank-head span:nth-child(4),.rank-row>div:nth-child(4){display:none}
  .leaderboard-full-table .rank-head,.leaderboard-full-table .rank-row{--rank-cols:54px minmax(180px,1fr) 96px 104px;min-width:520px}
  .leaderboard-full-table .rank-head span:nth-child(4),.leaderboard-full-table .rank-row>div:nth-child(4){display:flex}
  .mini-rank-head.glory,.mini-rank-row.glory{grid-template-columns:48px minmax(0,1fr) 88px}
  .mini-rank-head.weekly,.mini-rank-row.weekly{grid-template-columns:48px minmax(0,1fr) 86px}
  .mini-rank-head.glory>span:nth-child(3),.mini-rank-row.glory>div:nth-child(3),.mini-rank-head.weekly>span:nth-child(3),.mini-rank-row.weekly>div:nth-child(3){display:none}
}
/* event rank page table */
.event-rank-layout{grid-template-columns:1fr}
.event-rank-table{overflow-x:auto}
.event-rank-table .rank-head,.event-rank-table .rank-row{
  --rank-cols:76px minmax(260px,1fr) 150px 112px;
  grid-template-columns:var(--rank-cols);
  min-width:680px;
}
.event-rank-table .rank-head span,.event-rank-table .rank-row>div,.event-rank-table .rank-row>a.player-cell{
  min-height:56px;
  padding:0 16px;
  border-bottom:1px solid var(--line);
}
.event-rank-table .rank-head span:first-child,.event-rank-table .rank-row>.rank-no{justify-content:flex-start}
.event-rank-table .rank-head span:nth-child(2),.event-rank-table .rank-row>a.player-cell{justify-content:flex-start}
.event-rank-table .rank-head span:nth-child(3),.event-rank-table .rank-row>div:nth-child(3){justify-content:flex-end;text-align:right}
.event-rank-table .rank-head span:nth-child(4),.event-rank-table .rank-row>div:nth-child(4){justify-content:flex-end;text-align:right}
.event-rank-table .player-cell{gap:12px}
.event-rank-table .player-cell,.event-rank-table .player-link{border-radius:0;background:transparent}
.event-rank-table .player-link:hover{background:transparent}
.event-rank-table .lb-divider{min-width:680px}
.contact-list dt{display:flex;align-items:center;gap:10px}
.contact-icon{width:30px;height:30px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;flex:0 0 30px;background:var(--primary);color:#fff;font-size:14px;font-weight:900;line-height:1}
/* help center: reduce divider clutter */
.help-sec .rule-list{gap:10px;border-top:0}
.help-sec .rule-list p{border-bottom:0;background:var(--bg-soft);border-radius:12px;padding:12px 14px}
.help-sec .rule-list.cols{gap:10px;grid-template-columns:1fr}
.help-sec .help-qa-list{border-top:0;display:grid;gap:10px}
.help-sec .help-qa-list div{border-bottom:0;background:var(--bg-soft);border-radius:12px;padding:14px 16px}
.help-sec .data-table{border-color:var(--bg-mute)}
.help-sec .data-head span,.help-sec .data-row span{border-bottom-color:var(--bg-mute)}
.help-layout,.help-stack,.help-side,.help-sec{min-width:0}
.help-sec{counter-reset:helpItem}
.help-sec .help-numbered p{background:transparent;border-radius:0;padding:4px 0}
.help-numbered p{counter-increment:helpItem;display:flex;align-items:flex-start;gap:8px}
.help-numbered p:before{content:counter(helpItem) ".";color:var(--muted);font-size:14px;font-weight:700;line-height:1.7;flex:0 0 20px;text-align:right}
.help-reward-table{overflow-x:auto;width:100%;max-width:100%}
.help-reward-table .data-head,.help-reward-table .data-row{grid-template-columns:minmax(130px,1.4fr) repeat(5,minmax(96px,1fr));min-width:640px}
.help-reward-table .data-head span,.help-reward-table .data-row span{white-space:nowrap;overflow:hidden;display:flex;align-items:center}
.help-reward-table .data-head span:nth-child(n+4),.help-reward-table .data-row span:nth-child(n+4){justify-content:flex-end;text-align:right}
@media(max-width:760px){
  .event-rank-table .rank-head,.event-rank-table .rank-row{
    --rank-cols:62px minmax(180px,1fr) 112px 88px;
    min-width:520px;
  }
  .event-rank-table .rank-head span,.event-rank-table .rank-row>div,.event-rank-table .rank-row>a.player-cell{
    min-height:52px;
    padding:0 12px;
  }
  .event-rank-table .rank-head span:nth-child(4),.event-rank-table .rank-row>div:nth-child(4){display:flex}
  .event-rank-table .lb-divider{min-width:520px}
}

/* season strip (index) */
.season-strip{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);margin-top:var(--s4);box-shadow:var(--shadow)}
.season-strip-main{padding:20px 24px;display:flex;flex-direction:column;gap:14px}
.season-strip-top{display:flex;align-items:center;justify-content:space-between;gap:14px}
.season-strip-badge{display:inline-flex;align-items:center;gap:6px;background:var(--primary-tint);border:1px solid var(--primary-soft);color:var(--primary);border-radius:999px;padding:5px 12px;font-size:12px;font-weight:900}
.season-strip-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center}
.season-strip-left{display:flex;flex-direction:column;gap:12px}
.season-strip h2{font-size:24px;margin:0;line-height:1.15;letter-spacing:-.3px;color:var(--text)}
.season-strip-sub{color:var(--muted);font-size:13px;font-weight:700;margin:0}
.season-progress{display:flex;align-items:center;gap:10px}
.season-bar{height:6px;border-radius:999px;background:var(--line);overflow:hidden;width:160px;flex-shrink:0}
.season-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-strong));border-radius:999px}
.season-progress>span{font-size:12px;color:var(--muted);font-weight:700;white-space:nowrap}
.season-strip-right .season-kpis{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.season-kpi{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:14px 16px}
.season-kpi small{display:block;font-size:12px;color:var(--muted);font-weight:800;margin-bottom:5px}
.season-kpi strong{font-size:20px;font-weight:800;color:var(--text)}
.season-strip .btn.season-cta{align-self:flex-start;height:40px;padding:0 20px;font-size:13px}
/* countdown pill */
.season-cd-row{margin:0 0 10px}
/* right-side 2-slide carousel */
.right-carousel-wrap{overflow:hidden}
.right-slides{display:flex;flex-direction:column;flex:1}
.right-slide{display:none;flex-direction:column;flex:1;animation:v44fade .2s ease}
.right-slide.active{display:flex}
.right-carousel-ctrl{display:flex;justify-content:center;gap:7px;padding-top:14px;margin-top:auto}
.right-dot{width:8px;height:8px;border-radius:999px;background:var(--line);cursor:pointer;transition:width .2s ease,background .2s ease;flex-shrink:0}
.right-dot.active{width:22px;background:var(--primary)}
.season-cd-pill{display:inline-flex;align-items:center;gap:5px;background:var(--gold-tint);border:1px solid var(--gold-soft);color:var(--gold-ink);border-radius:999px;padding:5px 11px;font-size:12px;font-weight:800}
.season-cd-pill.cd-blue{background:var(--primary-tint);border-color:var(--primary-soft);color:var(--primary-strong)}
.season-cd-pill.cd-live{background:var(--live-tint);border-color:var(--gold-soft);color:var(--live)}
@media(max-width:900px){.season-strip-body{grid-template-columns:1fr}.season-strip-right .season-kpis{grid-template-columns:repeat(4,1fr)}}
@media(max-width:520px){.season-bar{width:120px}.season-strip-right .season-kpis{grid-template-columns:1fr 1fr}.season-kpi strong{font-size:16px}}
/* season badge tag on leaderboard panel */
.season-badge-tag{background:rgba(244,182,63,.15)!important;color:var(--gold-deep)!important;border:1px solid rgba(244,182,63,.35)!important}
/* 3-column leaderboard split */
.leaderboard-split{grid-template-columns:repeat(3,minmax(0,1fr))}
/* season mini-rank columns */
.mini-rank-head.season,.mini-rank-row.season{grid-template-columns:52px minmax(0,1fr) 80px 100px}
/* season rank colouring */
.mini-rank-row.season .rank-no.top1{color:var(--gold-strong)}
.mini-rank-row.season .rank-no.top2{color:var(--muted)}
.mini-rank-row.season .rank-no.top3{color:var(--live)}
@media(max-width:1100px){.leaderboard-split{grid-template-columns:1fr}}
@media(max-width:520px){.season-bar{width:120px}.season-kpis{gap:6px}.season-kpi{padding:7px 10px;min-width:64px}.season-kpi strong{font-size:14px}.mini-rank-head.season,.mini-rank-row.season{grid-template-columns:44px minmax(0,1fr) 96px}.mini-rank-head.season>span:nth-child(3),.mini-rank-row.season>div:nth-child(3){display:none}}

/* P0 requirement fixes */
.registration-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.registration-form label,.team-members label,.bet-checker label{display:grid;gap:7px;color:var(--text-2);font-size:13px;font-weight:800}
.registration-form label.full{grid-column:1/-1}
.registration-form input,.registration-form select,.team-members input,.bet-checker input{width:100%;height:42px;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:0 12px;color:var(--text);font:inherit;font-weight:700}
.team-members{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px;border-top:1px solid var(--line);padding-top:14px}
.form-hint{margin-top:12px;color:var(--muted);font-size:13px;line-height:1.6}
.confirm-summary dd#confirmBonus{font-weight:900}
.tournament-account-panel{border-top:1px solid var(--line);background:var(--bg-soft);padding:16px 20px;display:grid;gap:14px}
.account-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.account-kpis div{border:1px solid var(--line);border-radius:16px;background:var(--card);padding:12px}
.account-kpis small{display:block;color:var(--muted);font-size:12px;font-weight:800;margin-bottom:5px}
.account-kpis strong{font-size:18px;color:var(--text)}
.bet-checker{display:grid;grid-template-columns:180px minmax(260px,1fr) auto auto auto;gap:10px;align-items:end}
.quick-stakes{display:flex;gap:8px;flex-wrap:wrap}
.quick-stakes button{height:38px;border:1px solid var(--line);background:var(--card);border-radius:12px;padding:0 12px;color:var(--text-2);font-weight:900;cursor:pointer}
.quick-stakes button:hover{border-color:var(--primary-soft);color:var(--primary)}
.seal-toggle{display:flex!important;align-items:center;gap:7px;height:42px;white-space:nowrap}
.seal-toggle input{width:auto;height:auto}
.compliance-note,.compliance-inline{color:var(--muted);font-size:13px;line-height:1.6}
.compliance-note{margin:0}
.compliance-inline{margin-top:14px;border:1px solid var(--line);border-radius:16px;background:var(--card);padding:12px 16px;display:flex;gap:10px;align-items:flex-start;box-shadow:var(--shadow)}
.compliance-inline strong{color:var(--text);white-space:nowrap}
.ui-toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,14px);z-index:1000;min-width:260px;max-width:min(420px,calc(100vw - 32px));background:var(--navy-950);color:#fff;border-radius:16px;padding:12px 16px;font-size:14px;font-weight:800;text-align:center;box-shadow:var(--shadow-lg);opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease}
.ui-toast.show{opacity:1;transform:translate(-50%,0)}
.ui-toast[data-type="success"]{background:var(--success)}
.ui-toast[data-type="error"]{background:var(--live)}
.p0-game-nav,.p0-status-strip{margin-top:var(--s4)}
.game-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.game-category-grid button{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:15px;text-align:left;cursor:pointer;color:inherit}
.game-category-grid button.active{background:var(--primary-tint);border-color:var(--primary-soft)}
.game-category-grid span{display:inline-flex;border-radius:999px;background:var(--card);color:var(--primary);border:1px solid var(--primary-tint);padding:4px 8px;font-size:12px;font-weight:900;margin-bottom:10px}
.game-category-grid strong{display:block;font-size:18px;margin-bottom:5px}
.game-category-grid small{display:block;color:var(--muted);font-size:12px;font-weight:800;line-height:1.45}
.status-flow{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}
.status-flow span{border:1px solid var(--line);background:var(--bg-soft);border-radius:999px;padding:9px 10px;text-align:center;color:var(--text-2);font-size:13px;font-weight:900}
@media(max-width:900px){
  .registration-form,.team-members,.account-kpis,.game-category-grid,.status-flow{grid-template-columns:1fr}
  .bet-checker{grid-template-columns:1fr}
  .compliance-inline{display:block}
  .register-layout,.register-main,.register-hero-card,.registration-form-card{min-width:0;width:100%}
  .register-layout,.register-main{display:block}
  .register-main>*{margin-bottom:var(--s4)}
  .register-confirm{position:static}
  .register-hero-card .card-top{align-items:flex-start;flex-direction:column}
  .register-hero-card .promo-stats{grid-template-columns:1fr!important;min-width:0;width:100%}
  .register-hero-card .promo-stats .stat{min-width:0;width:100%;border-right:0}
}

/* prizes + credits */
.promo-prizes{display:flex;align-items:center;gap:10px;padding:7px 0;border-top:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15);margin:6px 0}
.promo-prizes .prize-item{color:#fff;font-size:13px;font-weight:800}
.promo-prizes .prize-item strong{color:var(--gold)}
.promo-prizes small{color:rgba(255,255,255,.5);font-size:12px;font-weight:700;margin-left:auto}
.right-prizes{display:flex;align-items:center;gap:8px;padding:6px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:8px 0}
.right-prizes .prize-item{font-size:12px;font-weight:800;color:var(--text)}
.right-prizes .prize-item strong{color:var(--gold)}
.right-prizes small{color:var(--muted);font-size:12px;font-weight:700;margin-left:auto}
.profile-credits{display:grid;gap:8px;width:100%;margin:12px 0}
.credit-item{display:flex;align-items:center;gap:10px;background:var(--bg-soft);border:1px solid var(--line);border-radius:16px;padding:10px 12px}
.credit-item.wallet{border-color:rgba(244,182,63,.35);background:rgba(244,182,63,.06)}
.credit-item.comp{border-color:rgba(38,43,51,.2);background:rgba(38,43,51,.04)}
.credit-icon{font-size:20px;line-height:1}
.credit-body{display:grid;gap:1px;flex:1;min-width:0}
.credit-body small{color:var(--muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.credit-body strong{font-size:20px;color:var(--text);font-weight:900;line-height:1.1}
.credit-body span{color:var(--muted);font-size:12px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.profile-mini .pill-wallet{display:block;font-size:10px;font-weight:800;color:var(--gold);line-height:1.1}

/* ── Auth / Sign-up flow ─────────────────────────────────────── */
.auth-page-body{margin:0;padding:0;background:var(--bg)}
.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-soft)}

/* Left panel */
.auth-panel-left{flex:0 0 380px;background:var(--card);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:40px 44px;position:relative;overflow:hidden}
.auth-brand-mark{display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--text);margin-bottom:52px;position:relative}
.auth-brand-mark .brand-mark{width:40px;height:40px;border-radius:12px;font-size:20px}
.auth-brand-mark strong{display:block;font-size:16px;font-weight:900}
.auth-brand-mark small{display:block;font-size:12px;font-weight:700;opacity:.5}
.auth-left-body{flex:1;position:relative}
.auth-left-body h2{font-size:22px;font-weight:900;line-height:1.3;margin:0 0 12px;color:var(--text)}
.auth-left-body p{font-size:13px;font-weight:700;color:var(--muted);line-height:1.6;margin:0 0 28px}
.auth-hl{color:var(--primary)}
.auth-feature-list{list-style:none;margin:0;padding:0;display:grid;gap:16px}
.auth-feature-list li{display:flex;align-items:flex-start;gap:12px}
.auth-feat-icon{font-size:22px;line-height:1;flex-shrink:0;margin-top:1px}
.auth-feature-list strong{display:block;font-size:13px;font-weight:900;color:var(--text);margin-bottom:2px}
.auth-feature-list small{display:block;font-size:12px;font-weight:700;color:var(--muted)}
.auth-left-foot{font-size:12px;font-weight:700;color:var(--muted);margin:0;position:relative}

/* Grant preview on left (signup) */
.auth-grant-preview{display:grid;gap:12px}
.auth-grant-item{display:flex;align-items:center;gap:12px;background:var(--bg-soft);border:1px solid var(--line);border-radius:16px;padding:12px}
.auth-grant-item .auth-feat-icon{font-size:20px}
.auth-grant-item strong{display:block;font-size:14px;font-weight:900;color:var(--text)}
.auth-grant-item small{display:block;font-size:12px;font-weight:700;color:var(--muted)}

/* Right panel */
.auth-panel-right{width:100%;max-width:520px;display:flex;align-items:center;justify-content:center;padding:48px 40px;background:var(--bg-soft);overflow-y:auto}
.auth-box{width:100%;max-width:440px}

/* Steps */
.auth-steps{display:flex;margin-bottom:32px;position:relative}
.auth-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;position:relative}
.auth-step:not(:last-child)::after{content:'';position:absolute;top:13px;left:calc(50% + 16px);right:calc(-50% + 16px);height:2px;background:var(--line)}
.auth-step.done:not(:last-child)::after{background:var(--success-bright)}
.auth-step-num{width:28px;height:28px;border-radius:50%;background:var(--line);color:var(--muted);font-size:12px;font-weight:900;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}
.auth-step.active .auth-step-num{background:var(--primary);color:#fff}
.auth-step.done .auth-step-num{background:var(--success-bright);color:#fff;font-size:13px}
.auth-step small{font-size:12px;font-weight:800;color:var(--muted);text-align:center}
.auth-step.active small{color:var(--primary)}
.auth-step.done small{color:var(--success-bright)}

/* Form */
.auth-title{font-size:24px;font-weight:900;color:var(--text);margin:0 0 4px}
.auth-subtitle{font-size:13px;font-weight:700;color:var(--muted);margin:0 0 24px}
.auth-form{display:grid;gap:14px}
.auth-form label{display:grid;gap:6px;font-size:13px;font-weight:800;color:var(--text-2)}
.auth-form label span{display:block}
.auth-form input,.auth-form select{width:100%;height:44px;border:1.5px solid var(--line);border-radius:12px;background:var(--card);padding:0 14px;color:var(--text);font:inherit;font-weight:700;box-sizing:border-box;transition:border-color .15s}
.auth-form input:focus,.auth-form select:focus{outline:none;border-color:var(--primary)}
.auth-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.auth-pw-wrap{position:relative;display:flex}
.auth-pw-wrap input{flex:1;border-radius:12px 0 0 12px;border-right:0}
.auth-pw-toggle{height:44px;padding:0 14px;border:1.5px solid var(--line);border-left:0;border-radius:0 12px 12px 0;background:var(--card);color:var(--muted);font-size:12px;font-weight:800;cursor:pointer;white-space:nowrap}
.auth-field-hint{font-size:12px;font-weight:800;margin-top:2px}
.auth-phone-wrap{display:flex;gap:8px}
.auth-dial{width:48px;border-radius:12px;flex-shrink:0;padding:0 2px;text-align:center}
.auth-phone-wrap input{border-radius:12px;flex:1}
.auth-check-label{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--muted);cursor:pointer;line-height:1.5}
.auth-check-label input{width:16px;height:16px;flex-shrink:0;accent-color:var(--primary);margin:0}
.auth-row-between{display:flex;align-items:center;justify-content:space-between}
.auth-submit{width:100%;height:48px;font-size:14px;margin-top:4px}
.auth-submit-skip{width:100%;height:44px;font-size:14px;margin-top:6px}
.auth-divider{text-align:center;position:relative;margin:16px 0}
.auth-divider::before{content:'';position:absolute;top:50%;left:0;right:0;height:1px;background:var(--line)}
.auth-divider span{position:relative;background:var(--bg-soft);padding:0 12px;color:var(--muted);font-size:12px;font-weight:800}
.auth-alt-cta{text-align:center;font-size:13px;font-weight:700;color:var(--muted);margin-top:16px}
.auth-compliance{font-size:12px;font-weight:700;color:var(--muted);text-align:center;margin-top:16px;line-height:1.6}

/* Referral page specifics */
.auth-referral-explain{display:grid;gap:0}
.auth-referral-party{display:flex;align-items:flex-start;gap:14px;background:var(--bg-soft);border:1px solid var(--line);border-radius:16px;padding:16px}
.auth-referral-avatar{width:40px;height:40px;border-radius:50%;background:var(--primary);color:#fff;font-size:14px;font-weight:900;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.auth-referral-avatar.ref{background:var(--gold);color:var(--text)}
.auth-referral-party strong{display:block;font-size:13px;font-weight:900;color:var(--text);margin-bottom:8px}
.auth-referral-party ul{margin:0;padding:0 0 0 14px;display:grid;gap:5px}
.auth-referral-party li{font-size:12px;font-weight:700;color:var(--muted);line-height:1.4}
.auth-referral-party b{color:var(--primary)}
.auth-referral-arrow{text-align:center;font-size:22px;color:var(--muted);padding:6px 0}
.auth-referral-input-block{display:grid;gap:0}
.auth-referral-input-row{display:flex;gap:0}
.auth-referral-input-row input{border-radius:12px 0 0 12px;border-right:0;flex:1}
.auth-verify-btn{height:44px;border-radius:0 12px 12px 0;white-space:nowrap;font-size:13px}
.auth-referral-status{font-size:12px;font-weight:800;margin-top:6px;min-height:18px}
.auth-status-ok{color:var(--success-bright)}
.auth-status-err{color:var(--live)}
.auth-reward-preview{background:var(--success-tint);border:1.5px solid rgba(24,185,130,.3);border-radius:16px;padding:16px;display:grid;gap:12px}
.auth-reward-head{font-size:13px;font-weight:900;color:var(--success)}
.auth-reward-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.auth-reward-item{background:var(--card);border-radius:12px;padding:12px;display:grid;gap:6px;border:1px solid rgba(24,185,130,.15)}
.auth-reward-item small{font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.auth-reward-line{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;color:var(--text)}
.auth-reward-line strong{color:var(--success-bright);font-weight:900}
.auth-referral-by{font-size:12px;font-weight:800;color:var(--muted)}
.auth-referral-by strong{color:var(--text)}

/* Welcome page */
.welcome-page .auth-panel-right{align-items:flex-start;padding-top:40px}
.welcome-box{max-width:480px}
.welcome-hero{text-align:center;margin-bottom:24px}
.welcome-confetti{font-size:52px;display:block;margin-bottom:8px;transform-origin:center}
.welcome-title{font-size:28px;margin-bottom:6px}
.welcome-account-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:16px 20px;margin-bottom:16px;box-shadow:var(--shadow)}
.welcome-account-row{display:flex;align-items:center;gap:16px}
.welcome-avatar{background:var(--primary)!important;color:#fff!important}
.welcome-account-info strong{display:block;font-size:18px;font-weight:900;color:var(--text);margin-bottom:4px}
.welcome-tier{display:inline-flex;align-items:center;gap:6px;border-radius:var(--r-full);background:var(--gold-tint);color:var(--gold-deep);padding:4px 10px;font-size:13px;font-weight:800}.welcome-tier img{display:none}
.welcome-grants{display:grid;gap:10px;margin-bottom:20px}
.welcome-grants-title{font-size:13px;font-weight:900;color:var(--text);margin:0 0 4px}
.welcome-grant-list{display:grid;gap:8px}
.welcome-grant-badge{display:inline-block;background:rgba(38,43,51,.1);color:var(--primary);font-size:12px;font-weight:900;border-radius:999px;padding:3px 10px;white-space:nowrap;align-self:center;flex-shrink:0}
.credit-item{display:flex}
.welcome-next{display:grid;gap:8px}

@media(max-width:900px){
  .auth-page{flex-direction:column}
  .auth-panel-left{flex:none;padding:28px 24px 24px}
  .auth-left-body h2{font-size:18px}
  .auth-feature-list,.auth-grant-preview,.auth-referral-explain{display:none}
  .auth-panel-right{padding:28px 20px 40px}
  .auth-form-row{grid-template-columns:1fr}
  .auth-reward-grid{grid-template-columns:1fr}
}

/* ── 我的赛事 horizontal scroll ─────────────────────────────── */
.my-comp-section{margin-bottom:var(--s6)}
.my-comp-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.my-comp-head h2{margin:0}
.my-comp-hint{font-size:12px;font-weight:800;color:var(--muted);opacity:.7}
.my-comp-scroll{display:flex;gap:16px;overflow-x:auto;padding-bottom:12px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.my-comp-scroll::-webkit-scrollbar{height:4px}
.my-comp-scroll::-webkit-scrollbar-track{background:transparent}
.my-comp-scroll::-webkit-scrollbar-thumb{background:var(--line);border-radius:999px}
.my-comp-card{flex:1 0 300px;min-width:0;background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);padding:20px;box-shadow:var(--shadow);scroll-snap-align:start;display:flex;flex-direction:column;gap:10px}
.my-comp-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.my-comp-card-top h3{font-size:16px;font-weight:900;color:var(--text);margin:6px 0 2px}
.my-comp-sub{font-size:12px;font-weight:700;color:var(--muted);margin:0}
.my-comp-meta{display:flex;gap:12px;flex-shrink:0;text-align:right}
.my-comp-meta div{display:flex;flex-direction:column;gap:2px}
.my-comp-meta small{font-size:12px;font-weight:800;color:var(--muted)}
.my-comp-meta strong{font-size:16px;font-weight:900;color:var(--text)}
.my-comp-card-foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:8px;border-top:1px solid var(--line)}
.my-comp-btn{height:36px;font-size:13px;padding:0 16px}
@media(max-width:700px){.my-comp-card{flex:0 0 88vw}.my-comp-hint{display:none}}

/* ── Profile dropdown menu ───────────────────────────────────── */
.profile-menu{position:relative;list-style:none}
.profile-menu summary{list-style:none;cursor:pointer}
.profile-menu summary::-webkit-details-marker{display:none}
.profile-menu-drop{position:absolute;top:calc(100% + 8px);right:0;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);min-width:160px;padding:6px;z-index:200;display:flex;flex-direction:column;gap:2px}
.profile-menu-drop a{display:flex;align-items:center;gap:8px;padding:10px 12px;border-radius:12px;font-size:13px;font-weight:800;color:var(--text);text-decoration:none;white-space:nowrap;transition:background .15s}
.profile-menu-drop a:hover{background:var(--bg-soft)}
.profile-menu-sep{border:none;border-top:1px solid var(--line);margin:4px 0}
.profile-menu-logout{color:var(--danger-deep)!important}
.profile-menu-logout:hover{background:rgba(208,57,43,.06)!important}

/* ── Profile logout button ───────────────────────────────────── */
.profile-logout-btn{width:100%;height:40px;border-radius:12px;border:1px solid rgba(208,57,43,.25);background:rgba(208,57,43,.05);color:var(--danger-deep);font-size:13px;font-weight:800;text-align:center;display:flex;align-items:center;justify-content:center;text-decoration:none;margin-top:4px;transition:background .15s,border-color .15s}
.profile-logout-btn:hover{background:rgba(208,57,43,.1);border-color:rgba(208,57,43,.4)}

/* ── Referral card ───────────────────────────────────────────── */
.referral-card{}
.referral-body{display:grid;gap:16px}
.referral-code-row{display:flex;align-items:center;gap:12px}
.referral-code-display{flex:1;background:var(--navy-800);color:#fff;font-size:22px;font-weight:900;letter-spacing:.18em;border-radius:16px;padding:14px 20px;font-family:monospace}
.referral-copy-btn{height:48px;padding:0 20px;border-radius:12px;background:var(--primary);color:#fff;border:none;font-size:14px;font-weight:800;cursor:pointer;white-space:nowrap;transition:background .15s}
.referral-copy-btn:hover{background:var(--primary-strong)}
.referral-desc{font-size:13px;font-weight:700;color:var(--muted);margin:0}
.referral-benefits{display:grid;gap:8px}
.referral-benefit-item{display:flex;align-items:center;gap:12px;background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;padding:12px 14px}
.referral-benefit-item.you{border-color:rgba(244,182,63,.35);background:rgba(244,182,63,.06)}
.ref-icon{font-size:20px;line-height:1;flex-shrink:0}
.referral-benefit-item strong{display:block;font-size:13px;font-weight:900;color:var(--text);margin-bottom:2px}
.referral-benefit-item small{font-size:12px;font-weight:700;color:var(--muted)}
.referral-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.referral-stats>div{background:var(--card);padding:14px 16px;display:flex;flex-direction:column;gap:4px}
.referral-stats small{font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.referral-stats strong{font-size:20px;font-weight:900;color:var(--text)}
.referral-share-row{display:flex;align-items:center;gap:16px}
.referral-share-btn{height:42px;font-size:13px;font-weight:800}
.referral-rules-link{font-size:12px}

/* ── Referral card v2 (tooltip style) ───────────────────────── */
.referral-card .referral-body{display:grid;gap:14px}
.referral-code-display{flex:1;background:var(--bg-soft);color:var(--text);border:1.5px solid var(--line);font-size:22px;font-weight:900;letter-spacing:.18em;border-radius:16px;padding:14px 20px;font-family:monospace}
.referral-copy-btn{height:48px;padding:0 20px;border-radius:12px;background:var(--primary);color:#fff;border:none;font-size:14px;font-weight:800;cursor:pointer;white-space:nowrap;transition:background .15s}
.referral-copy-btn:hover{background:var(--primary-strong)}
.referral-meta-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.referral-desc{font-size:13px;font-weight:700;color:var(--muted);margin:0}

/* Tooltip */
.ref-tooltip-wrap{position:relative;display:inline-flex}
.ref-tooltip-trigger{background:none;border:1px solid var(--line);border-radius:999px;padding:5px 12px;font-size:12px;font-weight:800;color:var(--primary);cursor:pointer;white-space:nowrap;position:relative}
.ref-tooltip-trigger:hover{background:var(--bg-soft)}
.ref-tooltip{display:none;position:absolute;bottom:calc(100% + 8px);right:0;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:14px 16px;min-width:200px;z-index:100;text-align:left}
.ref-tooltip-trigger:hover .ref-tooltip,.ref-tooltip-trigger:focus .ref-tooltip{display:grid;gap:4px}
.ref-tooltip strong{display:block;font-size:12px;font-weight:900;color:var(--text);margin-bottom:2px}
.ref-tooltip span{display:block;font-size:12px;font-weight:700;color:var(--muted)}
.ref-tooltip hr{border:none;border-top:1px solid var(--line);margin:8px 0 4px}

/* my-comp-card: 2-up scroll, no 段位 column */
.my-comp-card{flex:0 0 calc(50% - 8px)}
.my-comp-card .mini-rank-head.glory,
.my-comp-card .mini-rank-row.glory{grid-template-columns:48px minmax(0,1fr) 100px}
.my-comp-card .mini-rank-head.season,
.my-comp-card .mini-rank-row.season{grid-template-columns:48px minmax(0,1fr) 110px}
.my-comp-card .mini-rank-head>span:nth-child(3),
.my-comp-card .mini-rank-row>div:nth-child(3){justify-content:flex-end;text-align:right}
@media(max-width:700px){.my-comp-card{flex:0 0 88vw}}

/* participants pill */
.participants-pill{display:inline-flex;align-items:center;gap:5px;background:var(--bg-soft);border:1px solid var(--line);border-radius:999px;padding:3px 10px;font-size:12px;font-weight:800;color:var(--muted)}

/* ── Wallet page ─────────────────────────────────────────────── */
.wallet-summary{margin-bottom:var(--s6)}
.wallet-balance-card{background:var(--navy-800);border-radius:var(--r-lg);padding:28px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:#fff}
.wallet-balance-main{display:grid;gap:6px}
.wallet-balance-main small{font-size:12px;font-weight:800;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.06em}
.wallet-balance-amount{font-size:44px;font-weight:900;color:#fff;line-height:1}
.wallet-balance-main span{font-size:12px;font-weight:700;color:rgba(255,255,255,.45)}
.wallet-balance-stats{display:flex;gap:24px;flex-shrink:0}
.wallet-balance-stats>div{display:flex;flex-direction:column;gap:4px;text-align:right}
.wallet-balance-stats small{font-size:12px;font-weight:800;color:rgba(255,255,255,.5);text-transform:uppercase;letter-spacing:.04em}
.wallet-balance-stats strong{font-size:20px;font-weight:900}
.wallet-section{padding-top:0}
.wallet-filter-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.wallet-tabs{flex-shrink:0}
.wallet-month-select{height:38px;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:0 12px;color:var(--text);font:inherit;font-size:13px;font-weight:800}
.wallet-tx-list{display:grid;gap:2px}
.wallet-tx-row{display:grid;grid-template-columns:36px 1fr auto auto;align-items:center;gap:12px;padding:14px 16px;background:var(--card);border-radius:12px;transition:background .15s}
.wallet-tx-row:hover{background:var(--primary-tint)}
.wallet-tx-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:900;flex-shrink:0}
.wallet-tx-row.in .wallet-tx-icon{background:rgba(24,185,130,.12);color:var(--success-bright)}
.wallet-tx-row.out .wallet-tx-icon{background:rgba(208,57,43,.08);color:var(--danger-deep)}
.wallet-tx-info{min-width:0}
.wallet-tx-info strong{display:block;font-size:14px;font-weight:900;color:var(--text)}
.wallet-tx-info span{display:block;font-size:12px;font-weight:700;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.wallet-tx-date{font-size:12px;font-weight:800;color:var(--muted);white-space:nowrap}
.wallet-tx-amount{font-size:16px;font-weight:900;white-space:nowrap}
.wallet-empty{text-align:center;padding:40px;color:var(--muted);font-size:14px;font-weight:700}
.loss{color:var(--danger-deep)}
@media(max-width:700px){.wallet-balance-card{flex-direction:column;align-items:flex-start}.wallet-balance-stats{flex-direction:row;gap:16px}.wallet-balance-stats>div{text-align:left}.wallet-tx-row{grid-template-columns:32px 1fr auto}.wallet-tx-date{display:none}}

/* ── Add-friend popup ────────────────────────────────────────── */
.popup-overlay{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:500;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .2s}
.popup-overlay.open{opacity:1;pointer-events:all}
.popup-card{background:var(--card);border-radius:20px;padding:28px;width:100%;max-width:440px;box-shadow:var(--shadow-lg);transform:translateY(16px);transition:transform .2s}
.popup-overlay.open .popup-card{transform:translateY(0)}
.popup-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.popup-head h2{margin:0;font-size:18px;font-weight:900}
.popup-close{background:none;border:none;font-size:18px;color:var(--muted);cursor:pointer;line-height:1;padding:4px}
.popup-close:hover{color:var(--text)}
.popup-card .referral-body{display:grid;gap:14px}
.popup-card .referral-desc{margin:0 0 4px;font-size:13px;color:var(--muted);font-weight:700}

/* add friend button */
.profile-friend-btn{background:rgba(38,43,51,.08);border:1.5px solid rgba(38,43,51,.25);color:var(--primary);font-weight:800}
.profile-friend-btn:hover{background:rgba(38,43,51,.15);border-color:var(--primary)}

/* reward table two-col (points + wallet credits) */
.reward-col-head{display:flex;justify-content:flex-end;gap:0;margin-bottom:4px}
.reward-col-head span{width:72px;text-align:right;font-size:12px;font-weight:800;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}
.reward-summary.two-col>div{display:grid;grid-template-columns:1fr 72px 72px;align-items:center}
.reward-summary.two-col dd{text-align:right}
.wallet-credit{color:var(--gold)!important;font-weight:900}
.reward-points-row span:first-child,.reward-wallet-row span:first-child{font-weight:900;color:var(--muted);font-size:12px}
.reward-wallet-row span:not(:first-child){color:var(--gold);font-weight:900}

/* ── Dark mode ─────────────────────────────────────────────────── */
body.dark-mode {
  --bg:#171717;--bg-soft:#212121;--card:#212121;--text:#dfe7f1;--text-2:#c9d6e5;--muted:#98a2b3;
  --line:#2c2c2c;--line-strong:#3a4f6b;--shadow:0 16px 36px rgba(0,0,0,.35);
}
body.dark-mode .site-header{background:var(--navy-800);border-bottom-color:var(--text-2)}
body.dark-mode .site-footer{background:var(--navy-950);border-top-color:var(--text-2)}
body.dark-mode .footer-bottom{background:var(--navy-950);border-top-color:var(--text-2)}
body.dark-mode .brand-mark{background:rgba(38,43,51,.4)}
body.dark-mode .active-card,
body.dark-mode .promo-card,
body.dark-mode .rule-card,
body.dark-mode .upcoming-card,
body.dark-mode .profile-event-card,
body.dark-mode .section-block,
body.dark-mode .data-table,
body.dark-mode .overview-bar,
body.dark-mode .responsible-card,
body.dark-mode .wallet-balance-card,
body.dark-mode .my-comp-card,
body.dark-mode .friend-card,
body.dark-mode .friends-side-card,
body.dark-mode .settings-card,
body.dark-mode .settings-nav,
body.dark-mode .pending-card,
body.dark-mode .popup-card,
body.dark-mode .welcome-account-card,
body.dark-mode .su-card,
body.dark-mode .profile-identity-card,
body.dark-mode .profile-side {background:var(--card);border-color:var(--line)}
body.dark-mode .auth-panel-right,
body.dark-mode .auth-page-body,
body.dark-mode .auth-page {background:var(--bg-soft)}
body.dark-mode .btn.secondary{background:rgba(255,255,255,.06);border-color:var(--line);color:var(--text)}
body.dark-mode .btn.muted{background:rgba(255,255,255,.04);color:var(--muted)}
body.dark-mode .tabs button,
body.dark-mode .friends-tab,
body.dark-mode .settings-nav-item{color:var(--muted)}
body.dark-mode .tabs button.active{background:var(--primary);color:#fff}
body.dark-mode input,
body.dark-mode select,
body.dark-mode .su-field input,
body.dark-mode .su-field select,
body.dark-mode .s-input,
body.dark-mode .s-select,
body.dark-mode .friends-search-input{background:var(--navy-600);border-color:var(--line);color:var(--text)}
body.dark-mode .announce{background:var(--navy-950);border-bottom-color:var(--text-2)}
body.dark-mode .data-head{background:rgba(255,255,255,.04)}
body.dark-mode .data-row{border-color:var(--line)}
body.dark-mode .profile-achievement-rail span,
body.dark-mode .profile-achievement-stats div{background:rgba(255,255,255,.04);border-color:var(--line)}
body.dark-mode .lang-menu summary,
body.dark-mode .lang-menu>div{background:var(--navy-800);border-color:var(--line)}
body.dark-mode .profile-menu-drop{background:var(--navy-800);border-color:var(--line)}
body.dark-mode .wallet-tx-row{border-color:var(--line)}
body.dark-mode .friends-stat,
body.dark-mode .suggested-card{background:rgba(255,255,255,.04)}
body.dark-mode .suggested-card{border-color:var(--line)}

/* ── Dark mode: fix hardcoded white cards ──────────────────────── */
body.dark-mode .active-card,
body.dark-mode .flash-line,
body.dark-mode .event-flow,
body.dark-mode .news-card,
body.dark-mode .news-showcase-panel,
body.dark-mode .news-feature a,
body.dark-mode .news-grid article,
body.dark-mode .value-card-grid,
body.dark-mode .value-showcase,
body.dark-mode .event-unified-card,
body.dark-mode .event-overview-grid,
body.dark-mode .data-table,
body.dark-mode .leader-layout,
body.dark-mode .sidebar-layout,
body.dark-mode .profile-hero,
body.dark-mode .help-card,
body.dark-mode .register-layout article,
body.dark-mode .betting-header,
body.dark-mode .overview-bar,
body.dark-mode .upcoming-card,
body.dark-mode .my-rank-summary,
body.dark-mode .leader-controls,
body.dark-mode .leaderboard-panel,
body.dark-mode .full-leaderboard,
body.dark-mode .help-side,
body.dark-mode .rule-card,
body.dark-mode .event-side-stack aside,
body.dark-mode .promo-slide,
body.dark-mode .right-slide,
body.dark-mode .my-comp-card,
body.dark-mode .profile-achievement-summary,
body.dark-mode .news-list-grid article,
body.dark-mode .news-detail-layout,
body.dark-mode .my-event-hero,
body.dark-mode .value-card,
body.dark-mode .achievement-card,
body.dark-mode .upcoming-list article { background: var(--card) !important; border-color: var(--line) !important; }

body.dark-mode .profile-mini { background: rgba(255,255,255,.06); border-color: var(--line); }
body.dark-mode .avatar { background: rgba(38,43,51,.3); color: var(--primary-bright); }
body.dark-mode .main-nav a { color: var(--muted); }
body.dark-mode .main-nav a.active,
body.dark-mode .main-nav a:hover { background: rgba(38,43,51,.15); color: var(--primary-bright); }
body.dark-mode .overview-divider { background: var(--line); }
body.dark-mode .announce { background: var(--navy-950); border-bottom-color: var(--line); }
body.dark-mode .status.live { background: rgba(216,75,0,.18); color: var(--danger-bright); }
body.dark-mode .status.booked { background: rgba(38,43,51,.15); color: var(--primary-bright); }
body.dark-mode .btn.primary { background: var(--primary); }

/* v49 tournament refresh: white site, blue CTA, featured event tabs */

body{background:var(--card)}
.site-header,.site-footer,.flash-line,.active-card,.value-showcase,.news-showcase-panel,.overview-bar,.help-card,.leader-main,.leader-side,.full-leaderboard,.profile-side,.profile-goal-card,.profile-highlight-card,.achievement-hero,.achievement-focus-card,.achievement-next-card,.achievement-page-card,.rule-card,.ed-left,.ed-reg-card,.ed-past-card{background:var(--card)}
/* .section-block / .event-flow are bare layout wrappers with no bg in light mode (bg==card there so it was invisible);
   giving them var(--card) here created a borderless square-cornered "shade" box around/behind their real (bordered) child card. */
.event-flow{padding:0}
.site-header .brand-mark,.brand-mark{background:var(--primary);color:#fff;box-shadow:0 8px 18px rgba(38,43,51,.18)}
.announce{background:var(--bg-soft);color:var(--text-2);border-bottom:1px solid var(--line)}
.announce-pill{background:var(--primary-tint);color:var(--primary)}
.main-nav a.active,.main-nav a:hover,.sidebar-nav a.active,.sidebar-nav a:hover,.help-side a.active,.help-side a:hover{background:var(--primary-tint);color:var(--primary)}
.btn.primary{background:var(--primary)!important;color:#fff;border:1px solid var(--primary)}
.btn.primary:hover{background:var(--primary-strong)!important}
.btn.secondary{background:var(--card);border:1px solid var(--line-strong);color:var(--primary-deep)}
.btn.secondary:hover{border-color:var(--primary);color:var(--primary);background:var(--bg-soft)}
.tabs button.active,.mode-tab.active{background:var(--primary);border-color:var(--primary);color:#fff}
.status.open,.status.booked{background:var(--primary-tint);color:var(--primary)}
.active-kpis .stat strong,.my-event-kpis .stat strong,.profile-event-summary strong,.profile-highlight-card strong,.achievement-hero-stats strong{color:var(--primary)}
.featured-tabs{display:inline-flex;align-items:center;gap:6px;background:var(--bg-soft);border:1px solid var(--line);border-radius:999px;padding:4px;flex:0 0 auto}
.featured-tabs button{height:34px;border:0;border-radius:999px;background:transparent;color:var(--text-2);font-size:13px;font-weight:900;padding:0 16px;cursor:pointer}
.featured-tabs button.active{background:var(--primary);color:#fff;box-shadow:0 8px 18px rgba(38,43,51,.18)}
.featured-event-panel{display:none}
.featured-event-panel.active{display:block}
.featured-event-grid{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch}
.featured-event-grid .event-unified-card{border-radius:20px;box-shadow:var(--shadow)}
.featured-event-grid .event-cover{height:138px;background:var(--bg-mute)}
.featured-event-grid .event-cover img{object-fit:cover}
.featured-event-grid .event-unified-title-row h3{font-size:22px}
.featured-event-grid .event-unified-reward{align-items:flex-start;flex-direction:column;gap:4px}
.avatar-rank,.rank-tag-large,.rank-table-tag,.ps-emblem{object-fit:contain}
.avatar-rank{width:auto;max-width:58px}
@media(max-width:1100px){.featured-event-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.featured-event-grid{grid-template-columns:1fr}.section-head{align-items:flex-start;flex-direction:column}.featured-tabs{width:100%}.featured-tabs button{flex:1}}
body.dark-mode .profile-mini .pill-wallet { background: rgba(244,182,63,.15); color: var(--gold); }
body.dark-mode .section-head h2 { color: var(--text); }
body.dark-mode .data-head { background: rgba(255,255,255,.05); color: var(--muted); }

/* home live hall refresh */
.section-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:0 0 auto}
.scroll-arrow{width:38px;height:38px;border-radius:50%;border:1px solid var(--line-strong);background:var(--card);color:var(--primary-deep);font-size:24px;line-height:1;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-sm);transition:background .15s ease,border-color .15s ease,color .15s ease,transform .15s ease}
.scroll-arrow:hover{background:var(--bg-soft);border-color:var(--primary);color:var(--primary);transform:translateY(-1px)}
.live-hall-grid{display:grid!important;grid-auto-flow:column;grid-auto-columns:calc((100% - 36px)/3);grid-template-columns:none!important;gap:18px;overflow-x:auto;overflow-y:hidden;padding:2px 2px 14px;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}
.live-hall-grid::-webkit-scrollbar{height:8px}
.live-hall-grid::-webkit-scrollbar-track{background:var(--bg-mute);border-radius:999px}
.live-hall-grid::-webkit-scrollbar-thumb{background:var(--line-strong);border-radius:999px}
.live-card{scroll-snap-align:start;min-width:0}
.live-board a{display:flex;align-items:center;gap:6px;min-width:0;font-size:13px;font-weight:900;color:var(--text-2)}
.live-rank-icon{width:auto;height:18px;max-width:46px;object-fit:contain;flex:0 0 auto;filter:drop-shadow(0 1px 2px rgba(0,0,0,.12))}
.featured-event-grid .event-unified-card{color:inherit;min-height:100%;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.featured-event-grid .event-unified-card:hover{transform:translateY(-3px);border-color:var(--primary-soft);box-shadow:var(--shadow-lg)}
.featured-event-grid .event-unified-card:hover .event-cover img{transform:scale(1.035)}
.featured-event-grid .event-cover img{transition:transform .2s ease}
.featured-event-grid .event-unified-body{min-height:178px}

@media(max-width:1100px){
  .live-hall-grid{grid-auto-columns:minmax(300px,48vw)}
}
@media(max-width:640px){
  .section-actions{width:100%;justify-content:space-between}
  .section-actions .text-link{margin-left:auto}
  .live-hall-grid{grid-auto-columns:minmax(276px,86vw)}
  .scroll-arrow{width:36px;height:36px;font-size:24px}
}

/* hide home live hall scrollbar while keeping touch/trackpad scroll */
.live-hall-grid{scrollbar-width:none}
.live-hall-grid::-webkit-scrollbar{display:none}

/* arena tabbed lobby */
.arena-hero{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:22px;align-items:stretch;margin-top:4px;padding:28px;border:1px solid var(--line);border-radius:24px;background:linear-gradient(135deg,var(--bg-soft) 0%,var(--card) 54%,var(--success-tint) 100%);box-shadow:var(--shadow)}
.arena-hero-copy span{display:inline-flex;align-items:center;border-radius:999px;background:var(--primary-tint);color:var(--primary);font-size:12px;font-weight:900;padding:7px 12px;margin-bottom:14px}
.arena-hero-copy h1{font-size:36px;line-height:1.08;margin:0;letter-spacing:0;color:var(--text)}
.arena-hero-copy p{max-width:700px;margin:12px 0 0;color:var(--text-2);font-size:14px;line-height:1.7;font-weight:700}
.arena-hero-panel{display:grid;grid-template-columns:1fr;gap:10px}
.arena-hero-panel div{border:1px solid var(--primary-tint);border-radius:20px;background:var(--card);padding:16px 18px;box-shadow:var(--shadow)}
.arena-hero-panel small{display:block;color:var(--muted);font-size:12px;font-weight:900;margin-bottom:6px}
.arena-hero-panel strong{display:block;color:var(--primary);font-size:28px;line-height:1}
.arena-tabs-shell{position:sticky;top:73px;z-index:12;background:rgba(255,255,255,.92);backdrop-filter:blur(12px);padding:14px 0 10px;margin-top:18px}
.arena-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;border:1px solid var(--line);border-radius:20px;background:var(--bg-soft);padding:6px}
.arena-tabs button{height:48px;border:0;border-radius:16px;background:transparent;color:var(--text-2);font-size:14px;font-weight:900;cursor:pointer}
.arena-tabs button.active{background:var(--card);color:var(--primary);box-shadow:var(--shadow-sm);border:1px solid var(--line-strong)}
.arena-panel{display:none;margin-top:20px}
.arena-panel.active{display:block}
.arena-panel-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:16px}
.arena-panel-head h2{font-size:24px;margin:0;color:var(--text)}
.arena-panel-head p{margin:6px 0 0;color:var(--muted);font-size:14px;line-height:1.6;font-weight:700}
.arena-event-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.arena-event-card{display:grid;grid-template-columns:210px minmax(0,1fr);min-height:268px;border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:var(--shadow);overflow:hidden;color:inherit;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.arena-event-card:hover{transform:translateY(-3px);border-color:var(--primary-soft);box-shadow:var(--shadow-lg)}
.arena-event-card.featured{border-color:var(--primary-soft);background:linear-gradient(180deg,var(--card) 0%,var(--bg-soft) 100%)}
.arena-event-cover{position:relative;background:var(--bg-mute);min-height:100%}
.arena-event-cover img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s ease}
.arena-event-card:hover .arena-event-cover img{transform:scale(1.035)}
.arena-event-cover .status{position:absolute;top:14px;left:14px}
.arena-event-body{padding:20px;display:flex;flex-direction:column;gap:14px;min-width:0}
.arena-event-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.arena-event-title h3{font-size:24px;line-height:1.08;margin:0;color:var(--text)}
.arena-event-title p{margin:6px 0 0;color:var(--muted);font-size:13px;font-weight:800}
.arena-event-title strong{font-size:13px;color:var(--primary);background:var(--primary-tint);border-radius:999px;padding:7px 10px;white-space:nowrap}
.arena-event-body>p{margin:0;color:var(--text-2);font-size:14px;line-height:1.65;font-weight:700}
.arena-game-tags{display:flex;flex-wrap:wrap;gap:8px}
.arena-game-tags span{font-size:12px;font-weight:900;color:var(--text-2);background:var(--bg-soft);border:1px solid var(--line);border-radius:999px;padding:6px 10px}
.arena-event-stats{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto}
.arena-event-stats div,.arena-my-stats div{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:12px}
.arena-event-stats small,.arena-my-stats small{display:block;color:var(--muted);font-size:12px;font-weight:900;margin-bottom:5px}
.arena-event-stats b,.arena-my-stats strong{font-size:18px;color:var(--text)}
.arena-my-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.arena-my-card{border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:var(--shadow);padding:20px;display:flex;flex-direction:column;gap:14px}
.arena-my-card.primary{border-color:var(--primary-soft);background:var(--bg-soft)}
.arena-my-card.muted{background:var(--bg-soft)}
.arena-my-card h3{font-size:24px;line-height:1.08;margin:0;color:var(--text)}
.arena-my-card>p{margin:0;color:var(--muted);font-size:13px;font-weight:800}
.arena-my-stats{display:grid;grid-template-columns:1fr;gap:10px}
.arena-my-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:auto}
.arena-my-actions .btn{justify-content:center}
.arena-my-card.muted .arena-my-actions{grid-template-columns:1fr}

@media(max-width:1100px){
  .arena-hero{grid-template-columns:1fr}
  .arena-hero-panel{grid-template-columns:repeat(3,1fr)}
  .arena-event-grid{grid-template-columns:1fr}
  .arena-my-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .arena-hero{padding:22px;border-radius:20px}
  .arena-hero-copy h1{font-size:28px}
  .arena-hero-panel{grid-template-columns:1fr}
  .arena-tabs-shell{top:72px;overflow-x:auto}
  .arena-tabs{min-width:430px}
  .arena-event-card{grid-template-columns:1fr}
  .arena-event-cover{height:164px}
  .arena-panel-head{align-items:flex-start;flex-direction:column}
  .arena-panel-head .btn{width:100%;justify-content:center}
  .arena-event-stats{grid-template-columns:1fr}
  .arena-my-actions{grid-template-columns:1fr}
}

/* arena v2: state-driven lobby */
.arena-tabs-shell{margin-top:0;padding-top:0}
.arena-panel-head{padding-top:2px}
.arena-panel-head .btn{border-radius:16px}
.arena-state-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.arena-state-card{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:18px;display:grid;gap:14px}
.arena-state-card.team{background:linear-gradient(180deg,var(--card) 0%,var(--bg-soft) 100%)}
.arena-state-head{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:14px;align-items:center}
.arena-state-head h3{font-size:24px;line-height:1.08;margin:0;color:var(--text)}
.arena-state-head p{margin:7px 0 0;color:var(--muted);font-size:13px;font-weight:800;line-height:1.45}
.arena-state-head img{width:112px;height:62px;border-radius:16px;object-fit:cover;background:var(--bg-mute)}
.match-state{border:1px solid var(--line);border-radius:20px;background:var(--bg-soft);padding:14px;display:grid;gap:12px}
.live-state{background:var(--bg-soft);border-color:var(--primary-soft)}
.live-state.is-mine{border-color:var(--primary-soft);background:var(--primary-tint)}
.signup-state{background:var(--card);border-color:var(--line)}
.arena-state-card>.signup-state{order:-1;border-color:var(--primary-soft);box-shadow:0 8px 20px rgba(38,43,51,.07)}
.match-top{display:flex;align-items:center;justify-content:space-between;gap:12px}
.match-top>b{font-size:13px;color:var(--text-2);background:var(--bg-soft);border:1px solid var(--line);border-radius:999px;padding:6px 10px;white-space:nowrap}
.match-state p{margin:0;color:var(--text-2);font-size:13px;line-height:1.55;font-weight:700}
.match-state .btn{width:100%;justify-content:center}
.live-board.compact{margin:0;gap:6px}
.live-board.compact div{padding:8px 9px;border-radius:12px}
.team-lobby-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;align-items:start}
.team-state-grid{grid-template-columns:1fr}
.team-top-list{display:grid;gap:7px}
.team-top-list div{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:8px;border:1px solid var(--line);background:var(--card);border-radius:12px;padding:9px 10px}
.team-top-list b{color:var(--primary);font-size:12px}
.team-top-list span{font-weight:900;color:var(--text-2);min-width:0}
.team-top-list strong{color:var(--success-bright);font-size:13px}
.team-lobby{position:sticky;top:150px;border:1px solid var(--line);border-radius:20px;background:var(--card);box-shadow:var(--shadow);padding:18px;display:grid;gap:14px}
.team-lobby-head h3{font-size:22px;margin:0;color:var(--text)}
.team-lobby-head p{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.5;font-weight:700}
.team-room-list{display:grid;gap:10px}
.team-lobby-filters{display:flex;gap:6px;flex-wrap:wrap}
.team-lobby-filters button{height:32px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--text-2);font-size:12px;font-weight:900;padding:0 10px;cursor:pointer}
.team-lobby-filters button.active{background:var(--primary);border-color:var(--primary);color:#fff}
.team-room{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:12px}
.team-room.locked{background:var(--gold-tint);border-color:var(--gold-soft)}
.team-room strong{display:block;font-size:14px;color:var(--text);margin-bottom:5px}
.team-room span{display:block;color:var(--muted);font-size:12px;font-weight:800}
.team-room .btn{height:36px;padding:0 12px;white-space:nowrap}
.team-password-panel{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:14px}
.team-password-panel label{font-size:12px;font-weight:900;color:var(--text-2)}
.team-password-panel input{height:42px;border:1px solid var(--line);border-radius:12px;padding:0 12px;font-size:14px;outline:none}
.team-password-panel input:focus{border-color:var(--primary);box-shadow:0 0 0 3px rgba(38,43,51,.1)}
.team-room-mini{display:grid;gap:8px}
.team-room-mini div{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding-top:8px}
.team-room-mini span{font-size:13px;font-weight:900;color:var(--text)}
.team-room-mini b{font-size:12px;color:var(--muted);font-weight:900;text-align:right}
.recruit-widget{position:fixed;right:24px;bottom:24px;z-index:30;width:320px;border:1px solid var(--primary-soft);border-radius:20px;background:var(--card);box-shadow:var(--shadow-lg);overflow:hidden}
.recruit-mini{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;background:var(--bg-soft)}
.recruit-mini strong{display:block;font-size:14px;color:var(--text)}
.recruit-mini span{display:block;margin-top:4px;color:var(--primary);font-size:12px;font-weight:900}
.recruit-mini button{width:52px;height:32px;border:1px solid var(--line-strong);border-radius:999px;background:var(--card);color:var(--primary);font-weight:900;cursor:pointer}
.recruit-detail{display:grid;gap:12px;padding:14px 16px}
.recruit-detail p{margin:0;color:var(--text-2);font-size:13px;line-height:1.55;font-weight:700}
.recruit-progress{height:8px;background:var(--primary-tint);border-radius:999px;overflow:hidden}
.recruit-progress span{display:block;height:100%;background:var(--primary);border-radius:999px}
.recruit-confirm-list{display:grid;gap:9px;margin:0}
.recruit-confirm-list div{display:grid;grid-template-columns:72px minmax(0,1fr);gap:10px;align-items:center}
.recruit-confirm-list dt{font-size:12px;font-weight:900;color:var(--muted)}
.recruit-confirm-list dd{margin:0;font-size:13px;font-weight:900;color:var(--text)}
.recruit-confirm-list label{display:inline-flex;align-items:center;gap:6px}
.recruit-confirm-list select,.recruit-confirm-list input[type="text"],.recruit-confirm-list input[type="password"]{width:100%;height:34px;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:0 8px;font:inherit;font-size:13px;font-weight:800;color:var(--text)}
.recruit-confirm-list input[type="text"]::placeholder,.recruit-confirm-list input[type="password"]::placeholder{color:var(--faint)}
.recruit-confirm-list input[type="text"]:focus,.recruit-confirm-list input[type="password"]:focus,.recruit-confirm-list select:focus{outline:3px solid rgba(38,43,51,.14);border-color:var(--primary-soft)}
.recruit-password-field{display:grid;gap:5px;margin-top:8px}
.recruit-password-field[hidden]{display:none}
.recruit-password-field small{color:var(--faint);font-size:11px;font-weight:700;line-height:1.35}
.recruit-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}
.recruit-actions .btn{justify-content:center}
.recruit-actions .btn[disabled]{opacity:.48;cursor:not-allowed}

@media(max-width:1100px){
  .arena-state-grid{grid-template-columns:1fr}
  .team-lobby-layout{grid-template-columns:1fr}
  .team-lobby{position:static}
}
@media(max-width:640px){
  .arena-state-head{grid-template-columns:1fr}
  .arena-state-head img{width:100%;height:126px}
  .match-top{align-items:flex-start;flex-direction:column}
  .team-room{grid-template-columns:1fr}
  .recruit-widget{left:14px;right:14px;bottom:14px;width:auto}
}

/* event detail v2 */
.event-detail-shell{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:22px;align-items:start}
.event-info-panel{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);overflow:hidden}
.event-info-cover{display:block;width:100%;height:auto;background:var(--bg-mute)}
.event-info-body{padding:26px 30px 30px}
.event-info-kicker{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.event-info-kicker span{font-size:12px;font-weight:900;color:var(--primary);background:var(--primary-tint);border-radius:999px;padding:7px 11px}
.event-info-body h1{font-size:36px;line-height:1.05;margin:0;color:var(--text)}
.event-info-lead{margin:12px 0 0;color:var(--text-2);font-size:14px;line-height:1.75;font-weight:700}
.event-info-section{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}
.event-info-section h2{font-size:20px;margin:0 0 14px;color:var(--text)}
.event-session-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.event-session-list div,.event-reward-list div{border-left:3px solid var(--primary-soft);background:var(--bg-soft);padding:12px 14px;border-radius:0 12px 12px 0}
.event-session-list strong,.event-reward-list strong{display:block;color:var(--text);font-size:14px;margin-bottom:5px}
.event-session-list span,.event-reward-list span{display:block;color:var(--muted);font-size:13px;font-weight:800;line-height:1.45}
.event-game-list{display:flex;flex-wrap:wrap;gap:8px}
.event-game-list span{font-size:13px;font-weight:900;color:var(--text-2);background:var(--bg-soft);border:1px solid var(--line);border-radius:999px;padding:7px 12px}
.event-reward-list{display:grid;gap:10px}
.event-rule-list{margin:0;padding-left:20px;color:var(--text-2);font-size:14px;line-height:1.8;font-weight:700}
.event-rule-list li+li{margin-top:6px}
.event-action-panel{position:sticky;top:96px;display:grid;gap:14px}
.event-current-card,.event-signup-card{background:var(--card);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow);padding:22px}
.event-action-top,.event-signup-status{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.event-action-top>span:last-child,.event-signup-status strong{font-size:13px;color:var(--text-2);font-weight:900;white-space:nowrap}
.event-current-card p{margin:0 0 18px;color:var(--text-2);font-size:14px;line-height:1.55;font-weight:700}
.event-action-panel .btn{width:100%;justify-content:center}
.event-signup-card h2{font-size:24px;line-height:1.1;margin:0 0 16px;color:var(--text)}
.plain-entry-list{display:grid;gap:12px;margin:18px 0 20px}
.plain-entry-list div{display:grid;grid-template-columns:82px minmax(0,1fr);gap:14px;align-items:start}
.plain-entry-list dt{font-size:13px;color:var(--muted);font-weight:900}
.plain-entry-list dd{margin:0;color:var(--text);font-size:14px;font-weight:900;text-align:right}
@media(max-width:1000px){
  .event-detail-shell{grid-template-columns:1fr}
  .event-action-panel{position:static}
}
@media(max-width:640px){
  .event-info-body{padding:22px 18px}
  .event-info-body h1{font-size:32px}
  .event-session-list{grid-template-columns:1fr}
  .plain-entry-list dd{text-align:left}
}
body.dark-mode .data-row { border-color: var(--line); color: var(--text); }
body.dark-mode .tabs button { background: rgba(255,255,255,.05); border-color: var(--line); color: var(--muted); }
body.dark-mode .tabs button.active { background: var(--primary); border-color: var(--primary); color: #fff; }
body.dark-mode .profile-event-card,
body.dark-mode .profile-event-strip { border-color: var(--line); }

.avatar-wrap{position:relative;flex-shrink:0}
.avatar-rank{position:absolute;top:-5px;right:-5px;width:18px;height:18px;object-fit:contain;filter:drop-shadow(0 1px 2px rgba(0,0,0,.18))}
.profile-mini .pill-wallet{font-size:14px;font-weight:900;color:var(--gold);white-space:nowrap}

/* ── Profile squad card ─────────────────────────────── */
.prof-squad-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden}
.prof-squad-banner{display:flex;align-items:center;gap:14px;background:var(--navy-800);padding:18px 20px}
.prof-squad-emblem{width:46px;height:46px;border-radius:12px;background:linear-gradient(135deg,var(--gold),var(--gold-strong));color:var(--text);font-size:22px;font-weight:900;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.prof-squad-identity{flex:1;min-width:0}
.prof-squad-name{font-size:16px;font-weight:900;color:#fff}
.prof-squad-tag{font-size:12px;color:rgba(255,255,255,.5);margin-top:2px}
.prof-squad-enter{flex-shrink:0}
.prof-squad-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-bottom:1px solid var(--line)}
.prof-squad-stats>div{padding:14px 0;text-align:center;border-right:1px solid var(--line)}
.prof-squad-stats>div:last-child{border-right:none}
.prof-squad-stats strong{display:block;font-size:20px;font-weight:900;color:var(--primary)}
.prof-squad-stats span{display:block;font-size:12px;color:var(--muted);margin-top:2px}
.prof-squad-xp{padding:14px 20px 10px}
.prof-squad-xp-label{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-bottom:6px}
.prof-squad-xp-bar{height:7px;background:var(--line);border-radius:999px;overflow:hidden}
.prof-squad-xp-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--gold),var(--gold-strong));border-radius:999px}
.prof-squad-members-label{padding:4px 20px 8px;font-size:12px;font-weight:800;color:var(--muted)}
.prof-squad-members{display:flex;gap:8px;padding:0 20px 18px;flex-wrap:wrap}
.prof-sq-av{position:relative;width:38px;height:38px;border-radius:50%;background:var(--primary-tint);color:var(--primary);font-size:14px;font-weight:900;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.prof-sq-you{position:absolute;bottom:-14px;left:50%;transform:translateX(-50%);font-size:10px;font-weight:900;color:var(--gold);white-space:nowrap}

.nav-notif-dot{position:absolute;top:-3px;left:-3px;width:13px;height:13px;border-radius:50%;background:var(--danger);border:2.5px solid #fff}
.drop-notif-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--danger);margin-left:6px;vertical-align:middle;flex-shrink:0}

/* v49 rank badges are horizontal text emblems */
.avatar-rank{width:42px;height:auto;max-height:24px;right:-24px;top:-8px;object-fit:contain}
.profile-mini .avatar-rank{width:46px;right:-28px;top:-7px}
.rank-tier img,.achievement-card img,.achievement-page-card img,.profile-achievement-feature img{object-fit:contain}

/* v50 brand/auth/detail refinements */
.brand-mark,.site-header .brand-mark{background:transparent url("brand/logo-blue.png") center/contain no-repeat!important;color:transparent!important;box-shadow:none!important;border-radius:0!important;overflow:hidden}
.brand-mark::selection{color:transparent;background:transparent}
.v44-slide-banner img{object-position:center}
.ed-points dl div{display:grid!important;grid-template-columns:minmax(108px,160px) minmax(0,1fr);gap:20px;align-items:center;justify-content:normal!important}
.ed-points dd{justify-self:start;text-align:left;word-break:keep-all}
.ed-left-actions{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px!important}
.ed-left-actions:has(.btn:only-child){grid-template-columns:1fr}
.ed-left-actions .btn{width:100%;height:48px}
.auth-reference-page .auth-page{min-height:100vh;justify-content:flex-end;background:var(--card)}
.auth-reference-page .auth-login-visual{
  flex:1 1 auto;
  min-height:100vh;
  background:var(--card) url("../../assets/loginbg.png") 22% center/cover no-repeat;
  border-right:1px solid rgba(255,255,255,.08);
}
.auth-reference-page .auth-panel-right{width:50%;max-width:none;min-height:100vh;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);box-shadow:-18px 0 48px rgba(0,0,0,.06)}
.auth-reference-page .auth-box{max-width:460px}
.auth-reference-page .auth-submit,.auth-reference-page .su-submit{background:var(--primary)!important;border-color:var(--primary)!important;color:#fff!important}
@media(max-width:900px){.auth-reference-page .auth-login-visual{display:none}.auth-reference-page .auth-panel-right{width:100%;background:rgba(255,255,255,.94)}}

/* arena independent tournament cards */
.upcoming-card .upcoming-kpis{align-items:flex-end}
.upcoming-card .upcoming-kpis>.stat{min-width:112px}
.upcoming-cover img{aspect-ratio:909/398;object-fit:cover}
@media(max-width:1100px){.upcoming-cover img{width:100%;height:auto}}

/* v51 padding fixes for referral popup and event detail points */
.popup-card{max-width:820px!important;padding:32px!important}
.popup-head{margin-bottom:22px}
.popup-card .referral-desc{margin:0 0 12px!important;line-height:1.65}
.popup-card .referral-code-row{gap:24px;margin-bottom:8px}
.popup-card .referral-code-display{min-height:112px;display:flex;align-items:center;padding:20px 40px!important;border-radius:24px;font-size:32px}
.popup-card .referral-copy-btn{height:96px;min-width:136px;border-radius:20px;font-size:18px}
.popup-card .referral-meta-row{margin:0 0 0}
.popup-card .referral-stats{margin-top:0;border-radius:20px}
.popup-card .referral-stats>div{padding:26px 32px;gap:10px}
.popup-card .referral-stats small{font-size:14px;line-height:1.35}
.popup-card .referral-stats strong{font-size:32px;line-height:1}
.popup-card .referral-share-row{gap:28px;margin-top:0;align-items:center}
.popup-card .referral-share-btn{height:64px;min-width:240px;border-radius:20px;font-size:18px}
.popup-card .referral-rules-link{font-size:16px;font-weight:900}
.ed-points{margin-top:24px!important;padding:24px 30px 28px!important;border-top:1px solid var(--line)}
.ed-points h3{font-size:18px!important;margin:0 0 20px!important}
.ed-points dl div{padding:14px 0!important;grid-template-columns:minmax(132px,260px) minmax(0,1fr)!important}
.ed-points dt,.ed-points dd{font-size:14px!important;line-height:1.45}
@media(max-width:700px){
  .popup-card{max-width:calc(100vw - 28px)!important;padding:22px!important}
  .popup-card .referral-code-row{gap:12px;flex-direction:column;align-items:stretch}
  .popup-card .referral-code-display{min-height:88px;padding:18px 24px!important;font-size:28px}
  .popup-card .referral-copy-btn{height:56px;width:100%}
  .popup-card .referral-stats{grid-template-columns:1fr}
  .popup-card .referral-share-row{align-items:stretch;flex-direction:column;gap:14px}
  .popup-card .referral-share-btn{min-width:0;width:100%}
  .ed-points{padding:20px 18px 24px!important}
  .ed-points dl div{grid-template-columns:1fr!important;gap:6px}
}

/* v52 detail registration cards, rank placement, simplified invite popup */
.ed-left>img{filter:brightness(.62) contrast(1.08);background:var(--navy-950)}
.ed-side{display:block}
.ed-entry-card{position:sticky;top:96px;display:flex;flex-direction:column;gap:18px}
.ed-entry-status{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--muted);font-size:13px;font-weight:800}
.ed-entry-list{display:grid;gap:0;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:var(--card)}
.ed-entry-row{display:grid;grid-template-columns:88px minmax(0,1fr);gap:14px;align-items:center;padding:14px 16px;border-bottom:1px solid var(--line)}
.ed-entry-row:last-child{border-bottom:0}
.ed-entry-row span{color:var(--muted);font-size:13px;font-weight:800}
.ed-entry-row strong{color:var(--text);font-size:14px;font-weight:900;text-align:right;word-break:keep-all}
.ed-calendar-btn,.ed-register-btn,.ed-registered-btn{height:52px;border-radius:16px;font-size:16px;font-weight:900}
.ed-registered-btn,.btn.muted.ed-registered-btn{background:var(--bg-mute)!important;border-color:var(--line)!important;color:var(--muted)!important;cursor:not-allowed;opacity:1}
.ed-lower-head,.ed-lower-row{grid-template-columns:minmax(0,1fr) 120px 120px!important}
.ed-lower-head span:nth-child(2),.ed-lower-head span:nth-child(3),.ed-lower-row span:nth-child(2),.ed-lower-row span:nth-child(3){text-align:right;justify-self:stretch}
.ed-lower-row .pts,.ed-lower-row .wlt{text-align:right}
.avatar-wrap .avatar-rank{display:none!important}
.profile-name-line{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:10px}
.rank-name-badge{height:26px;width:auto;object-fit:contain;filter:drop-shadow(0 1px 2px rgba(0,0,0,.12))}
.sq-name-rank{display:inline-flex;align-items:center;justify-content:center;min-height:22px;padding:0 8px;border-radius:var(--r-full);background:var(--gold-tint);color:var(--gold-deep);font-size:11px;font-weight:900;line-height:1;flex:0 0 auto}
.sq-member-av .avatar-rank{display:none!important}
.profile-team-link{font-size:13px;font-weight:700;color:var(--muted);text-decoration:none;margin-top:-4px;display:block}
.profile-identity-card .ps-tier{display:none!important}
.popup-card{max-width:540px!important;padding:24px!important}
.popup-card .referral-desc{font-size:16px;font-weight:800;color:var(--muted);line-height:1.65;margin:0 0 26px!important}
.popup-card .invite-code-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto;gap:12px!important;align-items:center;border:1.5px solid var(--line);border-radius:20px;padding:20px 28px;margin:0 0 24px!important}
.popup-card .invite-code-row .referral-code-display{min-height:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;color:var(--primary);font-size:24px;letter-spacing:.18em}
.popup-card .invite-icon-btn{height:56px;min-width:106px;border-radius:16px;border:1.5px solid var(--primary-soft);background:var(--card);color:var(--primary-deep);font-size:16px;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.popup-card .invite-icon-btn.copied{background:var(--success-tint);color:var(--success);border-color:var(--success-soft)}
.popup-card .invite-share-btn{width:100%;height:80px;border-radius:20px;font-size:18px;display:flex;align-items:center;justify-content:center;gap:10px}
.popup-card .referral-meta-row,.popup-card .referral-stats,.popup-card .referral-rules-link{display:none!important}
@media(max-width:860px){.ed-entry-card{position:static}.ed-entry-row strong{text-align:left}}
@media(max-width:700px){
  .popup-card{max-width:calc(100vw - 28px)!important;padding:22px!important}
  .popup-card .invite-code-row{grid-template-columns:1fr;padding:18px!important}
  .popup-card .invite-icon-btn{width:100%}
  .popup-card .invite-share-btn{height:64px}
  html,body{max-width:100%;overflow-x:hidden}
  .page-shell{width:100%!important;max-width:100%!important}
  .profile-layout,.profile-side,.profile-main,.profile-main .section-block{width:100%!important;max-width:100%!important;min-width:0!important}
  .profile-event-strip{display:grid!important;grid-template-columns:1fr!important;grid-auto-flow:row!important;grid-auto-columns:auto!important;width:100%;max-width:100%;min-width:0;overflow:visible!important}
  .profile-event-card{width:100%;min-width:0}
  .profile-main .data-table{width:100%;max-width:100%;overflow-x:auto}
}

/* v53 arena hierarchy, per-event recruitment, homepage ticker */
.home-page{padding-bottom:0}.home-page .site-footer{padding-bottom:60px}
.home-page .home-flash-line{position:fixed;left:0;right:0;bottom:0;z-index:80;margin:0;border-left:0;border-right:0;border-bottom:0;border-radius:0;box-shadow:0 -12px 28px rgba(0,0,0,.12);padding:10px max(18px,calc((100vw - 1180px)/2));background:rgba(255,255,255,.96);backdrop-filter:blur(12px)}
.home-page .home-flash-line>span{margin-left:0}
.arena-state-card>.signup-state{order:0;border-color:var(--line);box-shadow:none}
.arena-state-card.team{grid-template-columns:minmax(230px,.76fr) minmax(0,1.24fr);align-items:stretch;gap:16px}
.arena-state-card.team .arena-state-head{grid-column:1;align-self:start}
.arena-state-card.team .live-state{grid-column:1;align-self:stretch}
.arena-state-card.team .signup-state{grid-column:2;grid-row:1 / span 2;min-height:100%;border-color:var(--primary-soft);background:linear-gradient(180deg,var(--card) 0%,var(--bg-soft) 100%);box-shadow:0 10px 24px rgba(38,43,51,.08)}
.team-lobby-layout{display:block}
.team-lobby{display:none!important}
.team-lobby-filters.mini{gap:8px;margin-top:2px}
.team-lobby-filters.mini button{height:34px}
.arena-state-card.team .team-room-mini{gap:10px}
.arena-state-card.team .team-room-mini div{border:1px solid var(--line);border-radius:12px;background:var(--card);padding:10px 12px}
.arena-state-card.team .signup-state .btn{margin-top:auto}
.profile-menu-drop a[href="friends.html"],.profile-menu-drop a[href="squad.html"],.profile-team-link,.profile-friend-btn{display:none!important}
.help-side a span{display:none!important}
@media(max-width:1100px){
  .arena-state-card.team{grid-template-columns:1fr}
  .arena-state-card.team .arena-state-head,.arena-state-card.team .live-state,.arena-state-card.team .signup-state{grid-column:auto;grid-row:auto}
}
@media(max-width:640px){
  .home-page{padding-bottom:0}
  .home-page .site-footer{padding-bottom:72px}
  .home-page .home-flash-line{padding:10px 14px}
  .home-page .home-flash-line>span{font-size:12px;padding:5px 8px}
}

/* v54 solo tournament horizontal cards */
[data-arena-panel="solo"] .arena-state-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.solo-state-card{display:grid;grid-template-columns:1fr;gap:0;padding:0;overflow:hidden;border-radius:20px;background:var(--card);box-shadow:var(--shadow)}
.solo-card-art{min-height:154px;background-color:var(--text-2);background-image:linear-gradient(90deg,rgba(12,12,12,.66),rgba(12,12,12,.24)),var(--solo-art);background-size:cover;background-position:center;position:relative;padding:24px;color:#fff;display:flex;align-items:center}
.solo-card-art::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,8,28,.04),rgba(0,8,28,.38));pointer-events:none}
.solo-card-art>div{position:relative;z-index:1}
.solo-card-art h3{font-size:28px;line-height:1.08;margin:0 0 10px;font-weight:900;letter-spacing:0;text-shadow:0 4px 20px rgba(0,0,0,.28)}
.solo-card-art p{display:inline-flex;margin:0;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.32);color:rgba(255,255,255,.9);border-radius:999px;padding:6px 10px;font-size:12px;line-height:1;font-weight:900;box-shadow:none;white-space:nowrap;backdrop-filter:blur(6px)}
.solo-card-main{position:relative;display:grid;grid-template-rows:minmax(0,1fr) auto}
.solo-live-block{padding:24px 24px 20px;display:grid;gap:13px}
.solo-status-row{display:flex}
.solo-state-pill{display:inline-flex;align-items:center;gap:7px;background:var(--success-tint);color:var(--success);border-radius:12px;padding:6px 10px;font-size:13px;font-weight:900}
.solo-state-pill::before{content:"";width:8px;height:8px;border-radius:999px;background:var(--success-bright)}
.solo-title-row{display:flex;align-items:center;gap:16px}
.solo-title-row h3{margin:0;color:var(--text);font-size:28px;line-height:1;font-weight:900;letter-spacing:0}
.solo-live-badge{display:inline-flex;align-items:center;height:26px;border-radius:8px;background:var(--danger);color:#fff;font-size:13px;font-weight:900;padding:0 9px;box-shadow:0 8px 18px rgba(225,45,57,.22)}
.solo-meta-row{display:flex;flex-wrap:wrap;gap:16px;color:var(--text-2);font-size:13px;font-weight:900}
.solo-meta-row span{display:inline-flex;align-items:center;gap:9px;position:relative}
.solo-meta-row span::before{content:"";width:18px;height:18px;border:2px solid currentColor;border-radius:999px;opacity:.9;box-sizing:border-box;flex:0 0 18px}
.solo-meta-row span:first-child::after{content:"";position:absolute;left:8px;top:4px;width:5px;height:7px;border-left:2px solid currentColor;border-bottom:2px solid currentColor;transform-origin:left bottom;transform:rotate(-42deg);opacity:.9}
.solo-meta-row span:nth-child(2)::before{border:0;border-radius:0;background:radial-gradient(circle at 6px 6px,currentColor 0 3px,transparent 3.5px),radial-gradient(circle at 13px 7px,currentColor 0 3px,transparent 3.5px),linear-gradient(currentColor,currentColor) 3px 13px/13px 4px no-repeat;opacity:.9}
.solo-live-body{display:grid;grid-template-columns:1fr;gap:14px;align-items:center;margin-top:2px}
.solo-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.rank-card{min-height:66px;border-radius:12px;background:var(--bg-soft);border:1px solid var(--bg-mute);text-decoration:none;color:var(--text);display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"medal name" "medal score";align-items:center;column-gap:8px;padding:10px;box-shadow:var(--shadow-sm)}
.rank-card b{grid-area:medal;width:27px;height:27px;border-radius:8px;display:grid;place-items:center;color:#fff;font-size:13px;font-weight:900;background:var(--gold);box-shadow:0 8px 18px rgba(244,182,63,.2)}
.rank-card.silver b{background:var(--faint)}
.rank-card.bronze b{background:var(--live)}
.rank-card span{grid-area:name;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px;font-weight:900}
.rank-card strong{grid-area:score;color:var(--success);font-size:14px;font-weight:900}
.solo-live-head{display:flex;align-items:center;justify-content:space-between;gap:14px}.solo-enter-btn{flex:0 0 auto;height:40px;min-width:118px;border-radius:12px;font-size:14px;font-weight:900;justify-content:center;box-shadow:0 12px 24px rgba(38,43,51,.18);padding:0 14px}
.solo-enter-btn::after,.solo-signup-btn::after{content:"›";font-size:24px;line-height:1;margin-left:10px;font-weight:500}
.solo-next-block{border-top:1px solid var(--line);padding:13px 24px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;background:var(--bg-soft)}
.solo-next-pill{display:inline-flex;background:var(--primary-tint);color:var(--primary);border-radius:8px;padding:5px 8px;font-size:12px;font-weight:900;margin-right:9px}
.solo-next-line{display:inline-grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;vertical-align:middle}
.solo-next-line strong{color:var(--text-2);font-size:14px;line-height:1;font-weight:900;white-space:nowrap}
.solo-next-line span{display:block;color:var(--muted);font-size:12px;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.solo-next-line span::before{display:none}
.solo-signup-btn{height:32px;min-width:82px;border-radius:12px;border-color:var(--line);color:var(--primary);background:var(--card);font-size:12px;font-weight:900;justify-content:center;padding:0 10px;box-shadow:none}
.solo-signup-btn::after{font-size:18px;margin-left:6px}
@media(max-width:980px){
  [data-arena-panel="solo"] .arena-state-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
  .solo-state-card{grid-template-columns:1fr}
  .solo-card-art{min-height:190px;padding:28px 22px}
  .solo-card-art h3{font-size:28px}
  .solo-card-art p{font-size:14px}
  .solo-live-block{padding:24px 18px 18px}
  .solo-live-head{flex-wrap:wrap}.solo-enter-btn{width:100%;height:44px}
  .solo-next-block{grid-template-columns:1fr;padding:12px 18px}
  .solo-title-row h3{font-size:28px}
  .solo-meta-row{gap:14px;font-size:14px}
  .solo-podium{grid-template-columns:1fr}
  .rank-card{min-height:70px}
  .solo-next-line{grid-template-columns:1fr;gap:7px}
}

/* v55 profile avatar choices */
.avatar[data-avatar-theme="blue"]{background:linear-gradient(135deg,var(--primary),var(--primary-bright));color:#fff}
.avatar[data-avatar-theme="green"]{background:linear-gradient(135deg,var(--success),var(--success-bright));color:#fff}
.avatar[data-avatar-theme="gold"]{background:linear-gradient(135deg,var(--gold-strong),var(--gold-soft));color:var(--gold-ink)}
.avatar[data-avatar-theme="red"]{background:linear-gradient(135deg,var(--danger),var(--danger-bright));color:#fff}
.avatar[data-avatar-theme="violet"]{background:linear-gradient(135deg,var(--purple),var(--purple-soft));color:#fff}
.avatar[data-avatar-theme="slate"]{background:linear-gradient(135deg,var(--navy-600),var(--muted));color:#fff}
.profile-avatar-editor{display:grid;justify-items:center;gap:10px;margin-bottom:12px}
.profile-avatar-editor .avatar.xl{margin:0}
.avatar-change-btn{height:34px;border:1px solid var(--primary-soft);border-radius:999px;background:var(--card);color:var(--primary);font-size:13px;font-weight:900;padding:0 14px;cursor:pointer}
.avatar-change-btn:hover{background:var(--primary-tint);border-color:var(--primary-soft)}
.avatar[data-profile-avatar]{overflow:hidden;background:var(--primary-tint)}
.avatar[data-profile-avatar] img{width:100%;height:100%;object-fit:cover;border-radius:inherit;display:block}
.avatar-popup-card{max-width:480px!important}
.avatar-choice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.avatar-choice-grid button{border:1px solid var(--line);border-radius:16px;background:var(--bg-soft);padding:14px 10px;display:grid;justify-items:center;gap:9px;cursor:pointer;color:var(--text)}
.avatar-choice-grid button:hover,.avatar-choice-grid button.active{border-color:var(--primary-bright);background:var(--primary-tint);box-shadow:var(--shadow)}
.avatar-choice-grid span{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;font-size:20px;font-weight:900}
.avatar-choice-grid strong{font-size:13px;font-weight:900}
.avatar-choice-grid [data-avatar-theme="blue"] span{background:linear-gradient(135deg,var(--primary),var(--primary-bright));color:#fff}
.avatar-choice-grid [data-avatar-theme="green"] span{background:linear-gradient(135deg,var(--success),var(--success-bright));color:#fff}
.avatar-choice-grid [data-avatar-theme="gold"] span{background:linear-gradient(135deg,var(--gold-strong),var(--gold-soft));color:var(--gold-ink)}
.avatar-choice-grid [data-avatar-theme="red"] span{background:linear-gradient(135deg,var(--danger),var(--danger-bright));color:#fff}
.avatar-choice-grid [data-avatar-theme="violet"] span{background:linear-gradient(135deg,var(--purple),var(--purple-soft));color:#fff}
.avatar-choice-grid [data-avatar-theme="slate"] span{background:linear-gradient(135deg,var(--navy-600),var(--muted));color:#fff}
.avatar-image-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.avatar-image-grid button{padding:8px;border-radius:16px}
.avatar-image-grid img{width:64px;height:64px;border-radius:50%;object-fit:cover;display:block;box-shadow:var(--shadow-sm)}
.avatar-image-grid strong{font-size:12px;color:var(--text-2)}
@media(max-width:520px){.avatar-choice-grid,.avatar-image-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* supplied svg icons */
.solo-meta-row span::before{background-color:currentColor;border:0;border-radius:0;mask:center/contain no-repeat;-webkit-mask:center/contain no-repeat}
.solo-meta-row span:first-child::before{mask-image:url('icons/time.svg');-webkit-mask-image:url('icons/time.svg')}
.solo-meta-row span:first-child::after{display:none}
.solo-meta-row span:nth-child(2)::before{background:currentColor;mask-image:url('icons/users.svg');-webkit-mask-image:url('icons/users.svg')}
.arena-state-card.team .team-room-mini div.locked::before{border:0;border-radius:0;background:var(--navy-950);mask:url('icons/lock.svg') center/contain no-repeat;-webkit-mask:url('icons/lock.svg') center/contain no-repeat;height:16px;width:16px}
.arena-state-card.team .team-room-mini div.locked span::after{display:none}

/* v56 team event lobby cards */
[data-arena-panel="team"] .arena-state-grid{grid-template-columns:1fr;gap:24px}
.solo-state-card:nth-child(1) .solo-card-art{background-image:linear-gradient(90deg,rgba(12,12,12,.72),rgba(12,12,12,.16)),url('new-tournaments/card-bg-speed.png');background-position:center right}
.solo-state-card:nth-child(2) .solo-card-art{background-image:linear-gradient(90deg,rgba(12,12,12,.72),rgba(12,12,12,.16)),url('new-tournaments/card-bg-peak.png');background-position:center right}
.solo-state-card:nth-child(3) .solo-card-art{background-image:linear-gradient(90deg,rgba(12,12,12,.72),rgba(12,12,12,.16)),url('new-tournaments/card-bg-horizon.png');background-position:center right}
.solo-state-card:nth-child(4) .solo-card-art{background-image:linear-gradient(90deg,rgba(12,12,12,.72),rgba(12,12,12,.16)),url('new-tournaments/card-bg-supreme.png');background-position:center right}
.arena-state-card.team{display:block;padding:0;overflow:hidden;border-radius:24px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.arena-state-card.team .arena-state-head{min-height:132px;padding:26px 34px;display:flex;align-items:center;background-color:var(--text);background-size:cover;background-position:center;position:relative;color:#fff;border-bottom:1px solid var(--line)}
.arena-state-card.team:nth-child(1) .arena-state-head{background-image:linear-gradient(90deg,rgba(12,12,12,.9),rgba(12,12,12,.18)),url('new-tournaments/card-bg-speed.png')}
.arena-state-card.team:nth-child(2) .arena-state-head{background-image:linear-gradient(90deg,rgba(12,12,12,.9),rgba(12,12,12,.18)),url('new-tournaments/card-bg-peak.png')}
.arena-state-card.team:nth-child(3) .arena-state-head{background-image:linear-gradient(90deg,rgba(12,12,12,.9),rgba(12,12,12,.18)),url('new-tournaments/card-bg-horizon.png')}
.arena-state-card.team:nth-child(4) .arena-state-head{background-image:linear-gradient(90deg,rgba(12,12,12,.9),rgba(12,12,12,.18)),url('new-tournaments/card-bg-supreme.png')}
.arena-state-card.team .arena-state-head img{display:none}
.arena-state-card.team .arena-state-head h3{font-size:32px;line-height:1.04;margin:0 0 14px;color:#fff;text-shadow:0 4px 20px rgba(0,0,0,.38)}
.arena-state-card.team .arena-state-head p{display:inline-flex;margin:0;border-radius:8px;background:var(--primary);color:#fff;padding:8px 13px;font-size:16px;line-height:1;font-weight:900;box-shadow:0 10px 24px rgba(38,43,51,.3)}
.arena-state-card.team .live-state{position:relative;border:0;border-radius:0;background:var(--card);padding:20px 34px 16px;display:grid;gap:14px}
.arena-state-card.team .live-state .match-top{justify-content:flex-start;gap:18px;padding-right:190px}
.arena-state-card.team .live-state .match-top .status{height:32px;border-radius:12px;padding:0 12px;display:inline-flex;align-items:center}
.arena-state-card.team .live-state .match-top b{border:0;background:transparent;border-radius:0;padding:0;color:var(--text);font-size:24px;font-weight:900}
.arena-state-card.team .live-state .match-top b::after{content:" · 623 人在线观赛";font-size:13px;color:var(--text-2);font-weight:900;margin-left:18px}
.arena-state-card.team .live-state .btn{position:absolute;right:34px;top:20px;width:auto;min-width:170px;height:52px;border-radius:16px;font-size:16px;font-weight:900;background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 16px 34px rgba(38,43,51,.22)}
.arena-state-card.team .team-top-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;padding-right:190px}
.arena-state-card.team .team-top-list div{min-height:64px;border-radius:16px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-sm);grid-template-columns:42px minmax(0,1fr) auto;padding:12px 16px}
.arena-state-card.team .team-top-list b{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:var(--gold);color:#fff;font-size:16px}
.arena-state-card.team .team-top-list div:nth-child(2) b{background:var(--faint)}
.arena-state-card.team .team-top-list div:nth-child(3) b{background:var(--live)}
.arena-state-card.team .team-top-list span{font-size:16px;color:var(--text)}
.arena-state-card.team .team-top-list strong{font-size:14px;color:var(--success)}
.arena-state-card.team .signup-state{position:relative;grid-column:auto;grid-row:auto;min-height:0;border:0;border-top:1px solid var(--line);border-radius:0;background:var(--card);padding:22px 34px 28px;box-shadow:none;display:grid;gap:16px;align-content:start}
.arena-state-card.team .signup-state .match-top{display:flex;justify-content:flex-start;gap:14px;align-items:center;padding-right:150px}
.arena-state-card.team .signup-state .match-top .status{background:transparent;color:var(--text);font-size:22px;font-weight:900;padding:0;white-space:nowrap}
.arena-state-card.team .signup-state .match-top .status::before{content:"";display:inline-block;width:20px;height:20px;margin-right:10px;vertical-align:-3px;background:linear-gradient(var(--primary),var(--primary)) center/12px 14px no-repeat;border-radius:4px}
.arena-state-card.team .signup-state .match-top b{border:0;background:var(--primary-tint);color:var(--primary);border-radius:8px;font-size:13px;padding:7px 10px}
.arena-state-card.team .signup-state>p{margin:-8px 0 0;color:var(--text-2);font-size:14px;font-weight:900}
.arena-state-card.team .signup-state>.btn{position:absolute;right:34px;top:22px;margin-top:0;width:auto;min-width:132px;height:40px;border-radius:12px;font-size:14px}
.team-recruit-tools{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,320px);gap:14px;align-items:center}
.arena-state-card.team .team-lobby-filters.mini{gap:14px;margin:0}
.arena-state-card.team .team-lobby-filters.mini button{height:38px;border-radius:8px;padding:0 18px;background:var(--card);border:1px solid var(--line);color:var(--text);font-size:13px}
.arena-state-card.team .team-lobby-filters.mini button.active{background:var(--card);color:var(--primary);border-color:var(--primary-tint)}
.team-search{height:38px;border:1px solid var(--line);border-radius:8px;background:var(--card);display:grid;grid-template-columns:minmax(0,1fr) 36px;align-items:center}
.team-search input{width:100%;height:100%;border:0;background:transparent;padding:0 12px;font:inherit;font-size:13px;font-weight:800;color:var(--text);outline:none}
.team-search input::placeholder{color:var(--muted)}
.team-search span{width:16px;height:16px;border:2px solid var(--text-2);border-radius:999px;position:relative;justify-self:center}
.team-search span::after{content:"";position:absolute;width:7px;height:2px;background:var(--text-2);right:-5px;bottom:-3px;transform:rotate(45deg);border-radius:999px}
.arena-state-card.team .team-room-mini{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.arena-state-card.team .team-room-mini div{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;min-height:96px;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:14px 16px 42px;box-shadow:none}
.arena-state-card.team .team-room-mini span{font-size:16px;font-weight:900;color:var(--text)}
.arena-state-card.team .team-room-mini b{grid-column:1/-1;text-align:left;font-size:13px;line-height:1.5;color:var(--text-2);font-weight:900}
.arena-state-card.team .team-room-mini div::after{content:"申请加入 ›";position:absolute;right:14px;bottom:12px;height:26px;border-radius:999px;background:var(--bg-soft);border:1px solid var(--line);color:var(--text-2);padding:0 10px;display:inline-flex;align-items:center;font-size:12px;font-weight:900;line-height:1}
.arena-state-card.team .team-room-mini div.locked::before{content:"";position:absolute;right:14px;top:14px;width:15px;height:12px;border:2px solid var(--navy-950);border-radius:4px;opacity:.82}
.arena-state-card.team .team-room-mini div.locked span::after{content:"";position:absolute;right:18px;top:8px;width:8px;height:8px;border:2px solid var(--navy-950);border-bottom:0;border-radius:8px 8px 0 0;opacity:.82}
.arena-state-card.team .team-room-mini div.open::after{background:var(--gold-tint);border-color:var(--gold-soft);color:var(--gold-deep)}
.team-recruit-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:2px;color:var(--text-2);font-size:13px;font-weight:900}
.team-recruit-footer>div{display:flex;align-items:center;gap:8px}
.team-recruit-footer button{width:30px;height:30px;border:0;border-radius:8px;background:transparent;color:var(--text);font-size:14px;font-weight:900;cursor:pointer}
.team-recruit-footer button.active{background:var(--primary);color:#fff}

/* v57 team card header alignment */
.arena-state-card.team .live-state{padding:18px 34px 18px;gap:16px}
.arena-state-card.team .live-state .match-top{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:start;gap:8px 18px;padding-right:0}
.team-live-title{display:flex;align-items:center;gap:18px;min-width:0}
.team-live-title .status{position:relative;height:32px;border-radius:8px;background:var(--success-tint);color:var(--success);padding:0 12px;font-size:14px;font-weight:900}
.team-live-title .status::before{content:"";width:8px;height:8px;border-radius:999px;background:var(--success-bright);margin-right:7px}
.team-live-title .status::after{content:"";position:absolute;right:-10px;top:7px;width:1px;height:18px;background:var(--line)}
.team-live-title strong{color:var(--text);font-size:24px;line-height:32px;font-weight:900;white-space:nowrap}
.team-live-title em{height:28px;border-radius:8px;background:var(--danger);color:#fff;display:inline-flex;align-items:center;padding:0 10px;font-style:normal;font-size:14px;font-weight:900;box-shadow:0 8px 18px rgba(225,45,57,.18)}
.team-live-meta{grid-column:1;display:flex;align-items:center;gap:22px;color:var(--text-2);font-size:14px;font-weight:900}
.team-live-meta span{display:inline-flex;align-items:center;gap:8px;position:relative;white-space:nowrap}
.team-live-meta span+span::before{content:"";position:absolute;left:-12px;top:3px;width:1px;height:16px;background:var(--line)}
.team-live-meta span::after{content:"";width:18px;height:18px;order:-1;background-color:var(--text-2);mask:center/contain no-repeat;-webkit-mask:center/contain no-repeat}
.team-live-meta .time::after{mask-image:url('icons/time.svg');-webkit-mask-image:url('icons/time.svg')}
.team-live-meta .users::after{mask-image:url('icons/users.svg');-webkit-mask-image:url('icons/users.svg')}
.arena-state-card.team .live-state .match-top>b,.arena-state-card.team .live-state .match-top>b::after{display:none}
.arena-state-card.team .live-state .btn{position:static;grid-column:2;grid-row:1 / span 2;align-self:center;min-width:142px;height:46px;border-radius:12px;font-size:14px}
.arena-state-card.team .team-top-list{padding-right:0}
.arena-state-card.team .signup-state{padding:24px 34px 30px;gap:14px}
.arena-state-card.team .signup-state .match-top{display:flex;align-items:center;gap:14px;padding-right:176px;min-height:42px}
.arena-state-card.team .signup-state .match-top .signup-icon{width:24px;height:24px;border-radius:8px;background:var(--primary);display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;position:relative;box-shadow:0 8px 18px rgba(38,43,51,.18)}
.arena-state-card.team .signup-state .match-top .signup-icon::before{content:"";width:15px;height:15px;background:var(--card);mask:url('icons/time.svg') center/contain no-repeat;-webkit-mask:url('icons/time.svg') center/contain no-repeat}
.arena-state-card.team .signup-state .match-top strong{color:var(--text);font-size:24px;line-height:1;font-weight:900;white-space:nowrap}
.arena-state-card.team .signup-state .match-top .status{background:var(--primary-tint);color:var(--primary);border-radius:8px;font-size:14px;font-weight:900;padding:7px 10px;white-space:nowrap}
.arena-state-card.team .signup-state .match-top .status::before{display:none}
.arena-state-card.team .signup-state .match-top b{background:transparent;color:var(--text-2);border-radius:0;font-size:14px;font-weight:900;padding:0;white-space:nowrap}
.arena-state-card.team .signup-state .match-top b::before{content:"";display:inline-block;width:1px;height:16px;background:var(--line);margin:0 14px 0 2px;vertical-align:-3px}
.arena-state-card.team .signup-state>p{margin:-4px 0 0;color:var(--text-2);font-size:14px;font-weight:900}
.arena-state-card.team .signup-state>.btn{top:24px;right:34px;min-width:142px;height:44px;border-radius:12px;font-size:14px}
.team-recruit-tools{background:var(--bg-soft);border:1px solid var(--line);border-radius:16px;padding:10px;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:18px;box-shadow:var(--shadow-sm)}
.arena-state-card.team .team-lobby-filters.mini{gap:12px;align-items:center}
.arena-state-card.team .team-lobby-filters.mini button{height:42px;border-radius:8px;padding:0 20px;border-color:var(--line);box-shadow:var(--shadow-sm)}
.arena-state-card.team .team-lobby-filters.mini button.active{color:var(--primary);border-color:var(--primary-tint);background:var(--card);box-shadow:0 5px 14px rgba(38,43,51,.08)}
.arena-state-card.team .team-lobby-filters.mini button.active::before{content:"";display:inline-block;width:17px;height:17px;margin-right:8px;vertical-align:-3px;background:var(--primary);clip-path:polygon(9% 12%,91% 12%,60% 48%,60% 84%,40% 84%,40% 48%)}
.team-search{height:42px;border-color:var(--line);border-radius:12px;box-shadow:var(--shadow-sm)}

@media(max-width:760px){
  .arena-state-card.team .live-state .match-top{grid-template-columns:1fr}
  .arena-state-card.team .live-state .btn{grid-column:1;grid-row:auto;width:100%}
  .arena-state-card.team .signup-state .match-top{padding-right:0;flex-wrap:wrap}
  .arena-state-card.team .signup-state>.btn{position:static;width:100%}
  .team-recruit-tools{grid-template-columns:1fr}
}
@media(max-width:980px){
  .arena-state-card.team .team-top-list,.arena-state-card.team .team-room-mini{grid-template-columns:1fr;padding-right:0}
  .arena-state-card.team .live-state .btn,.arena-state-card.team .signup-state>.btn{position:static;width:100%}
  .arena-state-card.team .live-state .match-top{padding-right:0;flex-wrap:wrap}
  .arena-state-card.team .signup-state .match-top{padding-right:0;flex-wrap:wrap}
  .team-recruit-tools{grid-template-columns:1fr}
  .arena-state-card.team .live-state .match-top b::after{display:none}
}
@media(max-width:640px){
  .arena-state-card.team .arena-state-head,.arena-state-card.team .live-state,.arena-state-card.team .signup-state{padding-left:18px;padding-right:18px}
  .arena-state-card.team .arena-state-head h3{font-size:28px}
  .arena-state-card.team .arena-state-head p{font-size:13px}
}

/* v58 team CTA vertical alignment */
.arena-state-card.team .live-state{
  grid-template-columns:minmax(0,1fr);
  align-items:stretch;
}
.arena-state-card.team .live-state .match-top{
  grid-column:1;
  grid-row:1;
}
.arena-state-card.team .live-state .btn{
  grid-column:2;
  grid-row:1;
  align-self:center;
  width:100%;
  min-width:0;
}
.arena-state-card.team .team-top-list{
  grid-column:1;
  grid-row:2;
}
.arena-state-card.team .signup-state>.btn{
  background:var(--card);
  border:1.5px solid var(--primary);
  color:var(--primary);
  box-shadow:none;
  font-weight:900;
  opacity:1;
}
.arena-state-card.team .signup-state>.btn:hover{
  background:var(--primary-tint);
  border-color:var(--primary-bright);
}

/* v59 team signup cleanup */
.arena-state-card.team .signup-state .match-top{
  padding-right:176px;
}
.arena-state-card.team .signup-state .match-top b,
.arena-state-card.team .signup-state .match-top b::before{
  display:none;
}
.arena-state-card.team .signup-state>p.signup-meta-line{
  margin:-6px 0 2px 38px;
  color:var(--text-2);
  font-size:14px;
  font-weight:900;
}
.arena-state-card.team .signup-state>.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--card);
  border:1.5px solid var(--primary);
  color:var(--primary);
  box-shadow:none;
  white-space:nowrap;
}
.arena-state-card.team .signup-state>.btn::before{
  content:"+";
  margin-right:8px;
  font-size:20px;
  line-height:1;
  font-weight:700;
}
.arena-state-card.team .team-room-mini div::after,
.arena-state-card.team .team-room-mini div.open::after{
  height:28px;
  border-radius:8px;
  background:var(--card);
  border:1px solid var(--line);
  color:var(--text-2);
  padding:0 12px;
  font-size:12px;
  box-shadow:none;
}

@media(max-width:980px){
  .arena-state-card.team .live-state{grid-template-columns:1fr}
  .arena-state-card.team .live-state .match-top,
  .arena-state-card.team .live-state .btn,
  .arena-state-card.team .team-top-list{grid-column:1;grid-row:auto}
}

/* v60 dedicated team create button */
.arena-state-card.team .signup-state>.team-create-btn{
  position:absolute;
  right:34px;
  top:24px;
  width:auto;
  min-width:142px;
  height:44px;
  border-radius:12px;
  border:1.5px solid var(--primary);
  background:var(--card);
  color:var(--primary);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:0 18px;
  font-size:14px;
  line-height:1;
  font-weight:900;
  cursor:pointer;
  box-shadow:none;
  white-space:nowrap;
}
.arena-state-card.team .signup-state>.team-create-btn::before{
  content:"+";
  font-size:20px;
  line-height:1;
  font-weight:800;
}
.arena-state-card.team .signup-state>.team-create-btn:hover{
  background:var(--primary-tint);
  border-color:var(--primary-bright);
}

@media(max-width:980px){
  .arena-state-card.team .signup-state>.team-create-btn{
    position:static;
    width:100%;
  }
}

/* v61 event watch page */
.watch-page{background:var(--bg-soft)}
.watch-shell{max-width:1240px}
.watch-back{margin-bottom:18px}
.watch-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:22px;align-items:center;margin-bottom:18px}
.watch-title-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.watch-title-row h1{margin:0;color:var(--text);font-size:32px;line-height:1.05;font-weight:900;letter-spacing:0}
.watch-issue{color:var(--muted);font-size:18px;font-weight:800}
.watch-game{display:inline-flex;align-items:center;height:28px;border-radius:8px;background:var(--primary-tint);border:1px solid var(--primary-soft);color:var(--primary);padding:0 10px;font-size:14px;font-weight:900}
.watch-meta-row{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:16px;color:var(--text-2);font-size:14px;font-weight:800}
.watch-meta-row .status{height:30px;border-radius:8px;padding:0 12px;font-size:14px;background:var(--success-tint);color:var(--success)}
.watch-meta-row strong{color:var(--text);font-size:18px;margin-left:4px}
.watch-register-next{height:44px;min-width:138px;border-radius:12px;align-self:center;box-shadow:0 12px 24px rgba(38,43,51,.18)}
.watch-layout{display:grid;grid-template-columns:380px minmax(0,1fr);gap:16px;align-items:start}
.watch-board,.watch-detail{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
.watch-board{padding:22px 10px 16px}
.watch-board h2{margin:0 16px 18px;color:var(--text);font-size:20px;font-weight:900}
.watch-board-head{display:grid;grid-template-columns:54px minmax(0,1fr) 104px;gap:10px;padding:0 16px 10px;color:var(--muted);font-size:12px;font-weight:800;border-bottom:1px solid var(--primary-tint)}
.watch-board-head span:last-child{text-align:right}
.watch-rank-list{display:grid}
.watch-rank-item{width:100%;border:0;border-bottom:1px solid var(--bg-mute);background:var(--card);display:grid;grid-template-columns:54px minmax(0,1fr) 104px;gap:10px;align-items:center;padding:11px 16px;color:var(--text);text-align:left;cursor:pointer}
.watch-rank-item:hover,.watch-rank-item.active{background:var(--bg-soft)}
.watch-rank-item.active{box-shadow:inset 3px 0 0 var(--primary)}
.watch-rank-no{width:28px;height:28px;border-radius:12px;display:grid;place-items:center;font-size:13px;font-weight:900;background:var(--bg-soft);color:var(--text-2)}
.watch-rank-no.top1{background:var(--gold);color:#fff}.watch-rank-no.top2{background:var(--faint);color:#fff}.watch-rank-no.top3{background:var(--live);color:#fff}
.watch-rank-player{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:center;min-width:0}
.watch-rank-player img,.watch-player-main>img{border-radius:50%;object-fit:cover;border:1px solid var(--line);background:var(--primary-tint)}
.watch-rank-player img{width:38px;height:38px}
.watch-rank-player strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:900}
.rank-text-chip{display:inline-flex;align-items:center;height:22px;border-radius:8px;background:var(--primary-tint);color:var(--primary);padding:0 7px;font-size:12px;font-weight:900;white-space:nowrap}
.watch-rank-profit{text-align:right;color:var(--success);font-size:14px;font-weight:900;white-space:nowrap}
.watch-detail{padding:24px 24px 16px;display:grid;gap:18px;overflow:hidden}
.watch-player-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:start}
.watch-player-main{display:grid;grid-template-columns:62px minmax(0,1fr);gap:14px;align-items:start}
.watch-player-main>img{width:62px;height:62px}
.watch-player-name-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.watch-player-name-line h2{margin:0;color:var(--text);font-size:24px;line-height:1.1;font-weight:900}
.watch-records-kicker{display:none;color:var(--text);font-size:18px;font-weight:900;margin-left:12px}
.watch-player-stats{display:grid;grid-template-columns:repeat(3,minmax(0,150px));gap:20px;margin-top:14px}
.watch-player-stats div{border-left:1px solid var(--line);padding-left:16px}.watch-player-stats div:first-child{border-left:0;padding-left:0}
.watch-player-stats small{display:block;color:var(--muted);font-size:12px;font-weight:800;margin-bottom:5px}
.watch-player-stats strong{display:block;color:var(--text);font-size:18px;font-weight:900}.watch-player-stats .profit{color:var(--success)}
.watch-time-tabs{display:flex;gap:7px;align-items:center}
.watch-time-tabs button{height:34px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text-2);font-weight:800;padding:0 12px;cursor:pointer}
.watch-time-tabs button.active{border-color:var(--primary);background:var(--primary-tint);color:var(--primary)}
.watch-chart-panel{position:relative;border-top:1px solid var(--bg-mute);padding-top:20px;min-height:236px}
.watch-chart-label{color:var(--text-2);font-size:13px;font-weight:800;margin-bottom:6px}
#watchProfitChart{display:block;width:100%;height:220px}
.watch-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}
.watch-section-head h3{margin:0;color:var(--text);font-size:20px;font-weight:900}
.watch-section-head span{color:var(--muted);font-size:12px;font-weight:800}
.watch-record-table{border:1px solid var(--line);border-radius:12px;overflow:hidden}
.watch-record-row{display:grid;grid-template-columns:68px 104px 62px minmax(156px,1fr) 108px 92px;gap:8px;align-items:center;min-width:0;padding:11px 12px;border-bottom:1px solid var(--bg-mute);color:var(--text);font-size:13px;font-weight:800}
.watch-record-row:last-child{border-bottom:0}
.watch-record-row.head{background:var(--bg-soft);color:var(--muted);font-size:12px;font-weight:900}
.watch-record-row .play-tag{display:inline-flex;align-items:center;height:22px;border-radius:8px;background:var(--primary-tint);color:var(--primary);padding:0 7px;font-size:12px;font-weight:900;margin-right:8px}
.watch-record-row .play-tag.purple{background:var(--purple-tint);color:var(--purple)}.watch-record-row .play-tag.gold{background:var(--gold-tint);color:var(--gold-deep)}
.watch-record-row .win{color:var(--success)}.watch-record-row .lose{color:var(--danger)}
.record-play-cell{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}
.record-choice{font-weight:900;letter-spacing:.01em}
.record-choice.win{color:var(--success)}
.record-choice.lose{color:var(--danger)}
.record-result-inline{color:var(--muted);font-size:12px;font-weight:800}
.watch-more-records{width:280px;max-width:100%;height:40px;margin:12px auto 0;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--text-2);font-size:14px;font-weight:900;display:flex;align-items:center;justify-content:center;cursor:pointer}
.watch-more-records::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-1px,-1px);margin-left:8px;transition:transform .15s}
.watch-detail.records-expanded .watch-records-kicker{display:inline-flex}
.watch-detail.records-expanded .watch-more-records::after{transform:rotate(225deg) translate(-2px,-2px)}
@media(max-width:1100px){.watch-layout{grid-template-columns:1fr}.watch-board{order:2}.watch-player-head{grid-template-columns:1fr}.watch-time-tabs{justify-content:flex-start}.watch-register-next{justify-self:start}}
@media(max-width:720px){.watch-hero{grid-template-columns:1fr}.watch-title-row h1{font-size:28px}.watch-meta-row{gap:12px}.watch-player-main{grid-template-columns:50px minmax(0,1fr)}.watch-player-main>img{width:50px;height:50px}.watch-player-stats{grid-template-columns:1fr;gap:8px}.watch-player-stats div{border-left:0;padding-left:0}.watch-record-table{overflow-x:auto}.watch-record-row{min-width:760px}.watch-rank-item,.watch-board-head{grid-template-columns:44px minmax(0,1fr) 90px}}

/* v62 leaderboard event switcher */
.lb-v2-shell{max-width:1240px}
.lb-v2-title{display:none}
.lb-v2-layout{display:grid;grid-template-columns:168px minmax(0,1fr) 276px;gap:16px;align-items:start}
.lb-v2-nav,.lb-v2-main,.lb-v2-season{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
.lb-v2-nav{padding:10px;display:flex;flex-direction:column;gap:0;align-self:start}
.lb-v2-nav-group h2{display:none}
.lb-v2-nav-group.team{border-top:1px solid var(--bg-mute);padding-top:22px}
.lb-v2-nav button{width:100%;height:42px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-2);display:flex;align-items:center;gap:10px;padding:0 12px;font-size:14px;font-weight:800;cursor:pointer;text-align:left}
.lb-v2-nav button:hover{background:var(--bg-soft)}
.lb-v2-nav button.active{background:var(--primary-tint);border-color:var(--primary-bright);color:var(--primary);font-weight:900}
.event-mark{width:24px;height:24px;display:inline-grid;place-items:center;flex:0 0 auto;font-weight:900;font-size:18px;line-height:1}
.event-mark.speed{color:var(--primary)}.event-mark.peak{color:var(--purple)}.event-mark.horizon{color:var(--success)}.event-mark.supreme,.event-mark.trophy{color:var(--gold-strong)}
.lb-v2-main{padding:20px 20px 18px;overflow:hidden}
.lb-v2-card-head{padding-bottom:15px;border-bottom:1px solid var(--line)}
.lb-v2-heading-line{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.lb-v2-heading-line h2{margin:0;color:var(--text);font-size:24px;line-height:1;font-weight:900}
.lb-v2-type{display:inline-flex;align-items:center;height:24px;border-radius:8px;background:var(--primary-tint);color:var(--primary);padding:0 8px;font-size:12px;font-weight:900}
.lb-v2-card-head p{margin:11px 0 0;color:var(--text-2);font-size:13px;font-weight:700;line-height:1.5}
.lb-v2-table{overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none}
.lb-v2-table::-webkit-scrollbar{display:none}
.lb-v2-row{display:grid;grid-template-columns:44px minmax(150px,1.4fr) 96px 76px 76px 86px;gap:10px;align-items:center;min-width:0;padding:12px 0;border-bottom:1px solid var(--bg-mute);color:var(--text);font-size:13px;font-weight:800}
.lb-v2-row.head{color:var(--muted);font-size:12px;font-weight:900}
.lb-v2-row .num{font-weight:800;text-align:center}
.lb-v2-rank-no{width:24px;height:24px;border-radius:8px;background:var(--bg-soft);color:var(--text-2);display:grid;place-items:center;font-size:12px;font-weight:900}
.lb-v2-rank-no.top1{background:var(--gold);color:#fff}.lb-v2-rank-no.top2{background:var(--faint);color:#fff}.lb-v2-rank-no.top3{background:var(--live);color:#fff}
.lb-v2-player{display:grid;grid-template-columns:30px minmax(0,1fr);gap:8px;align-items:center;min-width:0}
.lb-v2-player img,.lb-season-player img,.lb-v2-my img{width:30px;height:30px;border-radius:50%;object-fit:cover;border:1px solid var(--line);background:var(--primary-tint)}
.lb-v2-player strong,.lb-season-player strong{display:block;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.lb-v2-player .rank-text-chip{margin-top:3px}
.lb-v2-score,.lb-season-score{color:var(--primary);font-weight:900}
.lb-v2-roi{color:var(--success);font-weight:900}
.lb-v2-my{margin-top:16px;border-radius:12px;background:var(--primary-tint);display:grid;grid-template-columns:68px minmax(150px,1fr) repeat(4,minmax(74px,1fr));gap:10px;align-items:center;padding:14px;overflow-x:auto;color:var(--text);scrollbar-width:none;-ms-overflow-style:none}
.lb-v2-my::-webkit-scrollbar{display:none}
.lb-v2-my small{display:block;color:var(--text-2);font-size:12px;font-weight:800;margin-bottom:4px}
.lb-v2-my .my-no{font-size:24px;color:var(--primary);font-weight:900}
.lb-v2-my .me-cell{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:center}
.lb-v2-my strong{font-size:13px;font-weight:900}.lb-v2-my .metric{font-size:13px;font-weight:800}
.lb-v2-season{padding:20px 14px 16px;display:flex;flex-direction:column;align-self:start}
.lb-v2-season-head{display:block;margin-bottom:14px}
.lb-v2-season-head h2{margin:0;color:var(--text);font-size:18px;line-height:1.15;font-weight:800}
.lb-v2-season-head p{margin:9px 0 0;color:var(--text-2);font-size:12px;line-height:1.45;font-weight:600}
.lb-season-head{display:grid;grid-template-columns:38px minmax(0,1fr) 76px;gap:8px;align-items:center;padding:0 8px 9px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:800}
.lb-season-list{display:grid;gap:2px}
.lb-season-row{display:grid;grid-template-columns:38px minmax(0,1fr) 76px;gap:8px;align-items:center;padding:8px;border-radius:8px;color:var(--text);font-size:13px}
.lb-season-row.me{background:var(--primary-tint)}
.lb-season-rank{font-size:13px;font-weight:800;text-align:center}
.lb-season-player{display:grid;grid-template-columns:26px minmax(0,1fr);gap:8px;align-items:center;min-width:0}
.lb-season-player img{width:26px;height:26px}
.lb-season-me{margin-top:14px;border-radius:12px;background:var(--primary-tint);padding:14px;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lb-season-me small{display:block;color:var(--text-2);font-size:12px;font-weight:700;margin-bottom:6px}
.lb-season-me strong{display:block;color:var(--text);font-size:20px;font-weight:800}
@media(max-width:1180px){.lb-v2-layout{grid-template-columns:150px minmax(0,1fr)}.lb-v2-season{grid-column:1/-1}.lb-season-list{grid-template-columns:repeat(2,minmax(0,1fr))}.lb-season-me{margin-top:16px}}
@media(max-width:820px){.lb-v2-layout{grid-template-columns:1fr}.lb-v2-nav-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.lb-v2-row{grid-template-columns:44px minmax(150px,1fr) 104px 80px 80px;min-width:520px}.lb-v2-row span:nth-child(6),.lb-v2-row>div:nth-child(6){display:none}.lb-v2-my{grid-template-columns:64px minmax(150px,1fr) repeat(3,84px)}.lb-v2-my .metric:nth-last-child(1){display:none}.lb-season-list{grid-template-columns:1fr}}

/* v63 polish pass */
.lb-v2-layout{align-items:stretch}
.lb-v2-season{align-self:stretch}
.lb-v2-season-head p{font-size:13px;font-weight:700}
.lb-season-list{gap:0}
.lb-season-row{padding:10px 8px;border-bottom:1px solid var(--bg-mute)}
.lb-season-row:last-child{border-bottom:0}
.lb-season-player .rank-text-chip{margin-top:3px}
.lb-season-me{margin-top:auto}
.solo-register-modal{position:fixed;inset:0;z-index:90;background:rgba(12,12,12,.42);display:grid;place-items:center;padding:22px}
.solo-register-modal[hidden]{display:none}
.solo-register-card{position:relative;width:min(420px,100%);border-radius:20px;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow-lg);padding:24px}
.solo-register-card h2{margin:12px 0 16px;color:var(--text);font-size:24px;line-height:1.15;font-weight:900}
.solo-register-close{position:absolute;right:14px;top:12px;width:32px;height:32px;border:0;background:var(--bg-soft);border-radius:8px;color:var(--text-2);font-size:22px;line-height:1;cursor:pointer}
.plain-entry-list.compact{display:grid;gap:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;margin:0}
.plain-entry-list.compact div{display:grid;grid-template-columns:96px minmax(0,1fr);padding:12px 14px;border-bottom:1px solid var(--bg-mute);background:var(--card)}
.plain-entry-list.compact div:last-child{border-bottom:0}
.solo-register-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:16px}
.solo-signup-btn.registered{background:var(--bg-mute)!important;border-color:var(--line)!important;color:var(--muted)!important;cursor:not-allowed}
.event-unified-meta span{border-radius:8px}
.event-flow-step{min-height:170px}
.event-flow-step h4{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;font-size:18px}
.event-flow-step h4 span{color:var(--primary);font-size:22px;font-weight:900}
.event-flow-step p,.event-flow-no{display:none!important}

/* v64 arena side navigation + registration polish */
.arena-layout-shell{display:grid;grid-template-columns:168px minmax(0,1fr);gap:16px;align-items:start}
.arena-layout-main{min-width:0}
.arena-layout-shell .arena-tabs-shell{position:sticky;top:92px;z-index:8;margin:0;padding:10px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);backdrop-filter:none;overflow:visible}
.arena-layout-shell .arena-tabs{display:grid;grid-template-columns:1fr;gap:8px;min-width:0;border:0;border-radius:0;background:transparent;padding:0}
.arena-layout-shell .arena-tabs button{height:42px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-2);display:flex;align-items:center;justify-content:flex-start;padding:0 12px;font-size:14px;font-weight:800;text-align:left;box-shadow:none}
.arena-layout-shell .arena-tabs button:hover{background:var(--bg-soft)}
.arena-layout-shell .arena-tabs button.active{background:var(--primary-tint);border-color:var(--primary-bright);color:var(--primary);box-shadow:none}
.arena-layout-main .arena-panel-head{align-items:center}
.arena-layout-main .arena-panel-head h2{font-size:24px}
.arena-layout-main .arena-state-grid{gap:14px}
.arena-layout-main .solo-state-card{min-width:0}
.arena-layout-main .solo-card-art{min-height:132px}
.arena-layout-main .solo-card-main{padding:20px}
.team-sub-tabs{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.team-sub-tabs button{height:34px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text-2);font-size:13px;font-weight:800;padding:0 12px;cursor:pointer}
.team-sub-tabs button:hover{border-color:var(--line-strong);background:var(--bg-soft)}
.team-sub-tabs button.active{border-color:var(--primary-bright);background:var(--primary-tint);color:var(--primary)}
.team-state-grid .arena-state-card.team{display:none}
.team-state-grid .arena-state-card.team.active{display:block}
.plain-entry-list.compact dd small{display:block;margin-top:3px;color:var(--muted);font-size:12px;font-weight:700}
.anti-spam-check{display:flex;gap:8px;align-items:flex-start;margin:14px 0 0;color:var(--text-2);font-size:13px;font-weight:800;line-height:1.5}
.anti-spam-check input{margin-top:3px;accent-color:var(--primary)}
.solo-register-actions .btn:disabled{opacity:.52;cursor:not-allowed}
.lb-v2-main,.lb-v2-season{display:flex;flex-direction:column}
.lb-v2-table{border-top:1px solid var(--line)}
.lb-season-head{border-top:1px solid var(--line);padding-top:9px}
.lb-season-list{flex:1;grid-template-rows:repeat(10,minmax(0,1fr))}
.lb-season-row{min-height:0}
@media(max-width:1180px){
  .arena-layout-shell{grid-template-columns:1fr}
  .arena-layout-shell .arena-tabs-shell{position:static}
  .arena-layout-shell .arena-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:760px){
  .arena-layout-shell .arena-tabs{grid-template-columns:1fr}
  .arena-layout-main .arena-panel-head{align-items:flex-start}
  .team-sub-tabs{justify-content:flex-start}
  .arena-layout-main .solo-card-main{padding:16px}
}

/* v65 leaderboard column order */
.lb-v2-row{grid-template-columns:44px minmax(150px,1.5fr) 82px 82px 104px}
.lb-v2-my{grid-template-columns:68px minmax(150px,1fr) repeat(3,minmax(82px,1fr))}
@media(max-width:820px){
  .lb-v2-row{grid-template-columns:44px minmax(150px,1fr) 82px 82px 104px;min-width:520px}
  .lb-v2-my{grid-template-columns:64px minmax(150px,1fr) repeat(3,84px)}
  .lb-v2-my .metric:nth-last-child(1){display:block}
}

/* v66 replay page */
.replay-shell{max-width:1240px}
.replay-layout{display:grid;grid-template-columns:168px minmax(0,1fr);gap:16px;align-items:start}
.replay-nav{position:sticky;top:92px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:10px;display:grid;gap:8px}
.replay-nav button{height:42px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text-2);text-align:left;padding:0 12px;font-size:14px;font-weight:800;cursor:pointer}
.replay-nav button:hover{background:var(--bg-soft)}.replay-nav button.active{background:var(--primary-tint);border-color:var(--primary-bright);color:var(--primary)}
.replay-main{display:grid;gap:16px;min-width:0}

.replay-count{border:1px solid var(--line);border-radius:12px;background:var(--card);padding:12px 16px;text-align:right;box-shadow:var(--shadow)}
.replay-count strong{display:block;color:var(--primary);font-size:24px;line-height:1;font-weight:900}.replay-count span{display:block;margin-top:4px;color:var(--muted);font-size:12px;font-weight:800}
.replay-list-card,.replay-overview{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}
.replay-table-head,.replay-row{display:grid;grid-template-columns:minmax(210px,1.45fr) minmax(138px,.88fr) 90px minmax(128px,.8fr) 114px;gap:12px;align-items:center}
.replay-table-head{padding:14px 18px;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px;font-weight:900}
.replay-row{width:100%;border:0;border-bottom:1px solid var(--bg-mute);background:var(--card);padding:15px 18px;color:var(--text);text-align:left;cursor:pointer}
.replay-row:hover,.replay-row.active{background:var(--bg-soft)}.replay-row.active{box-shadow:inset 3px 0 0 var(--primary)}
.replay-row a{display:inline-block;color:var(--text);font-size:14px;font-weight:900}.replay-row a:hover{color:var(--primary)}
.replay-row small,.replay-row em{display:block;margin-top:5px;color:var(--text-2);font-size:12px;font-style:normal;font-weight:700;line-height:1.35}
.replay-row b{display:inline-flex;align-items:center;height:24px;border-radius:8px;background:var(--primary-tint);color:var(--primary);padding:0 8px;font-size:12px;font-weight:900}
.replay-champion{display:flex;align-items:center;gap:9px;min-width:0}.replay-champion img{width:34px;height:34px;border-radius:50%;object-fit:cover;border:1px solid var(--line)}.replay-champion strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.replay-profit,.replay-stats .profit,.replay-record-row .win{color:var(--success);font-weight:900}
.replay-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;color:var(--text-2);font-size:13px;font-weight:800}
.replay-pager div{display:flex;gap:8px}.replay-pager button{width:34px;height:34px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text-2);font-weight:800;cursor:pointer}.replay-pager button.active{background:var(--primary);color:#fff;border-color:var(--primary)}
.replay-overview{padding:20px;display:grid;gap:16px}
.replay-overview-head{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:16px}
.replay-kicker{display:block;color:var(--primary);font-size:12px;font-weight:900;margin-bottom:6px}.replay-overview h2{margin:0;color:var(--text);font-size:24px;line-height:1.1;font-weight:900}
.replay-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.replay-stats div{border:1px solid var(--line);border-radius:12px;background:var(--bg-soft);padding:14px}.replay-stats small{display:block;color:var(--muted);font-size:12px;font-weight:800;margin-bottom:8px}.replay-stats strong{display:block;color:var(--text);font-size:18px;font-weight:900}
.replay-insight-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);gap:16px;align-items:start}
.replay-chart-card,.replay-record-card{border:1px solid var(--line);border-radius:12px;background:var(--card);padding:16px;overflow:hidden}
.replay-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.replay-section-head h3{margin:0;color:var(--text);font-size:18px;font-weight:900}.replay-section-head span{color:var(--muted);font-size:12px;font-weight:800}
#replayTrendChart{display:block;width:100%;height:280px}.replay-legend{display:flex;gap:10px;flex-wrap:wrap;margin-top:8px}.replay-legend span{display:inline-flex;align-items:center;gap:6px;color:var(--text-2);font-size:12px;font-weight:800}.replay-legend i{width:10px;height:10px;border-radius:50%}
.replay-record-table{border:1px solid var(--line);border-radius:12px;overflow:hidden}.replay-record-row{display:grid;grid-template-columns:54px 102px 58px minmax(160px,1fr) 82px 76px;gap:8px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--bg-mute);color:var(--text);font-size:12px;font-weight:800}.replay-record-row:last-child{border-bottom:0}.replay-record-row.head{background:var(--bg-soft);color:var(--muted);font-size:12px;font-weight:900}
@media(max-width:1100px){.replay-layout{grid-template-columns:1fr}.replay-nav{position:static;grid-template-columns:repeat(4,minmax(0,1fr))}.replay-insight-grid{grid-template-columns:1fr}.replay-table-head,.replay-row{grid-template-columns:minmax(220px,1.4fr) 138px 90px 128px 114px;min-width:760px}.replay-list-card{overflow-x:auto}.replay-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.replay-head,.replay-overview-head{align-items:flex-start;flex-direction:column}.replay-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.replay-stats{grid-template-columns:1fr}.replay-record-table{overflow-x:auto}.replay-record-row{min-width:560px}}

/* v67 simplified replay */
.replay-page .replay-overview{display:none}
.replay-page .replay-list-card{overflow:hidden}
.replay-page .replay-row{display:grid;text-decoration:none}
.replay-page .replay-row strong{font-size:14px;font-weight:900;color:var(--text)}
.replay-page .replay-row:hover strong{color:var(--primary)}
.replay-page .replay-champion{gap:0}
.status.ended{background:var(--bg-mute);color:var(--text-2)}
.replay-detail-shell .watch-hero{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:22px}
.replay-detail-shell .watch-layout{grid-template-columns:372px minmax(0,1fr)}
.replay-detail-shell .watch-detail{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}
.replay-mini-chart-panel{min-height:236px}
#replayPlayerChart{display:block;width:100%;height:220px}
.replay-detail-page .watch-record-row .win{color:var(--success)}.replay-detail-page .watch-record-row .lose{color:var(--danger)}
@media(max-width:1100px){.replay-detail-shell .watch-layout{grid-template-columns:1fr}}

/* v68 glory dynamics */
.glory-feed-shell,.glory-detail-shell{max-width:1240px}
.glory-feed-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:22px;align-items:start}
.glory-feed-main{display:grid;gap:16px;min-width:0}.glory-feed-head{display:block}
.glory-feed-head h1{margin:0;color:var(--text);font-size:32px;line-height:1.08;font-weight:900}.glory-feed-head p{margin:10px 0 0;color:var(--text-2);font-size:14px;font-weight:700}
.glory-filter-bar{display:flex;align-items:center;justify-content:space-between;gap:12px}
.glory-search{height:38px;width:min(320px,100%);border:1px solid var(--line);border-radius:8px;background:var(--card);display:grid;grid-template-columns:minmax(0,1fr) 38px;align-items:center;padding:0 10px 0 12px;box-shadow:none;flex:0 0 auto}
.glory-search input{border:0;outline:0;background:transparent;color:var(--text);font-size:14px;font-weight:700}.glory-search span::before{content:"";display:block;width:18px;height:18px;border:3px solid var(--text-2);border-radius:50%;position:relative}.glory-search span::after{content:"";display:block;width:9px;height:3px;background:var(--text-2);transform:rotate(45deg);margin: -2px 0 0 16px;border-radius:4px}
.glory-tabs{display:flex;gap:12px;flex-wrap:wrap}.glory-tabs button{height:42px;border:1px solid var(--line);border-radius:12px;background:var(--card);color:var(--text-2);padding:0 22px;font-size:14px;font-weight:900;box-shadow:var(--shadow-sm);cursor:pointer}.glory-tabs button.active{background:var(--primary);border-color:var(--primary);color:#fff;box-shadow:0 14px 24px rgba(38,43,51,.18)}
.glory-feed-list{display:grid;gap:10px}.glory-feed-item{display:grid;grid-template-columns:174px minmax(0,1fr) 80px;gap:18px;align-items:center;border:1px solid var(--line);border-radius:16px;background:var(--card);padding:10px 18px 10px 10px;color:inherit;box-shadow:var(--shadow);transition:transform .15s,border-color .15s}.glory-feed-item:hover{transform:translateY(-2px);border-color:var(--primary-bright)}
.glory-thumb{height:120px;border-radius:12px;display:block;overflow:hidden;background:var(--navy-950);position:relative}.glory-thumb::before,.glory-detail-cover::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 35%,rgba(255,216,118,.5),transparent 24%),linear-gradient(135deg,var(--navy-950),var(--primary-deep))}.glory-thumb::after,.glory-detail-cover::after{position:absolute;inset:auto 18px 18px 18px;color:#fff;font-size:28px;font-weight:900;text-shadow:0 4px 18px rgba(0,0,0,.3)}
.glory-thumb.trophy::after,.glory-detail-cover.trophy::after{content:"冠军荣耀"}.glory-thumb.season::before,.glory-detail-cover.season::before{background:linear-gradient(135deg,var(--purple-deep),var(--primary))}.glory-thumb.season::after,.glory-detail-cover.season::after{content:"新赛季开启"}.glory-thumb.player::before,.glory-detail-cover.player::before{background:radial-gradient(circle at 28% 40%,var(--pink),transparent 24%),linear-gradient(135deg,var(--purple-deep),var(--purple))}.glory-thumb.player::after,.glory-detail-cover.player::after{content:"玩家高光"}.glory-thumb.profit::before,.glory-detail-cover.profit::before{background:linear-gradient(135deg,var(--navy-950),var(--success))}.glory-thumb.profit::after,.glory-detail-cover.profit::after{content:"+28,600 C"}.glory-thumb.recruit::before,.glory-detail-cover.recruit::before{background:linear-gradient(135deg,var(--navy-950),var(--danger))}.glory-thumb.recruit::after,.glory-detail-cover.recruit::after{content:"招募中"}.glory-thumb.system::before,.glory-detail-cover.system::before{background:linear-gradient(135deg,var(--navy-950),var(--text-2))}.glory-thumb.system::after,.glory-detail-cover.system::after{content:"系统公告"}
.glory-feed-item h2{margin:10px 0 7px;color:var(--text);font-size:18px;line-height:1.25;font-weight:900}.glory-feed-item p{margin:0;color:var(--text-2);font-size:13px;line-height:1.5;font-weight:700}.glory-feed-item strong{display:inline-flex;margin-top:10px;color:var(--primary);font-size:13px;font-weight:900}.glory-feed-item time{align-self:start;margin-top:14px;color:var(--muted);font-size:13px;font-weight:800;text-align:right}
.glory-badge{display:inline-flex;align-items:center;height:24px;border-radius:8px;background:var(--primary-tint);color:var(--primary);padding:0 8px;font-size:12px;font-weight:900}.glory-badge.event{background:var(--gold-tint);color:var(--gold-deep)}.glory-badge.player{background:var(--purple-tint);color:var(--purple)}.glory-badge.notice{background:var(--primary-tint);color:var(--primary)}.glory-badge.activity{background:var(--danger-tint);color:var(--danger)}
.glory-feed-pager{display:flex;justify-content:center;gap:8px;margin-top:4px}.glory-feed-pager button{width:34px;height:34px;border:1px solid var(--line);border-radius:8px;background:var(--card);color:var(--text-2);font-weight:800}.glory-feed-pager button.active{background:var(--primary);color:#fff;border-color:var(--primary)}
.glory-side{display:grid;gap:16px;position:sticky;top:92px}.glory-side-card{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);padding:18px;display:grid;gap:12px}.glory-side-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.glory-side-head h2{margin:0;color:var(--text);font-size:18px;font-weight:900}.glory-side-head a{color:var(--muted);font-size:13px;font-weight:800}
.glory-live-carousel{display:grid;gap:12px}
.glory-live-track{display:grid;gap:12px}
.glory-live-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}
.glory-live-dots{display:flex;align-items:center;justify-content:center;gap:8px;flex:1}
.glory-live-dots button{width:8px;height:8px;border:0;border-radius:999px;background:rgba(255,255,255,.16);padding:0;cursor:pointer}
.glory-live-dots button.active{width:22px;background:var(--gold)}
.glory-live-nav{width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:var(--bg-soft);color:var(--text);font-size:18px;font-weight:900;cursor:pointer}
.glory-live-nav:disabled{opacity:.34;cursor:not-allowed}
.glory-live-card{min-height:176px;border-radius:14px;padding:18px;display:grid;grid-template-columns:minmax(0,1.2fr) auto;gap:12px 18px;color:#fff;overflow:hidden;position:relative;background:var(--navy-950)}
.glory-live-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 48%,rgba(255,216,118,.45),transparent 28%),linear-gradient(135deg,var(--navy-950),var(--navy-950))}
.glory-live-card.purple::before{background:radial-gradient(circle at 82% 48%,rgba(138,92,246,.5),transparent 28%),linear-gradient(135deg,var(--navy-950),var(--purple-deep))}
.glory-live-card.violet::before{background:radial-gradient(circle at 82% 48%,rgba(168,123,255,.42),transparent 28%),linear-gradient(135deg,var(--navy-950),#2d2145)}
.glory-live-card.cyan::before{background:radial-gradient(circle at 82% 48%,rgba(90,210,255,.34),transparent 28%),linear-gradient(135deg,var(--navy-950),#17303f)}
.glory-live-card>*{position:relative;z-index:1}
.glory-live-card>span{grid-column:1/-1;display:flex;gap:8px;align-items:center;font-weight:900;font-size:15px}
.glory-live-card b{background:rgba(15,55,38,.92);color:#39d695;border-radius:999px;padding:0 12px;height:34px;display:inline-flex;align-items:center;font-size:12px}
.glory-live-card small{display:block;color:rgba(255,255,255,.66);font-size:12px;font-weight:800;margin-bottom:7px}
.glory-live-card strong{font-size:20px;line-height:1.08}
.glory-live-card em{color:var(--success-bright);font-style:normal;font-size:15px}
.glory-live-card .glory-live-metric.time{justify-self:end;text-align:right}
.glory-live-card .btn{grid-column:1/-1;width:100%;margin-top:2px}
.glory-live-card .btn.primary{background:var(--gold)!important;border-color:var(--gold)!important;color:var(--gold-ink)!important}
.glory-live-card .btn.primary:hover{background:var(--gold-strong)!important;border-color:var(--gold-strong)!important}
.glory-live-card .btn.secondary{background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.18)!important;color:#fff!important}
.glory-live-card .btn.secondary:hover{background:rgba(255,255,255,.14)!important;border-color:rgba(255,255,255,.3)!important}
.glory-upcoming-row{display:grid;grid-template-columns:68px minmax(0,1fr) 88px;gap:12px;align-items:center;border-top:1px solid var(--bg-mute);padding:12px 0;color:inherit}.glory-upcoming-row:first-of-type{border-top:0}.glory-upcoming-row>span{border:1px solid var(--line);border-radius:12px;background:var(--bg-soft);padding:10px;text-align:center}.glory-upcoming-row strong{display:block;color:var(--text);font-size:16px}.glory-upcoming-row small{display:block;color:var(--text-2);font-size:12px;font-weight:800;margin-top:4px}.glory-upcoming-row b{display:block;color:var(--text);font-size:14px}.glory-upcoming-row em{height:34px;border:1px solid var(--primary);border-radius:8px;color:var(--primary);display:grid;place-items:center;font-style:normal;font-size:13px;font-weight:900}
.glory-notice-mini{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;color:inherit}.glory-notice-mini>span{width:42px;height:42px;border-radius:50%;background:var(--primary-tint)}.glory-notice-mini b{display:block;color:var(--text);font-size:14px;line-height:1.35}.glory-notice-mini small{display:block;color:var(--text-2);font-size:12px;line-height:1.55;margin-top:5px}.glory-notice-mini time{display:block;color:var(--faint);font-size:12px;margin-top:5px}
.glory-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.glory-detail-article,.glory-detail-side .glory-side-card{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}.glory-detail-cover{height:260px;position:relative;background:var(--navy-950)}.glory-detail-cover::after{font-size:36px;left:28px;right:auto}.glory-detail-body{padding:28px}.glory-detail-body h1{margin:14px 0 10px;color:var(--text);font-size:32px;line-height:1.16;font-weight:900}.glory-detail-sub{margin:0;color:var(--text-2);font-size:16px;font-weight:700}.glory-detail-meta{display:flex;gap:14px;color:var(--muted);font-size:13px;font-weight:800;border-bottom:1px solid var(--bg-mute);padding:18px 0}.glory-detail-content{padding-top:18px}.glory-detail-content p{margin:0 0 14px;color:var(--text-2);font-size:14px;line-height:1.85}.glory-related-action{height:42px;border-radius:8px;background:var(--primary);color:#fff;display:grid;place-items:center;font-weight:900}.glory-related-action.secondary{background:var(--card);color:var(--primary);border:1px solid var(--line)}.glory-live-card.compact{min-height:112px}
@media(max-width:1100px){.glory-feed-layout,.glory-detail-layout{grid-template-columns:1fr}.glory-side{position:static}.glory-feed-item{grid-template-columns:136px minmax(0,1fr) 70px}.glory-thumb{height:96px}}
@media(max-width:720px){.glory-filter-bar{align-items:stretch;flex-direction:column}.glory-search{width:100%}.glory-feed-item{grid-template-columns:1fr}.glory-feed-item time{text-align:left;margin-top:0}.glory-thumb{height:150px}.glory-tabs button{flex:1;padding:0 12px}.glory-live-card,.glory-upcoming-row{grid-template-columns:1fr}.glory-live-card .glory-live-metric.time{justify-self:start;text-align:left}.glory-detail-body h1{font-size:28px}}

/* v69 event detail redesign */
.event-v3-shell{max-width:1240px}
.event-v3-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}
.event-v3-main,.event-v3-card{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}
.event-v3-hero{min-height:320px;background-image:linear-gradient(90deg,rgba(12,12,12,.95),rgba(12,12,12,.58) 44%,rgba(12,12,12,.16)),url('new-tournaments/card-bg-speed.png');background-size:cover;background-position:center;display:flex;align-items:center;padding:40px;color:#fff}
.event-v3-hero-copy{max-width:620px}.event-v3-duration{display:inline-flex;align-items:center;color:var(--primary-tint);font-size:14px;font-weight:800;margin-bottom:16px}
.event-v3-hero h1{margin:0;color:#fff;font-size:60px;line-height:.98;font-weight:900;text-shadow:0 8px 28px rgba(0,0,0,.34)}
.event-v3-hero p{margin:18px 0 18px;color:#fff;font-size:18px;line-height:1.45;font-weight:700}
.event-v3-feature-row{display:flex;gap:18px;flex-wrap:wrap;margin-bottom:24px}.event-v3-feature-row span{color:var(--primary-bright);font-size:13px;font-weight:800}
.event-v3-game-row{display:flex;gap:10px;flex-wrap:wrap}.event-v3-game-row span{height:38px;border:1px solid rgba(255,255,255,.28);border-radius:12px;background:rgba(255,255,255,.06);display:inline-flex;align-items:center;padding:0 16px;color:#fff;font-size:14px;font-weight:900}
.event-v3-section{padding:28px 28px 0}.event-v3-section:last-child{padding-bottom:30px}.event-v3-section h2{margin:0 0 14px;color:var(--text);font-size:20px;line-height:1.2;font-weight:900}.event-v3-section p{margin:0 0 14px;color:var(--text-2);font-size:14px;line-height:1.8;font-weight:600}
.event-v3-table{border:1px solid var(--line);border-radius:12px;overflow:hidden}.event-v3-table>div{display:grid;grid-template-columns:120px 1.1fr 1.1fr 1fr;align-items:center;border-bottom:1px solid var(--bg-mute)}.event-v3-table>div:last-child{border-bottom:0}.event-v3-table span{padding:13px 16px;border-right:1px solid var(--bg-mute);color:var(--text);font-size:14px;font-weight:700}.event-v3-table span:last-child{border-right:0}.event-v3-table .head{background:var(--bg-soft)}.event-v3-table .head span{color:var(--text-2);font-weight:900}.event-v3-table.reward>div{grid-template-columns:1fr 1.65fr 1.65fr}
.event-v3-tags{display:flex;gap:10px;flex-wrap:wrap}.event-v3-tags span{height:34px;border:1px solid var(--line);border-radius:999px;background:var(--bg-soft);color:var(--text-2);display:inline-flex;align-items:center;padding:0 18px;font-size:13px;font-weight:800}
.event-v3-note{display:block;margin-top:12px;color:var(--text-2);font-size:13px;font-weight:700}.event-v3-rules{margin:0;padding-left:20px;display:grid;gap:9px;color:var(--text);font-size:14px;line-height:1.65;font-weight:600}
.event-v3-side{display:grid;gap:16px;position:sticky;top:92px}.event-v3-card{padding:20px}.event-v3-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--bg-mute);padding-bottom:14px;margin-bottom:18px}.event-v3-card-head h2{margin:0;color:var(--text);font-size:18px;font-weight:900}.event-v3-card h3{margin:0 0 8px;color:var(--text);font-size:16px;font-weight:900}.event-v3-card p{margin:0 0 16px;color:var(--text-2);font-size:13px;font-weight:800}.event-v3-card p span{display:inline-flex;height:24px;border-radius:8px;background:var(--primary-tint);color:var(--primary);padding:0 8px;align-items:center;margin-right:6px}
.event-v3-countdown{margin:18px 0}.event-v3-countdown small,.event-v3-leader small{display:block;color:var(--muted);font-size:12px;font-weight:800;margin-bottom:8px}.event-v3-countdown .cd-units{display:flex;align-items:center;gap:6px}.event-v3-countdown .cd-unit{flex:1;background:var(--bg-soft);border:1px solid var(--line);border-radius:12px;padding:10px 0;text-align:center}.event-v3-countdown .cd-unit strong{display:block;color:var(--text);font-size:24px;line-height:1;font-weight:900;font-variant-numeric:tabular-nums}.event-v3-countdown .cd-unit span{display:block;margin-top:5px;color:var(--muted);font-size:12px;font-weight:700}.event-v3-countdown .cd-sep{color:var(--faint);font-size:18px;font-weight:900}
.event-v3-leader{margin:18px 0}.event-v3-leader div{display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center}.event-v3-leader img{width:38px;height:38px;border-radius:50%;object-fit:cover}.event-v3-leader b{color:var(--text);font-size:14px;font-weight:900}.event-v3-leader strong{color:var(--success);font-size:14px;font-weight:900}
.event-v3-card .btn{width:100%;margin-top:10px}.event-v3-meta-list{display:grid;gap:0;margin:16px 0;border:0}.event-v3-meta-list div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--bg-mute)}.event-v3-meta-list div:last-child{border-bottom:0}.event-v3-meta-list dt{color:var(--text-2);font-size:13px;font-weight:800}.event-v3-meta-list dd{margin:0;color:var(--text);font-size:13px;font-weight:900}
@media(max-width:980px){.event-v3-layout{grid-template-columns:1fr}.event-v3-side{position:static}.event-v3-hero h1{font-size:44px}.event-v3-table{overflow-x:auto}.event-v3-table>div{min-width:680px}}
@media(max-width:640px){.event-v3-hero{padding:28px 20px;min-height:280px}.event-v3-hero h1{font-size:36px}.event-v3-section{padding-left:18px;padding-right:18px}.event-v3-card{padding:18px}}

/* event-v3 per-event hero backgrounds & schedule table */
.event-v3-hero.hero-peak{background-image:linear-gradient(90deg,rgba(12,12,12,.95),rgba(12,12,12,.58) 44%,rgba(12,12,12,.16)),url('new-tournaments/card-bg-peak.png')}
.event-v3-hero.hero-supreme{background-image:linear-gradient(90deg,rgba(12,12,12,.95),rgba(12,12,12,.58) 44%,rgba(12,12,12,.16)),url('new-tournaments/card-bg-supreme.png')}
.event-v3-hero.hero-horizon{background-image:linear-gradient(90deg,rgba(12,12,12,.95),rgba(12,12,12,.58) 44%,rgba(12,12,12,.16)),url('new-tournaments/card-bg-horizon.png')}
.event-v3-table.schedule>div{grid-template-columns:150px 1.2fr 1.6fr}

/* v74 uploaded icon replacements + compact tournament/account fixes */
.nav-bell::before{
  width:20px;
  height:20px;
  background:var(--text-2);
  mask:url('icons/notification.svg') center/contain no-repeat;
  -webkit-mask:url('icons/notification.svg') center/contain no-repeat;
}
.nav-bell::after{display:none}
.wallet-flat-icon{
  width:20px;
  height:20px;
  border:0;
  border-radius:0;
  background:currentColor;
  mask:url('icons/wallet.svg') center/contain no-repeat;
  -webkit-mask:url('icons/wallet.svg') center/contain no-repeat;
}
.wallet-flat-icon::after{display:none}

.arena-layout-main .solo-card-main{padding:0}
.arena-layout-main .solo-card-art{min-height:118px;padding:20px 22px}
.solo-card-art h3{font-size:24px;margin-bottom:8px}
.solo-card-art p{font-size:11px;padding:5px 10px}
.solo-live-block{padding:18px 20px 16px;gap:10px}
.solo-state-pill{border-radius:10px;padding:5px 9px;font-size:12px}
.solo-title-row{gap:12px}
.solo-title-row h3{font-size:24px}
.solo-live-badge{height:24px;font-size:12px}
.solo-meta-row{gap:18px;font-size:12px}
.solo-meta-row span::before{
  width:16px;
  height:16px;
  flex-basis:16px;
  background-color:currentColor;
  border:0;
  border-radius:0;
  mask:center/contain no-repeat;
  -webkit-mask:center/contain no-repeat;
}
.solo-meta-row span:first-child::before{mask-image:url('icons/time.svg');-webkit-mask-image:url('icons/time.svg')}
.solo-meta-row span:first-child::after{display:none}
.solo-meta-row span:nth-child(2)::before{background:currentColor;mask-image:url('icons/person.svg');-webkit-mask-image:url('icons/person.svg')}
.solo-live-body{gap:12px}
.rank-card{min-height:58px;padding:9px}
.rank-card b{width:25px;height:25px;border-radius:8px}
.rank-card span{font-size:12px}
.rank-card strong{font-size:13px}
.solo-enter-btn{height:38px;min-width:108px;border-radius:12px;font-size:13px}
.solo-next-block{padding:11px 20px}

.arena-state-card.team .live-state{padding:16px 26px;column-gap:22px}
.team-live-title{gap:14px}
.team-live-title .status{height:28px;font-size:13px;padding:0 10px}
.team-live-title strong{font-size:22px;line-height:28px}
.team-live-title em{height:26px;font-size:12px}
.team-live-meta{gap:18px;font-size:13px}
.team-live-meta span::after{
  width:16px;
  height:16px;
  background-color:var(--text-2);
  mask:center/contain no-repeat;
  -webkit-mask:center/contain no-repeat;
}
.team-live-meta .time::after{mask-image:url('icons/time.svg');-webkit-mask-image:url('icons/time.svg')}
.team-live-meta .users::after{mask-image:url('icons/team.svg');-webkit-mask-image:url('icons/team.svg')}
.arena-state-card.team .live-state .btn{height:40px;border-radius:10px;font-size:13px}
.arena-state-card.team .team-top-list{gap:12px;margin-top:0}
.arena-state-card.team .team-top-list div{min-height:54px;padding:10px 14px}
.arena-state-card.team .signup-state{padding:20px 26px 24px;gap:12px}
.arena-state-card.team .signup-state>.team-create-btn{top:20px;right:26px;height:38px;border-radius:9px}
.arena-state-card.team .signup-state .match-top strong{font-size:22px}
.arena-state-card.team .signup-state>p.signup-meta-line{margin:-4px 0 0 34px;font-size:13px}
.team-recruit-tools{border-radius:12px;padding:8px}
.arena-state-card.team .team-lobby-filters.mini button,.team-search{height:38px}
.arena-state-card.team .team-room-mini div{min-height:84px;padding:13px 14px 38px}
.arena-state-card.team .team-room-mini span{font-size:14px}
.arena-state-card.team .team-room-mini b{font-size:12px}
.arena-state-card.team .team-room-mini div.locked::before{
  content:"";
  position:absolute;
  right:14px;
  top:14px;
  width:16px;
  height:16px;
  border:0;
  border-radius:0;
  opacity:.9;
  background:var(--navy-600);
  mask:url('icons/lock.svg') center/contain no-repeat;
  -webkit-mask:url('icons/lock.svg') center/contain no-repeat;
}
.arena-state-card.team .team-room-mini div.locked span::after{display:none}
.arena-state-card.team .team-room-mini div.locked,
.team-room.locked{opacity:1}
.team-room.locked::before{
  content:"";
  width:16px;
  height:16px;
  margin-right:8px;
  display:inline-block;
  background:var(--navy-600);
  mask:url('icons/lock.svg') center/contain no-repeat;
  -webkit-mask:url('icons/lock.svg') center/contain no-repeat;
}

.compact-events .mini-event-row{
  grid-template-columns:minmax(0,1fr) 170px 92px;
  min-height:74px;
  padding:12px 14px;
}
.compact-events .mini-event-main{
  display:grid;
  grid-template-columns:68px minmax(180px,1fr) auto;
  gap:10px;
  align-items:center;
  min-width:0;
}
.compact-events .mini-event-main strong{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  line-height:1.2;
}
.compact-events .mini-event-main small{font-size:12px}
.compact-events .status{white-space:nowrap}
.compact-events .mini-event-result{display:flex;justify-content:center;gap:18px;white-space:nowrap}
.account-two-col .compact-events .mini-event-row{
  grid-template-columns:minmax(0,1fr) auto;
  min-height:0;
}
.account-two-col .compact-events .mini-event-main{
  grid-template-columns:minmax(0,1fr) auto;
  min-width:0;
}
.account-two-col .compact-events .mini-event-result{
  grid-column:1/-1;
  grid-row:2;
  justify-content:flex-start;
}
.account-two-col .compact-events .mini-event-row .btn{
  grid-column:2;
  grid-row:1;
}

.help-sec .help-numbered p{
  display:block;
  position:relative;
  padding-left:30px!important;
  line-height:1.7;
}
.help-sec .help-numbered p::before{
  position:absolute;
  left:0;
  top:4px;
  width:22px;
  flex-basis:auto;
}
.help-sec .help-numbered p b{
  white-space:nowrap;
  word-break:keep-all;
}
.help-sec .data-table{overflow-x:auto}

@media(max-width:760px){
  .compact-events .mini-event-row{grid-template-columns:1fr}
  .compact-events .mini-event-main{grid-template-columns:68px minmax(0,1fr)}
  .compact-events .mini-event-main .status{grid-column:2}
  .compact-events .mini-event-result{justify-content:flex-start}
  .account-two-col .compact-events .mini-event-main{grid-template-columns:minmax(0,1fr)}
  .account-two-col .compact-events .mini-event-main .status{grid-column:auto;justify-self:start}
  .account-two-col .compact-events .mini-event-row .btn{grid-column:auto;grid-row:auto;justify-self:start}
}

/* v75 icon rendering fix + live label relocation */
.nav-bell::before{
  content:"";
  display:block;
  width:21px;
  height:21px;
  background:transparent url('icons/notification.svg') center/contain no-repeat;
  mask:none;
  -webkit-mask:none;
}
.wallet-flat-icon{
  display:inline-block;
  width:21px;
  height:21px;
  background:transparent url('icons/wallet.svg') center/contain no-repeat;
  mask:none;
  -webkit-mask:none;
}
.solo-status-row,.solo-live-badge,.team-live-title em{display:none!important}
.solo-title-row{align-items:center;gap:12px}
.solo-title-row .solo-state-pill{
  padding:5px 10px;
  border-radius:9px;
  font-size:12px;
  line-height:1;
}
.solo-title-row .solo-state-pill::before{width:7px;height:7px}
.solo-meta-row span::before{
  display:inline-block;
  background-color:transparent;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  mask:none;
  -webkit-mask:none;
}
.solo-meta-row span:first-child::before{background-image:url('icons/time.svg')}
.solo-meta-row span:nth-child(2)::before{background-image:url('icons/person.svg')}
.team-live-title .status{
  position:static;
  height:28px;
  border-radius:9px;
  padding:0 10px;
  font-size:13px;
}
.team-live-title .status::after{display:none}
.team-live-meta span::after{
  background-color:transparent;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
  mask:none;
  -webkit-mask:none;
}
.team-live-meta .time::after{background-image:url('icons/time.svg')}
.team-live-meta .users::after{background-image:url('icons/team.svg')}
.nav-bell::before{
  background-image:url('icons/notification.svg')!important;
  background-color:transparent!important;
  background-size:contain!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  mask:none!important;
  -webkit-mask:none!important;
}
.wallet-flat-icon{
  background-image:url('icons/wallet.svg')!important;
  background-color:transparent!important;
  background-size:contain!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  mask:none!important;
  -webkit-mask:none!important;
}
.solo-meta-row span:first-child::before,
.team-live-meta .time::after{
  background-image:url('icons/time.svg')!important;
  background-color:transparent!important;
  mask:none!important;
  -webkit-mask:none!important;
}
.solo-meta-row span:nth-child(2)::before{
  background-image:url('icons/users.svg')!important;
  background-color:transparent!important;
  background-size:contain!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  mask:none!important;
  -webkit-mask:none!important;
}
.team-live-meta .users::after{
  background-image:url('icons/team.svg')!important;
  background-color:transparent!important;
  mask:none!important;
  -webkit-mask:none!important;
}

/* v76 requested layout refinements */
.home-page .site-header{
  position:absolute;
  top:0;
  left:0;
  right:0;
  z-index:40;
  background:rgba(12,12,12,.28);
  border-bottom:1px solid rgba(255,255,255,.12);
  box-shadow:none;
  backdrop-filter:blur(18px);
}
.home-page .site-header .brand,
.home-page .site-header .main-nav a,
.home-page .site-header .account-name strong,
.home-page .site-header .account-name small,
.home-page .site-header .account-chevron{border-color:rgba(255,255,255,.8)}
.home-page .site-header .brand small,
.home-page .site-header .main-nav a{opacity:.78}
.home-page .site-header .nav-bell,
.home-page .site-header .nav-wallet,
.home-page .site-header .account-profile{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.18);
  color:#fff;
}
.home-page .announce{display:none}
.home-page .page-shell{max-width:none;padding:0 0 44px}
.home-page .hero-grid{
  position:relative;
  min-height:100vh;
  grid-template-columns:minmax(0,1.15fr) minmax(380px,470px);
  align-items:center;
  gap:24px;
  padding:118px max(22px,calc((100vw - 1240px)/2 + 22px)) 74px;
  background:
    linear-gradient(90deg,rgba(12,12,12,.92),rgba(12,12,12,.58) 47%,rgba(12,12,12,.82)),
    url('new-tournaments/card-bg-speed.png') center/cover no-repeat;
  overflow:hidden;
}
.home-page .hero-grid::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 72% 38%,rgba(38,43,51,.36),transparent 30%),linear-gradient(180deg,transparent 72%,var(--bg) 100%);
  pointer-events:none;
}
.home-page .hero-grid>*{position:relative;z-index:1}
.home-page .promo-card{
  min-height:520px;
  background:transparent;
  border:0;
  border-radius:0;
  box-shadow:none;
  padding:0;
}
.home-page .v44-slide-banner img{object-fit:contain;object-position:left center;filter:drop-shadow(0 24px 52px rgba(0,0,0,.28))}
.home-page .v44-slide:not(.v44-slide-banner){
  border:1px solid rgba(255,255,255,.18);
  border-radius:20px;
  background:rgba(12,12,12,.34);
  backdrop-filter:blur(12px);
}
.home-page .active-card{
  min-height:0;
  padding:18px;
  border-radius:18px;
  background:rgba(255,255,255,.13);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  box-shadow:0 24px 60px rgba(0,0,0,.22);
  backdrop-filter:blur(18px);
}
.home-page .active-card h2,
.home-page .active-card .issue{color:#fff}
.home-page .active-card .meta-row span,
.home-page .active-kpis .stat{
  background:rgba(255,255,255,.1);
  border-color:rgba(255,255,255,.16);
  color:rgba(255,255,255,.78);
}
.home-page .active-kpis .stat small{color:rgba(255,255,255,.62)}
.home-page .active-kpis .stat strong{color:#fff}
.home-page .right-carousel-ctrl{padding-top:10px}
@media(max-width:1100px){
  .home-page .hero-grid{grid-template-columns:1fr;min-height:auto;padding-top:104px}
  .home-page .promo-card{min-height:420px}
}

.solo-title-row h3{font-size:20px!important}
.team-live-title strong{font-size:20px!important;line-height:28px}
.solo-enter-btn{
  top:44px!important;
  height:36px;
  min-width:104px;
  border-radius:9px;
}
.solo-meta-row,
.team-live-meta,
.arena-state-card.team .signup-state>p.signup-meta-line{
  color:var(--text-2);
  font-weight:650;
  letter-spacing:0;
}
.solo-meta-row{font-size:12px}
.team-live-meta,.arena-state-card.team .signup-state>p.signup-meta-line{font-size:12px}
.solo-meta-row span::before,
.team-live-meta span::after{
  width:15px!important;
  height:15px!important;
  opacity:.72;
}
.nav-bell::before,.wallet-flat-icon{filter:none!important;opacity:1}
.arena-state-card.team .arena-state-head p{
  background:rgba(255,255,255,.14);
  border:1px solid rgba(255,255,255,.32);
  color:rgba(255,255,255,.9);
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  box-shadow:none;
  backdrop-filter:blur(6px);
}

.glory-feed-list{
  gap:0;
  padding:10px;
  background:var(--card);
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow:var(--shadow);
}
.glory-feed-item{
  border:0;
  border-radius:0;
  box-shadow:none;
  border-bottom:1px solid var(--line);
  padding:14px 10px;
}
.glory-feed-item:last-child{border-bottom:0}
.glory-feed-item:hover{
  transform:none;
  background:var(--bg-soft);
  border-color:var(--line);
}

.lb-season-head,
.lb-season-row{
  grid-template-columns:28px minmax(0,1fr) 96px;
  padding-left:0;
  padding-right:2px;
}
.lb-season-score{text-align:right;justify-self:end}
.lb-season-rank{text-align:left}

.help-numbered p,
.help-sec .help-numbered p{
  counter-increment:none!important;
  padding-left:0!important;
  display:block!important;
}
.help-numbered p::before,
.help-sec .help-numbered p::before{display:none!important}
.help-sec .rule-list p{
  padding:9px 0!important;
  background:transparent!important;
  border-radius:0!important;
}
.help-sec .rule-list.cols{gap:0}
.help-sec .rule-list.cols p{border-bottom:1px solid var(--bg-mute)}
.help-sec .rule-list.cols p:last-child{border-bottom:0}

.message-center-shell{max-width:1240px}
.message-center-title{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:16px;
  margin-bottom:18px;
}
.message-center-title h1{margin:0;color:var(--text);font-size:28px;line-height:1.1}
.message-center-title p{margin:8px 0 0;color:var(--text-2);font-size:13px;font-weight:700}
.message-center-layout{
  display:grid;
  grid-template-columns:340px minmax(0,1fr);
  gap:18px;
  align-items:start;
}
.message-inbox,.message-detail-panel{
  background:var(--card);
  border:1px solid var(--line);
  border-radius:16px;
  box-shadow:var(--shadow);
}
.message-inbox{padding:10px;display:grid;gap:6px}
.message-filter-row{display:flex;gap:6px;padding:4px 4px 8px}
.message-filter-row button{
  height:32px;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--card);
  color:var(--text-2);
  padding:0 10px;
  font-size:12px;
  font-weight:800;
}
.message-filter-row button.active{background:var(--primary);border-color:var(--primary);color:#fff}
.message-thread{
  width:100%;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:5px 10px;
  text-align:left;
  border:1px solid transparent;
  border-radius:10px;
  background:transparent;
  padding:12px;
  cursor:pointer;
}
.message-thread:hover,.message-thread.active{background:var(--primary-tint);border-color:var(--primary-bright)}
.message-thread span{grid-column:1;color:var(--primary);font-size:12px;font-weight:800}
.message-thread strong{grid-column:1;color:var(--text);font-size:14px;line-height:1.35}
.message-thread small{grid-column:2;grid-row:1 / span 2;color:var(--muted);font-size:12px;font-weight:700}
.message-thread.unread strong::after{
  content:"";
  display:inline-block;
  width:6px;
  height:6px;
  margin-left:6px;
  border-radius:999px;
  background:var(--danger);
  vertical-align:2px;
}
.message-detail-panel{min-height:460px;padding:26px}
.message-detail-tag{display:inline-flex;border-radius:8px;background:var(--primary-tint);color:var(--primary);padding:6px 10px;font-size:12px;font-weight:900}
.message-detail-panel h2{margin:16px 0 8px;color:var(--text);font-size:24px;line-height:1.2}
.message-detail-panel time{display:block;color:var(--muted);font-size:12px;font-weight:700;margin-bottom:20px}
.message-detail-panel p{margin:0 0 14px;color:var(--text-2);font-size:14px;line-height:1.75;font-weight:650}
.message-detail-actions{display:flex;gap:10px;margin-top:24px;flex-wrap:wrap}
@media(max-width:900px){
  .message-center-layout{grid-template-columns:1fr}
  .message-center-title{align-items:flex-start;flex-direction:column}
}

/* v77 home hero containment + dark chrome */
.home-page .site-header{
  position:sticky;
  top:0;
  background:rgba(12,12,12,.76);
  border-bottom-color:rgba(255,255,255,.16);
}
.home-page .site-header .main-nav a{
  color:rgba(255,255,255,.86);
  opacity:1;
}
.home-page .site-header .main-nav a.active,
.home-page .site-header .main-nav a:hover{
  background:rgba(255,255,255,.18);
  color:#fff;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);
}
.home-page .site-header .nav-bell,
.home-page .site-header .nav-wallet,
.home-page .site-header .account-profile{
  background:rgba(255,255,255,.16);
  border-color:rgba(255,255,255,.24);
}
.home-page .page-shell{
  max-width:none;
  padding:0 0 44px;
}
.home-page .page-shell>.section-block,
.home-page .page-shell>.news-showcase,
.home-page .page-shell>.value-showcase-section,
.home-page .page-shell>#partners{
  width:min(1240px,calc(100% - 44px));
  margin-left:auto;
  margin-right:auto;
}
.home-page .hero-grid{
  margin-top:-72px;
  padding-top:130px;
}
.home-page .home-flash-line{
  background:rgba(12,12,12,.96);
  border-color:rgba(255,255,255,.12);
  color:rgba(255,255,255,.82);
  box-shadow:0 -12px 28px rgba(12,12,12,.22);
}
.home-page .home-flash-line>span{
  background:rgba(244,182,63,.16);
  color:var(--gold-soft);
}
.home-page .home-flash-line .inline-player-link{color:#fff}
.home-page .home-flash-line .sep{color:rgba(255,255,255,.32)}
.site-footer{
  background:var(--ink-950);
  border-top-color:rgba(255,255,255,.12);
  color:var(--muted);
}
.site-footer .footer-brand strong,
.site-footer .footer-col h3,
.site-footer .responsible-card h3{color:#fff}
.site-footer .footer-brand p,
.site-footer .footer-col a,
.site-footer .responsible-card p{color:var(--muted)}
.site-footer .footer-bottom{color:var(--faint)}
.site-footer .footer-col a:hover{color:#fff}
.site-footer .responsible-card{
  background:var(--ink-900);
  border-color:var(--text-2);
}
.site-footer .footer-bottom{border-top-color:rgba(255,255,255,.1)}
@media(max-width:760px){
  .home-page .page-shell>.section-block,
  .home-page .page-shell>.news-showcase,
  .home-page .page-shell>.value-showcase-section,
  .home-page .page-shell>#partners{
    width:calc(100% - 28px);
  }
}

/* v78 focused visual fixes */
.home-page .announce{
  display:none;
}
.home-page .site-header .nav-bell::before,
.home-page .site-header .wallet-flat-icon{
  filter:brightness(0) invert(1)!important;
  opacity:.88!important;
}
.home-page .site-header .nav-wallet{
  color:#fff;
}
.home-page .hero-grid{
  background:
    linear-gradient(90deg,rgba(12,12,12,.78),rgba(12,12,12,.38) 48%,rgba(12,12,12,.6)),
    url('herobackground.png') center/cover no-repeat;
}
.home-page .hero-grid.hero-bg-2{
  background-image:
    linear-gradient(90deg,rgba(12,12,12,.78),rgba(12,12,12,.38) 48%,rgba(12,12,12,.6)),
    url('herobackground2.png');
}
.home-page .hero-grid::before{
  background:radial-gradient(circle at 72% 38%,rgba(38,43,51,.26),transparent 30%)!important;
}
.home-page .page-shell>.section-block,
.home-page .page-shell>.news-showcase,
.home-page .page-shell>.value-showcase-section,
.home-page .page-shell>.event-flow,
.home-page .page-shell>#partners{
  width:min(1180px,calc(100% - 56px));
  margin-left:auto;
  margin-right:auto;
}
.home-page .event-flow{
  padding:0;
  overflow:hidden;
}
.home-page .event-flow-steps{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  align-items:stretch;
  gap:10px;
}
.home-page .event-flow-step{
  min-height:128px;
  padding:14px 10px;
  border-right:1px solid var(--bg-mute);
}
.home-page .event-flow-step:last-child{
  border-right:0;
}
.home-page .event-flow-step::after,
.home-page .event-flow-arrow{
  display:none!important;
}
.home-page .event-flow-visual{
  width:132px;
  height:132px;
  border-radius:50%;
  background:var(--bg-soft);
  overflow:hidden;
}
.home-page .event-flow-visual img{
  display:block;
  width:100%;
  height:100%;
  max-width:none;
  object-fit:cover;
  border-radius:50%;
}
.home-page .event-flow-step h4{
  font-size:15px;
  line-height:1.2;
  white-space:nowrap;
}
.home-page .event-flow-step h4 span{
  font-size:17px;
}
.home-page .home-flash-line{
  overflow:hidden;
}
.home-page .home-flash-line::before,
.home-page .home-flash-line::after{
  content:none!important;
  display:none!important;
}

.solo-enter-btn{
  top:50px!important;
  height:38px;
  min-width:110px;
}

.help-sec .rule-list p,
.help-sec .help-numbered p{
  position:relative!important;
  display:block!important;
  padding:11px 0!important;
  padding-left:0!important;
  margin-left:0!important;
  text-indent:0!important;
  line-height:1.75!important;
  overflow:visible!important;
  background:transparent!important;
  border-radius:0!important;
}
.help-sec .rule-list p::before,
.help-sec .rule-list p:before,
.help-sec .rule-list p::after,
.help-sec .rule-list p:after,
.help-sec .help-numbered p::before,
.help-sec .help-numbered p:before,
.help-sec .help-numbered p::after,
.help-sec .help-numbered p:after{
  content:none!important;
  display:none!important;
}
.help-sec .rule-list p b,
.help-sec .help-numbered p b{
  position:static!important;
  display:inline!important;
  float:none!important;
  width:auto!important;
  min-width:0!important;
  height:auto!important;
  margin:0!important;
  padding:0!important;
  background:none!important;
  border:0!important;
  box-shadow:none!important;
  color:var(--text)!important;
  font:inherit!important;
  font-weight:800!important;
  line-height:inherit!important;
  white-space:nowrap!important;
  vertical-align:baseline!important;
}
.help-sec .rule-list p b::before,
.help-sec .rule-list p b:before,
.help-sec .rule-list p b::after,
.help-sec .rule-list p b:after,
.help-sec .help-numbered p b::before,
.help-sec .help-numbered p b:before,
.help-sec .help-numbered p b::after,
.help-sec .help-numbered p b:after{
  content:none!important;
  display:none!important;
}

@media(max-width:900px){
  .home-page .event-flow-steps{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .home-page .event-flow-step:nth-child(2n){
    border-right:0;
  }
}
@media(max-width:760px){
  .home-page .page-shell>.section-block,
  .home-page .page-shell>.news-showcase,
  .home-page .page-shell>.value-showcase-section,
  .home-page .page-shell>.event-flow,
  .home-page .page-shell>#partners{
    width:calc(100% - 28px);
  }
}

/* ===== home dark-header text contrast ===== */
.home-page .site-header .brand strong{color:#fff}
.home-page .site-header .brand small{color:rgba(255,255,255,.58)}
.home-page .site-header .account-name strong{color:#fff}
.home-page .site-header .account-name small{color:var(--gold-soft)}

/* ===== hero main slide (composed copy over herobackground.png) ===== */
.hero-main-slide{justify-content:center;align-items:flex-start}
.hero-main-copy{display:flex;flex-direction:column;align-items:flex-start;padding:0 46px}
.hero-main-copy .hero-kicker{color:var(--gold-soft);font-size:14px;font-weight:800;letter-spacing:2px}
.hero-main-copy h1{margin:14px 0 0;color:#fff;font-size:44px;line-height:1.16;font-weight:900;text-shadow:0 6px 24px rgba(0,0,0,.35)}
.hero-main-points{display:flex;align-items:center;gap:12px;margin-top:18px;color:rgba(255,255,255,.88);font-size:14px;font-weight:700}
.hero-main-points i{font-style:normal;font-weight:400;color:rgba(255,255,255,.32)}
.hero-main-cta{margin-top:26px;padding:0 28px}
@media(max-width:760px){.hero-main-copy{padding:0 22px}.hero-main-copy h1{font-size:32px}.hero-main-points{flex-wrap:wrap;gap:8px}}

/* ===== unified page titles (help-center baseline: 32/700 + 13px/400 muted) ===== */
.replay-title-row{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}
.account-title h1,.account-main>.account-title h1,.utility-main>.account-title h1,.message-center-title h1{font-size:32px;font-weight:700;color:var(--text);line-height:1.15}
.account-title p,.account-main>.account-title p,.utility-main>.account-title p,.message-center-title p{color:var(--muted);font-size:13px;font-weight:400}
@media(max-width:900px){.account-title h1,.account-main>.account-title h1,.utility-main>.account-title h1,.message-center-title h1{font-size:28px}}

/* ===== home hero: transparent slide card, larger copy, left-aligned controls ===== */
.home-page .promo-card{background:transparent;border:0;box-shadow:none;border-radius:0}
.home-page .hero-main-copy{padding:0}
.home-page .hero-main-copy .hero-kicker{font-size:18px;letter-spacing:3px}
.home-page .hero-main-copy h1{font-size:72px;line-height:1.08;text-shadow:0 10px 34px rgba(0,0,0,.45)}
.home-page .hero-main-points{font-size:18px;margin-top:24px}
.home-page .hero-main-cta{margin-top:38px;height:48px;font-size:16px;padding:0 38px}
.home-page .v44-carousel-ctrl{left:0;right:auto;bottom:0;justify-content:flex-start}
@media(max-width:900px){.home-page .hero-main-copy h1{font-size:44px}.home-page .hero-main-points{font-size:14px}}

/* ===== hero particles ===== */
.home-page .hero-grid>.hero-particles{position:absolute;inset:0;z-index:0;pointer-events:none;width:100%;height:100%}
/* ===== home wallet number: neutral & smaller ===== */
.home-page .site-header .nav-wallet{color:rgba(255,255,255,.88);font-size:13px}
/* ===== team recruit filters ===== */
.team-recruit-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.team-filter-select{height:34px;border:1px solid var(--line);border-radius:12px;background:var(--card);padding:0 10px;font-size:13px;font-weight:700;color:var(--text-2)}
.team-filter-switch{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--text-2);cursor:pointer;white-space:nowrap}
.team-filter-switch input{display:none}
.team-filter-switch i{width:34px;height:20px;border-radius:var(--r-full);background:var(--bg-mute);border:1px solid var(--line);position:relative;transition:background .15s,border-color .15s;flex:0 0 auto}
.team-filter-switch i::after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;border-radius:50%;background:var(--card);box-shadow:var(--shadow-sm);transition:transform .15s}
.team-filter-switch input:checked+i{background:var(--primary);border-color:var(--primary)}
.team-filter-switch input:checked+i::after{transform:translateX(14px)}
.team-count-icon{width:13px;height:13px;vertical-align:-2px;margin-right:5px;opacity:.65}

/* ===== team live row: issue info | compact top3 | watch button ===== */
.team-live-row{display:flex;align-items:center;gap:16px}
.team-live-row .match-top{flex:0 0 auto;min-width:150px}
.team-live-row .team-top3{flex:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;min-width:0}
.team-live-row .team-top3 .rank-card{min-height:54px;padding:8px 10px}
.team-live-row .team-watch-btn{flex:0 0 auto;width:auto;min-width:118px}
@media(max-width:1100px){.team-live-row{flex-wrap:wrap}.team-live-row .team-top3{order:3;flex-basis:100%}}

/* team-live-row overrides (beat legacy team .live-state .btn rules) */
.arena-state-card.team .live-state .team-live-row .btn{position:static;width:auto;min-width:118px;height:40px;padding:0 18px}
.arena-state-card.team .live-state .team-live-row .team-top3{flex:1 1 0;min-width:0}

/* ===== hero copy (static, mock-aligned) ===== */
.hero-main-copy h1 em{font-style:normal;color:var(--gold)}
.hero-divider{display:block;width:36px;height:3px;border-radius:2px;background:var(--gold);opacity:.75;margin:28px 0 22px}
.hero-sub{margin:0;color:rgba(255,255,255,.78);font-size:18px;line-height:1.75;font-weight:600}
.hero-cta-row{display:flex;gap:12px;margin-top:36px}
.hero-cta-row .btn{height:48px;font-size:16px;padding:0 30px}
.home-page .hero-cta-row .btn.secondary{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.3);color:#fff}
.home-page .hero-cta-row .btn.secondary:hover{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.45)}
/* ===== hero events panel (right tabs + big/small cards) ===== */
.home-page .hero-events-panel{position:relative;z-index:1;display:flex;flex-direction:column;gap:12px;min-width:0}
.hero-events-tabs{display:flex;gap:26px;border-bottom:1px solid rgba(255,255,255,.12);padding:0 4px}
.hero-events-tabs button{background:rgba(12,12,12,.22);border:1px solid transparent;color:rgba(255,255,255,.82);font-size:15px;font-weight:800;padding:8px 10px 10px;border-radius:12px 12px 0 0;cursor:pointer;display:inline-flex;align-items:center;gap:8px;position:relative;backdrop-filter:blur(6px)}
.hero-events-tabs button b{min-width:20px;height:20px;border-radius:var(--r-full);background:rgba(255,255,255,.18);color:#fff;font-size:12px;display:inline-flex;align-items:center;justify-content:center;padding:0 6px;font-weight:800}
.hero-events-tabs button.active{background:rgba(12,12,12,.48);border-color:rgba(255,255,255,.14);color:#fff}
.hero-events-tabs button.active::after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:2px;background:var(--gold);border-radius:2px}
.hero-events-body{display:flex;flex-direction:column;gap:4px}
.hero-big-card{background-color:rgba(10,10,10,.8);background-size:cover;background-position:center;border:1px solid rgba(255,255,255,.18);border-radius:20px;padding:20px;box-shadow:0 18px 38px rgba(0,0,0,.46)}
.hero-big-card.hb-art-speed{background-image:linear-gradient(90deg,rgba(8,8,8,.96),rgba(8,8,8,.82) 48%,rgba(8,8,8,.58)),url('new-tournaments/card-bg-speed.png')}
.hero-big-card.hb-art-peak{background-image:linear-gradient(90deg,rgba(8,8,8,.96),rgba(8,8,8,.82) 48%,rgba(8,8,8,.58)),url('new-tournaments/card-bg-peak.png')}
.hero-big-card.hb-art-horizon{background-image:linear-gradient(90deg,rgba(8,8,8,.96),rgba(8,8,8,.82) 48%,rgba(8,8,8,.58)),url('new-tournaments/card-bg-horizon.png')}
.hero-big-card.hb-art-supreme{background-image:linear-gradient(90deg,rgba(8,8,8,.96),rgba(8,8,8,.82) 48%,rgba(8,8,8,.58)),url('new-tournaments/card-bg-supreme.png')}
.hb-head{display:flex;justify-content:space-between;gap:14px;border-bottom:1px solid rgba(255,255,255,.12);padding-bottom:16px}
.hb-head h2{margin:0;color:#fff;font-size:28px;font-weight:900;line-height:1.1}
.hb-head p{margin:9px 0 0;color:rgba(255,255,255,.66);font-size:13px;font-weight:700}
.hb-head p i{font-style:normal;color:rgba(255,255,255,.3);margin:0 2px}
.hb-head p span{color:var(--primary-bright)}
.hero-join{display:inline-flex;align-items:center;gap:6px;height:16px;margin-left:8px;padding:0;border:0;font-style:normal;font-size:11px;font-weight:600;vertical-align:middle;background:none;letter-spacing:0}
.hero-join i{display:block;position:relative;flex:0 0 auto;width:12px;height:12px;border-radius:999px}
.hero-join span{line-height:1;color:inherit}
.hero-join.joined,
.hero-join.joined span{color:#e4c06a!important}
.hero-join.joined i{background:linear-gradient(180deg,#f7d36d 0%,#c88f1f 100%);box-shadow:0 0 0 1px rgba(244,182,63,.32),0 6px 16px rgba(244,182,63,.18)}
.hero-join.joined i::before{content:'';position:absolute;left:3px;top:2px;width:3px;height:5px;border-right:2px solid #201506;border-bottom:2px solid #201506;transform:rotate(40deg)}
.hero-join.not-joined{color:rgba(255,255,255,.5)}
.hero-join.not-joined i{background:rgba(255,255,255,.08);box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}
.hero-join.not-joined i::before{content:'';position:absolute;inset:2.5px;border-radius:999px;background:rgba(255,255,255,.28)}
.hb-cd-wrap{text-align:right;flex:0 0 auto}
.hb-cd-wrap small{display:block;color:rgba(255,255,255,.6);font-size:12px;font-weight:700;margin-bottom:6px}
.hb-cd{color:var(--gold-soft);font-size:28px;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:1px;line-height:1}
.hb-cd.txt{font-size:22px}
.hb-foot{display:flex;align-items:center;gap:22px;padding-top:16px}
.hb-stat small{display:block;color:rgba(255,255,255,.55);font-size:12px;font-weight:700;margin-bottom:6px}
.hb-stat strong{color:#fff;font-size:24px;font-weight:900;font-variant-numeric:tabular-nums;line-height:1}
.hb-stat strong.gold{color:var(--gold-soft)}
.hb-foot .btn{margin-left:auto;height:44px;padding:0 22px;flex:0 0 auto}
.hero-small-card{display:flex;align-items:center;gap:10px;background:rgba(10,10,10,.68);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:8px 14px;cursor:pointer;transition:border-color .15s,background .15s,box-shadow .15s;text-align:left;width:calc(100% - 22px);align-self:center;font:inherit;backdrop-filter:blur(8px)}
.hero-small-card:hover{border-color:rgba(255,255,255,.26);background:rgba(10,10,10,.82);box-shadow:0 10px 24px rgba(0,0,0,.3)}
.hs-title{color:var(--primary-soft);font-size:16px;font-weight:500;white-space:nowrap}
.hs-issue{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);color:#d8d8d8;font-size:12px;font-weight:600;border-radius:8px;padding:2px 8px;white-space:nowrap;flex:0 0 auto}
.hs-status{color:rgba(255,255,255,.72);font-size:13px;font-weight:500;white-space:nowrap}
.hero-small-card .hero-join{margin-left:0;flex:0 0 auto}
.solo-title-row .hero-join,
.team-live-title .hero-join{margin-left:0;flex:0 0 auto}
.team-live-title .hero-join{
  display:inline-flex!important;
  height:16px!important;
  padding:0!important;
  border:0!important;
  background:none!important;
  box-shadow:none!important;
  font-style:normal!important;
}
.hs-right{margin-left:auto;text-align:right;min-width:0}
.hs-right small{display:block;color:rgba(255,255,255,.64);font-size:12px;font-weight:500}
.hs-right strong{color:var(--gold-soft);font-size:16px;font-weight:700;font-variant-numeric:tabular-nums}
.hs-handle{width:14px;height:10px;border-top:2px solid rgba(255,255,255,.5);border-bottom:2px solid rgba(255,255,255,.5);flex:0 0 auto;margin-left:2px}
.hero-events-hint{margin:0 11px 0 0;text-align:right;color:rgba(255,255,255,.45);font-size:12px;font-weight:600}
@media(max-width:980px){.hb-head h2{font-size:22px}.hb-cd{font-size:22px}.hb-stat strong{font-size:20px}}

/* ===== hero panel: fixed height (prevents bg zoom on tab switch) + promote animation ===== */
.hero-events-body{min-height:496px}
.hero-big-card.enter{animation:hbEnter .32s cubic-bezier(.2,.7,.3,1) both}
@keyframes hbEnter{from{opacity:0;transform:translateY(14px) scale(.96)}to{opacity:1;transform:none}}
.hero-small-card.enter{animation:hsEnter .3s ease both}
@keyframes hsEnter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.hero-big-card.enter,.hero-small-card.enter{animation:none}}
/* ===== hero copy slides + controller ===== */
.hero-copy-slide{display:none!important}
.hero-main-copy.hero-copy-slide.active{display:flex!important;animation:v44fade .25s ease}
.home-page .hero-copy-card{position:relative;padding-bottom:64px}

/* v79 final hero artwork + HTML headline lockup */
.home-page .hero-grid,
.home-page .hero-grid.hero-bg-2{
  background:
    linear-gradient(90deg,rgba(12,12,12,.84) 0%,rgba(12,12,12,.55) 36%,rgba(12,12,12,.24) 64%,rgba(12,12,12,.42) 100%),
    url('herobackground.png') center/cover no-repeat!important;
}
.home-page .hero-grid::before{
  background:radial-gradient(circle at 33% 34%,rgba(244,182,63,.2),transparent 25%)!important;
}
.home-page .hero-copy-card{
  max-width:720px;
  min-height:560px;
  display:flex;
  align-items:center;
}
.home-page .hero-main-copy{
  width:100%;
}
.home-page .hero-main-copy .hero-kicker{
  display:flex;
  align-items:center;
  gap:14px;
  color:var(--gold-soft);
  font-size:18px;
  font-weight:700;
  letter-spacing:0;
  text-shadow:0 4px 18px rgba(0,0,0,.42);
}
.home-page .hero-main-copy .hero-kicker::before,
.home-page .hero-main-copy .hero-kicker::after{
  content:"";
  width:58px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold-soft));
  opacity:.72;
}
.home-page .hero-main-copy .hero-kicker::after{
  background:linear-gradient(90deg,var(--gold-soft),transparent);
}
.home-page .hero-main-copy h1{
  margin:24px 0 0;
  color:#f4f7fb;
  font-size:76px;
  line-height:1.02;
  font-weight:900;
  text-shadow:0 10px 34px rgba(0,0,0,.58);
}
.home-page .hero-main-copy h1 em{
  color:#f6d99a;
  text-shadow:0 4px 0 rgba(71,48,17,.36),0 12px 34px rgba(0,0,0,.48);
}
.hero-feature-row{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:0;
  width:min(620px,100%);
  margin-top:34px;
  color:#fff;
}
.hero-feature-row div{
  display:grid;
  justify-items:center;
  gap:6px;
  padding:0 18px;
  text-align:center;
  border-right:1px solid rgba(255,255,255,.22);
}
.hero-feature-row div:first-child{
  padding-left:0;
}
.hero-feature-row div:last-child{
  border-right:0;
  padding-right:0;
}
.hero-feature-row svg{
  width:34px;
  height:34px;
  fill:var(--gold-soft);
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.32));
}
.hero-feature-row strong{
  color:#fff;
  font-size:15px;
  line-height:1.2;
  font-weight:800;
}
.hero-feature-row span{
  color:rgba(255,255,255,.68);
  font-size:13px;
  line-height:1.2;
  font-weight:600;
}
.home-page .hero-cta-row{
  margin-top:38px;
}
.home-page .hero-cta-row .btn.primary{
  min-width:260px;
  height:58px;
  justify-content:center;
  border-radius:8px;
  background:linear-gradient(180deg,#4ab2ff,#1375e8);
  border:1px solid rgba(106,190,255,.72);
  box-shadow:0 18px 42px rgba(38,43,51,.36),inset 0 0 0 1px rgba(255,255,255,.2);
  color:#061333;
  font-size:20px;
  font-weight:900;
}
.home-page .hero-cta-row .btn.primary span{
  margin-left:22px;
  font-size:28px;
  line-height:1;
}
.home-page .v44-carousel-ctrl{
  bottom:8px;
}
@media(max-width:1100px){
  .home-page .hero-copy-card{min-height:460px}
  .home-page .hero-main-copy h1{font-size:56px}
  .hero-feature-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 0;width:min(420px,100%)}
  .hero-feature-row div:nth-child(2){border-right:0}
}
@media(max-width:640px){
  .home-page .hero-grid{
    overflow:hidden;
    padding-left:22px;
    padding-right:22px;
  }
  .home-page .hero-events-panel,
  .hero-events-body,
  .hero-big-card,
  .hero-small-card{
    width:100%;
    max-width:100%;
    box-sizing:border-box;
  }
  .hero-events-tabs{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:8px;
    padding:0;
  }
  .hero-events-tabs button{
    flex:1 1 0;
    justify-content:center;
    min-width:0;
    font-size:12px;
    padding:8px 6px 10px;
    white-space:nowrap;
  }
  .hero-events-tabs button b{
    min-width:18px;
    height:18px;
    font-size:11px;
    padding:0 5px;
  }
  .hero-big-card{
    padding:18px;
  }
  .hb-head{
    flex-direction:column;
    align-items:flex-start;
  }
  .hb-cd-wrap{
    width:100%;
    text-align:left;
  }
  .hb-foot{
    flex-direction:column;
    align-items:stretch;
    gap:14px;
  }
  .hb-foot .btn{
    width:100%;
    margin-left:0;
    height:42px;
    padding:0 18px;
  }
  .hero-small-card{
    width:100%;
    gap:8px;
    padding:8px 10px;
  }
  .hs-title{
    min-width:0;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .hs-issue{
    display:none;
  }
  .hs-status{
    font-size:12px;
  }
  .hero-small-card .hero-join span{
    display:none;
  }
  .hs-right{
    flex:0 0 auto;
  }
  .hs-handle{
    display:none;
  }
  .home-page .hero-main-copy .hero-kicker{font-size:14px}
  .home-page .hero-main-copy .hero-kicker::before,
  .home-page .hero-main-copy .hero-kicker::after{width:32px}
  .home-page .hero-main-copy h1{font-size:42px}
  .hero-feature-row{grid-template-columns:1fr 1fr;margin-top:28px}
  .hero-feature-row div{padding:0 12px}
  .hero-feature-row strong{font-size:14px}
  .home-page .hero-cta-row .btn.primary{min-width:220px;height:52px;font-size:18px}
}

/* v80 glory feed images + arena/profile polish */
.glory-thumb{
  background:#171717!important;
}
.glory-thumb img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
.glory-thumb::before,
.glory-thumb::after,
.glory-detail-cover::before,
.glory-detail-cover::after{
  content:none!important;
  display:none!important;
}
.glory-detail-cover{
  background-size:cover;
  background-position:center;
}
.glory-live-card b.glory-live-status{
  display:inline-flex;
  align-items:center;
  gap:6px;
  height:24px;
  border-radius:999px;
  padding:0 9px;
  background:var(--success-tint);
  color:var(--success);
  font-size:12px;
  font-weight:900;
}
.glory-live-card b.glory-live-status::before{
  content:"";
  width:7px;
  height:7px;
  border-radius:50%;
  background:var(--success-bright);
}
.glory-search{
  grid-template-columns:minmax(0,1fr) 30px;
  padding-right:8px;
}
.glory-search span{
  position:relative;
  width:18px;
  height:18px;
  justify-self:center;
}
.glory-search span::before{
  width:12px!important;
  height:12px!important;
  border-width:2px!important;
}
.glory-search span::after{
  width:7px!important;
  height:2px!important;
  margin:-1px 0 0 12px!important;
}
.team-search{
  grid-template-columns:minmax(0,1fr) 30px;
}
.team-search span{
  width:13px;
  height:13px;
  border-width:2px;
}
.team-search span::after{
  width:6px;
  right:-5px;
  bottom:-3px;
}

.rank-card span{
  display:flex;
  align-items:center;
  gap:6px;
}
.rank-card span .rank-text-chip{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  height:16px;
  margin:0;
  padding:2px 5px;
  border-radius:6px;
  background:var(--primary-tint);
  color:var(--primary);
  font-size:10px;
  line-height:1;
  font-weight:900;
}
.team-top3 .rank-card span .rank-text-chip{
  font-size:9px;
  padding-inline:4px;
}

.account-main .invite-banner{
  position:relative;
  grid-template-columns:minmax(0,1fr) auto auto;
  overflow:hidden;
  color:#fff;
  border-color:rgba(255,255,255,.16);
  background:
    linear-gradient(90deg,rgba(12,12,12,.94),rgba(12,12,12,.72) 52%,rgba(12,12,12,.4)),
    url('news/glory-dynamic-recruit.png') center/cover no-repeat;
}
.account-main .invite-banner::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at 10% 20%,rgba(244,182,63,.2),transparent 28%);
  pointer-events:none;
}
.account-main .invite-banner>*{
  position:relative;
  z-index:1;
}
.account-main .invite-banner h2,
.account-main .invite-banner p,
.account-main .invite-banner .invite-earn span,
.account-main .invite-banner .invite-earn small{
  color:inherit;
}
.account-main .invite-banner p,
.account-main .invite-banner .invite-earn span,
.account-main .invite-banner .invite-earn small{
  color:rgba(255,255,255,.76);
}
.account-main .invite-banner .invite-earn strong{
  color:var(--gold-soft);
}
.account-main .invite-banner .gift-block{
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:none;
}

/* v81 final header/hero polish */
.home-page .hero-cta-row .btn.primary{
  min-width:auto!important;
  height:48px!important;
  padding:0 30px!important;
  border-radius:12px!important;
  background:var(--primary)!important;
  border:1px solid var(--primary)!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:800!important;
  box-shadow:0 14px 30px rgba(38,43,51,.28)!important;
}
.home-page .hero-cta-row .btn.primary:hover{
  background:var(--primary-strong)!important;
  border-color:var(--primary-strong)!important;
}
.home-page .hero-cta-row .btn.primary span{
  margin-left:10px!important;
  font-size:18px!important;
  line-height:1!important;
}
body:not(.home-page) .site-header .nav-wallet,
body:not(.home-page) .site-header .nav-wallet strong{
  color:var(--primary)!important;
}
body:not(.home-page) .site-header .wallet-flat-icon{
  color:var(--primary)!important;
}

/* ==== 赛事大厅 hall layout revision (2026-07-06): horizontal tabs, constrained width, 赛事历史 panel ==== */
.arena-shell{max-width:1240px}
.arena-hall-shell .arena-tabs{grid-template-columns:repeat(4,1fr)}
.arena-hall-shell .arena-layout-main{margin-top:18px}
.history-sub-tabs{justify-content:flex-start;margin-bottom:16px}
@media(max-width:640px){.arena-hall-shell .arena-tabs-shell{overflow-x:auto}.arena-hall-shell .arena-tabs{min-width:560px}}

/* ==== on-dark primary buttons (2026-07-06): charcoal primary is invisible on navy panels — gold variant ==== */
.btn.gold{background:var(--gold);color:var(--gold-ink)}
.btn.gold:hover{background:var(--gold-strong)}
.home-page .hero-cta-row .btn.primary{background:var(--gold)!important;border-color:var(--gold)!important;color:var(--gold-ink)!important;box-shadow:0 14px 30px rgba(244,182,63,.28)!important}
.home-page .hero-cta-row .btn.primary:hover{background:var(--gold-strong)!important;border-color:var(--gold-strong)!important}
.hero-big-card .btn.primary{background:var(--gold)!important;border-color:var(--gold)!important;color:var(--gold-ink)!important}
.hero-big-card .btn.primary:hover{background:var(--gold-strong)!important;border-color:var(--gold-strong)!important}

/* ==== 我的赛事 focus + stream layout (2026-07-06): season strip, live focus card, unified list ==== */
.mine-season-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}
.mine-season-strip>div{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--card);box-shadow:var(--shadow-sm);padding:14px 16px}
.mine-season-strip small{display:block;color:var(--muted);font-size:12px;font-weight:800;margin-bottom:6px}
.mine-season-strip strong{font-size:22px;font-weight:800;color:var(--text)}
.mine-focus-card{display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid var(--primary-soft);border-radius:var(--r-xl);background:var(--bg-soft);box-shadow:var(--shadow);padding:20px 22px;margin-bottom:16px}
.mine-focus-main{min-width:0;flex:1}
.mine-focus-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.mine-focus-title h3{margin:0;font-size:22px;color:var(--text)}
.mine-focus-meta{color:var(--muted);font-size:13px;font-weight:800}
.mine-focus-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.mine-focus-stats>div{border:1px solid var(--line);border-radius:var(--r-md);background:var(--card);padding:10px 12px}
.mine-focus-stats small{display:block;color:var(--muted);font-size:12px;font-weight:800;margin-bottom:4px}
.mine-focus-stats strong{font-size:18px;font-weight:800;color:var(--text)}
.mine-focus-actions{display:grid;gap:10px;flex:0 0 auto}
.mine-stream-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0 12px}
.mine-stream-head-right{display:flex;align-items:center;gap:14px}
.mine-stream-count{color:var(--muted);font-size:12px;font-weight:800}
.mine-stream-card{background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}
.mine-stream-card .mini-event-list{gap:0}
.mine-stream-card .mini-event-row{background:transparent;border:0;border-bottom:1px solid var(--bg-mute);border-radius:0;padding:14px 18px}
.mine-stream-card .mini-event-row:last-child{border-bottom:0}
.mine-stream-tabs{justify-content:flex-start}
.mine-stream-list .mini-event-main{display:flex;gap:10px}
.mine-stream-list .mini-event-main strong{font-size:16px;min-width:0}
.account-mine-panel .mine-season-strip{margin-bottom:16px}
.account-mine-panel .mine-focus-card{box-shadow:none}
.account-mine-stream{margin-top:0}
@media(max-width:900px){.mine-season-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.mine-focus-card{flex-direction:column;align-items:stretch}.mine-focus-actions{grid-template-columns:1fr 1fr}}

/* ==== tab hierarchy normalization (2026-07-06): L1 segmented (arena/featured), L2 chips (all list filters) ==== */
.arena-tabs{border-radius:var(--r-lg)}
.arena-tabs button{border-radius:var(--r-md)}
.tabs button{height:34px;border-radius:8px;font-size:13px;padding:0 12px;color:var(--text-2)}
.tabs button.active{background:var(--primary-tint);border-color:var(--primary-bright);color:var(--primary)}
.glory-tabs{gap:8px}
.glory-tabs button{height:34px;border-radius:8px;padding:0 12px;font-size:13px;font-weight:800;box-shadow:none;color:var(--text-2)}
.glory-tabs button.active{background:var(--primary-tint);border-color:var(--primary-bright);color:var(--primary);box-shadow:none}

/* ==== side-nav normalization (2026-07-06): one vertical nav style, active matches L2 chip language ==== */
.account-side-nav,.utility-nav{border-radius:var(--r-lg)}
.account-side-nav a{height:42px;border-radius:8px;border:1px solid transparent;color:var(--text-2)}
.account-side-nav a:hover{background:var(--bg-soft);color:var(--text-2)}
.account-side-nav a.active{background:var(--primary-tint);border-color:var(--primary-bright);color:var(--primary)}
.help-side a{min-height:42px;border-radius:8px;border:1px solid transparent;padding:0 12px;color:var(--text-2);display:flex;align-items:center}
.help-side a:hover{background:var(--bg-soft);color:var(--text-2)}
.help-side a.active{background:var(--primary-tint);border-color:var(--primary-bright);color:var(--primary)}
.utility-nav a{min-height:42px;border-radius:8px;padding:0 12px;display:flex;align-items:center;color:var(--text-2)}
.utility-nav a:hover{background:var(--bg-soft);border-color:transparent;color:var(--text-2)}
.utility-nav a.active{background:var(--primary-tint);border-color:var(--primary-bright);color:var(--primary)}

/* ==== canonical L1 segmented tabs + leaderboard horizontal conversion (2026-07-06) ==== */
.featured-tabs{border-radius:var(--r-lg)}
.featured-tabs button{border-radius:var(--r-md)}
.seg-tabs{display:grid;gap:8px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--bg-soft);padding:6px}
.seg-tabs button{height:48px;border:1px solid transparent;border-radius:var(--r-md);background:transparent;color:var(--text-2);font-size:14px;font-weight:900;cursor:pointer}
.seg-tabs button:hover{color:var(--primary)}
.seg-tabs button.active{background:var(--card);border-color:var(--line-strong);color:var(--primary);box-shadow:var(--shadow-sm)}
.lb-v2-primary{display:flex;flex-direction:column;gap:16px;min-width:0}
.lb-v2-tabs{grid-template-columns:repeat(4,1fr);margin-bottom:0}
.lb-v2-layout{grid-template-columns:minmax(0,1fr) 340px}
@media(max-width:1180px){.lb-v2-layout{grid-template-columns:minmax(0,1fr)}}
@media(max-width:640px){.lb-v2-tabs{grid-template-columns:repeat(2,1fr)}}

/* ==== season indicator (2026-07-07): one canonical current-season label ==== */
.season-pill{display:inline-flex;flex-wrap:wrap;align-items:center;gap:2px 8px;min-height:28px;max-width:100%;padding:3px 12px 3px 4px;border:1px solid var(--line);border-radius:var(--r-full);background:var(--bg-soft);color:var(--text-2);font-size:12px;font-weight:800}
.season-pill b{display:inline-flex;align-items:center;height:20px;color:var(--gold-deep);background:var(--gold-tint);border-radius:var(--r-full);padding:0 8px;font-size:12px;font-weight:900}
.season-pill .season-dates{color:var(--muted);font-weight:700;white-space:nowrap}
.season-pill.on-dark{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.22);color:#fff}
.season-pill.on-dark .season-dates{color:rgba(255,255,255,.65)}
.season-strip-line{margin-bottom:12px}
.lb-v2-season-head .season-pill{margin-top:10px}
.hero-season-line{margin:10px 0 2px}

/* ==== settings page sidebar (2026-07-07): same anchor side-nav pattern as help centre ==== */
.settings-page .utility-standalone.settings-standalone{width:100%;max-width:none}
.settings-layout .settings-clean,.settings-layout .settings-save{max-width:none}
.settings-clean-section{scroll-margin-top:96px}
@media(max-width:1100px){.settings-layout{grid-template-columns:1fr}.settings-layout .help-side{position:static;display:flex;flex-wrap:wrap;gap:6px}.settings-layout .help-side a{flex:1 1 auto;text-align:center;justify-content:center}}

/* ==== season promo banner (2026-07-07): persistent S1 urgency strip on home + arena ==== */
.season-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:var(--gold-tint);border:1px solid var(--gold-soft);border-radius:var(--r-lg);padding:12px 18px;margin-bottom:16px}
.season-banner-main{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0}
.season-banner-tag{display:inline-flex;align-items:center;height:24px;padding:0 10px;border-radius:var(--r-full);background:var(--gold);color:var(--gold-ink);font-size:12px;font-weight:900}
.season-banner-main strong{font-size:16px;font-weight:800;color:var(--gold-ink)}
.season-banner-dates{font-size:13px;font-weight:700;color:var(--gold-deep)}
.season-banner-count{display:flex;align-items:center;gap:12px}
.season-banner-progress{width:140px;height:8px;border-radius:var(--r-full);background:rgba(255,255,255,.85);overflow:hidden;border:1px solid var(--gold-soft)}
.season-banner-progress i{display:block;height:100%;background:var(--gold);border-radius:var(--r-full)}
.season-banner-count>strong{font-size:13px;font-weight:800;color:var(--gold-deep);white-space:nowrap}
.season-banner-count>strong b{font-size:22px;font-weight:900;color:var(--gold-ink);margin:0 2px}
.season-banner-shell{max-width:1240px;margin:18px auto 0;padding:0 22px}
.season-banner.on-dark{background:rgba(255,255,255,.06);border-color:rgba(244,182,63,.38);margin-bottom:0}
.season-banner.on-dark .season-banner-main strong{color:var(--gold-soft)}
.season-banner.on-dark .season-banner-dates{color:rgba(255,255,255,.66)}
.season-banner.on-dark .season-banner-count>strong{color:rgba(255,255,255,.75)}
.season-banner.on-dark .season-banner-count>strong b{color:var(--gold)}
.season-banner.on-dark .season-banner-progress{background:rgba(255,255,255,.14);border-color:rgba(244,182,63,.3)}
@media(max-width:720px){.season-banner{flex-direction:column;align-items:flex-start}}

/* ==== help-centre rank ladder (2026-07-07): one 7-step progression strip, no orphan wrap ==== */
.rank-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:12px}
.rank-grid .rank-tier{position:relative;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:16px 8px;margin:0}
.rank-grid .rank-tier span{margin-top:0;white-space:nowrap}
.rank-grid .rank-tier:not(:last-child)::after{content:"›";position:absolute;right:-11px;top:50%;transform:translateY(-50%);color:var(--faint);font-size:14px;font-weight:900}
.rank-grid .rank-tier:last-child{background:var(--gold-tint);border-color:var(--gold-soft)}
.rank-grid .rank-tier:last-child strong{background:var(--gold);color:var(--gold-ink)}
@media(max-width:1100px){.rank-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.rank-grid .rank-tier::after{display:none}}
@media(max-width:640px){.rank-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ==== solo card mid-width polish (2026-07-07): horizontal podium rows when cards stretch ==== */
@media(min-width:641px) and (max-width:980px){
  .solo-podium .rank-card{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"medal name score";min-height:58px}
  .solo-podium .rank-card strong{grid-area:score;justify-self:end;padding-right:4px}
}

/* ==== rule-list.cols label fix (2026-07-07): text-term variant must not inherit the numbered-circle b style ==== */
.rule-list.cols p{display:block}
.rule-list.cols b{width:auto;height:auto;border-radius:0;background:transparent;color:var(--text);display:inline;font-weight:800;margin-right:2px}

/* ==== settings page: match help-centre layout, no outer frame (2026-07-07) ==== */
.settings-page .utility-main{background:transparent;border:0;border-radius:0;padding:0}
.settings-page .settings-clean-section{box-shadow:var(--shadow)}

/* ==== settings decor: badge showcase slots (2026-07-07) ==== */
.badge-shelf{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.badge-slot{display:inline-flex;align-items:center;height:28px;padding:0 10px;border-radius:var(--r-sm);background:var(--gold-tint);color:var(--gold-deep);font-size:12px;font-weight:800;border:1px solid var(--gold-soft)}
.badge-slot.empty{background:var(--bg-soft);color:var(--faint);border:1px dashed var(--line-strong);min-width:28px;justify-content:center}
.badge-slot[data-achievement]{position:relative;display:grid;place-items:center;width:28px;height:28px;min-width:28px;padding:0;border-radius:50%;font-size:0;line-height:0;color:transparent;overflow:visible;cursor:default}
.badge-slot[data-achievement]::before{content:attr(data-achievement-icon);display:grid;place-items:center;width:100%;height:100%;border-radius:inherit;color:var(--achievement-ink,#0f4250);font-size:11px;font-weight:900;line-height:1;box-shadow:inset 0 1px 0 rgba(255,255,255,.86),inset 0 0 0 5px rgba(255,255,255,.34)}
.badge-slot[data-achievement]::after{content:attr(data-achievement);position:absolute;left:50%;bottom:calc(100% + 7px);z-index:12;transform:translateX(-50%) translateY(4px);height:24px;padding:0 8px;border-radius:var(--r-sm);background:var(--text);color:#fff;font-size:11px;font-weight:800;line-height:24px;white-space:nowrap;box-shadow:var(--shadow-sm);opacity:0;pointer-events:none;transition:opacity .16s,transform .16s}
.badge-slot[data-achievement]:hover::after,
.badge-slot[data-achievement]:focus-visible::after{opacity:1;transform:translateX(-50%) translateY(0)}
.badge-slot[data-achievement-type="streak"]{--achievement-ink:#0e4c4e;background:linear-gradient(180deg,#e8fff8 0%,#8fe6d2 100%);border-color:rgba(18,147,128,.36);box-shadow:0 8px 16px rgba(18,147,128,.14)}
.badge-slot[data-achievement-type="first-crown"]{--achievement-ink:#1a3d78;background:linear-gradient(180deg,#f3f8ff 0%,#bdd3f5 100%);border-color:rgba(73,111,177,.34);box-shadow:0 8px 16px rgba(73,111,177,.13)}

/* ==== decor live preview, Discord-style (2026-07-07): controls left, profile-header preview right ==== */
.decor-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;align-items:stretch}
.decor-controls{min-width:0}
.decor-preview{border-left:1px solid var(--line);padding:18px;display:flex;flex-direction:column;gap:10px;background:var(--bg-soft)}
.decor-preview-label{font-size:12px;font-weight:800;color:var(--muted)}
.decor-preview-card{border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--card);box-shadow:var(--shadow-sm)}
.decor-cover{height:88px;transition:background .25s}
.cover-speed{background:linear-gradient(120deg,var(--navy-950),var(--navy-600))}
.cover-peak{background:linear-gradient(120deg,var(--primary-soft),var(--bg-mute))}
.cover-horizon{background:linear-gradient(120deg,var(--purple-deep),var(--purple))}
.cover-plain{background:var(--bg-soft);border-bottom:1px solid var(--line)}
.decor-preview-body{padding:0 16px 16px}
.decor-ava-frame{width:72px;height:72px;border-radius:50%;padding:4px;margin-top:-36px;position:relative;box-shadow:var(--shadow-sm)}
.decor-ava-frame img{width:100%;height:100%;border-radius:50%;object-fit:cover;display:block;border:2px solid #fff}
.frame-supreme{background:linear-gradient(135deg,var(--gold-soft),var(--gold-strong))}
.frame-strategist{background:linear-gradient(135deg,var(--primary-soft),var(--primary-bright))}
.frame-speed{background:linear-gradient(135deg,var(--navy-600),var(--success-bright))}
.decor-id{display:flex;align-items:center;gap:8px;margin-top:10px;flex-wrap:wrap}
.decor-id strong{font-size:18px;font-weight:900;color:var(--text)}
.decor-title-pill{display:inline-flex;align-items:center;height:22px;padding:0 9px;border-radius:var(--r-full);background:var(--gold-tint);color:var(--gold-deep);font-size:12px;font-weight:800}
.decor-badges{display:flex;gap:6px;margin-top:10px}
@media(max-width:1100px){.decor-layout{grid-template-columns:1fr}.decor-preview{border-left:0;border-top:1px solid var(--line)}}

/* ==== profile widget editor popup (2026-07-07): display decor moved from settings ==== */
.profile-widget-popup-card{width:min(980px,calc(100vw - 32px));max-width:980px!important;max-height:calc(100vh - 40px);overflow:auto;padding:24px!important}
.profile-widget-editor{margin-top:14px;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--card)}
.profile-widget-editor .settings-clean-row{grid-template-columns:minmax(180px,.8fr) minmax(220px,1fr);border-bottom:1px solid var(--line);padding:16px 18px}
.profile-widget-editor .settings-clean-row:last-child{border-bottom:0}
.profile-widget-editor .decor-preview{background:var(--bg-soft)}
.profile-widget-popup-card .popup-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}
@media(max-width:720px){.profile-widget-popup-card{width:calc(100vw - 24px);max-height:calc(100vh - 24px)}.profile-widget-editor .settings-clean-row{grid-template-columns:1fr}.profile-widget-popup-card .popup-actions{display:grid;grid-template-columns:1fr 1fr}}

/* ==== team ID display (2026-07-07): system-assigned, replaces custom team names ==== */
.recruit-team-id,.tb-team-id{display:inline-flex;align-items:center;height:30px;padding:0 10px;border-radius:var(--r-sm);background:var(--primary-tint);color:var(--primary);font-weight:900;letter-spacing:.04em}
.recruit-id-line{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}
.recruit-copy-btn{height:30px;padding:0 10px;border-radius:var(--r-sm);border:1px solid var(--line-strong);background:var(--card);color:var(--text);font-size:12px;font-weight:900;cursor:pointer}
.recruit-copy-btn:hover{background:var(--bg-mute);border-color:var(--line-strong)}
.recruit-id-note,.tb-id-note{display:block;margin-top:6px;color:var(--faint);font-size:12px;font-weight:700}

/* ==== watch page anti-clip (2026-07-07): rigid header pieces must wrap/shrink, never crop ==== */
.watch-detail{min-width:0}
.watch-detail>*{min-width:0}
.watch-player-head>*{min-width:0}
.watch-time-tabs{flex-wrap:wrap;justify-content:flex-end;row-gap:6px}
.watch-detail.records-expanded .watch-player-stats{flex-wrap:wrap;row-gap:10px}
.watch-detail canvas,.watch-trend-card canvas{max-width:100%;height:auto}

/* ==== profile achievement display strip (2026-07-07): compact top-right badges only ==== */
.profile-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:24px}
.achievement-display-panel{align-self:center;justify-self:end;margin:0}
.achievement-display-head{display:none}
.achievement-badge-row{display:grid;grid-template-columns:repeat(6,34px);gap:8px}
.achievement-badge{position:relative;display:grid;place-items:center;aspect-ratio:1;border-radius:50%;background:linear-gradient(180deg,#fff7e6 0%,#f8d891 100%);border:1px solid var(--gold-soft);box-shadow:inset 0 1px 0 rgba(255,255,255,.9),inset 0 0 0 5px rgba(255,255,255,.34),inset 0 0 0 6px rgba(168,105,0,.18),0 8px 18px rgba(168,105,0,.12);color:var(--gold-deep);overflow:visible;cursor:default}
.achievement-badge::before{content:attr(data-tooltip);position:absolute;left:50%;bottom:calc(100% + 8px);z-index:8;transform:translateX(-50%) translateY(4px);height:26px;padding:0 9px;border-radius:var(--r-sm);background:var(--text);color:#fff;font-size:11px;font-weight:800;line-height:26px;white-space:nowrap;box-shadow:var(--shadow-sm);opacity:0;pointer-events:none;transition:opacity .16s,transform .16s}
.achievement-badge::after{content:"";position:absolute;left:50%;bottom:calc(100% + 3px);z-index:8;transform:translateX(-50%) translateY(4px);border:5px solid transparent;border-top-color:var(--text);opacity:0;pointer-events:none;transition:opacity .16s,transform .16s}
.achievement-badge:hover::before,
.achievement-badge:focus-visible::before,
.achievement-badge:hover::after,
.achievement-badge:focus-visible::after{opacity:1;transform:translateX(-50%) translateY(0)}
.achievement-badge b{position:relative;z-index:1;font-size:12px;font-weight:900;line-height:1}
.achievement-badge.badge-crown b,.achievement-badge.badge-rank b{font-size:12px}
.achievement-badge.badge-veteran b,.achievement-badge.badge-club b{font-size:9px;letter-spacing:-.02em}
.achievement-badge.badge-win{background:linear-gradient(180deg,#fff7e6 0%,#f8d891 100%)}
.achievement-badge.badge-crown{background:linear-gradient(180deg,#fff4d1 0%,#f4b63f 100%)}
.achievement-badge.badge-rank{background:linear-gradient(180deg,#fff9ea 0%,#e8c56f 100%)}
.achievement-badge.badge-veteran{background:linear-gradient(180deg,var(--bg-soft) 0%,#dce8f7 100%);color:var(--text-2);border-color:var(--line-strong)}
.achievement-badge.badge-season{background:linear-gradient(180deg,#fff7e6 0%,#ffd58a 100%)}
.achievement-badge.badge-club{background:linear-gradient(180deg,var(--bg-soft) 0%,#dfe9f4 100%);color:var(--primary);border-color:var(--primary-soft)}
.achievement-display-panel p{display:none}
@media(max-width:1180px){.profile-title-row{grid-template-columns:1fr}.achievement-display-panel{justify-self:start}.achievement-badge-row{grid-template-columns:repeat(6,34px);justify-content:start}}
@media(max-width:560px){.achievement-badge-row{grid-template-columns:repeat(6,30px);gap:6px}.achievement-badge b{font-size:11px}.achievement-badge.badge-veteran b,.achievement-badge.badge-club b{font-size:8px}}

/* ==== my glory merged achievements (2026-07-07): one page for rank, decor, and badges ==== */
.glory-title-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:20px}
.glory-title-display{justify-self:end;display:grid;grid-template-columns:auto auto auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--card);box-shadow:var(--shadow-sm)}
.glory-title-label{color:var(--muted);font-size:12px;font-weight:900}
.glory-current-rank{min-height:28px;padding:0 12px;font-size:13px}
.glory-title-badges{display:flex;align-items:center;gap:6px}
.glory-title-badges .achievement-badge{width:30px;height:30px;min-width:30px}
.glory-hero-card{grid-template-columns:minmax(0,1.35fr) minmax(260px,.75fr);background:var(--card);color:var(--text);gap:18px;padding:18px}
.glory-rank-emblem{display:none}
.glory-score-block{padding:6px 4px}
.glory-score-block>span,.glory-rank-side b{color:var(--muted);font-size:12px;font-weight:900}
.glory-score-block strong{display:block;margin:8px 0 6px;font-size:42px;line-height:1;color:var(--text)}
.glory-score-block p{margin:8px 0 0;color:var(--muted);font-weight:800}
.glory-rank-side{display:grid;grid-template-columns:1fr;gap:10px}
.glory-rank-side hr{display:none}
.glory-rank-side strong{display:block;margin:4px 0 2px;font-size:22px;line-height:1.05;color:var(--text)}
.glory-rank-side span{display:block;color:var(--muted);font-size:12px;font-weight:800}
.glory-rank-side b:nth-of-type(1),
.glory-rank-side b:nth-of-type(2){padding-top:14px;border-top:1px solid var(--line)}
.glory-rank-side b:nth-of-type(1){padding-top:0;border-top:0}
.glory-collection-panel{scroll-margin-top:96px}
.collection-head{align-items:center;margin-bottom:14px}
.collection-head>div{display:grid;gap:4px}
.collection-head span{color:var(--muted);font-size:13px;font-weight:800}
.collection-overview{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(180px,240px);gap:16px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(135deg,var(--card) 0%,var(--bg-soft) 100%)}
.collection-emblem{display:grid;place-items:center;width:68px;height:68px;border-radius:18px;background:var(--card);border:1px solid var(--gold-soft);box-shadow:var(--shadow-sm)}
.collection-emblem img{width:50px;height:50px;object-fit:contain;display:block}
.collection-copy span{display:block;color:var(--muted);font-size:12px;font-weight:900}
.collection-copy strong{display:block;margin-top:4px;font-size:24px;line-height:1.1;color:var(--text)}
.collection-copy p{margin:6px 0 0;color:var(--muted);font-weight:800}
.collection-meter b{display:block;margin-bottom:8px;font-size:26px;line-height:1;color:var(--text)}
.collection-meter i{display:block;height:8px;border-radius:var(--r-full);background:var(--bg-mute);overflow:hidden}
.collection-meter em{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--gold),var(--gold-strong))}
.collection-meter small{display:block;margin-top:8px;color:var(--muted);font-size:11px;font-weight:800}
.collection-layout{display:grid;grid-template-columns:1fr;gap:14px;margin-top:14px}
.collection-block{min-width:0;padding:14px;border:1px solid var(--line);border-radius:var(--r-lg);background:var(--card)}
.collection-block-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:12px}
.collection-block-head h3{margin:0;font-size:18px}
.collection-block-head span{color:var(--muted);font-size:12px;font-weight:800}
.collection-item-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.collection-item{display:grid;grid-template-columns:58px minmax(0,1fr);gap:10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-soft)}
.collection-item img{width:58px;height:46px;border-radius:12px;object-fit:cover;background:var(--card);border:1px solid rgba(210,222,238,.7)}
.collection-item.portrait img{border-radius:50%;object-fit:cover}
.collection-item.frame img{object-fit:contain;padding:6px}
.collection-item b,.achievement-medal b{display:block;color:var(--text);font-size:14px;line-height:1.2}
.collection-item span,.achievement-medal span{display:block;margin-top:4px;color:var(--muted);font-size:12px;font-weight:800}
.achievement-medal-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.achievement-medal{display:grid;grid-template-columns:34px minmax(0,1fr);grid-template-areas:"icon text" "icon status";gap:2px 10px;align-items:center;padding:10px;border:1px solid var(--line);border-radius:var(--r-md);background:var(--bg-soft)}
.achievement-medal .achievement-badge{width:34px;height:34px;min-width:34px}
.achievement-medal .achievement-badge{grid-area:icon}
.achievement-medal>div{grid-area:text;min-width:0}
.achievement-medal em{grid-area:status;justify-self:start;font-style:normal;color:var(--success);font-size:11px;font-weight:900}
.achievement-medal.locked{opacity:.58}
.achievement-medal.locked em{color:var(--muted)}
@media(max-width:1100px){.glory-title-row,.glory-hero-card,.collection-overview,.collection-layout{grid-template-columns:1fr}.glory-title-display{justify-self:start}.glory-rank-side{grid-template-columns:repeat(2,minmax(0,1fr))}.glory-rank-side b:nth-of-type(2){padding-top:0;border-top:0}.collection-item-grid,.achievement-medal-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.glory-title-display{grid-template-columns:1fr;justify-items:start}.collection-item-grid,.achievement-medal-list{grid-template-columns:1fr}.achievement-medal{grid-template-columns:32px minmax(0,1fr)}.achievement-medal em{grid-column:2}.glory-rank-side{grid-template-columns:1fr}.collection-overview{gap:12px}.collection-emblem{width:68px;height:68px}.collection-emblem img{width:50px;height:50px}}

/* ==== sticky footer (2026-07-07): footer pinned to viewport bottom on short pages ==== */
body:has(> .site-footer){min-height:100vh;display:flex;flex-direction:column}
body:has(> .site-footer) > main{flex:1 0 auto}
body > .site-footer{flex-shrink:0}
.page-shell{width:100%}

/* ==== rank tags (2026-07-07): unified readable tier label with restrained text gradient ==== */
[data-profile-widget-title],
.rank-text-chip,
.account-name small,
.decor-title-pill,
.ps-tier span,
#publicTier,
.rank-road .current span,
.glory-current-rank,
.glory-rank-emblem h2,
.sq-name-rank{
  position:relative;
  isolation:isolate;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  padding:0 10px;
  border:0;
  border-radius:var(--r-full);
  color:#5f3700!important;
  background-image:none;
  -webkit-text-fill-color:#5f3700;
  text-shadow:0 .45px 0 rgba(255,255,255,.28);
  box-shadow:none;
  font-size:12px;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
  overflow:hidden;
}
[data-rank-text]{
  color:transparent!important;
  -webkit-text-fill-color:transparent;
}
[data-profile-widget-title]::before,
.rank-text-chip::before,
.account-name small::before,
.decor-title-pill::before,
.ps-tier span::before,
#publicTier::before,
.rank-road .current span::before,
.glory-current-rank::before,
.glory-rank-emblem h2::before,
.sq-name-rank::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  border-radius:inherit;
  background:linear-gradient(180deg,rgba(255,250,238,.98),rgba(255,241,210,.92));
  border:1px solid rgba(171,106,12,.34);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.78),0 1px 1px rgba(77,45,0,.05);
}
[data-rank-text]::after{
  content:attr(data-rank-text);
  position:absolute;
  inset:0;
  z-index:1;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:inherit;
  border-radius:inherit;
  background-image:linear-gradient(90deg,#412500 0%,#936017 45%,#553100 100%);
  background-clip:text;
  -webkit-background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  text-shadow:0 .35px 0 rgba(255,255,255,.22);
  pointer-events:none;
}
[data-profile-widget-title]{margin-top:6px}
.rank-text-chip{height:22px;border-radius:var(--r-full);padding:0 9px}
.rank-card span .rank-text-chip{height:18px;padding:0 7px;border-radius:var(--r-full);font-size:10px}
.team-top3 .rank-card span .rank-text-chip{font-size:9px}
.account-name small{width:max-content;margin-top:2px}
.glory-rank-emblem h2{min-height:36px;margin:0 0 8px;padding:0 16px;font-size:20px}
.rank-road .current span{min-height:30px;font-size:13px}
.sq-name-rank{min-height:20px;padding:0 8px;font-size:11px}

/* ==== rank ladder colors (2026-07-07): each tier has a quiet, distinct identity ==== */
.rank-road div:nth-child(1){--rank-color:#647083;--rank-bg:#eef2f6;--rank-card:#f7f9fc;--rank-border:#d8e0ea}
.rank-road div:nth-child(2){--rank-color:#0f7a55;--rank-bg:#e5f6ee;--rank-card:#f5fbf8;--rank-border:#b9e5d2}
.rank-road div:nth-child(3){--rank-color:#1d64b7;--rank-bg:#e8f1ff;--rank-card:#f6f9ff;--rank-border:#bfd7fb}
.rank-road div:nth-child(4){--rank-color:#4153b4;--rank-bg:#ecefff;--rank-card:#f8f8ff;--rank-border:#cdd4fb}
.rank-road div:nth-child(5){--rank-color:#7b4ab0;--rank-bg:#f2eafa;--rank-card:#fbf7ff;--rank-border:#ddc6f3}
.rank-road div:nth-child(6){--rank-color:#b05c08;--rank-bg:#fff0df;--rank-card:#fffbf5;--rank-border:#f3c58c}
.rank-road div:nth-child(7){--rank-color:#9a6500;--rank-bg:#fff1c9;--rank-card:#fff8e8;--rank-border:#f3bd46}
.rank-road div{background:linear-gradient(180deg,var(--card) 0%,var(--rank-card,var(--bg-soft)) 100%);border-color:var(--rank-border,var(--line))}
.rank-road div.current{background:linear-gradient(180deg,#fffaf0 0%,var(--rank-card,var(--gold-tint)) 100%);border-color:var(--rank-border,var(--gold-soft))}
.rank-road span{background:var(--rank-bg,var(--bg-mute));color:var(--rank-color,var(--text-2));-webkit-text-fill-color:var(--rank-color,var(--text-2))}
.rank-road .current span{background:var(--rank-bg,var(--gold-tint));color:var(--rank-color,var(--gold-deep))!important;-webkit-text-fill-color:var(--rank-color,var(--gold-deep))}
.rank-road .current span::before{background:var(--rank-bg,var(--gold-tint));border-color:var(--rank-border,var(--gold-soft));box-shadow:inset 0 1px 0 rgba(255,255,255,.78)}
.rank-road small{color:#667085}
.help-rank-road{margin-top:4px}

/* ==== profile sidebar widget (2026-07-07): match customization preview without growing the card ==== */
.profile-card-decorated{position:relative;padding:0;overflow:hidden}
.profile-card-decorated .profile-widget-cover{height:88px;background:var(--navy-950);transition:background .2s}
.profile-card-decorated .cover-speed{background:linear-gradient(120deg,var(--navy-950),var(--navy-600))}
.profile-card-decorated .cover-peak{background:linear-gradient(120deg,var(--primary-soft),var(--bg-mute))}
.profile-card-decorated .cover-horizon{background:linear-gradient(120deg,var(--purple-deep),var(--purple))}
.profile-card-decorated .cover-plain{background:var(--bg-soft);border-bottom:1px solid var(--line)}
.profile-card-decorated .profile-widget-head{display:block;margin:-36px 14px 0;position:relative}
.profile-card-decorated .profile-widget-frame{width:72px;height:72px;margin:0;padding:4px;flex:0 0 auto}
.profile-card-decorated .profile-widget-frame .avatar.xl{width:100%;height:100%;border:2px solid #fff}
.profile-card-decorated .profile-widget-frame img{width:100%;height:100%;object-fit:cover}
.profile-card-decorated .compact-profile-info{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px}
.profile-card-decorated .compact-profile-info strong{font-size:18px;line-height:1.1}
.profile-card-decorated .compact-profile-info .rank-title{margin-top:0}
.profile-card-decorated .avatar-edit-fab{left:auto;right:12px;top:12px;bottom:auto;width:30px;height:30px;background:rgba(255,255,255,.94);border-color:rgba(255,255,255,.72);color:var(--text)}
.profile-card-decorated .avatar-edit-fab::before{width:15px;height:15px}
.profile-card-decorated .profile-widget-badges{display:flex;gap:6px;flex-wrap:wrap;margin:10px 14px 12px}
.profile-card-decorated .profile-widget-badges .badge-slot{height:24px;padding:0 9px;font-size:11px}
.profile-card-decorated .profile-widget-badges .badge-slot[data-achievement],
.decor-badges .badge-slot[data-achievement]{width:26px;height:26px;min-width:26px;padding:0;font-size:0}
.profile-card-decorated .profile-widget-badges .badge-slot[data-achievement]::before,
.decor-badges .badge-slot[data-achievement]::before{font-size:10px}
.profile-card-decorated .account-score,
.profile-card-decorated .account-progress,
.profile-card-decorated p{margin-left:14px;margin-right:14px}
.profile-card-decorated p{margin-bottom:12px}
.profile-card-decorated .account-score{display:flex;align-items:baseline;gap:8px}
/* score is the last row now that the next-rank progress line was removed — restore bottom breathing room */
.profile-card-decorated .account-score:last-child{margin-bottom:16px}
/* season-progress score block (我的流水-style) — big value · gold bar · season context */
.profile-card-decorated .score-prog{margin:2px 14px 16px}
.score-prog .sp-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}
.score-prog .sp-head span{font-size:11px;font-weight:900;color:var(--muted);letter-spacing:.04em}
.score-prog .sp-head strong{font-size:24px;font-weight:950;color:var(--text);line-height:1;font-variant-numeric:tabular-nums}
.score-prog .sp-head strong small{font-size:12px;font-weight:800;color:rgba(255,255,255,.4);margin-left:3px}
.score-prog .sp-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}
.score-prog .sp-bar{height:6px;border-radius:999px;overflow:hidden;background:#34312a;border:1px solid rgba(244,182,63,.18)}
.score-prog .sp-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#8f6b2d,#f4b63f)}
.score-prog .sp-pct{font-size:12px;font-weight:900;color:var(--gold);white-space:nowrap}
.score-prog .sp-note{margin:7px 0 0;font-size:11px;font-weight:800;color:var(--muted)}
.score-prog .sp-note b{color:var(--gold)}

/* ==== password change popup (2026-07-07): security row matches other single-control rows ==== */
.password-popup-card{max-width:440px!important;padding:28px!important}
.password-popup-card .password-fieldset{max-width:none;width:100%;justify-self:stretch;margin-top:4px}
.password-popup-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}

/* ==== recruit team-id pending placeholder (2026-07-07): ID not assigned until registered ==== */
.recruit-team-id.pending{background:var(--bg-soft);color:var(--faint);font-weight:800;letter-spacing:0}

/* ==== achievement medal alignment (2026-07-07): top-align so emblem tracks title + titles line up across cards ==== */
.achievement-medal{align-items:start}
.achievement-medal .achievement-badge{align-self:start;margin-top:1px}
.achievement-medal>div{align-self:start}

/* ============================================================
   DARK THEME (2026-07-08) — token remap over the base system.
   --primary is inverted to a light ink so links/active text read
   on dark; solid primary fills get dark text via overrides below.
   ============================================================ */
:root{
  --primary:#e9edf3;--primary-strong:#ffffff;--primary-bright:#5b6572;--primary-soft:#333c49;--primary-tint:#242c37;--primary-deep:#d5dce4;
  --navy-950:#0c1420;--navy-800:#16202e;--navy-600:#22303f;
  --text:#e8edf4;--text-2:#aeb9c6;--muted:#7d8896;--faint:#5a6472;
  --bg:#0f141b;--bg-soft:#171e27;--bg-mute:#1f2833;--card:#1a212b;
  --line:#2a3340;--line-strong:#3a4655;
  --success:#22b880;--success-bright:#2fd39a;--success-soft:#1e4234;--success-tint:#122019;
  --gold:#f4b63f;--gold-strong:#e8a020;--gold-deep:#f0c463;--gold-ink:#3a2600;--gold-soft:#5a4a24;--gold-tint:#2b2413;
  --live:#ff6a2b;--live-tint:#2a1810;
  --danger:#ff5b64;--danger-bright:#ff8b6e;--danger-soft:#4a2226;--danger-deep:#e0454e;--danger-tint:#2c1417;
  --pink:#e8789a;--purple:#a98cff;--purple-soft:#7c4dd8;--purple-tint:#241a3a;--purple-deep:#cbb8ff;
  --bronze:#c78a52;--bronze-deep:#a86a34;--bronze-soft:#5a4630;
  --shadow-sm:0 6px 16px rgba(0,0,0,.4);--shadow:0 14px 32px rgba(0,0,0,.5);--shadow-lg:0 22px 48px rgba(0,0,0,.65);--glow-primary:0 8px 18px rgba(0,0,0,.5);
  --grad-primary:linear-gradient(135deg,#2b3442,#3a4655);
}
/* solid primary fills need dark text now that --primary is light */
.btn.primary{color:#0f141b!important}
.home-page .hero-cta-row .btn.primary{color:#5a3b00!important}
.arena-tabs button.active,.featured-tabs button.active{color:#0f141b}
.brand-mark{color:#0f141b}
.glory-related-action{color:#0f141b}
.site-header .brand-mark{color:var(--gold-ink)}
/* segmented L1 active: lift above the dark shell so it reads as selected */
.seg-tabs button.active,.arena-tabs button.active,.featured-tabs button.active{background:var(--bg-mute);color:var(--text);border:1px solid var(--line-strong);box-shadow:none}
/* page canvas + header hairline */
body{background:var(--bg)}
.site-header{background:var(--card);border-bottom-color:var(--line)}
/* inputs/selects on dark */
input,select,textarea{background:var(--bg-soft);color:var(--text);border-color:var(--line)}
input::placeholder,textarea::placeholder{color:var(--faint)}
/* status pills stay legible */
.status{border:1px solid var(--line)}

/* gold-tint surfaces are dark now — text on them must be light gold, not gold-ink */
.season-banner-main strong{color:var(--gold-deep)}
.season-banner-count>strong b{color:var(--gold-deep)}
.season-banner{border-color:var(--gold-soft)}

/* remaining near-white rgba surfaces → dark */
.arena-tabs-shell{background:rgba(15,20,27,.92)}

/* auth pages: frosted form panel → dark frosted */
.auth-reference-page .auth-panel-right{background:rgba(13,17,24,.9)}
.auth-reference-page .auth-panel-left:not(.auth-login-visual){background:rgba(13,17,24,.82)}

/* ============================================================
   NEUTRAL DARK-GREY PASS (2026-07-08) — remove all blue undertone.
   Later :root wins over the earlier dark block for these tokens.
   ============================================================ */
:root{
  /* 2026-07-09 (task 14) — theme grey shifted LIGHTER a notch (less pure-black). Single source; cascades via tokens. */
  --bg:#1a1a1a; --bg-soft:#232323; --bg-mute:#2e2e2e; --card:#262626;
  --line:#3a3a3a; --line-strong:#4e4e4e;
  --text:#ececec; --text-2:#b0b0b0; --muted:#868686; --faint:#5c5c5c;
  --navy-950:#171717; --navy-800:#212121; --navy-600:#2c2c2c;
  --primary:#ececec; --primary-strong:#ffffff; --primary-bright:#6a6a6a; --primary-soft:#3a3a3a; --primary-tint:#2f2f2f; --primary-deep:#d6d6d6;
  --line: #3a3a3a;
}
/* rank ladder → dark grey cards; blues neutralized, warm accents kept */
.rank-road div:nth-child(1){--rank-color:#c4ccd4;--rank-bg:#2a2a2a;--rank-card:#1e1e1e;--rank-border:#3a3a3a}
.rank-road div:nth-child(2){--rank-color:#4fd39a;--rank-bg:#17241d;--rank-card:#1e1e1e;--rank-border:#2c4638}
.rank-road div:nth-child(3){--rank-color:#b6bcc4;--rank-bg:#282828;--rank-card:#1e1e1e;--rank-border:#3c3c3c}
.rank-road div:nth-child(4){--rank-color:#d0d5db;--rank-bg:#2b2b2b;--rank-card:#1e1e1e;--rank-border:#404040}
.rank-road div:nth-child(5){--rank-color:#c8a6ee;--rank-bg:#241f2e;--rank-card:#1e1e1e;--rank-border:#3c3450}
.rank-road div:nth-child(6){--rank-color:#e0a24e;--rank-bg:#2a2210;--rank-card:#1e1e1e;--rank-border:#5a4622}
.rank-road div:nth-child(7){--rank-color:#f0c463;--rank-bg:#2a2410;--rank-card:#1e1e1e;--rank-border:#5a4a24}
.rank-road div.current{background:var(--gold-tint)!important;border-color:var(--gold-soft)!important}
.rank-road div.current span{color:var(--gold-deep)!important;-webkit-text-fill-color:var(--gold-deep)!important}

/* neutralize ink-* tokens (used by legacy body.dark-mode rules) → grey */
:root{--ink-950:#141414;--ink-900:#1c1c1c;--ink-800:#242424;--ink-700:#323232;--ink-text:#b0b0b0}

/* dark-panel light-text: soft/tint tokens flipped dark but are used as light text on dark heroes/panels */
.hs-title{color:var(--text)}
.hs-issue{color:var(--text-2)}
.hb-cd{color:var(--gold)}
.hb-stat strong.gold,.hero-big-card .gold,.home-page .gold{color:var(--gold)}
.hero-kicker{color:var(--gold)}
.event-v3-duration{color:var(--text-2)}
.account-name small{color:var(--gold)}

/* gold-soft is used mostly as light-gold TEXT on dark panels (hero kicker, rank values, countdown) — keep it light */
:root{--gold-soft:#f4d58a}
.account-name small{color:var(--gold)!important}

/* tier labels (public profile) forced light gold; faint bumped for legible timestamps/placeholders */
.ps-tier,.ps-tier span{color:var(--gold-deep)!important;-webkit-text-fill-color:var(--gold-deep)!important}
:root{--faint:#767676}

/* ============================================================
   DARK CONTRAST PATCH (2026-07-08) — fix pale active pills and
   collection/badge surfaces that inherited light-mode contrast.
   ============================================================ */
.season-switch button,
.tabs button,
.glory-tabs button,
.message-filter-row button,
.quick-amounts button,
.method-row button,
.team-sub-tabs button,
.watch-time-tabs button,
.tb-picker-tab{
  background:var(--card);
  border-color:var(--line);
  color:var(--text-2);
}
.season-switch button:hover,
.tabs button:hover,
.glory-tabs button:hover,
.message-filter-row button:hover,
.quick-amounts button:hover,
.method-row button:hover,
.team-sub-tabs button:hover,
.watch-time-tabs button:hover,
.tb-picker-tab:hover{
  background:var(--bg-mute);
  border-color:var(--line-strong);
  color:var(--text);
}
.season-switch button.active,
.tabs button.active,
.glory-tabs button.active,
.message-filter-row button.active,
.quick-amounts button.active,
.method-row button.active,
.team-sub-tabs button.active,
.watch-time-tabs button.active,
.tb-picker-tab.active,
.glory-feed-pager button.active{
  background:var(--bg-mute)!important;
  border-color:var(--line-strong)!important;
  color:var(--text)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 10px 22px rgba(0,0,0,.2);
}
.season-switch button.active{
  background:linear-gradient(180deg,#eeeeee 0%,#d7d7d7 100%)!important;
  border-color:#f4f4f4!important;
  color:#141414!important;
  text-shadow:none;
}
.seg-tabs button.active,
.arena-tabs button.active,
.featured-tabs button.active{
  background:linear-gradient(180deg,#eeeeee 0%,#d7d7d7 100%)!important;
  border-color:#f4f4f4!important;
  color:#141414!important;
}
.account-side-nav a.active,
.help-side a.active,
.utility-nav a.active{
  background:var(--bg-mute)!important;
  border-color:var(--line-strong)!important;
  color:var(--text)!important;
}
.btn.secondary,
.text-link{
  color:var(--text);
}
.btn.secondary{
  background:var(--card);
  border-color:var(--line-strong);
}
.btn.secondary:hover{
  background:var(--bg-mute);
  border-color:#5a5a5a;
}

/* Dark collection visuals */
.collection-overview{
  background:linear-gradient(135deg,#202020 0%,#181818 100%);
  border-color:var(--line-strong);
}
.collection-emblem{
  background:radial-gradient(circle at 50% 35%,rgba(244,182,63,.2),rgba(244,182,63,.06) 48%,rgba(255,255,255,.03) 100%);
  border-color:rgba(244,182,63,.38);
}
.collection-block{
  background:#1b1b1b;
  border-color:var(--line-strong);
}
.collection-item{
  background:linear-gradient(180deg,#222 0%,#1a1a1a 100%);
  border-color:var(--line);
}
.collection-item:hover{
  border-color:var(--line-strong);
  background:linear-gradient(180deg,#262626 0%,#1d1d1d 100%);
}
.collection-item img{
  background:linear-gradient(135deg,#242424,#151515);
  border-color:#3c3c3c;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.collection-item.frame img{
  background:radial-gradient(circle,rgba(244,182,63,.16),rgba(244,182,63,.04) 58%,rgba(255,255,255,.02));
}

/* Dark achievement badge polish */
.achievement-badge,
.badge-slot[data-achievement]::before{
  color:var(--achievement-ink,#f3d48a);
  border-color:var(--achievement-border,rgba(244,182,63,.36));
  background:
    radial-gradient(circle at 38% 28%,rgba(255,255,255,.22),transparent 24%),
    linear-gradient(180deg,var(--achievement-top,#4b3d1d),var(--achievement-bottom,#221c10));
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    inset 0 0 0 4px rgba(255,255,255,.035),
    0 8px 18px rgba(0,0,0,.26);
}
.achievement-badge b{
  color:inherit;
  text-shadow:0 1px 0 rgba(0,0,0,.32);
}
.achievement-badge.badge-win,
.badge-slot[data-achievement-type="streak"]{
  --achievement-ink:#8ff0da;
  --achievement-top:#154039;
  --achievement-bottom:#102520;
  --achievement-border:rgba(79,211,154,.42);
}
.achievement-badge.badge-crown,
.badge-slot[data-achievement-type="first-crown"]{
  --achievement-ink:#ffe2a0;
  --achievement-top:#5a3f13;
  --achievement-bottom:#2b2111;
  --achievement-border:rgba(244,182,63,.46);
}
.achievement-badge.badge-rank{
  --achievement-ink:#f0c463;
  --achievement-top:#4a3c18;
  --achievement-bottom:#211c10;
  --achievement-border:rgba(240,196,99,.48);
}
.achievement-badge.badge-veteran{
  --achievement-ink:#d6dce4;
  --achievement-top:#333;
  --achievement-bottom:#202020;
  --achievement-border:#4b4b4b;
}
.achievement-badge.badge-season{
  --achievement-ink:#ffd284;
  --achievement-top:#5b3717;
  --achievement-bottom:#2b1d12;
  --achievement-border:rgba(255,180,74,.44);
}
.achievement-badge.badge-club{
  --achievement-ink:#c9d7e8;
  --achievement-top:#29323b;
  --achievement-bottom:#1b2026;
  --achievement-border:#46515d;
}
.achievement-medal{
  background:linear-gradient(180deg,#222 0%,#1a1a1a 100%);
  border-color:var(--line);
}
.achievement-medal.locked .achievement-badge{
  filter:saturate(.4);
}

/* Extra active-state sweep for secondary pages */
.team-lobby-filters button.active,
.team-recruit-footer button.active,
.replay-nav button.active,
.replay-pager button.active,
.lb-v2-nav button.active,
.game-category-grid button.active,
.arena-state-card.team .team-lobby-filters.mini button.active,
.avatar-choice-grid button.active{
  background:var(--bg-mute)!important;
  border-color:var(--line-strong)!important;
  color:var(--text)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 8px 18px rgba(0,0,0,.22)!important;
}
.arena-state-card.team .team-lobby-filters.mini button.active::before{
  background:var(--text)!important;
}
.auth-step.active .auth-step-num,
.auth-referral-avatar,
.welcome-avatar,
.contact-icon,
.event-flow-icon{
  background:linear-gradient(180deg,#eeeeee 0%,#d7d7d7 100%)!important;
  color:#141414!important;
  border-color:#f4f4f4!important;
}
.referral-copy-btn{
  background:var(--bg-mute)!important;
  border:1px solid var(--line-strong)!important;
  color:var(--text)!important;
}
.glory-related-action:not(.secondary){
  background:linear-gradient(180deg,#eeeeee 0%,#d7d7d7 100%)!important;
  color:#141414!important;
}

/* Keep badge hover labels readable in dark mode; do not inherit --text. */
.achievement-badge::before,
.badge-slot[data-achievement]::after{
  background:#101010!important;
  color:#f4f4f4!important;
  border:1px solid #3b3b3b!important;
  box-shadow:0 12px 28px rgba(0,0,0,.48)!important;
}
.achievement-badge::after{
  border-top-color:#101010!important;
}

/* L1 page tabs should read as selected tabs, not bright CTA buttons. */
.seg-tabs button.active,
.lb-v2-tabs button.active,
.season-switch button.active,
.glory-tabs button.active,
.arena-tabs button.active,
.featured-tabs button.active{
  background:#242424!important;
  border-color:#3a3a3a!important;
  color:#f2f2f2!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
  text-shadow:none!important;
}

/* Dark-mode tier chips: quieter system-wide treatment beside player names. */
[data-profile-widget-title],
.rank-text-chip,
.account-name small,
.decor-title-pill,
.ps-tier,
.ps-tier span,
#publicTier,
.rank-road .current span,
.glory-current-rank,
.glory-rank-emblem h2,
.sq-name-rank{
  color:#d2b172!important;
  -webkit-text-fill-color:#d2b172!important;
  text-shadow:none!important;
  filter:none!important;
}
[data-profile-widget-title]::before,
.rank-text-chip::before,
.account-name small::before,
.decor-title-pill::before,
.ps-tier span::before,
#publicTier::before,
.rank-road .current span::before,
.glory-current-rank::before,
.glory-rank-emblem h2::before,
.sq-name-rank::before{
  background:linear-gradient(180deg,rgba(191,145,64,.16),rgba(122,88,35,.10))!important;
  border:1px solid rgba(214,174,99,.26)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
}
[data-rank-text]::after{
  background-image:linear-gradient(90deg,#c7a66a 0%,#ead49b 48%,#b68c46 100%)!important;
  background-clip:text!important;
  -webkit-background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
  text-shadow:none!important;
}
.account-name small{
  background:transparent!important;
}

/* Achievement badges need stronger glyph contrast than tier chips. */
.achievement-badge b,
.badge-slot[data-achievement]::before{
  color:var(--achievement-ink,#ffe0a3)!important;
  -webkit-text-fill-color:var(--achievement-ink,#ffe0a3)!important;
  text-shadow:0 1px 2px rgba(0,0,0,.72)!important;
}
.achievement-badge.badge-win,
.badge-slot[data-achievement-type="streak"]{
  --achievement-ink:#74f1df;
}
.achievement-badge.badge-crown,
.badge-slot[data-achievement-type="first-crown"]{
  --achievement-ink:#fff0c2;
}
.achievement-badge.badge-rank{
  --achievement-ink:#ffe39d;
}
.achievement-badge.badge-season{
  --achievement-ink:#ffe4a2;
}
.achievement-badge.badge-veteran,
.achievement-badge.badge-club{
  --achievement-ink:#f5f7fa;
  --achievement-top:#2f3338;
  --achievement-bottom:#17191c;
  --achievement-border:#555b63;
}
.achievement-badge.badge-veteran b,
.achievement-badge.badge-club b{
  letter-spacing:0;
}

/* Center achievement glyphs after medal title styles override generic b tags. */
.achievement-badge{
  display:grid!important;
  place-items:center!important;
}
.achievement-badge b{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  line-height:1!important;
  text-align:center!important;
}
.achievement-medal .achievement-badge b{
  font-size:inherit;
}
.achievement-medal .achievement-badge.badge-crown b,
.achievement-medal .achievement-badge.badge-rank b,
.achievement-medal .achievement-badge.badge-season b,
.achievement-medal .achievement-badge.badge-win b{
  font-size:12px;
}
.achievement-medal .achievement-badge.badge-veteran b,
.achievement-medal .achievement-badge.badge-club b{
  font-size:9px;
}

/* Higher-contrast badge glyphs: dark text on light medals, light text on dark medals. */
.achievement-badge.badge-win,
.badge-slot[data-achievement-type="streak"]{
  --achievement-ink:#087060;
}
.achievement-badge.badge-crown,
.badge-slot[data-achievement-type="first-crown"],
.achievement-badge.badge-rank,
.achievement-badge.badge-season{
  --achievement-ink:#6b4400;
}
.achievement-badge.badge-win b,
.achievement-badge.badge-crown b,
.achievement-badge.badge-rank b,
.achievement-badge.badge-season b,
.badge-slot[data-achievement-type="streak"]::before,
.badge-slot[data-achievement-type="first-crown"]::before{
  text-shadow:0 1px 0 rgba(255,255,255,.42),0 1px 2px rgba(0,0,0,.18)!important;
}
.achievement-badge.badge-veteran,
.achievement-badge.badge-club{
  --achievement-ink:#ffffff;
  --achievement-top:#3b3f45;
  --achievement-bottom:#111316;
  --achievement-border:#626872;
}
.achievement-badge.badge-veteran b,
.achievement-badge.badge-club b{
  text-shadow:0 1px 2px rgba(0,0,0,.82)!important;
}

/* Profile widget edit control: always anchor to the card, not the avatar/head group. */
.profile-card-decorated .profile-widget-head{
  position:static!important;
}
.profile-card-decorated .profile-widget-edit{
  position:absolute!important;
  left:auto!important;
  right:14px!important;
  top:14px!important;
  bottom:auto!important;
  z-index:5!important;
}

/* Decorative strips such as partners should not carry a lighter grey frame. */
.home-page .page-shell>#partners{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding:0!important;
}
.home-page #partners .partners-bar{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

/* Arena card actions: keep review CTAs secondary, but joined-entry CTAs stay gold. */
.arena-page .solo-enter-btn.cta-secondary,
.arena-state-card.team .live-state .team-watch-btn:not([href*="betting"]){
  background:#2a2a2a!important;
  border:1px solid #4a4a4a!important;
  color:#f2f2f2!important;
  box-shadow:none!important;
}
.arena-page .solo-enter-btn.cta-secondary:hover,
.arena-state-card.team .live-state .team-watch-btn:not([href*="betting"]):hover{
  background:#333!important;
  border-color:#666!important;
  color:#fff!important;
}

/* ============================================================
   CANONICAL DARK SYSTEM STABILIZATION
   Keep this block last. It replaces one-off pale overrides with
   predictable dark-mode component behavior.
   ============================================================ */
:root{
  --dark-page:#181818;
  --dark-card:#232323;
  --dark-elevated:#2a2a2a;
  --dark-muted:#2e2e2e;
  --dark-line:#3d3d3d;
  --dark-line-strong:#525252;
  --dark-text:#f2f2f2;
  --dark-text-2:#b8b8b8;
  --dark-muted-text:#8f8f8f;
  --action-primary-bg:#f4b63f;
  --action-primary-bg-hover:#e8a020;
  --action-primary-text:#3a2600;
  --action-secondary-bg:#242424;
  --action-secondary-bg-hover:#303030;
  --action-secondary-border:#4a4a4a;
  --action-secondary-text:#f0f0f0;
  --tab-active-bg:#242424;
  --tab-active-border:#3a3a3a;
  --tab-active-text:#f2f2f2;
}

.btn.primary,
button.btn.primary,
a.btn.primary,
.glory-related-action:not(.secondary){
  background:var(--action-primary-bg)!important;
  border:1px solid var(--action-primary-bg)!important;
  color:var(--action-primary-text)!important;
  box-shadow:0 10px 22px rgba(244,182,63,.18)!important;
}
.btn.primary:hover,
button.btn.primary:hover,
a.btn.primary:hover,
.glory-related-action:not(.secondary):hover{
  background:var(--action-primary-bg-hover)!important;
  border-color:var(--action-primary-bg-hover)!important;
  color:var(--action-primary-text)!important;
}
.btn.secondary,
button.btn.secondary,
a.btn.secondary,
.glory-related-action.secondary,
.referral-copy-btn{
  background:var(--action-secondary-bg)!important;
  border:1px solid var(--action-secondary-border)!important;
  color:var(--action-secondary-text)!important;
  box-shadow:none!important;
}
.btn.secondary:hover,
button.btn.secondary:hover,
a.btn.secondary:hover,
.glory-related-action.secondary:hover,
.referral-copy-btn:hover{
  background:var(--action-secondary-bg-hover)!important;
  border-color:#666!important;
  color:#fff!important;
}
.btn[disabled],
.btn.primary[disabled],
.btn.secondary[disabled]{
  background:#2a2a2a!important;
  border-color:#3a3a3a!important;
  color:#777!important;
  box-shadow:none!important;
  cursor:not-allowed!important;
}

/* Buttons placed on dense dark event cards should remain quiet — but never a .btn.primary
   (进入赛事 / enter-match CTAs must stay the gold action-primary style everywhere). */
.arena-shell .solo-enter-btn.secondary,
.arena-shell .solo-signup-btn,
.arena-shell .team-watch-btn.secondary,
.mine-stream-list .mini-event-row .btn.secondary{
  background:var(--action-secondary-bg)!important;
  border:1px solid var(--action-secondary-border)!important;
  color:var(--action-secondary-text)!important;
  box-shadow:none!important;
}
.arena-shell .solo-enter-btn.secondary:hover,
.arena-shell .solo-signup-btn:hover,
.arena-shell .team-watch-btn.secondary:hover,
.mine-stream-list .mini-event-row .btn.secondary:hover{
  background:var(--action-secondary-bg-hover)!important;
  border-color:#666!important;
  color:#fff!important;
}
.home-page .hero-cta-row .btn.primary{
  background:var(--action-primary-bg)!important;
  border-color:var(--action-primary-bg)!important;
  color:var(--action-primary-text)!important;
}

/* Selected navigation tabs are selected states, not CTA buttons. */
.seg-tabs,
.arena-tabs-shell,
.lb-v2-tabs,
.season-switch,
.glory-tabs,
.tabs{
  background:transparent!important;
}
.seg-tabs button.active,
.lb-v2-tabs button.active,
.season-switch button.active,
.glory-tabs button.active,
.arena-tabs button.active,
.featured-tabs button.active,
.tabs button.active,
.team-sub-tabs button.active,
.watch-time-tabs button.active,
.message-filter-row button.active,
.replay-nav button.active,
.replay-pager button.active,
.glory-feed-pager button.active,
.team-lobby-filters button.active,
.team-recruit-footer button.active,
.game-category-grid button.active,
.avatar-choice-grid button.active{
  background:var(--tab-active-bg)!important;
  border-color:var(--tab-active-border)!important;
  color:var(--tab-active-text)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
  text-shadow:none!important;
}

/* Functional chips: readable but subdued. */
.status,
.glory-badge,
.lb-v2-type,
.event-v3-tags span,
.event-v3-game-row span,
.watch-game,
.watch-record-row .play-tag,
.replay-row b,
.season-pill{
  background:rgba(255,255,255,.055)!important;
  border-color:rgba(255,255,255,.12)!important;
  color:var(--dark-text-2)!important;
}
.status.live{color:#ff9a6d!important;background:rgba(255,106,43,.12)!important;border-color:rgba(255,106,43,.24)!important}
.status.open,.status.booked{color:#d7bd7a!important;background:rgba(244,182,63,.12)!important;border-color:rgba(244,182,63,.24)!important}
.status.ended{color:#aaa!important;background:rgba(255,255,255,.05)!important;border-color:rgba(255,255,255,.1)!important}

/* Tier tags remain distinct from achievement badges. */
[data-profile-widget-title],
.rank-text-chip,
.account-name small,
.decor-title-pill,
.ps-tier,
.ps-tier span,
#publicTier,
.rank-road .current span,
.glory-current-rank,
.glory-rank-emblem h2,
.sq-name-rank{
  color:#d7bd7a!important;
  -webkit-text-fill-color:#d7bd7a!important;
}
[data-profile-widget-title]::before,
.rank-text-chip::before,
.account-name small::before,
.decor-title-pill::before,
.ps-tier span::before,
#publicTier::before,
.rank-road .current span::before,
.glory-current-rank::before,
.glory-rank-emblem h2::before,
.sq-name-rank::before{
  background:linear-gradient(180deg,rgba(244,182,63,.16),rgba(244,182,63,.08))!important;
  border-color:rgba(244,182,63,.28)!important;
  box-shadow:none!important;
}

/* Achievement badges: small glyphs must win contrast over decoration. */
.achievement-badge,
.badge-slot[data-achievement]::before{
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 8px 18px rgba(0,0,0,.3)!important;
}
.achievement-badge b,
.badge-slot[data-achievement]::before{
  display:grid!important;
  place-items:center!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  color:var(--achievement-ink,#6b4400)!important;
  -webkit-text-fill-color:var(--achievement-ink,#6b4400)!important;
  line-height:1!important;
  text-align:center!important;
}
.achievement-badge.badge-win,
.badge-slot[data-achievement-type="streak"]{--achievement-ink:#087060}
.achievement-badge.badge-crown,
.badge-slot[data-achievement-type="first-crown"],
.achievement-badge.badge-rank,
.achievement-badge.badge-season{--achievement-ink:#6b4400}
.achievement-badge.badge-veteran,
.achievement-badge.badge-club{
  --achievement-ink:#fff;
  --achievement-top:#3b3f45;
  --achievement-bottom:#111316;
  --achievement-border:#626872;
}
.achievement-badge.badge-veteran b,
.achievement-badge.badge-club b{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.achievement-badge::before,
.badge-slot[data-achievement]::after{
  background:#101010!important;
  color:#f4f4f4!important;
  border:1px solid #3b3b3b!important;
  box-shadow:0 12px 28px rgba(0,0,0,.48)!important;
}
.achievement-badge::after{border-top-color:#101010!important}

/* Decorative strips should not pretend to be cards. */
.home-page .page-shell>#partners,
.home-page #partners .partners-bar,
.partners-bar{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.home-page .page-shell>#partners{
  padding:0!important;
}

/* Growth charts: active bars should read as gold highlights, not white buttons. */
.season-bars i{
  background:#2a2a2a!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.season-bars .active i{
  background:linear-gradient(180deg,var(--gold) 0%,var(--gold-strong) 100%)!important;
  border-color:rgba(244,182,63,.38)!important;
  box-shadow:0 10px 22px rgba(244,182,63,.16)!important;
}
.season-bars b{
  color:var(--dark-text)!important;
}
.season-bars span{
  color:var(--dark-muted-text)!important;
}

/* Canonical dark header: use the quieter menu treatment everywhere. */
.site-header{
  background:rgba(18,18,18,.94)!important;
  border-bottom:1px solid rgba(255,255,255,.12)!important;
  box-shadow:none!important;
  backdrop-filter:blur(18px)!important;
}
.site-header .main-nav{
  gap:8px!important;
}
.site-header .main-nav a{
  color:rgba(255,255,255,.78)!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  opacity:1!important;
}
.site-header .main-nav a.active,
.site-header .main-nav a:hover{
  background:#242424!important;
  color:#fff!important;
  box-shadow:none!important;
}
.site-header .nav-bell,
.site-header .nav-wallet,
.site-header .account-profile{
  background:#1d1d1d!important;
  border:1px solid #333!important;
  color:#f2f2f2!important;
  box-shadow:0 10px 24px rgba(0,0,0,.24)!important;
}
.site-header .nav-bell:hover,
.site-header .nav-wallet:hover,
.site-header .account-profile:hover{
  background:#242424!important;
  border-color:#444!important;
}
.site-header .nav-wallet,
.site-header .nav-wallet strong{
  color:#f2f2f2!important;
}
.site-header .wallet-flat-icon{
  width:22px!important;
  height:22px!important;
  border:0!important;
  border-radius:0!important;
  color:#f2f2f2!important;
  background:#f2f2f2!important;
  opacity:1!important;
  filter:none!important;
  mask:url('icons/wallet.svg') center/contain no-repeat!important;
  -webkit-mask:url('icons/wallet.svg') center/contain no-repeat!important;
}
.site-header .wallet-flat-icon::after{
  display:none!important;
}
.site-header .nav-bell::before{
  content:""!important;
  width:22px!important;
  height:22px!important;
  display:block!important;
  background:#d8d8d8!important;
  opacity:.86!important;
  filter:none!important;
  border:0!important;
  border-radius:0!important;
  mask:url('icons/notification.svg') center/contain no-repeat!important;
  -webkit-mask:url('icons/notification.svg') center/contain no-repeat!important;
}
.site-header .account-name strong{
  color:#fff!important;
}
.site-header .account-chevron{
  border-color:rgba(255,255,255,.7)!important;
}

/* Header icons: draw them in CSS so they cannot disappear from SVG/mask quirks. */
.site-header .wallet-flat-icon{
  position:relative!important;
  display:inline-block!important;
  width:24px!important;
  height:18px!important;
  flex:0 0 24px!important;
  background:transparent!important;
  border:2px solid rgba(255,255,255,.9)!important;
  border-radius:4px!important;
  color:rgba(255,255,255,.9)!important;
  opacity:1!important;
  filter:none!important;
  mask:none!important;
  -webkit-mask:none!important;
}
.site-header .wallet-flat-icon::before{
  content:""!important;
  position:absolute!important;
  right:-3px!important;
  top:5px!important;
  width:9px!important;
  height:7px!important;
  border:2px solid rgba(255,255,255,.9)!important;
  border-radius:5px 0 0 5px!important;
  background:#1d1d1d!important;
  display:block!important;
}
.site-header .wallet-flat-icon::after{
  content:""!important;
  position:absolute!important;
  right:3px!important;
  top:8px!important;
  width:3px!important;
  height:3px!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.9)!important;
  display:block!important;
}
.site-header .nav-bell::before{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:18px!important;
  height:20px!important;
  transform:translate(-50%,-50%)!important;
  background:transparent!important;
  border:2px solid rgba(255,255,255,.82)!important;
  border-top-color:transparent!important;
  border-radius:10px 10px 7px 7px!important;
  opacity:1!important;
  filter:none!important;
  mask:none!important;
  -webkit-mask:none!important;
}
.site-header .nav-bell::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:62%!important;
  width:6px!important;
  height:6px!important;
  transform:translateX(-50%)!important;
  border-radius:50%!important;
  background:rgba(255,255,255,.82)!important;
  display:block!important;
}
.site-header .nav-bell .nav-badge{
  z-index:2!important;
}

/* Final header icon rendering: inline SVG backgrounds, stable and recognisable. */
.site-header .wallet-flat-icon{
  width:24px!important;
  height:24px!important;
  flex:0 0 24px!important;
  border:0!important;
  border-radius:0!important;
  background-color:transparent!important;
  background-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M4.5 7.5H17.5C18.6046 7.5 19.5 8.39543 19.5 9.5V17C19.5 18.1046 18.6046 19 17.5 19H5.5C4.39543 19 3.5 18.1046 3.5 17V8.5C3.5 7.94772 3.94772 7.5 4.5 7.5Z' stroke='%23F2F2F2' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='M6.5 7.5L15.5 5.2C16.6046 4.91777 17.5 5.75649 17.5 6.89731V7.5' stroke='%23F2F2F2' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M15.5 12H20.5V15.5H15.5C14.5335 15.5 13.75 14.7165 13.75 13.75C13.75 12.7835 14.5335 12 15.5 12Z' stroke='%23F2F2F2' stroke-width='2' stroke-linejoin='round'/%3E%3Ccircle cx='16.5' cy='13.75' r='0.75' fill='%23F2F2F2'/%3E%3C/svg%3E")!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:24px 24px!important;
}
.site-header .wallet-flat-icon::before,
.site-header .wallet-flat-icon::after{
  display:none!important;
}
.site-header .nav-bell::before{
  width:24px!important;
  height:24px!important;
  left:50%!important;
  top:50%!important;
  transform:translate(-50%,-50%)!important;
  border:0!important;
  border-radius:0!important;
  background-color:transparent!important;
  background-image:url("data:image/svg+xml,%3Csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M18 9.75C18 6.43629 15.3137 4 12 4C8.68629 4 6 6.43629 6 9.75V13.25L4.75 16.5H19.25L18 13.25V9.75Z' stroke='%23D8D8D8' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='M10 19C10.45 19.65 11.15 20 12 20C12.85 20 13.55 19.65 14 19' stroke='%23D8D8D8' stroke-width='2' stroke-linecap='round'/%3E%3Cpath d='M12 2.75V4' stroke='%23D8D8D8' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-size:24px 24px!important;
}
.site-header .nav-bell::after{
  display:none!important;
}

/* Keep wallet amount consistent across home and inner pages. */
.site-header .nav-wallet,
.site-header .nav-wallet strong,
.home-page .site-header .nav-wallet,
.home-page .site-header .nav-wallet strong{
  font-size:14px!important;
  line-height:1!important;
}

/* Final arena CTA normalization: primary event actions use gold; secondary review actions stay quiet. */
main.arena-shell .solo-live-head>a.solo-enter-btn.btn.primary:not(.cta-secondary),
main.arena-shell .team-live-row>a.team-watch-btn.btn[href*="betting"],
main.arena-shell .mine-stream-list .mini-event-row[data-status="live"]>.btn{
  background:var(--action-primary-bg)!important;
  border:1px solid var(--action-primary-bg)!important;
  color:var(--action-primary-text)!important;
  box-shadow:0 10px 22px rgba(244,182,63,.18)!important;
}
main.arena-shell .solo-live-head>a.solo-enter-btn.btn.primary:not(.cta-secondary):hover,
main.arena-shell .team-live-row>a.team-watch-btn.btn[href*="betting"]:hover,
main.arena-shell .mine-stream-list .mini-event-row[data-status="live"]>.btn:hover{
  background:var(--action-primary-bg-hover)!important;
  border-color:var(--action-primary-bg-hover)!important;
  color:var(--action-primary-text)!important;
}
main.arena-shell .solo-next-block .solo-signup-btn.btn,
main.arena-shell .solo-live-head>a.solo-enter-btn.cta-secondary,
main.arena-shell .team-live-row>a.team-watch-btn:not([href*="betting"]),
main.arena-shell .mine-stream-list .mini-event-row:not([data-status="live"])>.btn{
  background:#242424!important;
  border:1px solid #4a4a4a!important;
  color:#f0f0f0!important;
  box-shadow:none!important;
}
main.arena-shell .solo-next-block .solo-signup-btn.btn:hover,
main.arena-shell .solo-live-head>a.solo-enter-btn.cta-secondary:hover,
main.arena-shell .team-live-row>a.team-watch-btn:not([href*="betting"]):hover,
main.arena-shell .mine-stream-list .mini-event-row:not([data-status="live"])>.btn:hover{
  background:#303030!important;
  border-color:#666!important;
  color:#fff!important;
}

/* ── Player listings link to profiles (2026-07-10) ── */
.watch-profile-link{margin-left:10px;font-size:12px;font-weight:800;color:var(--gold);white-space:nowrap}
.watch-profile-link:hover{text-decoration:underline}
.lb-season-player.player-link,.lb-v2-player.player-link,.me-cell.player-link{padding:4px 8px;margin:-4px -8px}

/* ── Brand logo replacement (2026-07-10) ── */
.brand-mark,
.site-header .brand-mark{
  background:transparent url("../assets/彩荣耀full.png") center/contain no-repeat!important;
  color:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  overflow:hidden!important;
  text-indent:-9999px!important;
}
.site-header .brand{
  min-width:170px!important;
  gap:0!important;
}
.site-header .brand .brand-mark{
  width:152px!important;
  height:48px!important;
  flex:0 0 152px!important;
  position:relative!important;
}
.site-header .brand .brand-mark::after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(75deg,transparent 35%,rgba(255,255,255,.85) 48%,rgba(255,255,255,.85) 52%,transparent 65%);
  background-size:300% 100%;
  background-repeat:no-repeat;
  background-position:-120% 0;
  animation:logo-shine-sweep 5s ease-in-out infinite;
  pointer-events:none;
  -webkit-mask-image:url("../assets/彩荣耀full.png");
  -webkit-mask-size:contain;
  -webkit-mask-repeat:no-repeat;
  -webkit-mask-position:center;
  mask-image:url("../assets/彩荣耀full.png");
  mask-size:contain;
  mask-repeat:no-repeat;
  mask-position:center;
}
@keyframes logo-shine-sweep{
  0%{background-position:-120% 0;}
  80%{background-position:220% 0;}
  100%{background-position:220% 0;}
}
@media(prefers-reduced-motion:reduce){
  .site-header .brand .brand-mark::after{animation:none;display:none;}
}
.site-header .brand>div:not(.brand-mark){
  display:none!important;
}
.footer-brand .brand-mark{
  width:118px!important;
  height:37px!important;
  flex:0 0 118px!important;
}
.footer-brand strong{
  display:none!important;
}
.auth-brand-mark .brand-mark,
.su-brand .brand-mark,
.bet-logo-back .brand-mark{
  width:150px!important;
  height:47px!important;
  flex:0 0 150px!important;
}
.auth-brand-mark>div:not(.brand-mark),
.su-brand>div:not(.brand-mark),
.bet-logo-back>span:not(.brand-mark){
  display:none!important;
}

/* ============================================================
   UNIFIED STATUS PILL — ONE component platform-wide.
   Every tournament status (live / open / registered / qualifying /
   ended / upcoming) renders as the same pill: identical geometry +
   a state-coloured dot; only the colour changes with meaning.
     green = live (进行中)
     gold  = open / registered / qualifying (报名中 / 已报名 / 资格确认)
     grey  = ended / upcoming (已结束 / 即将开始)
   Consolidates the old variants: orange .status.live, plain-text
   .hs-status/.hb-status, round base .status.open/.booked/.ended,
   and the solo/team/glory pills.
   ============================================================ */
.status,
.solo-state-pill,
.team-live-title .status,
.arena-state-card.team .live-state .match-top .status,
.arena-state-card.team .signup-state .match-top .status,
.watch-meta-row .status,
.glory-live-card b.glory-live-status,
.hs-status,
.hb-head p span.hb-status{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  width:auto!important;
  height:auto!important;
  padding:6px 10px!important;
  border-radius:12px!important;
  border:1px solid transparent!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1!important;
  white-space:nowrap!important;
}
.status::before,
.solo-state-pill::before,
.team-live-title .status::before,
.arena-state-card.team .live-state .match-top .status::before,
.arena-state-card.team .signup-state .match-top .status::before,
.watch-meta-row .status::before,
.glory-live-card b.glory-live-status::before,
.hs-status::before,
.hb-head p span.hb-status::before{
  content:""!important;
  display:inline-block!important;
  width:8px!important;
  height:8px!important;
  border-radius:999px!important;
  margin:0!important;
  flex:0 0 auto!important;
}
.team-live-title .status::after{display:none!important}

/* green — live */
.status.live,
.solo-state-pill,
.team-live-title .status,
.arena-state-card.team .live-state .match-top .status,
.watch-meta-row .status,
.glory-live-card b.glory-live-status,
.hs-status.live,
.hb-head p span.hb-status.live{background:var(--success-tint)!important;color:var(--success)!important;border-color:transparent!important}
.status.live::before,
.solo-state-pill::before,
.team-live-title .status::before,
.arena-state-card.team .live-state .match-top .status::before,
.watch-meta-row .status::before,
.glory-live-card b.glory-live-status::before,
.hs-status.live::before,
.hb-head p span.hb-status.live::before{background:var(--success-bright)!important}

/* gold — open / registered / qualifying */
.status.open,.status.booked,
.arena-state-card.team .signup-state .match-top .status,
.hs-status.open,.hs-status.booked,.hs-status.qual,
.hb-head p span.hb-status.open,
.hb-head p span.hb-status.booked,
.hb-head p span.hb-status.qual{background:rgba(244,182,63,.12)!important;color:#f4d58a!important;border-color:transparent!important}
.status.open::before,.status.booked::before,
.arena-state-card.team .signup-state .match-top .status::before,
.hs-status.open::before,.hs-status.booked::before,.hs-status.qual::before,
.hb-head p span.hb-status.open::before,
.hb-head p span.hb-status.booked::before,
.hb-head p span.hb-status.qual::before{background:#f4b63f!important}

/* grey — ended / upcoming / unspecified */
.status,
.status.ended,
.hs-status.ended,.hs-status.soon,
.hb-head p span.hb-status.ended,
.hb-head p span.hb-status.soon{background:rgba(255,255,255,.06)!important;color:#b8c0cc!important;border-color:transparent!important}
.status::before,
.status.ended::before,
.hs-status.ended::before,.hs-status.soon::before,
.hb-head p span.hb-status.ended::before,
.hb-head p span.hb-status.soon::before{background:#8a94a3!important}

/* ============================================================
   Sidebar / preview achievement chips (2026-07-10, Hector)
   The pale pastel-gradient + white-gloss look read as cheap on
   the dark card. Restyle as premium dark medallions: tinted dark
   fill, accent glyph, thin ring, no white inner-gloss.
   ============================================================ */
.profile-widget-badges .badge-slot[data-achievement],
.decor-badges .badge-slot[data-achievement]{
  background:var(--dark-elevated,#2a2a2a)!important;
  border:1px solid var(--line-strong,#4a4a4a)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 3px 8px rgba(0,0,0,.4)!important;
}
.profile-widget-badges .badge-slot[data-achievement]::before,
.decor-badges .badge-slot[data-achievement]::before{
  box-shadow:none!important;
  text-shadow:0 1px 2px rgba(0,0,0,.55)!important;
  font-weight:900!important;
}
.profile-widget-badges .badge-slot[data-achievement-type="streak"],
.decor-badges .badge-slot[data-achievement-type="streak"]{
  background:radial-gradient(circle at 50% 32%,rgba(24,185,130,.34),rgba(24,185,130,.07) 72%)!important;
  border-color:rgba(24,185,130,.55)!important;
  --achievement-ink:#57e2b4!important;
}
.profile-widget-badges .badge-slot[data-achievement-type="first-crown"],
.decor-badges .badge-slot[data-achievement-type="first-crown"]{
  background:radial-gradient(circle at 50% 32%,rgba(244,182,63,.36),rgba(244,182,63,.07) 72%)!important;
  border-color:rgba(244,182,63,.6)!important;
  --achievement-ink:#f6cd76!important;
}

/* ============================================================
   Avatar face-centering (2026-07-10, Hector)
   The circular portrait art sits slightly left-of-centre (extra
   background on the right), which reads as an off-centre photo.
   A gentle centre-crop zoom pulls the framing in so the face
   centres and the side crescent disappears. Applies to the
   .avatar image system (account / nav / profile / settings).
   ============================================================ */
.avatar img{transform:scale(1.16);transform-origin:50% 40%}

/* ============================================================
   UNIFIED TABLES & LISTS (2026-07-13, approved via preview)
   Converge 钱包流水 / 我的赛事 / 赛事历史 onto one token spec:
   card container · --line internal dividers · consistent row
   rhythm · --bg-soft hover · muted table header · right-aligned
   tabular numbers (profit=--success-bright, loss=--danger-bright).
   CSS-only harmonization — markup, filters and JS renderers untouched.
   ============================================================ */

/* ── List surface A: wallet transactions (wallet.html) ── */
.wallet-tx-list{gap:0;background:var(--card);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.wallet-tx-row{border-radius:0;border-bottom:1px solid var(--line);padding:0 16px;min-height:60px}
.wallet-tx-list .wallet-tx-row:last-child{border-bottom:0}
.wallet-tx-row:hover{background:var(--bg-soft)}
.wallet-tx-row.out .wallet-tx-icon{background:rgba(225,45,57,.14);color:var(--danger-bright)}
.wallet-tx-amount{font-size:14px;font-variant-numeric:tabular-nums;text-align:right}
.wallet-tx-amount.profit{color:var(--success-bright)}
.wallet-tx-amount.loss{color:var(--danger-bright)}

/* ── List surface B: 我的赛事 (arena.html mine-stream) ── */
.mine-stream-list .mini-event-row{border-bottom:1px solid var(--line);padding:14px 18px;min-height:60px}
.mine-stream-list .mini-event-row:last-child{border-bottom:0}
.mine-stream-list .mini-event-row:hover{background:var(--bg-soft)}
.mine-stream-list .mini-event-result b,
.mine-stream-list .mini-event-result em{font-variant-numeric:tabular-nums}
.mine-stream-list .mini-event-result em{color:var(--success-bright)}

/* ── Data table: 赛事历史 / 回放列表 (replay list) ── */
.replay-table-head{background:var(--bg-soft);color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.04em;padding:12px 18px}
.replay-row{border-bottom:1px solid var(--line);min-height:56px;padding:0 18px;align-content:center}
.replay-list .replay-row:last-child{border-bottom:0}
.replay-row:hover,.replay-row.active{background:var(--bg-soft)}
/* right-align the numeric columns (参赛人数 col3, 冠军收益 col5) in both head + rows */
.replay-table-head span:nth-child(3),.replay-row>span:nth-child(3),
.replay-table-head span:nth-child(5),.replay-row>span:nth-child(5),
.replay-row .replay-profit{text-align:right}
.replay-profit{color:var(--success-bright);font-variant-numeric:tabular-nums}
