:root{
  --bg:#f3f3f3;
  --card:#ffffff;
  --ink:#101010;
  --muted:#5f6670;
  --black:#111111;
  --line:#d9d9d9;
  --blue:#0866ff;
  --fb:#1877F2;
  --wa:#25D366;
}
*{box-sizing:border-box}
body{font-family:Arial,sans-serif;margin:0;background:var(--bg);color:var(--ink);font-size:16px}
.site-header{background:var(--black);color:white;padding:10px 22px;display:flex;gap:18px;align-items:center;position:sticky;top:0;z-index:10;box-shadow:0 2px 10px #0003}
.brand-link{display:flex;align-items:center;justify-content:center;width:58px;height:58px;border:none!important;background:transparent!important;padding:0!important;margin:0!important;flex:0 0 auto}
.jdi-header-logo{width:58px;height:58px;border-radius:50%;object-fit:cover;display:block;background:#111}
.main-nav{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:100%}
.main-nav a{color:white;text-decoration:none;font-weight:800;min-height:42px;padding:9px 18px;border-radius:999px;border:1px solid rgba(255,255,255,.55);display:inline-flex;align-items:center;justify-content:center;line-height:1.1;background:rgba(255,255,255,.03);white-space:nowrap;transition:.15s ease}
.main-nav a:hover{background:rgba(255,255,255,.12);transform:translateY(-1px)}
.main-nav .social{width:42px;height:42px;min-height:42px;padding:0;border:none;border-radius:50%;font-size:26px;font-weight:900;line-height:1}
.main-nav .fb{background:var(--fb)}
.main-nav .wa-link{background:var(--wa)}
.main-nav .support-top{background:var(--blue);border:none;padding:9px 20px;min-height:42px}
.wa-logo{display:inline-block;width:28px;height:28px;border:3px solid #fff;border-radius:50%;position:relative}
.wa-logo:before{content:"";position:absolute;width:9px;height:15px;border:4px solid #fff;border-top:none;border-left:none;border-radius:3px;transform:rotate(43deg);left:7px;top:3px}
.wa-logo:after{content:"";position:absolute;left:-4px;bottom:-6px;width:12px;height:12px;background:var(--wa);border-left:3px solid #fff;border-bottom:3px solid #fff;transform:rotate(12deg) skew(-18deg)}
main{padding:24px 28px}.card{background:var(--card);border-radius:14px;padding:24px 28px;margin:0 0 22px;box-shadow:0 2px 12px #0001}h1{font-size:38px;margin:0 0 24px}h2{font-size:28px;margin:24px 0 14px}table{width:100%;border-collapse:collapse;background:white;margin:12px 0 24px}th{background:#111;color:white;text-align:left;padding:13px 16px;font-weight:900}td{padding:12px 16px;border-bottom:1px solid #ddd;vertical-align:middle}input,select,button{padding:10px 14px;border-radius:8px;border:1px solid #ccc;font-size:16px}button,.btn{background:#111;color:white;border:0;text-decoration:none;padding:10px 14px;border-radius:8px;display:inline-block;font-weight:800}.danger{background:#b00020}.pay{background:#0b5cff}.form{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;align-items:end}.kpis,.leaders{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.kpi,.mini-kpi{background:#111;color:white;border-radius:12px;padding:18px}.kpi span,.mini-kpi span{color:#bbb}.kpi strong,.mini-kpi strong{display:block;font-size:30px;margin-top:8px}.mini-kpi{min-height:90px}.players-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:22px}.active-podium{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin:0 0 24px}.active-player{background:#fff;border-radius:16px;padding:18px;text-align:center;text-decoration:none;color:#111;box-shadow:0 2px 12px #0001;display:flex;flex-direction:column;align-items:center;gap:8px}.active-avatar{width:112px;height:112px;border-radius:50%;overflow:hidden;background:#202020;display:flex;align-items:center;justify-content:center;border:4px solid #eee}.active-avatar img{width:100%;height:100%;object-fit:cover}.active-player span{color:#666}.leader,.hofcard{background:white;border-radius:14px;padding:16px;box-shadow:0 2px 10px #0001;text-align:center}.hof{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,320px));gap:18px;align-items:start}.hofphoto{display:block;width:100%;height:auto;max-height:360px;object-fit:contain;background:#fff;border-radius:12px}.hof-placeholder{height:260px;background:linear-gradient(135deg,#232323,#0f0f0f);border:1px solid #333}.photo{max-width:280px;border-radius:14px;display:block;margin:6px 0 20px}.player-placeholder{width:280px;height:280px;max-width:100%;background:radial-gradient(circle at 50% 35%,#414141 0 18%,#171717 19% 100%);border:1px solid #333;display:flex;align-items:center;justify-content:center}.player-placeholder span{width:55%;height:70%;display:block;border-radius:50% 50% 38% 38%;background:linear-gradient(#111,#333);opacity:.75}.badge{display:inline-block;padding:5px 10px;border-radius:999px;background:#eee}.source-stage{background:#e8f1ff}.source-women{background:#ffe8f2}.source-daily{background:#e9fff5}.source-main{background:#fff7dc}.whatsapp{position:fixed;right:22px;bottom:22px;background:var(--wa);color:white;width:58px;height:58px;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none;box-shadow:0 4px 14px #0004;z-index:12}.status-dot{display:inline-block;width:13px;height:13px;border-radius:50%}.active-dot{background:#22c55e}.inactive-dot{background:#ef4444}details{background:#eee;border-radius:10px;padding:12px;margin-top:16px}.rules h1{text-align:center}.rules p{line-height:1.55}.event-section{background:#fff;border-radius:16px;margin:0 0 24px;padding:18px 18px 4px;box-shadow:0 2px 12px #0001}.event-section h2{margin:0 0 10px;display:flex;align-items:center;gap:10px}.event-type-icon{font-size:22px}.status-badge{display:inline-block;border-radius:999px;padding:5px 12px;background:#e8eefc}.status-planned{background:#e8eefc}.status-open{background:#e9fff5}.status-completed{background:#eee}.status-cancelled{background:#ffe8e8}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-top:20px}.admin-card{background:#111;color:#fff;text-decoration:none;font-weight:800;font-size:20px;border-radius:14px;padding:26px 18px;text-align:center;box-shadow:0 4px 14px #0002}.admin-card:hover{transform:translateY(-1px);box-shadow:0 6px 18px #0003}.player-profile p{line-height:1.6;font-size:18px}
@media(max-width:900px){.site-header{align-items:flex-start}.main-nav{gap:7px}.main-nav a{padding:8px 12px}.brand-link,.jdi-header-logo{width:50px;height:50px}main{padding:18px}h1{font-size:32px}}


/* V6.7.5-fix confirmed adjustments */
.brand-link{width:54px!important;height:54px!important;border-radius:50%!important;background:#fff!important;padding:4px!important;border:0!important;overflow:hidden!important}
.jdi-header-logo{width:46px!important;height:46px!important;border-radius:50%!important;object-fit:cover!important;background:#111!important}
.main-nav a{min-height:40px!important;padding:8px 18px!important;border-radius:999px!important}
.main-nav .support-top{min-height:42px!important;padding:9px 22px!important;border-radius:999px!important}
.main-nav .social{width:42px!important;height:42px!important;min-height:42px!important;padding:0!important}
.wa-link,.whatsapp{background:#25D366!important}
.wa-svg{width:30px;height:30px;display:block;fill:#fff}.whatsapp .wa-svg{width:34px;height:34px}
.wa-logo{display:none!important}
.home-hero-grid{display:grid;grid-template-columns:minmax(250px,1fr) minmax(360px,1.4fr);gap:18px;align-items:stretch}.home-active{background:#111;color:#fff;border-radius:12px;padding:14px 18px}.home-active h2{font-size:22px;margin:0 0 10px}.home-active .active-podium{margin:0}.home-active .active-player{background:#181818;color:#fff;box-shadow:none;border:1px solid #333;padding:12px}.home-active .active-player span,.home-active .active-player small{color:#ddd}.home-active .active-avatar{width:72px;height:72px;border-width:3px}.register-btn{background:#22c55e!important;color:#fff!important;border-radius:999px!important;padding:8px 18px!important;text-align:center}.register-card{border:1px solid #d2f8df;background:#f6fff9}.player-placeholder,.placeholder-img{object-fit:cover!important;object-position:center!important;background:#111!important}.photo.placeholder-img{width:280px;height:280px;max-width:100%;border-radius:14px}.active-avatar .placeholder-img{width:100%;height:100%;border-radius:50%}.active-podium{grid-template-columns:repeat(3,minmax(180px,1fr));align-items:stretch}.active-player{position:relative;min-height:180px;justify-content:center}.active-first{border:1px solid #e8b100}.podium-medal{position:absolute;top:12px;left:12px;font-size:22px}.hof{justify-content:center;align-items:stretch}.hof-stage{justify-content:start}.hofcard{display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.hofphoto{width:100%;max-width:320px;height:auto!important;max-height:none!important;object-fit:contain!important;background:#fff;border-radius:12px}.hof-titles{background:transparent!important;padding:0!important;margin:0!important}.hof-titles summary{cursor:pointer;color:#0645ad;text-decoration:underline;list-style:none}.hof-titles ul{margin:8px 0 0;padding-left:18px;text-align:left}.event-section table th:first-child,.event-section table td:first-child{width:54px;text-align:center}
@media(max-width:1000px){.home-hero-grid{grid-template-columns:1fr}.active-podium{grid-template-columns:1fr}.main-nav{gap:7px}.main-nav a{padding:8px 12px!important}}



/* V6.7.5-logo-polish */
.site-header {
  padding-left: 14px !important;
}

.brand-link {
  width: 70px !important;
  min-width: 70px !important;
  height: 70px !important;
  padding: 0 !important;
  margin-right: 4px !important;
}

.jdi-header-logo {
  width: 64px !important;
  height: 64px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
  border: 2px solid #fff !important;
  background: #111 !important;
  padding: 0 !important;
  box-shadow: none !important;
}



/* V6.7.6 functional polish */
.active-stat {
  display:flex;
  flex-direction:column;
  align-items:center;
  line-height:1.15;
  margin-top:2px;
}
.active-stat span {
  font-size:13px;
  color:#cfcfcf !important;
}
.active-stat b {
  color:#fff;
  font-size:18px;
}
.active-player > span:not(.podium-medal),
.active-player > small {
  display:none !important;
}

.admin-pending {
  display:inline-flex;
  align-items:center;
  gap:14px;
  background:#fff;
  color:#111;
  border:1px solid #ddd;
  border-radius:999px;
  padding:8px 16px;
  margin:0 0 18px;
  text-decoration:none;
  box-shadow:0 2px 10px #0001;
  font-weight:800;
}
.admin-pending span { color:#555; }
.admin-pending strong { font-size:22px; }
.admin-pending.has-pending {
  background:#fff7dc;
  border-color:#f0c14b;
}

.hof {
  justify-content:center;
  align-items:start !important;
}
.hof-stage { justify-content:start; }
.hofcard {
  align-self:start !important;
  height:auto !important;
}
.hof-titles {
  background:transparent !important;
  margin:0 !important;
  padding:0 !important;
}
.hof-titles summary {
  cursor:pointer;
  color:#0645ad;
  text-decoration:underline;
  list-style:none;
  font-size:18px;
}
.hof-season-group {
  margin:10px 0 0;
  text-align:left;
}
.hof-season-group b {
  display:block;
  margin-bottom:4px;
}
.hof-season-group ul {
  margin:0 0 8px 20px;
  padding:0;
}



/* V6.7.7 functional stability */
.registration-closed {
  display:inline-block;
  background:#ffe8e8;
  color:#b00020;
  font-weight:800;
  border-radius:999px;
  padding:8px 14px;
}
.registration-open-label { color:#148a3b; font-weight:800; }
.registration-closed-label { color:#b00020; font-weight:800; }
.register-closed-card { border:1px solid #ffd0d0; background:#fff8f8; }
.daily-waiting, .daily-ready { display:block; margin-top:8px; font-weight:800; }
.daily-waiting { color:#f59e0b; }
.daily-ready { color:#22c55e; }
.admin-dashboard {
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:16px;
  margin:0 0 22px;
}
.admin-alert-card {
  background:#fff;
  color:#111;
  border-radius:12px;
  padding:18px;
  text-decoration:none;
  box-shadow:0 2px 12px #0001;
  border:1px solid #ddd;
  font-weight:800;
}
.admin-alert-card span,
.admin-alert-card small { display:block; color:#555; }
.admin-alert-card strong { display:block; font-size:30px; margin:8px 0; }
.admin-alert-card.has-pending { background:#fff3c4; border-color:#f2c84b; }
.kpi small { display:block; margin-top:6px; color:#bbb; font-size:14px; }


/* V6.7.8 Home + Admin compact dashboard */
.home-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.home-title-row h1{margin-bottom:18px}.home-player-count{display:inline-flex;align-items:center;gap:8px;background:#111;color:#fff;border-radius:999px;padding:10px 16px;font-weight:900;white-space:nowrap}.home-player-count strong{font-size:26px;line-height:1}.home-player-count small{color:#ddd;font-size:14px}.home-top-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(260px,.8fr) minmax(420px,1.4fr);gap:18px;align-items:stretch}.home-rank-card,.home-active{background:#111;color:#fff;border-radius:12px;padding:16px 18px;min-height:260px}.home-rank-card h2,.home-active h2{font-size:22px;margin:0 0 14px}.rank-mini-list{display:flex;flex-direction:column;gap:10px}.rank-mini-row{display:grid;grid-template-columns:34px 58px 1fr;gap:10px;align-items:center;text-decoration:none;color:#fff;background:#181818;border:1px solid #333;border-radius:12px;padding:9px 10px}.rank-mini-row:hover{background:#222}.rank-medal{font-size:22px;text-align:center}.rank-mini-avatar{width:58px;height:58px;border-radius:50%;overflow:hidden;background:#202020;border:2px solid #eee;display:flex}.rank-mini-avatar img{width:100%;height:100%;object-fit:cover}.rank-mini-info strong{display:block;font-size:17px;line-height:1.15}.rank-mini-info small{display:block;color:#d7d7d7;margin-top:4px;font-size:15px}.home-rank-card .muted{color:#bbb}.home-active .active-podium.compact{grid-template-columns:repeat(3,minmax(130px,1fr));gap:12px;margin:0}.home-active .active-player{min-height:210px}.home-active .active-avatar{width:72px;height:72px}.admin-summary{display:flex;align-items:center;gap:20px;flex-wrap:wrap;background:#fff;border:1px solid #ddd;border-radius:999px;padding:10px 18px;margin:0 0 22px;width:max-content;max-width:100%;box-shadow:0 2px 10px #0001;font-size:17px}.admin-summary span,.admin-summary a{color:#111;text-decoration:none}.admin-summary b{font-size:20px}.admin-summary-pending.has-pending{color:#b45309;font-weight:900}.admin-summary-pending.has-pending b{color:#dc2626}
@media(max-width:1200px){.home-top-grid{grid-template-columns:1fr}.home-active .active-podium.compact{grid-template-columns:repeat(3,minmax(130px,1fr))}}@media(max-width:700px){.home-title-row{flex-direction:column}.home-active .active-podium.compact{grid-template-columns:1fr}.admin-summary{border-radius:16px;width:100%;align-items:flex-start}}

/* V6.8.0 Admin CMS Foundation */
.admin-compact-stats{display:flex;flex-wrap:wrap;gap:18px;align-items:center;background:#fff;border:1px solid #ddd;border-radius:999px;padding:10px 18px;margin:0 0 18px;box-shadow:0 2px 10px rgba(0,0,0,.06);width:max-content;max-width:100%}.admin-compact-stats span,.admin-compact-stats a{white-space:nowrap;color:#333;text-decoration:none}.admin-compact-stats b{font-size:18px}.admin-compact-stats .pending-hot{color:#c2410c}.settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:18px}.settings-card label,.rule-editor label{display:flex;flex-direction:column;gap:6px;margin:0 0 12px;font-weight:800}.settings-card label span,.rule-editor label span{color:#555;font-size:14px}.settings-note{color:#666;font-size:14px}.settings-save{margin:8px 0 24px}.error-card{background:#ffe8e8;color:#8a0015;border:1px solid #ffb3b3}.rule-editor textarea{width:100%;min-height:520px;font-family:Consolas,monospace;line-height:1.45}.checkbox-row{flex-direction:row!important;align-items:center;gap:10px!important}.checkbox-row input{width:auto}.secondary{background:#666!important;margin-left:8px}.rules-intro{margin-bottom:18px}.rules h1{font-size:32px;text-align:left;margin:0 0 18px}.rules h2{font-size:23px;margin:24px 0 12px}.rules p{line-height:1.58;margin:0 0 10px}.rule-section{background:#fff;border-radius:14px;padding:0;margin:0 0 14px;box-shadow:0 2px 12px #0001;overflow:hidden}.rule-section summary{cursor:pointer;list-style:none;font-size:21px;font-weight:900;padding:18px 22px;background:#111;color:#fff}.rule-section .rules{padding:22px 26px}


/* v6.8.2 polish */
.result-form{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px 18px;align-items:end}
.result-form label{display:flex;flex-direction:column;gap:6px;font-weight:800}
.result-form label span{color:#555;font-size:14px}
.result-form .btn,.result-form button{min-height:48px}
.result-form .secondary{display:flex;align-items:center;justify-content:center;text-decoration:none;background:#666!important}

/* v6.8.3 Player Stats + Results Polish */
.active-podium:not(.compact) .active-stat span{color:#666!important}
.active-podium:not(.compact) .active-stat b{color:#111!important}
.home-active .active-podium.compact .active-stat span{color:#ddd!important}
.home-active .active-podium.compact .active-stat b{color:#fff!important}
.player-extra-stats{margin-top:16px}
.achievement-card{background:#111;color:#fff;border-radius:14px;padding:18px;margin-top:18px;box-shadow:0 2px 12px #0001;display:flex;flex-direction:column;gap:6px;max-width:360px}
.achievement-card span{color:#bbb}.achievement-card strong{font-size:26px}.achievement-card small{color:#ddd}.nine-dart-card strong{letter-spacing:.3px}
.registration-event-group{background:#f4f4f4;border-radius:12px;padding:12px;margin:12px 0}
.registration-event-group summary{cursor:pointer}
.result-form input::placeholder{color:#777}

/* v6.8.5 clickable player count */
a.home-player-count{text-decoration:none}

/* v6.8.6 Season recap */
.recap-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:18px;
  margin:18px 0;
}
/* v6.8.7 Season Close Workflow */
.success-card{background:#e8fff1;color:#065f2a;border:1px solid #9ee6b8}

/* v6.8.8 Player Profile UI/UX */
.player-profile-v2{padding:28px}
.player-profile-grid{display:grid;grid-template-columns:minmax(260px,350px) minmax(0,1fr);gap:32px;align-items:start}
.player-identity{min-width:0}
.player-identity h1{margin:0 0 18px;font-size:38px;line-height:1.1}
.player-identity .photo{display:block;width:100%;max-width:350px;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:16px;background:#171717}
.player-meta{display:grid;grid-template-columns:1fr;gap:0;margin-top:18px;border:1px solid #e5e5e5;border-radius:14px;overflow:hidden}
.player-meta>div{display:grid;grid-template-columns:105px minmax(0,1fr);gap:12px;padding:10px 14px;border-bottom:1px solid #ececec;align-items:center}
.player-meta>div:last-child{border-bottom:0}
.player-meta span{color:#666;font-size:14px}
.player-meta strong{font-size:16px;overflow-wrap:anywhere}
.player-dashboard{display:flex;flex-direction:column;gap:20px;min-width:0}
.player-stat-section{background:#f7f7f7;border:1px solid #e5e5e5;border-radius:16px;padding:18px}
.player-stat-section h2{font-size:19px;margin:0 0 14px}
.player-stat-grid{display:grid;gap:12px}
.match-stats,.performance-stats{grid-template-columns:repeat(4,minmax(0,1fr))}
.tournament-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
.player-stat{position:relative;background:#111;color:#fff;border-radius:14px;padding:16px;min-height:112px;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden}
.player-stat .stat-icon{position:absolute;right:12px;top:10px;font-size:22px;opacity:.9}
.player-stat small{color:#cfcfcf;font-size:14px;line-height:1.2;padding-right:28px}
.player-stat strong{font-size:29px;line-height:1.1;margin-top:8px}
.player-stat.featured{border:1px solid #d6aa38;box-shadow:inset 0 0 0 1px rgba(255,215,100,.12)}
.nine-dart-achievement{display:flex;align-items:center;gap:15px;border:1px solid #dfdfdf;background:linear-gradient(135deg,#f7f7f7,#fff);border-radius:16px;padding:17px 20px;max-width:420px}
.nine-dart-symbol{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#111;font-size:25px;flex:0 0 auto}
.nine-dart-achievement small{display:block;color:#666;font-size:14px;margin-bottom:3px}
.nine-dart-achievement strong{display:block;color:#111;font-size:23px;line-height:1.1}
.nine-dart-achievement.achieved{background:linear-gradient(135deg,#fff5c7,#ffe28a);border-color:#d4a72c;box-shadow:0 8px 25px rgba(159,113,0,.16)}
.nine-dart-achievement.achieved .nine-dart-symbol{background:#9a6b00}
.player-profile-v2+ h2{margin-top:28px}

@media(max-width:1050px){
  .player-profile-grid{grid-template-columns:280px minmax(0,1fr);gap:22px}
  .match-stats,.performance-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  .player-profile-v2{padding:18px}
  .player-profile-grid{grid-template-columns:1fr;gap:24px}
  .player-identity h1{font-size:32px}
  .player-identity .photo{max-width:100%;aspect-ratio:1/1}
  .player-meta>div{grid-template-columns:90px minmax(0,1fr)}
  .match-stats,.performance-stats,.tournament-stats{grid-template-columns:repeat(2,minmax(0,1fr))}
  .player-stat{min-height:104px;padding:14px}
  .player-stat strong{font-size:25px}
  .nine-dart-achievement{max-width:none}
}
@media(max-width:430px){
  .match-stats,.performance-stats,.tournament-stats{grid-template-columns:1fr}
  .player-stat{min-height:92px}
  .player-meta>div{grid-template-columns:1fr;gap:3px}
}


/* v6.8.9 Design System Foundation + Event Time */
:root{
  --jdi-bg:#f3f4f6;
  --jdi-surface:#ffffff;
  --jdi-surface-dark:#101112;
  --jdi-surface-dark-2:#181a1d;
  --jdi-text:#101214;
  --jdi-muted:#66707c;
  --jdi-border:#dfe3e8;
  --jdi-accent:#d8b24b;
  --jdi-blue:#0866ff;
  --jdi-radius:16px;
  --jdi-shadow:0 8px 28px rgba(15,20,28,.08);
}
body{background:var(--jdi-bg);color:var(--jdi-text)}
a{color:#174ea6;text-underline-offset:2px}
a:visited{color:#174ea6}
.card{border:1px solid rgba(15,20,28,.04);border-radius:var(--jdi-radius);box-shadow:var(--jdi-shadow)}
.site-header{border-bottom:1px solid rgba(216,178,75,.28)}
.main-nav a{gap:8px;border-radius:10px;border-color:rgba(255,255,255,.48);padding:9px 14px}
.main-nav a:visited{color:#fff}
.nav-icon,.ui-icon,.event-svg-icon,.section-svg-icon,.player-count-icon{
  display:inline-block;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round
}
.nav-icon{width:19px;height:19px}
.event-svg-icon{width:24px;height:24px;color:var(--jdi-accent)}
.section-svg-icon{width:27px;height:27px;color:var(--jdi-accent)}
.player-count-icon{width:22px;height:22px;color:var(--jdi-accent)}
.event-section{background:var(--jdi-surface);border:1px solid var(--jdi-border);border-radius:var(--jdi-radius);padding:18px 20px;margin:0 0 22px;box-shadow:var(--jdi-shadow)}
.event-section h2{display:flex;align-items:center;gap:10px;margin:0 0 14px;font-size:25px}
.event-section .table-scroll{margin:0}
.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border-radius:12px}
.table-scroll table{min-width:840px;margin:0}
table{border:1px solid var(--jdi-border);border-radius:12px;overflow:hidden}
th{background:var(--jdi-surface-dark);letter-spacing:.01em}
td{background:#fff}
.status-badge{display:inline-flex;align-items:center;justify-content:center;min-width:84px;padding:7px 12px;border-radius:999px;font-weight:800;font-size:14px}
.status-planned{background:#e8eefc;color:#234a91}
.status-open{background:#e7f8ed;color:#116633}
.status-completed{background:#eceff2;color:#38424d}
.status-cancelled{background:#fde8e8;color:#a01818}
.event-count-badge{display:inline-flex;min-width:34px;justify-content:center;padding:5px 9px;border-radius:999px;background:#f0f2f5;font-weight:800}
.home-player-count{transition:transform .15s ease,box-shadow .15s ease}
.home-player-count:hover{transform:translateY(-1px);box-shadow:0 7px 20px rgba(0,0,0,.18)}

@media(max-width:900px){
  main{padding:18px 14px}
  .site-header{padding:8px 10px!important;align-items:flex-start}
  .brand-link{width:58px!important;min-width:58px!important;height:58px!important}
  .jdi-header-logo{width:54px!important;height:54px!important}
  .main-nav{gap:7px}
  .main-nav a{min-height:38px;padding:8px 10px;font-size:14px}
  .nav-icon{width:17px;height:17px}
  .event-section{padding:15px 14px}
  .event-section h2{font-size:22px}
}
@media(max-width:620px){
  h1{font-size:31px}
  h2{font-size:23px}
  .main-nav a{gap:6px}
  .main-nav .social{width:38px;height:38px;min-height:38px}
  .main-nav .support-top{padding:8px 12px}
  .event-section{border-radius:13px}
  .home-player-count{align-self:flex-start}
}


/* v7.3 Footer CMS */
.site-footer{margin-top:54px;background:#0d0f12;color:#fff;border-top:1px solid rgba(216,178,75,.34)}
.site-footer-inner{max-width:1450px;margin:0 auto;padding:38px 28px 30px;display:grid;grid-template-columns:minmax(240px,1.35fr) repeat(3,minmax(160px,1fr));gap:38px}
.footer-brand{max-width:390px}.footer-logo{width:92px;height:92px;object-fit:contain;border-radius:50%;display:block;margin-bottom:16px}.footer-brand p{color:#c7cbd1;line-height:1.65;margin:0;font-size:15px}
.footer-column h2{color:#fff;font-size:17px;margin:0 0 15px;letter-spacing:.02em}.footer-nav,.footer-socials{display:flex;flex-direction:column;gap:9px}.footer-nav a,.footer-socials a{color:#c7cbd1;text-decoration:none;font-size:15px}.footer-nav a:hover,.footer-socials a:hover{color:#e4c461}
.footer-partner-list{display:flex;flex-wrap:wrap;gap:10px}.footer-partner{display:flex;align-items:center;justify-content:center;min-width:78px;min-height:54px;max-width:140px;padding:8px 10px;background:#fff;border:1px solid #30343a;border-radius:10px;color:#111;text-decoration:none}.footer-partner img{display:block;max-width:116px;max-height:44px;object-fit:contain}.footer-partner span{font-size:13px;font-weight:800;text-align:center}
.footer-bottom{border-top:1px solid #282c32;color:#949aa3;text-align:center;padding:16px 20px;font-size:13px}
.footer-current-logo{display:flex;align-items:center;gap:12px;margin:9px 0}.footer-current-logo img,.admin-partner-logo{width:72px;height:52px;object-fit:contain;background:#fff;border:1px solid #ddd;border-radius:8px;padding:4px}.footer-settings-card,.footer-partners-admin{margin-bottom:20px}.footer-settings-card textarea{width:100%;resize:vertical}.footer-partners-admin .table-scroll{margin-top:16px}.footer-search{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:14px 0}.footer-search input{min-width:260px;flex:1}.footer-add-partner{background:#f5f6f8;border:1px solid #dfe3e8;border-radius:12px;margin:14px 0;padding:0}.footer-add-partner summary{cursor:pointer;font-weight:900;padding:15px 18px}.footer-add-partner .footer-partner-form{padding:0 18px 18px}.footer-partner-form .form{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.footer-partner-form label{display:flex;flex-direction:column;gap:6px;font-weight:800}.row-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row-actions a{display:inline-flex;align-items:center;justify-content:center;min-width:34px;padding:6px 9px;border-radius:7px;background:#eceff3;color:#111;text-decoration:none;font-weight:800}.row-actions .danger-link{background:#ffe7e7;color:#a40018}
@media(max-width:980px){.site-footer-inner{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.site-footer-inner{grid-template-columns:1fr;padding:30px 20px;gap:27px}.footer-brand{max-width:none}.footer-search input{min-width:100%}}

/* v7.4 Responsive Polish — public layout only */
html{overflow-x:hidden}
body{min-width:0;overflow-x:hidden}
img,svg,video{max-width:100%}
main{width:100%;min-width:0}
.card,.event-section,.player-profile-v2,.admin-page{min-width:0}

/* Large desktop: keep long lines readable without shrinking the interface. */
@media(min-width:1600px){
  main{max-width:1880px;margin-left:auto;margin-right:auto;padding-left:36px;padding-right:36px}
  .site-header{padding-left:28px;padding-right:28px}
}

/* Laptop and small desktop. Keep navigation on one horizontal rail instead of wrapping. */
@media(max-width:1450px){
  .site-header{gap:12px;padding:9px 14px}
  .brand-link{width:54px;height:54px}
  .jdi-header-logo{width:54px;height:54px}
  .main-nav{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;padding:2px 2px 5px;scrollbar-width:thin;scrollbar-color:#465165 transparent}
  .main-nav a{flex:0 0 auto;padding:8px 13px;font-size:15px}
  .main-nav .social{width:40px;height:40px;min-height:40px}
  .main-nav .support-top{padding-left:16px;padding-right:16px}
}

/* Tablet. */
@media(max-width:1024px){
  .site-header{position:sticky;align-items:center;padding:8px 10px;gap:10px}
  .brand-link{width:50px!important;min-width:50px!important;height:50px!important}
  .jdi-header-logo{width:50px!important;height:50px!important}
  .main-nav{width:calc(100% - 60px);gap:7px;padding-bottom:4px}
  .main-nav a{min-height:38px;padding:8px 11px;font-size:14px}
  .nav-icon{width:17px;height:17px}
  main{padding:18px 16px}
  .card{padding:20px;margin-bottom:18px}
  .event-section{padding:16px}
  .site-footer{margin-top:40px}
  .site-footer-inner{padding:34px 22px 28px;gap:30px}
  .footer-logo{width:82px;height:82px}
  .table-scroll{max-width:100%}
  input,select,textarea,button{max-width:100%}
}

/* Phone and narrow tablet. */
@media(max-width:700px){
  .site-header{padding:7px 8px;gap:8px}
  .brand-link{width:44px!important;min-width:44px!important;height:44px!important}
  .jdi-header-logo{width:44px!important;height:44px!important}
  .main-nav{width:calc(100% - 52px);gap:6px;scrollbar-width:none}
  .main-nav::-webkit-scrollbar{display:none}
  .main-nav a{min-height:36px;padding:7px 10px;font-size:13px;border-radius:9px}
  .main-nav .social{width:36px;height:36px;min-height:36px;font-size:22px}
  .main-nav .support-top{padding-left:12px;padding-right:12px}
  main{padding:14px 10px}
  h1{font-size:29px;line-height:1.12}
  h2{font-size:22px}
  h3{font-size:18px}
  .card{padding:16px;border-radius:13px;margin-bottom:14px}
  .event-section{padding:14px 12px;margin-bottom:15px}
  .event-section h2{font-size:21px;line-height:1.2;flex-wrap:wrap}
  .table-scroll{border-radius:10px}
  .table-scroll table{min-width:720px}
  table{font-size:14px}
  th,td{padding:9px 8px}
  .status-badge{min-width:74px;padding:6px 9px;font-size:12px}
  .form,.footer-partner-form .form{grid-template-columns:1fr!important}
  .row-actions{gap:6px}
  .whatsapp{width:54px;height:54px;right:14px;bottom:14px}
  .site-footer{margin-top:32px}
  .site-footer-inner{padding:28px 18px 24px;gap:24px}
  .footer-logo{width:78px;height:78px;margin-bottom:12px}
  .footer-column h2{margin-bottom:11px}
  .footer-nav,.footer-socials{gap:7px}
  .footer-bottom{padding:14px 16px}
}

/* Small phones. */
@media(max-width:430px){
  .site-header{gap:7px}
  .brand-link{width:40px!important;min-width:40px!important;height:40px!important}
  .jdi-header-logo{width:40px!important;height:40px!important}
  .main-nav{width:calc(100% - 47px)}
  .main-nav a{min-height:34px;padding:7px 9px;font-size:12.5px}
  .main-nav .social{width:34px;height:34px;min-height:34px}
  main{padding:11px 8px}
  h1{font-size:26px}
  h2{font-size:20px}
  .card{padding:14px 12px}
  .event-section{padding:12px 10px}
  .table-scroll table{min-width:660px}
  .players-heading-stats{gap:6px}
  .players-heading-count{padding:8px 6px}
  .players-heading-count small{font-size:10px}
  .players-heading-count strong{font-size:18px}
  .footer-logo{width:72px;height:72px}
  .footer-brand p,.footer-nav a,.footer-socials a{font-size:14px}
  .whatsapp{width:50px;height:50px;right:10px;bottom:10px}
}

/* v7.6 Home page */
.home-v76{display:flex;flex-direction:column;gap:26px}
.home-hero-v76{position:relative;overflow:hidden;min-height:420px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);align-items:center;gap:36px;padding:58px 64px;border:1px solid rgba(218,180,76,.48);border-radius:24px;background:radial-gradient(circle at 84% 20%,rgba(43,111,203,.24),transparent 34%),linear-gradient(135deg,#13243d 0%,#08111f 58%,#060a11 100%);box-shadow:0 28px 70px rgba(0,0,0,.28)}
.home-hero-v76::after{content:"";position:absolute;inset:auto -8% -55% 36%;height:380px;border:1px solid rgba(225,190,91,.13);border-radius:50%;transform:rotate(-8deg)}
.home-hero-copy{position:relative;z-index:1;max-width:830px}.home-eyebrow,.home-section-heading>p,.home-section-kicker{margin:0 0 10px;color:#e5c45e;font-size:13px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.home-hero-v76 h1{margin:0;color:#fff;font-size:clamp(48px,6vw,92px);line-height:.95;letter-spacing:-.045em;text-shadow:0 4px 24px rgba(0,0,0,.34)}
.home-subtitle{margin:22px 0 0;color:#dce8f7;font-size:clamp(20px,2.1vw,31px);line-height:1.3}.home-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.home-hero-actions .btn{min-width:142px;justify-content:center;padding:13px 24px;border-radius:999px}.home-primary-btn{background:#208cff!important;color:#fff!important;border-color:#4ba5ff!important}.home-secondary-btn{background:rgba(8,17,31,.65)!important;color:#fff!important;border-color:rgba(141,187,244,.4)!important}.home-hero-mark{position:relative;z-index:1;display:flex;justify-content:center;align-items:center}.home-hero-mark img{width:min(310px,82%);aspect-ratio:1;object-fit:contain;border-radius:50%;filter:drop-shadow(0 22px 35px rgba(0,0,0,.42))}
.home-section{padding:30px;border:1px solid rgba(107,153,211,.34);border-radius:20px;background:linear-gradient(145deg,rgba(20,41,69,.96),rgba(9,20,36,.98));box-shadow:0 16px 38px rgba(0,0,0,.18)}.home-section-heading{margin-bottom:20px}.home-section-heading h2{margin:0;color:#fff;font-size:31px}
.home-next-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.home-next-card{display:flex;flex-direction:column;min-height:270px;padding:24px;border:1px solid rgba(85,159,239,.45);border-radius:17px;background:linear-gradient(155deg,#142b4a,#0a1728)}.home-next-label{display:flex;align-items:center;gap:10px;color:#e4c35e;font-size:13px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.home-next-icon{width:24px;height:24px}.home-next-card h3{margin:22px 0 18px;color:#fff;font-size:27px;line-height:1.14}.home-next-card>p{color:#b9c8da}.home-event-meta{display:flex;gap:12px;flex-wrap:wrap;margin:auto 0 22px}.home-event-meta span{min-width:125px;padding:10px 13px;border:1px solid rgba(142,179,222,.22);border-radius:10px;background:rgba(5,13,24,.5);color:#fff}.home-event-meta b{display:block;margin-bottom:4px;color:#92a8c3;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.home-event-button{align-self:flex-start}.home-next-empty{justify-content:flex-start}
.home-champion-poster{padding:0;background:none;border:0;box-shadow:none}.home-champion-grid{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(420px,1.25fr);gap:20px}.home-champion-card,.home-season-poster{min-height:520px;border:1px solid rgba(220,181,76,.45);border-radius:20px;overflow:hidden;background:linear-gradient(155deg,#132944,#081421)}.home-champion-card{display:flex;flex-direction:column;padding:26px}.home-champion-photo{width:100%;height:315px;object-fit:contain;border-radius:15px;background:#07101c;border:1px solid rgba(255,255,255,.09)}.home-champion-copy{padding-top:20px}.home-champion-copy h2,.home-champion-empty h2{margin:0;color:#fff;font-size:31px}.home-champion-copy p,.home-champion-empty p{color:#b8c7d9}.home-text-link{display:inline-flex;gap:8px;align-items:center;color:#55a9ff;text-decoration:none;font-weight:900}.home-text-link:hover{color:#e5c45e}.home-season-poster{display:flex;align-items:center;justify-content:center;padding:12px}.home-season-poster img{display:block;width:100%;height:100%;max-height:650px;object-fit:contain;border-radius:13px}.home-poster-empty{min-height:520px;border-style:dashed;color:#8498b1;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.home-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0;background:none;border:0;box-shadow:none}.home-value-card{display:flex;align-items:center;justify-content:center;gap:13px;min-height:112px;padding:20px;border:1px solid rgba(108,158,218,.36);border-radius:17px;background:linear-gradient(145deg,#132a48,#091729)}.home-value-card h3{margin:0;color:#fff;font-size:22px}.home-value-icon{width:31px;height:31px;color:#e5c45e}
.home-partner-grid{display:flex;align-items:center;justify-content:center;gap:16px;flex-wrap:wrap}.home-partner-logo{display:flex;align-items:center;justify-content:center;width:190px;height:95px;padding:13px;border:1px solid rgba(255,255,255,.15);border-radius:14px;background:#fff;color:#111;text-decoration:none}.home-partner-logo img{max-width:100%;max-height:68px;object-fit:contain}.home-partner-logo span{font-weight:900;text-align:center}
.home-support-cta{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:36px 40px;border-color:rgba(221,181,73,.48);background:radial-gradient(circle at 82% 20%,rgba(43,119,212,.23),transparent 33%),linear-gradient(145deg,#142a47,#081320)}.home-support-cta h2{margin:0 0 10px;color:#fff;font-size:34px}.home-support-cta p:not(.home-section-kicker){max-width:760px;margin:0;color:#c4d1e0;line-height:1.6}.home-support-button{flex:0 0 auto;padding:13px 28px!important;border-radius:999px!important;background:#1e90ff!important;color:#fff!important}
.home-admin-poster{margin:18px 0}.home-admin-poster img{display:block;max-width:620px;max-height:430px;object-fit:contain;border:1px solid #d8dde5;border-radius:12px;background:#111}.remove-upload{display:flex;align-items:center;gap:8px;margin-top:10px}.remove-upload input{width:auto}
@media(max-width:1000px){.home-hero-v76{grid-template-columns:1fr;min-height:auto;padding:44px}.home-hero-mark{position:absolute;right:-40px;bottom:-70px;opacity:.18}.home-hero-mark img{width:330px}.home-champion-grid{grid-template-columns:1fr}.home-champion-card,.home-season-poster{min-height:auto}.home-season-poster{min-height:400px}}
@media(max-width:700px){.home-v76{gap:17px}.home-hero-v76{padding:36px 24px;border-radius:17px}.home-hero-v76 h1{font-size:46px}.home-subtitle{font-size:21px}.home-hero-actions{margin-top:27px}.home-hero-actions .btn{flex:1 1 130px}.home-section{padding:21px 17px;border-radius:16px}.home-next-grid{grid-template-columns:1fr}.home-next-card{min-height:245px;padding:19px}.home-next-card h3{font-size:24px}.home-champion-grid{gap:15px}.home-champion-card{padding:19px}.home-champion-photo{height:280px}.home-season-poster{min-height:300px;padding:8px}.home-poster-empty{min-height:300px}.home-values{grid-template-columns:1fr;gap:10px}.home-value-card{min-height:78px}.home-partner-logo{width:145px;height:78px}.home-support-cta{align-items:flex-start;flex-direction:column;padding:27px 21px}.home-support-cta h2{font-size:29px}}
@media(max-width:430px){.home-hero-v76{padding:30px 18px}.home-hero-v76 h1{font-size:38px}.home-eyebrow{font-size:11px}.home-subtitle{font-size:19px}.home-section-heading h2{font-size:27px}.home-event-meta span{min-width:110px;flex:1}.home-champion-photo{height:245px}.home-partner-logo{width:128px;height:72px}}

/* v7.6.1 — refined Home hero and read-only supporter board */
.home-hero-v76::before{
  content:"";
  position:absolute;
  width:620px;
  height:620px;
  right:-105px;
  top:50%;
  transform:translateY(-50%);
  border-radius:50%;
  opacity:.075;
  pointer-events:none;
  background:
    radial-gradient(circle at center,transparent 0 4%,#d6dde7 4.2% 5%,transparent 5.2% 9%,#d6dde7 9.2% 10%,transparent 10.2% 31%,#d6dde7 31.2% 33%,transparent 33.2% 51%,#d6dde7 51.2% 53%,transparent 53.2% 67%,#d6dde7 67.2% 69%,transparent 69.2%),
    repeating-conic-gradient(from -9deg,rgba(230,236,244,.95) 0deg .65deg,transparent .65deg 18deg);
}
.home-support-showcase{border-color:rgba(221,181,73,.48);background:radial-gradient(circle at 50% 42%,rgba(41,104,182,.18),transparent 38%),linear-gradient(145deg,#142a47,#081320)}
.home-support-heading{text-align:center}
.home-support-board-frame{max-width:820px;margin:0 auto;padding:10px;border-radius:50%;background:radial-gradient(circle,#121820 0,#080b10 72%);box-shadow:0 24px 60px rgba(0,0,0,.42)}
.home-support-board-frame .support-dartboard{width:100%;height:auto}
.home-support-invite{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:22px;text-align:center}
.home-support-invite p{margin:0;color:#d7e0eb;font-size:1.05rem;font-weight:800}
@media(max-width:1000px){.home-hero-v76::before{right:-220px;opacity:.055}}
@media(max-width:700px){.home-support-board-frame{padding:4px}.home-support-invite{gap:12px;margin-top:17px}.home-support-invite p{width:100%;font-size:.98rem}}

/* v7.6.2 — visual alignment and clean media frames */
/* Keep the subtle dartboard centred behind the hero logo. */
.home-hero-v76::before{
  width:620px;
  height:620px;
  right:calc(12.5% - 310px);
  top:50%;
  transform:translateY(-50%);
}
.home-hero-mark{position:relative}

/* Champion image: fill the frame, remove side gutters, add a restrained gold outline. */
.home-champion-photo{
  height:315px;
  object-fit:cover;
  object-position:center;
  background:transparent;
  border:1px solid rgba(225,190,91,.72);
}

/* Partner artwork is displayed directly, without a white tile around it. */
.home-partner-logo{
  width:auto;
  height:auto;
  min-width:0;
  padding:0;
  border:0;
  border-radius:12px;
  background:transparent;
  overflow:hidden;
}
.home-partner-logo img{
  display:block;
  width:auto;
  max-width:190px;
  height:auto;
  max-height:95px;
  object-fit:contain;
  border:1px solid rgba(225,190,91,.62);
  border-radius:12px;
}

/* Footer partner logos use the same clean presentation. */
.footer-partner{
  min-width:0;
  min-height:0;
  max-width:none;
  padding:0;
  border:0;
  border-radius:9px;
  background:transparent;
  overflow:hidden;
}
.footer-partner img{
  display:block;
  width:auto;
  max-width:116px;
  height:auto;
  max-height:54px;
  object-fit:contain;
  border:1px solid rgba(225,190,91,.55);
  border-radius:9px;
}

@media(max-width:1000px){
  .home-hero-v76::before{right:-220px}
}
@media(max-width:700px){
  .home-champion-photo{height:280px}
  .home-partner-logo img{max-width:145px;max-height:78px}
}
@media(max-width:430px){
  .home-champion-photo{height:245px}
  .home-partner-logo img{max-width:128px;max-height:72px}
}

/* v7.6.3 — exact hero alignment and full champion artwork */
/* The dartboard texture belongs to the logo column, so both always share the same centre. */
.home-hero-v76::before{
  display:none;
}
.home-hero-mark{
  position:relative;
  isolation:isolate;
}
.home-hero-mark::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:620px;
  height:620px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  opacity:.075;
  pointer-events:none;
  z-index:-1;
  background:
    radial-gradient(circle at center,transparent 0 4%,#d6dde7 4.2% 5%,transparent 5.2% 9%,#d6dde7 9.2% 10%,transparent 10.2% 31%,#d6dde7 31.2% 33%,transparent 33.2% 51%,#d6dde7 51.2% 53%,transparent 53.2% 67%,#d6dde7 67.2% 69%,transparent 69.2%),
    repeating-conic-gradient(from -9deg,rgba(230,236,244,.95) 0deg .65deg,transparent .65deg 18deg);
}

/* Show the complete champion artwork: no crop, no black inner frame, only the gold outline. */
.home-champion-photo{
  display:block;
  width:100%;
  height:auto;
  max-height:none;
  object-fit:contain;
  object-position:center;
  background:transparent;
  border:1px solid rgba(225,190,91,.78);
  border-radius:15px;
}

@media(max-width:1000px){
  .home-hero-mark::before{width:520px;height:520px;opacity:.055}
}
@media(max-width:700px){
  .home-champion-photo{height:auto}
}
@media(max-width:430px){
  .home-champion-photo{height:auto}
}


/* v7.95 Patch A — Player Ownership Foundation */
.ownership-section { margin-top: 20px; }
.ownership-section-heading { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; margin-bottom:16px; }
.ownership-section-heading h2 { margin:4px 0 0; }
.ownership-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; }
.ownership-action-card {
    display:flex; flex-direction:column; gap:12px; padding:18px;
    border:1px solid var(--border, #d9dde5); border-radius:14px;
    background:var(--surface, #fff);
}
.ownership-action-card h3 { margin:0; }
.ownership-action-card p { margin:0; opacity:.78; }
.ownership-preview-name {
    padding:12px 14px; border-radius:10px;
    background:rgba(127,127,127,.08); font-weight:700;
}
.ownership-linked-card {
    display:flex; justify-content:space-between; align-items:center; gap:18px;
    padding:18px; border:1px solid var(--border, #d9dde5);
    border-radius:14px; background:var(--surface, #fff);
}
.ownership-linked-card small { display:block; margin-bottom:5px; opacity:.68; font-weight:700; letter-spacing:.06em; }
.ownership-linked-card strong { display:block; font-size:1.08rem; }
.ownership-linked-card p { margin:5px 0 0; opacity:.75; }
.ownership-empty-card { border-style:dashed; }
.ownership-protected-label,
.ownership-unlinked-label {
    display:inline-flex; align-items:center; min-height:26px;
    padding:3px 9px; border-radius:999px; font-size:.82rem; font-weight:700;
}
.ownership-protected-label { background:rgba(40,167,69,.13); }
.ownership-unlinked-label { background:rgba(127,127,127,.12); }
.manage-user-settings { margin-top:18px; }
.admin-error {
    margin:0 0 16px; padding:12px 14px; border-radius:10px;
    background:rgba(190,38,38,.12); border:1px solid rgba(190,38,38,.25);
}
@media (max-width: 760px) {
    .ownership-grid { grid-template-columns:1fr; }
    .ownership-linked-card { align-items:flex-start; flex-direction:column; }
}


/* v7.95 Patch B — Ownership administration */
.ownership-admin-actions {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin-top:18px;
}
.ownership-danger-card {
    border-color:rgba(190,38,38,.3);
    background:rgba(190,38,38,.035);
}
.danger-button {
    background:#a82323 !important;
    border-color:#a82323 !important;
    color:#fff !important;
}
.ownership-owner-detail {
    display:grid;
    grid-template-columns:minmax(180px,1fr) minmax(300px,2fr) auto;
}
.ownership-owner-facts {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px 18px;
}
.ownership-owner-facts div {
    padding:9px 11px;
    border-radius:9px;
    background:rgba(127,127,127,.07);
}
.ownership-owner-facts small,
.ownership-owner-facts strong {
    display:block;
}
.ownership-summary-card {
    display:grid;
    grid-template-columns:minmax(230px,1fr) minmax(220px,2fr);
    align-items:center;
    gap:24px;
    margin:0 0 18px;
    padding:18px;
    border:1px solid var(--border,#d9dde5);
    border-radius:14px;
    background:var(--surface,#fff);
}
.ownership-summary-card small { display:block; font-weight:800; letter-spacing:.06em; opacity:.65; }
.ownership-summary-card strong { display:block; margin-top:4px; font-size:1.08rem; }
.ownership-summary-card p { margin:4px 0 0; opacity:.75; }
.ownership-progress {
    height:12px;
    overflow:hidden;
    border-radius:999px;
    background:rgba(127,127,127,.14);
}
.ownership-progress span {
    display:block;
    height:100%;
    border-radius:inherit;
    background:currentColor;
}
.admin-player-tools {
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
    margin:18px 0 12px;
}
.ownership-filter-group {
    display:inline-flex;
    flex-wrap:wrap;
    gap:7px;
}
.ownership-filter {
    min-height:38px;
    padding:7px 12px;
    border:1px solid var(--border,#d9dde5);
    border-radius:999px;
    background:transparent;
    color:inherit;
}
.ownership-filter.active {
    background:currentColor;
}
.ownership-filter.active,
.ownership-filter.active span {
    color:var(--surface,#fff);
}
.ownership-filter span { opacity:.72; }
#admin-player-visible-count { margin-left:auto; opacity:.72; font-weight:700; }
.admin-account-overview {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
    margin:14px 0 20px;
}
.admin-account-overview a {
    display:flex;
    flex-direction:column;
    gap:3px;
    padding:15px;
    border:1px solid var(--border,#d9dde5);
    border-radius:12px;
    background:var(--surface,#fff);
    color:inherit;
    text-decoration:none;
}
.admin-account-overview small { font-weight:800; letter-spacing:.05em; opacity:.62; }
.admin-account-overview strong { font-size:1.45rem; }
.admin-account-overview span { opacity:.72; font-size:.88rem; }
@media (max-width:900px) {
    .admin-account-overview { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .ownership-owner-detail { grid-template-columns:1fr; }
}
@media (max-width:760px) {
    .ownership-admin-actions,
    .ownership-summary-card { grid-template-columns:1fr; }
    .ownership-owner-facts { grid-template-columns:1fr; }
    #admin-player-visible-count { width:100%; margin-left:0; }
}


/* v7.95 Dashboard Visual Patch — compact stats and grouped sections */
.admin-status-stack {
    display: grid;
    gap: 8px;
    margin: 14px 0 24px;
    max-width: 760px;
}
.admin-status-line {
    width: 100%;
    max-width: none;
    min-height: 48px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px 24px;
    padding: 10px 18px;
    border: 1px solid rgba(115, 166, 230, .24);
    border-radius: 14px;
    background: linear-gradient(135deg, rgba(17, 33, 54, .96), rgba(10, 23, 40, .96));
    color: #edf6ff;
    box-shadow: 0 10px 30px rgba(0, 0, 0, .12);
}
.admin-status-line span,
.admin-status-line a {
    color: #dcecff;
    text-decoration: none;
    white-space: nowrap;
}
.admin-status-line b {
    color: #ffffff;
}
.admin-ownership-line {
    background: linear-gradient(135deg, rgba(15, 30, 49, .96), rgba(8, 20, 35, .96));
}
.admin-dashboard-sections {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px 22px;
    align-items: start;
}
.admin-dashboard-section {
    min-width: 0;
    border: 1px solid rgba(97, 147, 207, .18);
    border-radius: 16px;
    background: linear-gradient(145deg, rgba(13, 28, 47, .74), rgba(7, 18, 31, .72));
    overflow: hidden;
}
.admin-dashboard-section > summary {
    list-style: none;
    cursor: pointer;
    min-height: 52px;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 13px 16px;
    border-bottom: 1px solid rgba(105, 156, 216, .14);
    color: #83baff;
    font-weight: 800;
    letter-spacing: .035em;
    text-transform: uppercase;
    user-select: none;
}
.admin-dashboard-section > summary::-webkit-details-marker {
    display: none;
}
.admin-dashboard-section:not([open]) > summary {
    border-bottom: 0;
}
.admin-section-title {
    display: inline-flex;
    align-items: center;
    gap: 10px;
}
.admin-section-icon {
    width: 26px;
    height: 26px;
    display: inline-grid;
    place-items: center;
    border-radius: 8px;
    background: rgba(66, 145, 240, .12);
    color: #74b6ff;
    font-size: 1rem;
}
.admin-section-toggle {
    color: #7ea9d9;
    font-size: 1.05rem;
    transition: transform .18s ease;
}
.admin-dashboard-section[open] .admin-section-toggle {
    transform: rotate(180deg);
}
.admin-section-grid {
    display: grid;
    gap: 9px;
    padding: 12px;
}
.admin-section-card {
    min-width: 0;
    min-height: 54px;
    display: flex;
    align-items: stretch;
    border: 1px solid rgba(97, 147, 207, .25);
    border-radius: 12px;
    background: linear-gradient(135deg, rgba(18, 37, 61, .97), rgba(12, 27, 46, .97));
    overflow: hidden;
    transition: border-color .16s ease, transform .16s ease, opacity .16s ease;
}
.admin-section-card:hover {
    border-color: rgba(112, 178, 255, .56);
    transform: translateY(-1px);
}
.admin-section-card .admin-card {
    flex: 1;
    min-width: 0;
    min-height: 54px;
    display: flex;
    align-items: center;
    padding: 0 16px;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #f4f8ff;
    text-align: left;
    font-size: 1rem;
    font-weight: 750;
    text-decoration: none;
}
.admin-section-card .admin-drag-handle {
    position: static;
    width: 48px;
    min-width: 48px;
    min-height: 54px;
    display: grid;
    place-items: center;
    border: 0;
    border-left: 1px solid rgba(97, 147, 207, .18);
    border-radius: 0;
    background: rgba(5, 17, 31, .2);
    color: #81acd9;
    cursor: grab;
    font-size: 1.25rem;
}
.admin-section-card .admin-drag-handle:active {
    cursor: grabbing;
}
.admin-section-card.is-dragging {
    opacity: .45;
}
.admin-section-card.drag-target {
    border-color: #69adff;
}
.admin-account-overview {
    display: none !important;
}
@media (min-width: 1180px) {
    .admin-dashboard-sections {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (max-width: 760px) {
    .admin-status-stack {
        max-width: none;
    }
    .admin-status-line {
        gap: 8px 14px;
        padding: 10px 13px;
    }
    .admin-status-line span,
    .admin-status-line a {
        white-space: normal;
    }
    .admin-dashboard-sections {
        grid-template-columns: 1fr;
    }
}


/* v7.95 Visual Fix — symmetry, compact dashboard cards, readable ownership UI */

/* Dashboard: compact, symmetric section layout */
.admin-dashboard-sections {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 24px 26px !important;
    align-items: start !important;
    margin-top: 28px !important;
}

.admin-dashboard-section {
    min-width: 0 !important;
    align-self: start !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    overflow: visible !important;
    box-shadow: none !important;
}

.admin-dashboard-section > summary {
    min-height: 44px !important;
    padding: 0 4px 11px !important;
    margin: 0 0 12px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(107, 161, 222, .22) !important;
    background: transparent !important;
    color: #79b5ff !important;
    font-size: .96rem !important;
    line-height: 1.2 !important;
}

.admin-section-title {
    gap: 9px !important;
}

.admin-section-icon {
    width: 30px !important;
    height: 30px !important;
    flex: 0 0 30px !important;
    border-radius: 9px !important;
    background: rgba(49, 125, 218, .16) !important;
    color: #74b6ff !important;
}

.admin-section-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    padding: 0 !important;
}

.admin-card-wrap.admin-section-card {
    position: relative !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 58px !important;
    height: 58px !important;
    max-height: 58px !important;
    display: flex !important;
    align-items: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(103, 156, 218, .34) !important;
    border-radius: 13px !important;
    background: linear-gradient(135deg, #11243b 0%, #0d1d31 100%) !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

.admin-card-wrap.admin-section-card:hover {
    border-color: rgba(117, 184, 255, .68) !important;
    transform: translateY(-1px) !important;
}

.admin-card-wrap.admin-section-card > .admin-card {
    position: static !important;
    flex: 1 1 auto !important;
    width: auto !important;
    min-width: 0 !important;
    min-height: 58px !important;
    height: 58px !important;
    max-height: 58px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    margin: 0 !important;
    padding: 0 18px !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: #f4f8ff !important;
    font-size: 1rem !important;
    font-weight: 750 !important;
    line-height: 1.2 !important;
    text-align: left !important;
    text-decoration: none !important;
    transform: none !important;
}

.admin-card-wrap.admin-section-card > .admin-card:hover {
    background: rgba(74, 145, 230, .06) !important;
    box-shadow: none !important;
    transform: none !important;
}

.admin-card-wrap.admin-section-card > .admin-drag-handle {
    position: static !important;
    inset: auto !important;
    flex: 0 0 48px !important;
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    min-height: 58px !important;
    height: 58px !important;
    max-height: 58px !important;
    display: grid !important;
    place-items: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-left: 1px solid rgba(103, 156, 218, .20) !important;
    border-radius: 0 !important;
    background: rgba(4, 15, 28, .20) !important;
    color: #82acd9 !important;
    font-size: 1.2rem !important;
    box-shadow: none !important;
}

/* Both statistic rows use the same width, height and dark palette */
.admin-status-stack {
    width: min(760px, 100%) !important;
    max-width: 760px !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 10px !important;
    margin: 14px 0 28px !important;
}

.admin-status-line {
    width: 100% !important;
    min-height: 50px !important;
    box-sizing: border-box !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    gap: 10px 24px !important;
    padding: 11px 18px !important;
    border: 1px solid rgba(103, 156, 218, .34) !important;
    border-radius: 14px !important;
    background: linear-gradient(135deg, #10233a 0%, #0c1c30 100%) !important;
    color: #eaf4ff !important;
    box-shadow: none !important;
}

.admin-status-line span,
.admin-status-line a {
    color: #dcecff !important;
}

.admin-status-line b {
    color: #ffffff !important;
}

/* Players ownership summary: never use a white panel on the dark admin theme */
.ownership-summary-card {
    display: grid !important;
    grid-template-columns: minmax(250px, .8fr) minmax(300px, 1.6fr) !important;
    align-items: center !important;
    gap: 28px !important;
    margin: 0 0 22px !important;
    padding: 18px 22px !important;
    border: 1px solid rgba(103, 156, 218, .36) !important;
    border-radius: 15px !important;
    background: linear-gradient(135deg, #11243b 0%, #0d1d31 100%) !important;
    color: #edf6ff !important;
    box-shadow: none !important;
}

.ownership-summary-card small {
    color: #79b5ff !important;
    opacity: 1 !important;
}

.ownership-summary-card strong {
    color: #ffffff !important;
}

.ownership-summary-card p {
    color: #b8cae0 !important;
    opacity: 1 !important;
}

.ownership-progress {
    height: 12px !important;
    border: 1px solid rgba(103, 156, 218, .18) !important;
    background: #071729 !important;
}

.ownership-progress span {
    min-width: 4px;
    background: linear-gradient(90deg, #27c56d, #5d9fff) !important;
}

/* Ownership filters: explicit colors, no currentColor white-on-white behavior */
.ownership-filter {
    min-height: 40px !important;
    padding: 8px 15px !important;
    border: 1px solid rgba(127, 171, 224, .58) !important;
    background: #0d1d31 !important;
    color: #dcecff !important;
    box-shadow: none !important;
}

.ownership-filter span {
    color: #a9c2df !important;
    opacity: 1 !important;
}

.ownership-filter:hover {
    border-color: #75b8ff !important;
    background: #142a45 !important;
}

.ownership-filter.active {
    border-color: #4099ff !important;
    background: #2385ec !important;
    color: #ffffff !important;
}

.ownership-filter.active span {
    color: #ffffff !important;
}

/* Keep the search/filter row visually aligned */
.admin-player-tools {
    gap: 12px !important;
    align-items: center !important;
}

#admin-player-visible-count {
    color: #c6d6e8 !important;
    opacity: 1 !important;
}

/* Responsive symmetry */
@media (max-width: 1180px) {
    .admin-dashboard-sections {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 760px) {
    .admin-dashboard-sections {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }

    .admin-status-stack {
        width: 100% !important;
        max-width: none !important;
    }

    .admin-status-line {
        gap: 8px 14px !important;
        padding: 11px 14px !important;
    }

    .ownership-summary-card {
        grid-template-columns: 1fr !important;
        gap: 16px !important;
    }
}


/* v7.95 Professional Dashboard — icon system and reference-quality hierarchy */
.dashboard-icon {
    width: 22px;
    height: 22px;
    display: block;
    flex: 0 0 auto;
}

.admin-section-icon .dashboard-icon {
    width: 18px;
    height: 18px;
}

.admin-card-icon {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: inline-grid;
    place-items: center;
    border-radius: 10px;
    background: rgba(73, 143, 228, .10);
}

.admin-card-icon .dashboard-icon {
    width: 21px;
    height: 21px;
}

.admin-card-wrap.admin-section-card > .admin-card {
    gap: 13px !important;
}

.admin-icon-blue { color: #7cb8ff !important; }
.admin-icon-cyan { color: #63d2ff !important; }
.admin-icon-violet { color: #aa8cff !important; }
.admin-icon-green { color: #5bd982 !important; }
.admin-icon-gold { color: #ffc844 !important; }
.admin-icon-red { color: #ff5f72 !important; }

.admin-card-icon.admin-icon-blue { background: rgba(72, 142, 230, .12); }
.admin-card-icon.admin-icon-cyan { background: rgba(65, 200, 241, .11); }
.admin-card-icon.admin-icon-violet { background: rgba(153, 119, 255, .11); }
.admin-card-icon.admin-icon-green { background: rgba(72, 205, 116, .10); }
.admin-card-icon.admin-icon-gold { background: rgba(255, 191, 50, .10); }
.admin-card-icon.admin-icon-red { background: rgba(255, 75, 94, .10); }

.admin-title-blue { color: #7db8ff !important; }
.admin-title-violet { color: #ae8dff !important; }
.admin-title-green { color: #68d985 !important; }
.admin-title-gold { color: #ffc844 !important; }
.admin-title-cyan { color: #61d0ff !important; }

.stat-icon {
    width: 18px;
    height: 18px;
    display: inline-block;
    vertical-align: -4px;
    margin-right: 7px;
}
.stat-violet { color: #a381ff; }
.stat-pink { color: #ff4f91; }
.stat-gold { color: #ffc34a; }
.stat-cyan { color: #60d1ff; }
.stat-blue { color: #67aaff; }
.stat-green { color: #54d77d; }

.admin-status-line span,
.admin-status-line a {
    display: inline-flex !important;
    align-items: center !important;
}

.admin-dashboard-section > summary {
    font-size: .91rem !important;
}

.admin-section-card {
    transition:
        border-color .16s ease,
        background .16s ease,
        transform .16s ease !important;
}

.admin-section-card:hover {
    background: linear-gradient(135deg, #142b47 0%, #102239 100%) !important;
}

.admin-section-card .admin-card > span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Reference-like spacing and section balance */
.admin-dashboard-sections {
    grid-auto-flow: row dense !important;
}

.admin-section-management { grid-column: 1; }
.admin-section-competitions { grid-column: 2; }
.admin-section-finance { grid-column: 3; }
.admin-section-content { grid-column: 1; }
.admin-section-system { grid-column: 2; }

@media (max-width: 1180px) {
    .admin-section-management,
    .admin-section-competitions,
    .admin-section-finance,
    .admin-section-content,
    .admin-section-system {
        grid-column: auto;
    }
}

@media (max-width: 760px) {
    .admin-card-icon {
        width: 32px;
        height: 32px;
        flex-basis: 32px;
    }
}


/* v8.0 Patch A — One-click tournament registration */
.registration-account-card {
    border: 1px solid rgba(100, 158, 225, .30) !important;
    background: linear-gradient(135deg, #11243b 0%, #0d1d31 100%) !important;
    color: #edf6ff !important;
}

.registration-account-card h2,
.register-closed-card h2 {
    margin: 5px 0 8px;
    color: #ffffff;
}

.registration-account-card p,
.register-closed-card p {
    color: #b9cce2;
}

.registration-eyebrow {
    display: block;
    color: #79b5ff;
    font-size: .78rem;
    font-weight: 850;
    letter-spacing: .08em;
}

.registration-account-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 24px;
}

.registration-identity {
    min-width: 220px;
    padding: 13px 16px;
    border: 1px solid rgba(102, 165, 234, .26);
    border-radius: 12px;
    background: rgba(5, 17, 31, .26);
}

.registration-identity small,
.registration-identity strong {
    display: block;
}

.registration-identity small {
    margin-bottom: 5px;
    color: #88b7e9;
    font-size: .74rem;
    font-weight: 800;
    letter-spacing: .06em;
}

.registration-identity strong {
    color: #ffffff;
    font-size: 1.08rem;
}

.registration-one-click-button,
.registration-login-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    margin-top: 16px;
    padding: 11px 20px;
    text-decoration: none;
}

.registration-player-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 16px;
    padding-top: 15px;
    border-top: 1px solid rgba(105, 158, 218, .18);
}

.registration-player-row span {
    color: #9db5d0;
}

.registration-player-row strong {
    color: #ffffff;
}

.registration-state-pill {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    padding: 5px 11px;
    border: 1px solid currentColor;
    border-radius: 999px;
    font-size: .82rem;
    font-weight: 800;
    white-space: nowrap;
}

.registration-state-pill-confirmed {
    color: #5ddd87;
    background: rgba(49, 190, 100, .10);
}

.registration-state-pill-pending,
.registration-state-pill-payment-pending {
    color: #ffc756;
    background: rgba(255, 186, 42, .10);
}

.registration-state-pill-rejected,
.registration-state-pill-cancelled {
    color: #ff7180;
    background: rgba(226, 61, 79, .10);
}

.registration-state-confirmed {
    border-color: rgba(74, 205, 116, .34) !important;
}

.registration-state-pending,
.registration-state-payment-pending {
    border-color: rgba(255, 190, 57, .32) !important;
}

.registration-state-rejected,
.registration-state-cancelled {
    border-color: rgba(238, 83, 101, .34) !important;
}

.registration-feedback {
    margin: 16px 0;
    padding: 12px 15px;
    border-radius: 11px;
    font-weight: 700;
}

.registration-feedback-success {
    border: 1px solid rgba(72, 202, 113, .30);
    background: rgba(45, 176, 90, .10);
    color: #8be2aa;
}

.registration-feedback-error {
    border: 1px solid rgba(236, 76, 94, .32);
    background: rgba(207, 55, 74, .10);
    color: #ff9ba6;
}

@media (max-width: 760px) {
    .registration-account-head,
    .registration-player-row {
        flex-direction: column;
        align-items: stretch;
    }

    .registration-identity {
        min-width: 0;
    }

    .registration-state-pill {
        align-self: flex-start;
    }
}


/* v8.0 Patch B — My Registrations */
.player-owner-actions {
    display: flex;
    justify-content: flex-end;
    margin: 0 0 14px;
}

.my-registrations-page {
    display: grid;
    gap: 22px;
}

.my-registrations-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 22px;
}

.my-registrations-heading h1 {
    margin: 4px 0 7px;
}

.my-registrations-heading p {
    margin: 0;
    color: #aebfd3;
}

.my-registrations-summary {
    width: min(560px, 100%);
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    border: 1px solid rgba(103, 156, 218, .34);
    border-radius: 14px;
    overflow: hidden;
    background: linear-gradient(135deg, #10233a 0%, #0c1c30 100%);
}

.my-registrations-summary > div {
    padding: 14px 18px;
    border-right: 1px solid rgba(103, 156, 218, .18);
}

.my-registrations-summary > div:last-child {
    border-right: 0;
}

.my-registrations-summary small,
.my-registrations-summary strong {
    display: block;
}

.my-registrations-summary small {
    color: #7fb8f4;
    font-size: .75rem;
    font-weight: 850;
    letter-spacing: .07em;
}

.my-registrations-summary strong {
    margin-top: 4px;
    color: #ffffff;
    font-size: 1.35rem;
}

.my-registration-section > h2 {
    margin: 0 0 13px;
}

.my-registration-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.my-registration-card {
    min-width: 0;
    padding: 18px;
    border: 1px solid rgba(103, 156, 218, .30);
    border-radius: 15px;
    background: linear-gradient(135deg, #11243b 0%, #0d1d31 100%);
    color: #edf6ff;
}

.my-registration-history-card {
    opacity: .88;
}

.my-registration-card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
}

.my-registration-card-head h2 {
    margin: 5px 0;
    font-size: 1.25rem;
}

.my-registration-card-head h2 a {
    color: #ffffff;
    text-decoration: none;
}

.my-registration-card-head h2 a:hover {
    color: #7db8ff;
}

.my-registration-card-head p {
    margin: 0;
    color: #aebfd3;
}

.my-registration-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 9px;
    margin-top: 17px;
}

.my-registration-facts > div {
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(5, 17, 31, .27);
}

.my-registration-facts small,
.my-registration-facts strong {
    display: block;
}

.my-registration-facts small {
    margin-bottom: 3px;
    color: #7faedf;
    font-size: .74rem;
    font-weight: 800;
    letter-spacing: .05em;
}

.my-registration-facts strong {
    color: #ffffff;
}

.my-registration-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 17px;
    padding-top: 15px;
    border-top: 1px solid rgba(103, 156, 218, .16);
}

.my-registration-cancel-form {
    margin: 0;
}

.my-registration-cancel-button {
    min-height: 40px;
    padding: 8px 14px;
    border: 1px solid rgba(238, 83, 101, .48);
    border-radius: 10px;
    background: rgba(207, 55, 74, .10);
    color: #ff9ba6;
    font-weight: 800;
}

.my-registration-cancel-button:hover {
    background: rgba(207, 55, 74, .20);
}

.my-registrations-empty {
    padding: 22px;
    border: 1px dashed rgba(103, 156, 218, .30);
    border-radius: 14px;
    background: rgba(12, 28, 48, .55);
    color: #b8c9dc;
}

.my-registrations-empty h3 {
    margin-top: 0;
    color: #ffffff;
}

.my-registration-history {
    border: 1px solid rgba(103, 156, 218, .22);
    border-radius: 15px;
    background: rgba(8, 21, 37, .62);
    overflow: hidden;
}

.my-registration-history > summary {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 15px;
    padding: 15px 18px;
    color: #83baff;
    font-weight: 850;
    list-style: none;
}

.my-registration-history > summary::-webkit-details-marker {
    display: none;
}

.my-registration-history > summary span {
    display: inline-grid;
    min-width: 28px;
    min-height: 28px;
    place-items: center;
    border-radius: 999px;
    background: rgba(72, 142, 230, .15);
    color: #ffffff;
}

.my-registration-history > .my-registration-grid {
    padding: 0 16px 16px;
}

@media (max-width: 900px) {
    .my-registration-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .my-registrations-heading,
    .my-registration-card-head {
        flex-direction: column;
        align-items: stretch;
    }

    .my-registrations-summary {
        grid-template-columns: 1fr;
    }

    .my-registrations-summary > div {
        border-right: 0;
        border-bottom: 1px solid rgba(103, 156, 218, .18);
    }

    .my-registrations-summary > div:last-child {
        border-bottom: 0;
    }

    .my-registration-facts {
        grid-template-columns: 1fr;
    }
}


/* v8.1 Patch A — Competitions CMS */
.nav-dropdown{position:relative;display:flex;align-items:center}.nav-dropdown-trigger{min-height:40px;padding:8px 18px;border:1px solid rgba(255,255,255,.48);border-radius:10px;background:rgba(255,255,255,.03);display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#fff;font:inherit;font-weight:800;line-height:1.1;white-space:nowrap;cursor:pointer;transition:.15s ease}.nav-dropdown-trigger:hover,.nav-dropdown-trigger:focus-visible{background:rgba(255,255,255,.12);transform:translateY(-1px);outline:none}.nav-caret{font-size:15px;opacity:.8;margin-left:2px;transition:transform .18s ease}.nav-dropdown.is-open .nav-caret{transform:rotate(180deg)}.nav-dropdown-menu{display:none;position:absolute;z-index:80;top:calc(100% + 8px);left:0;min-width:245px;padding:8px;border:1px solid rgba(90,146,211,.4);border-radius:14px;background:#081526;box-shadow:0 20px 50px rgba(0,0,0,.45)}.nav-dropdown.is-open .nav-dropdown-menu{display:grid}.main-nav .nav-dropdown-menu a{justify-content:flex-start;min-height:38px!important;padding:9px 12px!important;border:0!important;border-radius:9px!important;background:transparent;font-size:14px}.main-nav .nav-dropdown-menu a:hover{background:rgba(43,143,255,.14)}.main-nav .nav-dropdown-menu .nav-dropdown-rules{margin-top:6px;padding-top:12px!important;border-top:1px solid rgba(90,146,211,.28)!important;border-radius:0 0 9px 9px!important}
.home-next-grid-dynamic{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.home-next-grid-dynamic .home-next-card{min-height:245px}.home-competition-card{text-decoration:none;color:inherit;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.home-competition-card:hover{transform:translateY(-3px);border-color:rgba(43,143,255,.85);box-shadow:0 18px 40px rgba(0,0,0,.25)}.home-competition-logo{width:42px;height:42px;object-fit:contain;border-radius:8px;background:rgba(255,255,255,.06);padding:4px}.home-competition-fallback{width:30px;height:30px}.home-competition-card .home-next-label span{color:#e4c35e}.home-competition-card .btn{pointer-events:none}
.competitions-index,.competition-page{display:grid;gap:28px}.competitions-heading{padding:34px;border:1px solid rgba(85,159,239,.38);border-radius:20px;background:linear-gradient(145deg,#102540,#071220)}.competitions-heading p,.competition-section-heading span{margin:0 0 8px;color:#e4c35e;font-size:13px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.competitions-heading h1{margin:0 0 10px}.competitions-heading span{color:#b8c9de}.competition-index-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px}.competition-index-card{overflow:hidden;display:grid;grid-template-rows:180px 1fr;color:#fff;text-decoration:none;border:1px solid rgba(85,159,239,.38);border-radius:18px;background:linear-gradient(155deg,#142b4a,#091625);transition:.17s ease}.competition-index-card:hover{transform:translateY(-3px);border-color:#2b8fff;box-shadow:0 18px 45px rgba(0,0,0,.3)}.competition-index-visual{display:grid;place-items:center;overflow:hidden;background:#071220}.competition-index-visual>img:not(.competition-index-logo){width:100%;height:100%;object-fit:cover}.competition-index-logo{max-width:150px;max-height:125px;object-fit:contain}.competition-index-fallback{width:74px;height:74px;color:#e4c35e}.competition-index-copy{padding:22px}.competition-index-copy>span{color:#e4c35e;font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.1em}.competition-index-copy h2{margin:8px 0 10px}.competition-index-copy p{min-height:48px;color:#b8c9de}.competition-index-meta{display:flex;gap:8px;flex-wrap:wrap}.competition-index-meta b{padding:7px 10px;border:1px solid rgba(142,179,222,.22);border-radius:9px;background:rgba(5,13,24,.45);font-size:12px}
.competition-hero{overflow:hidden;padding:34px;border:1px solid rgba(85,159,239,.42);border-radius:22px;background:linear-gradient(135deg,#102743,#071220);background-size:cover;background-position:center}.competition-hero-content{display:flex;align-items:center;gap:26px;max-width:1050px}.competition-hero-logo{width:145px;height:145px;object-fit:contain;padding:12px;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:rgba(5,13,24,.72)}.competition-hero-fallback{width:120px;height:120px;color:#e4c35e}.competition-organizer{color:#e4c35e;font-size:13px;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.competition-hero h1{margin:8px 0 12px}.competition-hero p{max-width:760px;color:#c0cfe0}.competition-hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.competition-current{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:30px}.competition-current span{padding:14px;border:1px solid rgba(142,179,222,.25);border-radius:12px;background:rgba(5,13,24,.7);font-size:18px;font-weight:800}.competition-current b{display:block;margin-bottom:5px;color:#91a7c2;font-size:11px;letter-spacing:.1em;text-transform:uppercase}.competition-section{padding:28px;border:1px solid rgba(85,159,239,.32);border-radius:20px;background:#0d2037}.competition-section-heading h2{margin:0 0 18px}.competition-sponsor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px}.competition-sponsor{min-height:120px;padding:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;text-align:center;color:#fff;text-decoration:none;border:1px solid rgba(142,179,222,.24);border-radius:14px;background:rgba(5,13,24,.45)}.competition-sponsor img{max-width:130px;max-height:65px;object-fit:contain}.competition-sponsor span{color:#e4c35e;font-size:11px;font-weight:900;text-transform:uppercase}.rule-scope{display:block;margin-top:4px;color:#e4c35e;font-size:11px;letter-spacing:.07em;text-transform:uppercase}
.admin-page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:20px}.admin-page-heading h1{margin-bottom:6px}.admin-page-heading p{margin:0;color:#b8c9de}.admin-inline-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.admin-inline-actions form{display:inline-flex;margin:0}.admin-inline-actions button{padding:0;border:0;background:none;color:#54a8ff;text-decoration:underline;cursor:pointer;font:inherit}.admin-inline-actions .danger-link{color:#ff7f89}.competition-admin-form{display:grid;gap:18px}.admin-upload-preview{display:block;width:110px;height:110px;object-fit:contain;margin:8px 0;padding:7px;border-radius:12px;background:#071220}.admin-banner-preview{display:block;width:100%;max-width:360px;height:130px;object-fit:cover;margin:8px 0;border-radius:12px}.admin-subsection{margin-top:34px}.settings-card textarea{width:100%}
@media(max-width:700px){.nav-dropdown{display:block}.nav-dropdown-menu{position:static;display:none;margin:5px 0 4px 14px;box-shadow:none}.nav-dropdown.is-open .nav-dropdown-menu{display:grid}.competition-index-grid{grid-template-columns:1fr}.competition-hero{padding:22px}.competition-hero-content{align-items:flex-start;flex-direction:column}.competition-hero-logo{width:105px;height:105px}.competition-current{grid-template-columns:1fr}.admin-page-heading{align-items:flex-start;flex-direction:column}}


/* v8.1 Patch B — Competition content and header capacity */
@media(min-width:701px){.main-nav{gap:8px}.main-nav>a,.nav-dropdown-trigger{padding-left:14px!important;padding-right:14px!important}.support-top{flex:0 0 auto}}
.competition-content-image-link{display:block}.competition-content-image,.competition-standings-image{display:block;width:100%;max-height:900px;object-fit:contain;border:1px solid rgba(142,179,222,.24);border-radius:14px;background:#071220}.competition-rich-text{color:#c8d5e5;line-height:1.75}.competition-standing-division{display:inline-flex;margin:-8px 0 14px;padding:6px 10px;border:1px solid rgba(228,195,94,.35);border-radius:999px;color:#e4c35e;font-size:12px;font-weight:800}.competition-standing-notes,.competition-empty-note{color:#aebfd3}.admin-page-heading>.admin-inline-actions{justify-content:flex-end}.admin-page-heading>.admin-inline-actions .btn{text-decoration:none}.rule-editor select{width:100%}
@media(max-width:1280px) and (min-width:701px){.main-nav{gap:5px}.main-nav>a,.nav-dropdown-trigger{padding:9px 10px!important;font-size:14px}.nav-icon{width:17px;height:17px}.support-top{padding-left:15px!important;padding-right:15px!important}}

/* v8.1 Patch D — header dropdown repair and support CTA distinction */
@media (min-width:701px){
  /* The desktop navigation previously used overflow-y:hidden, which clipped
     the absolutely positioned Competitions menu and made it look empty. */
  .site-header{overflow:visible}
  .main-nav{overflow:visible!important;flex-wrap:nowrap}
  .nav-dropdown{flex:0 0 auto;overflow:visible}
  .nav-dropdown-menu{z-index:250}
}

/* Keep Competitions visually consistent with the other navigation controls. */
.nav-dropdown-trigger{
  min-height:40px!important;
  border-radius:10px!important;
  box-sizing:border-box;
}

/* Bull-red support CTA: visually separate from Facebook and keep it prominent. */
.main-nav .support-top{
  background:linear-gradient(180deg,#e33d4e 0%,#b91f32 100%)!important;
  border:1px solid rgba(255,126,139,.7)!important;
  box-shadow:0 7px 18px rgba(185,31,50,.24);
  color:#fff!important;
}
.main-nav .support-top:hover,
.main-nav .support-top:focus-visible{
  background:linear-gradient(180deg,#f04a5b 0%,#ca263a 100%)!important;
  box-shadow:0 9px 22px rgba(185,31,50,.34);
}

/* v8.1 Patch G — Home polish and final Competition CMS */
.home-hero-actions .btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  font-weight:900;
  line-height:1;
  text-align:center;
  background:linear-gradient(135deg,#208cff,#176fd1)!important;
  color:#fff!important;
  border-color:#4ba5ff!important;
  box-shadow:0 10px 24px rgba(24,115,211,.24);
}
.home-hero-actions .btn:hover{transform:translateY(-2px);filter:brightness(1.08)}
.home-featured-card{display:block!important;align-items:stretch!important;justify-content:flex-start!important;padding:0!important}
.home-featured-link{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}
.home-featured-copy{padding:22px 24px 12px;background:transparent;border:0}
.home-featured-copy>span{display:block;margin-bottom:7px;color:#e4c35e;font-size:12px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.home-featured-copy h2{margin:0;color:#fff;font-size:clamp(24px,2.1vw,34px);line-height:1.15}
.home-featured-copy p{margin:8px 0 0;color:#b8c9de}
.home-featured-card img{flex:1;min-height:0;padding:12px}
.competition-section-subtitle{margin:-8px 0 18px;color:#b8c9de}
.settings-note,.muted{color:#9fb1c8;font-size:13px;line-height:1.5}
.competition-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px}
.competition-gallery>a,.competition-gallery>div{display:grid;gap:8px;padding:10px;border:1px solid rgba(142,179,222,.24);border-radius:14px;background:rgba(5,13,24,.45)}
.competition-gallery img{display:block;width:100%;height:190px;object-fit:contain;border-radius:10px;background:#071220}
.competition-gallery form{margin:0;text-align:center}
@media(max-width:700px){.home-featured-copy{padding:18px 18px 10px}.competition-gallery{grid-template-columns:1fr}.competition-gallery img{height:auto;max-height:340px}}


/* v8.2 Patch I — Showcase Pages */
.showcase-accordion-list{display:grid;gap:14px;margin-top:24px}
.showcase-accordion{overflow:hidden;border:1px solid rgba(85,159,239,.34);border-radius:18px;background:#0d2037;box-shadow:0 12px 30px rgba(0,0,0,.15)}
.showcase-accordion summary{display:flex;align-items:center;justify-content:space-between;gap:20px;cursor:pointer;list-style:none;padding:20px 24px;background:#112740}
.showcase-accordion summary::-webkit-details-marker{display:none}
.showcase-accordion summary:after{content:'+';flex:0 0 auto;color:#e4c35e;font-size:28px;font-weight:900;line-height:1}
.showcase-accordion[open] summary:after{content:'−'}
.showcase-accordion-heading{display:flex;flex-direction:column;gap:4px;min-width:0}
.showcase-accordion-heading strong{font-size:clamp(22px,2vw,30px);color:#fff}
.showcase-accordion-subtitle{color:#c1d0e2;font-weight:700}
.showcase-card-badge{display:inline-flex;color:#e4c35e;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.showcase-card-updated{margin-left:auto;color:#9db1c8;font-size:13px;font-weight:800;white-space:nowrap}
.showcase-accordion-content{padding:22px 24px 24px;border-top:1px solid rgba(228,195,94,.2)}
.showcase-card-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}
.showcase-card-gallery a{display:flex;align-items:center;justify-content:center;min-width:0;border:1px solid rgba(142,179,222,.24);border-radius:14px;background:#071220;overflow:hidden}
.showcase-card-gallery img{display:block;width:100%;max-height:850px;object-fit:contain}
.showcase-card-comment{padding:20px 0 0;color:#c8d5e5;line-height:1.7}
.showcase-card-comment p:first-child{margin-top:0}.showcase-card-comment p:last-child{margin-bottom:0}
.showcase-card-actions{display:flex;gap:10px;flex-wrap:wrap;padding-top:20px}
.showcase-card-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:900}
.showcase-card-actions .btn svg{width:18px;height:18px}
.showcase-admin-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin:12px 0 18px}
.showcase-admin-image-item{padding:10px;border:1px solid rgba(142,179,222,.24);border-radius:12px;background:#0b1a2d}
.showcase-admin-image-item img{display:block;width:100%;height:180px;object-fit:contain;border-radius:8px;background:#071220}
.showcase-admin-image-item .checkbox-row{margin:10px 0 0!important}
@media(max-width:600px){.showcase-accordion summary{align-items:flex-start;padding:18px}.showcase-card-updated{margin-left:0;white-space:normal}.showcase-accordion-content{padding:18px}.showcase-card-gallery{grid-template-columns:1fr}}


/* v8.2 Patch M.2A — Ownership contrast and duplicate-safety polish */
.ownership-action-card,
.ownership-linked-card,
.ownership-summary-card {
    background:#0b1b31;
    border-color:#2a4b73;
    color:#f5f8fc;
}
.ownership-action-card p,
.ownership-linked-card p,
.ownership-summary-card p,
.ownership-linked-card small,
.ownership-summary-card small { color:#b9c7da; opacity:1; }
.ownership-owner-facts div,
.ownership-preview-name {
    background:#102642;
    border:1px solid rgba(82,160,255,.2);
    color:#f5f8fc;
}
.ownership-owner-facts small { color:#9fb2ca; }
.ownership-danger-card { background:#101827; border-color:rgba(210,55,55,.48); }
.ownership-duplicate-warning {
    padding:12px 14px; border-radius:10px;
    border:1px solid rgba(248,200,74,.5);
    background:rgba(248,200,74,.09);
    color:#f5f8fc;
}
.ownership-duplicate-warning strong { color:#f8c84a; }
.ownership-duplicate-warning p { margin:5px 0; color:#d9e2ef; }
.ownership-duplicate-warning ul { margin:8px 0 0 18px; padding:0; }
.ownership-duplicate-confirm {
    display:flex; align-items:flex-start; gap:9px;
    color:#d9e2ef; font-weight:700; line-height:1.4;
}
.ownership-duplicate-confirm input { width:auto; margin-top:3px; }
