:root{font-family:Inter,system-ui,sans-serif;background:#07090d;color:#f5f7fb;--a:#86ff00;--b:#35ff13;--g:rgba(134,255,0,.18)}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 82% 4%,var(--g),transparent 25%),#07090d}button,input,select{font:inherit}
button{border:0;border-radius:9px;padding:9px 12px;background:linear-gradient(90deg,var(--a),var(--b));color:#061008;font-weight:900;cursor:pointer}
input,select{background:#0b1118;border:1px solid #2a3747;border-radius:9px;color:#fff;padding:9px}.muted{color:#8996a8}.ey{color:var(--a);font-size:.72rem;font-weight:900;letter-spacing:.13em}
.login{min-height:100vh;display:grid;place-items:center}.card,.panel{background:#111722;border:1px solid #293647;border-radius:15px;padding:18px}.card{width:min(430px,92vw)}
.logo{width:58px;height:58px;border-radius:15px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,var(--a),var(--b));color:#061008;font-weight:1000}.logo img{width:100%;height:100%;object-fit:contain}
.card label,.form label{display:grid;gap:5px;color:#9da9b7;font-size:.8rem}.card label{margin:10px 0}.card form button{width:100%}.error{background:#3b1115;color:#ffb5b5;padding:9px;border-radius:9px;margin:10px 0}
.app{display:grid;grid-template-columns:245px 1fr;min-height:100vh}aside{height:100vh;position:sticky;top:0;padding:17px 13px;background:#090d13;border-right:1px solid #222d3a;display:flex;flex-direction:column}
.brand{display:flex;gap:10px;align-items:center}.brand .logo{width:46px;height:46px}.brandTxt{display:grid}.brandTxt b{font-size:.8rem}.brandTxt span{color:var(--a);font-size:.69rem;font-weight:900;letter-spacing:.08em}
.user{margin:13px 0;padding:10px;background:#111722;border:1px solid #293647;border-radius:11px;display:grid}.user span{color:var(--a);font-size:.72rem}.user small{color:#8996a8;margin-top:2px}
nav{display:grid;gap:4px}nav button{background:transparent;color:#aab4c2;text-align:left}nav button.active{background:linear-gradient(90deg,var(--a),var(--b));color:#061008}.logout{margin-top:auto;background:#1c2633;color:#eee}
main{padding:22px;max-width:1450px;width:100%;margin:0 auto}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}h1,h2,h3{margin:4px 0}.panel{margin-bottom:14px}
.hero{display:flex;justify-content:space-between;align-items:center}.heroLogo{width:100px;height:100px;border-radius:22px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(135deg,var(--a),var(--b));color:#061008;font-weight:1000}.heroLogo img{width:100%;height:100%;object-fit:contain}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stats article{background:#0d131c;border:1px solid #243141;border-radius:11px;padding:13px}.stats span{display:block;color:#8f9bad}.stats b{font-size:1.7rem}
.form{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:9px;align-items:end}.form label{margin:0}.form button{min-height:39px}.darkBtn{background:#1c2734;color:#eee}.danger{background:#7f1d1d!important;color:#fee2e2!important}
.tableWrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:720px}th,td{padding:9px;border-bottom:1px solid #243141;text-align:left}th{color:#8f9bad;font-size:.75rem}.empty{text-align:center;color:#8996a8;padding:24px}
.divGrid,.staffGrid,.tournamentGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}.divCard,.staffCard,.tournamentCard{background:#0d131c;border:1px solid #243141;border-radius:11px;padding:12px}
.divCard{border-left:5px solid}.divCard span,.staffCard small,.tournamentCard small{color:#8996a8}.checks{display:grid;grid-template-columns:1fr 1fr;gap:5px}.checks label{font-size:.75rem;color:#aab4c2}
.fixtureList,.resultList{display:grid;gap:8px}.fixtureRow,.resultRow{display:grid;grid-template-columns:140px 1fr 1fr 170px 150px;gap:9px;align-items:center;background:#0d131c;border:1px solid #243141;border-radius:10px;padding:10px}.status{font-size:.72rem;padding:4px 7px;border-radius:999px}.scheduled{background:#14233a;color:#9fc9ff}.completed{background:#0d2419;color:#9dffc0}.postponed{background:#39260a;color:#ffd166}
.score{display:flex;gap:5px;align-items:center}.score input{width:54px;text-align:center}.proposal{background:#19152b;border:1px solid #493a75;border-radius:9px;padding:9px;margin-top:8px}
.tableTitle{display:flex;justify-content:space-between;align-items:center}.tableTitle h3{border-left:5px solid;padding-left:8px}.pos{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#1a2430}.leader{background:linear-gradient(135deg,var(--a),var(--b));color:#061008}
.themeBtns{display:flex;gap:7px;flex-wrap:wrap}.themeBtn{width:86px;background:#131a23;color:#eee;border:1px solid #2b3847}.themeBtn.active{outline:2px solid var(--a)}
.account{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#0d131c;border:1px solid #243141;border-radius:10px;padding:10px;margin-top:7px}.actions{display:flex;gap:6px}.ownerTag{color:var(--a);font-weight:900}
.alerts{display:grid;gap:8px;margin-top:12px}.alertBox{padding:10px;border-radius:10px;border:1px solid #2c3a4b;background:#0d131c}.alertBox strong{color:var(--a)}.status.disputed{background:#3a1016;color:#ff9da7}.status.pending{background:#2b2041;color:#d9b5ff}.status.confirmed{background:#0d2419;color:#9dffc0}.adminTools{display:flex;gap:6px;flex-wrap:wrap}.adminTools input{width:60px}.nextMatch{margin-top:12px;padding:12px;border-radius:10px;background:#0d131c;border:1px solid #263242}.nextMatch b{color:var(--a)}

.tournamentHero{position:relative;overflow:hidden;border-top:4px solid var(--tour,#ffd000);background:linear-gradient(120deg,#111722,#0d131c)}
.tournamentHero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,color-mix(in srgb,var(--tour) 18%,transparent),transparent 45%);pointer-events:none}
.tourHead{position:relative;display:flex;justify-content:space-between;gap:18px;align-items:center}.tourBrand{display:flex;gap:14px;align-items:center}
.sponsorLogo{width:90px;height:70px;border-radius:12px;background:#090d13;border:1px solid #2d3948;display:grid;place-items:center;overflow:hidden}.sponsorLogo img{width:100%;height:100%;object-fit:contain}
.tourMeta{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.tourChip{padding:5px 8px;border-radius:999px;background:#0b1118;border:1px solid #2a3747;color:#b9c3cf;font-size:.72rem}
.tourActions{display:flex;gap:7px;flex-wrap:wrap}.tourAdminGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.tourEntryList{display:flex;gap:7px;flex-wrap:wrap}.entrant{padding:6px 9px;border-radius:999px;background:#0d131c;border:1px solid #2a3747}
.bracket{display:flex;gap:22px;overflow:auto;padding:12px 3px 18px}.round{min-width:260px;display:flex;flex-direction:column;gap:12px}.round h4{color:var(--a);margin:0 0 4px}.bracketMatch{background:#0d131c;border:1px solid #293647;border-radius:11px;padding:10px}
.bracketPlayer{display:flex;justify-content:space-between;gap:10px;padding:6px;border-radius:7px}.bracketPlayer.winner{background:#10281b;color:#a6ffc0}.bracketVs{color:#657184;text-align:center;font-size:.7rem}
.bracketScore{display:flex;gap:6px;margin-top:8px;align-items:center}.bracketScore input{width:58px;text-align:center}
.champion{padding:20px;text-align:center;border:1px solid var(--tour,#ffd000);border-radius:14px;background:radial-gradient(circle at center,color-mix(in srgb,var(--tour) 18%,transparent),transparent 60%),#0d131c}
.champion h2{font-size:2rem}.championName{font-size:1.6rem;color:var(--tour,#ffd000);font-weight:1000}.sponsorMessage{font-style:italic;color:#b9c3cf}
.tourLogoUpload{grid-column:1/-1}.tourLogoPreview{max-width:160px;max-height:100px;object-fit:contain;border-radius:10px;background:#090d13}

.tourTv{min-height:70vh;border-radius:18px;padding:28px;background:radial-gradient(circle at 50% 10%,color-mix(in srgb,var(--tour) 25%,transparent),transparent 35%),#07090d;border:2px solid var(--tour);display:grid;align-content:start;gap:18px}
.tourTvHeader{display:flex;justify-content:space-between;align-items:center;gap:18px}.tourTvLogo{width:150px;height:90px;object-fit:contain;background:#0a0d12;border-radius:12px;padding:8px}
.tourTvTitle h2{font-size:2.6rem}.tourTvBracket{display:flex;gap:24px;overflow:auto}.tourTvRound{min-width:280px}.tourTvMatch{background:#0d131c;border:1px solid #334050;border-radius:12px;padding:12px;margin:10px 0}.tourTvWinner{color:var(--tour);font-weight:1000}
.tourSchedule{margin-top:8px;padding:8px;border-radius:9px;background:#101722;border:1px solid #263242}.tourSchedule form{display:flex;gap:7px;flex-wrap:wrap;align-items:end}.tourSchedule label{margin:0;min-width:120px}
.historyStats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:12px 0}.historyStats article{background:#0d131c;border:1px solid #263242;border-radius:11px;padding:14px;text-align:center}.historyStats b{display:block;color:var(--a);font-size:1.8rem}.historyList{display:grid;gap:8px}.historyItem{display:flex;justify-content:space-between;gap:10px;background:#0d131c;border:1px solid #263242;border-radius:10px;padding:10px}
.seriesBadge{display:inline-block;padding:5px 8px;border-radius:999px;background:#211b0a;color:#ffd166;font-size:.72rem}.tvBtn{background:#152231;color:#dfe8f1}

.eventHero{position:relative;overflow:hidden;border-top:5px solid var(--event,#ffd000);background:linear-gradient(120deg,#111722,#0d131c)}
.eventTop{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.eventBrand{display:flex;gap:12px;align-items:center}.eventLogo{width:100px;height:76px;border-radius:12px;overflow:hidden;background:#090d13;border:1px solid #2a3747;display:grid;place-items:center}.eventLogo img{width:100%;height:100%;object-fit:contain}
.eventMeta{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}.eventChip{padding:5px 8px;border-radius:999px;background:#0b1118;border:1px solid #2a3747;color:#bac4d0;font-size:.72rem}
.eventBuilderGrid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stageGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:10px}.stageCard{background:#0d131c;border:1px solid #263242;border-radius:12px;padding:13px}.stageCard h3{margin-top:0}.stageFlow{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.flowArrow{color:var(--a);font-weight:1000}
.stageEntrants{display:flex;gap:6px;flex-wrap:wrap;margin:8px 0}.stageEntrant{padding:5px 8px;border-radius:999px;background:#131c26;border:1px solid #2b3948;font-size:.75rem}
.prizeShowcase{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.prizeCard{background:linear-gradient(145deg,#111722,#0d131c);border:1px solid #2c3948;border-radius:14px;padding:13px;overflow:hidden}.prizeImage{border-radius:12px;background:#080b10;overflow:hidden;margin-bottom:10px;border:1px solid #263242}
.prizeImage.natural{height:auto;display:block;padding:8px}
.prizeImage.natural img{display:block;width:100%;height:auto;max-height:none;object-fit:unset;object-position:unset;margin:0 auto}
.prizeImage.boxed{height:280px;display:grid;place-items:center;padding:0}
.prizeImage.boxed img{display:block;width:100%;height:100%}
.prizeImage.boxed img.fit-cover{object-fit:cover;object-position:center}
.prizeImage.boxed img.fit-fill{object-fit:fill;object-position:center}
.prizeImageControls{display:grid;grid-template-columns:1fr auto;gap:7px;margin:8px 0 10px;align-items:end}
.prizeImageControls label{margin:0}.prizeValue{font-size:1.25rem;color:var(--a);font-weight:1000}.prizeAward{display:inline-block;padding:4px 7px;border-radius:999px;background:#1a2030;color:#d6deea;font-size:.72rem}.charityBox{padding:12px;border-radius:11px;background:#161126;border:1px solid #4b3c72}.charityBox strong{color:#d8b8ff}.eventActions{display:flex;gap:7px;flex-wrap:wrap}
@media(max-width:700px){.eventBuilderGrid{grid-template-columns:1fr}.eventTop{flex-direction:column}}

/* COMPACT PRIZE THUMBNAILS + FULLSCREEN GALLERY */
.prizeImage.natural,.prizeImage.boxed{
  width:190px!important;
  height:125px!important;
  margin:0 auto 10px!important;
  padding:6px!important;
  display:grid!important;
  place-items:center!important;
  cursor:pointer;
  background:#080b10;
  position:relative;
}
.prizeImage.natural img,.prizeImage.boxed img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  max-height:100%!important;
}
.prizeImage:hover{border-color:var(--a);box-shadow:0 0 16px var(--g)}
.prizeImage:after{
  content:"Click to enlarge";position:absolute;left:50%;bottom:5px;transform:translateX(-50%);
  padding:3px 7px;border-radius:999px;background:rgba(0,0,0,.74);color:white;
  font-size:.64rem;white-space:nowrap;opacity:0;transition:.15s
}
.prizeImage:hover:after{opacity:1}
.prizeGalleryOverlay{
  position:fixed;inset:0;z-index:9999;background:rgba(0,0,0,.92);backdrop-filter:blur(9px);
  display:grid;grid-template-columns:80px 1fr 80px;grid-template-rows:1fr auto;align-items:center;
  justify-items:center;padding:24px
}
.prizeGalleryStage{grid-column:2;grid-row:1;width:min(1050px,80vw);height:min(700px,72vh);display:grid;place-items:center}
.prizeGalleryStage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;border-radius:14px;background:#080b10;box-shadow:0 25px 75px rgba(0,0,0,.5)}
.prizeGalleryPrev,.prizeGalleryNext,.prizeGalleryClose{
  width:56px;height:56px;border-radius:50%;background:#171d27;color:#fff;border:1px solid #354255;font-size:1.7rem
}
.prizeGalleryPrev{grid-column:1;grid-row:1}.prizeGalleryNext{grid-column:3;grid-row:1}
.prizeGalleryClose{position:absolute;top:18px;right:18px;font-size:1.35rem}
.prizeGalleryPrev:hover,.prizeGalleryNext:hover,.prizeGalleryClose:hover{border-color:var(--a);box-shadow:0 0 16px var(--g)}
.prizeGalleryInfo{grid-column:1/-1;grid-row:2;text-align:center;width:min(900px,92vw);padding-top:14px}
.prizeGalleryInfo h2{margin:4px 0}.prizeGalleryValue{color:var(--a);font-size:1.3rem;font-weight:1000}
.prizeGalleryMeta{color:#adb7c4;margin-top:5px}.prizeGalleryCounter{color:#7e8a99;font-size:.8rem;margin-top:8px}
@media(max-width:700px){
  .prizeImage.natural,.prizeImage.boxed{width:160px!important;height:105px!important}
  .prizeGalleryOverlay{grid-template-columns:50px 1fr 50px;padding:10px}
  .prizeGalleryStage{width:100%;height:65vh}
  .prizeGalleryPrev,.prizeGalleryNext{width:42px;height:42px;font-size:1.25rem}
}

.stageBracket{display:flex;gap:20px;overflow:auto;padding:10px 2px 16px}.stageRound{min-width:260px}.stageRound h4{color:var(--a);margin:0 0 8px}.stageMatch{background:#0b1118;border:1px solid #2a3747;border-radius:11px;padding:10px;margin-bottom:10px}.stageMatchPlayer{display:flex;justify-content:space-between;gap:8px;padding:6px;border-radius:7px}.stageMatchPlayer.winner{background:#10281b;color:#a8ffc1}.stageMatchVs{text-align:center;color:#687586;font-size:.7rem}.stageTarget{display:flex;gap:7px;align-items:end;flex-wrap:wrap;margin:9px 0}.stageTarget label{margin:0;min-width:190px}.autoPromote{padding:8px;border-radius:9px;background:#11192a;border:1px solid #2d3c53;color:#b8c3d1}.stageChampion{margin-top:10px;padding:12px;border-radius:10px;border:1px solid var(--a);background:#0d1a13}.stageChampion b{color:var(--a)}.eventTvBtn{background:#152231;color:#e2ebf3}

/* AUTODARTS LIVE WATCH LINKS */
.autodartsBox{margin-top:8px;padding:9px;border-radius:10px;background:#0b151b;border:1px solid #214659}
.autodartsRow{display:flex;gap:7px;align-items:center;flex-wrap:wrap}
.autodartsRow input{min-width:220px;flex:1}
.watchAutodarts{display:inline-flex;align-items:center;gap:7px;background:linear-gradient(90deg,#00d4ff,#00ffa3);color:#031014!important;text-decoration:none;border-radius:9px;padding:9px 12px;font-weight:1000}
.watchAutodarts:before{content:"▶";font-size:.85rem}
.autodartsLive{display:inline-flex;align-items:center;gap:6px;color:#87ff9c;font-size:.75rem;font-weight:900}
.autodartsLive:before{content:"●";color:#45ff6d;animation:pulseLive 1.3s infinite}
@keyframes pulseLive{0%,100%{opacity:.35}50%{opacity:1}}
.copyLinkBtn{background:#17232d;color:#e8f1f5}

/* LIVE CONTROL CENTRE */
.controlGrid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}
.controlStat{background:#0d131c;border:1px solid #263242;border-radius:12px;padding:13px}.controlStat span{display:block;color:#8f9bad}.controlStat b{font-size:1.8rem;color:var(--a)}
.liveTabs{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0}.liveTabs button{background:#17232d;color:#e8f1f5}.liveTabs button.active{background:linear-gradient(90deg,var(--a),var(--b));color:#061008}
.liveMatchGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:10px}.liveMatchCard{background:#0d131c;border:1px solid #263242;border-radius:12px;padding:12px}.liveMatchCard.disputed{border-color:#7a2832;background:#211015}.liveMatchHead{display:flex;justify-content:space-between;gap:8px;align-items:center}.liveMatchPlayers{display:grid;grid-template-columns:1fr auto 1fr;gap:7px;text-align:center;align-items:center;padding:14px 2px}.liveMatchPlayers span{color:var(--a);font-weight:1000}.liveMatchMeta{color:#8996a8;font-size:.78rem}.liveActions{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}.spectatorBtn{background:#152231;color:#e2ebf3}
.spectatorPage{min-height:100vh;background:radial-gradient(circle at 50% 0%,var(--g),transparent 30%),#07090d;color:white;padding:22px}.spectatorHeader{display:flex;justify-content:space-between;align-items:center;gap:14px;border-bottom:2px solid var(--a);padding-bottom:14px}.spectatorLogo{width:80px;height:80px;border-radius:16px;overflow:hidden;background:#111722;display:grid;place-items:center}.spectatorLogo img{width:100%;height:100%;object-fit:contain}.spectatorSections{display:grid;gap:16px;margin-top:18px}.spectatorSection{background:#111722;border:1px solid #263242;border-radius:14px;padding:14px}.spectatorMatches{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.spectatorMatch{background:#0d131c;border:1px solid #263242;border-radius:11px;padding:11px}.spectatorPlayers{font-size:1.05rem;font-weight:900;margin:8px 0}.spectatorLive{color:#8fff9d;font-weight:900}.spectatorStatus{color:#9ba7b7;font-size:.8rem}
@media(max-width:700px){.controlGrid{grid-template-columns:repeat(2,1fr)}}

.spectatorMatch{position:relative}
.spectatorMatch .watchAutodarts{margin-top:2px}
.spectatorSection .empty{padding:16px;text-align:center;color:#7f8b99}

/* PUBLIC SPECTATOR HUB */
.spectatorToolbar{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;margin:14px 0}
.spectatorTabs{display:flex;gap:7px;flex-wrap:wrap}.spectatorTabs button{background:#17232d;color:#e7eef5}.spectatorTabs button.active{background:linear-gradient(90deg,var(--a),var(--b));color:#041015}
.spectatorFilters{display:flex;gap:7px;flex-wrap:wrap;align-items:center}.spectatorFilters select,.spectatorFilters label{margin:0}
.spectatorMatch.liveCard{border-color:#29ff78;box-shadow:0 0 18px rgba(41,255,120,.1)}
.livePill{display:inline-flex;align-items:center;gap:6px;background:#0d2b19;color:#8fff9e;border:1px solid #27623a;padding:4px 8px;border-radius:999px;font-size:.72rem;font-weight:1000}
.livePill:before{content:"●";color:#42ff68;animation:pulseLive 1.2s infinite}
.resultPill{display:inline-block;padding:4px 8px;border-radius:999px;background:#152131;color:#b9c8d9;font-size:.72rem}
.spectatorMatchTop{display:flex;justify-content:space-between;gap:8px;align-items:center}.spectatorCardActions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.eventDetailsBtn{background:#1b2431;color:#e7eef5}.spectatorEventModal{position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:9999;padding:22px;overflow:auto;backdrop-filter:blur(8px)}
.spectatorEventPanel{max-width:1200px;margin:auto;background:#0d131c;border:1px solid #2d3948;border-radius:18px;padding:20px}.spectatorEventHeader{display:flex;justify-content:space-between;gap:16px;align-items:center;border-bottom:2px solid var(--event);padding-bottom:14px}
.spectatorEventLogo{width:110px;height:80px;object-fit:contain}.spectatorEventClose{position:sticky;top:0;float:right;width:42px;height:42px;border-radius:50%;background:#1b2430;color:#fff;z-index:2}
.spectatorEventGrid{display:grid;grid-template-columns:1.2fr .8fr;gap:14px;margin-top:14px}.spectatorBracket{display:grid;gap:10px}.spectatorStageBlock{background:#111722;border:1px solid #2a3747;border-radius:12px;padding:12px}
.spectatorPrizeGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}.spectatorPrizeCard{background:#111722;border:1px solid #2a3747;border-radius:12px;padding:10px}.spectatorPrizeCard img{width:100%;height:110px;object-fit:contain;background:#080b10;border-radius:8px}.spectatorPrizeValue{color:var(--event);font-weight:1000}
.hideCompletedToggle{display:flex;gap:6px;align-items:center;color:#a8b4c2}
@media(max-width:800px){.spectatorEventGrid{grid-template-columns:1fr}}

/* PUBLIC OCD HUB */
.publicHub{min-height:100vh;background:radial-gradient(circle at 50% 0%,var(--g),transparent 28%),#07090d;color:#fff}
.publicHeader{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px;border-bottom:2px solid var(--a);position:sticky;top:0;background:rgba(7,9,13,.95);backdrop-filter:blur(10px);z-index:30}
.publicBrand{display:flex;align-items:center;gap:12px}.publicBrandLogo{width:70px;height:70px;border-radius:14px;overflow:hidden;background:#101722;display:grid;place-items:center}.publicBrandLogo img{width:100%;height:100%;object-fit:contain}
.publicNav{display:flex;gap:7px;flex-wrap:wrap}.publicNav button{background:#17232d;color:#e7eef5}.publicNav button.active{background:linear-gradient(90deg,var(--a),var(--b));color:#041015}
.publicContent{padding:20px;max-width:1500px;margin:auto}.publicHero{display:grid;grid-template-columns:1.3fr .7fr;gap:14px}.publicHeroCard{background:#111722;border:1px solid #283545;border-radius:16px;padding:18px}.publicQuick{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.publicQuick article{background:#0d131c;border:1px solid #263242;border-radius:11px;padding:12px}.publicQuick b{display:block;color:var(--a);font-size:1.5rem}
.publicTableWrap{overflow:auto}.publicTable{width:100%;border-collapse:collapse}.publicTable th,.publicTable td{padding:9px;border-bottom:1px solid #25313f;text-align:left}.publicTable th{color:#91a0b1;font-size:.75rem}.publicTable tr.clickable{cursor:pointer}.publicTable tr.clickable:hover{background:#111a24}
.publicCards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:10px}.publicCard{background:#111722;border:1px solid #283545;border-radius:13px;padding:13px}.publicCard h3{margin:5px 0}.publicCardMeta{color:#8f9daf;font-size:.8rem}.publicCardActions{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}
.playerModal{position:fixed;inset:0;background:rgba(0,0,0,.9);z-index:9999;display:grid;place-items:center;padding:20px}.playerModalCard{width:min(720px,95vw);background:#101722;border:1px solid #2b3949;border-radius:18px;padding:20px}.playerStats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.playerStats article{background:#0d131c;border:1px solid #263242;border-radius:11px;padding:12px;text-align:center}.playerStats b{display:block;color:var(--a);font-size:1.5rem}
.eventPublicHero{border-top:4px solid var(--event);background:linear-gradient(145deg,#111722,#0d131c)}.publicPrizeStrip{display:flex;gap:10px;overflow:auto}.publicPrizeMini{min-width:180px;background:#0d131c;border:1px solid #283545;border-radius:10px;padding:9px}.publicPrizeMini img{width:100%;height:90px;object-fit:contain;background:#080b10;border-radius:7px}
@media(max-width:800px){.publicHero{grid-template-columns:1fr}.publicQuick,.playerStats{grid-template-columns:repeat(2,1fr)}.publicHeader{align-items:flex-start;flex-direction:column}}

/* FULL PUBLIC PLAYER PROFILES */
.playerProfileHero{display:flex;justify-content:space-between;gap:18px;align-items:center;border-bottom:1px solid #2a3747;padding-bottom:14px}
.playerProfileName h2{font-size:2rem}.playerRankBadge{display:inline-grid;place-items:center;min-width:72px;height:72px;border-radius:18px;background:linear-gradient(135deg,var(--a),var(--b));color:#041015;font-size:1.4rem;font-weight:1000}
.profileStatsGrid{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin:14px 0}.profileStatsGrid article{background:#0d131c;border:1px solid #263242;border-radius:11px;padding:11px;text-align:center}.profileStatsGrid b{display:block;color:var(--a);font-size:1.35rem}
.formRow{display:flex;gap:6px;flex-wrap:wrap}.formDot{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:1000}.formDot.win{background:#12351f;color:#9dffb6}.formDot.loss{background:#3a151a;color:#ffadb5}
.profileColumns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.profileSection{background:#0d131c;border:1px solid #263242;border-radius:12px;padding:12px}.profileList{display:grid;gap:7px}.profileItem{display:flex;justify-content:space-between;gap:10px;align-items:center;background:#111722;border:1px solid #263242;border-radius:9px;padding:9px}.profileItem small{color:#8d99a9}
.badgeGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:9px}.achievementBadge{background:linear-gradient(145deg,#151c27,#0d131c);border:1px solid #2d3948;border-radius:12px;padding:11px;text-align:center}.achievementBadge .icon{font-size:1.8rem}.achievementBadge.title{border-color:#756200}.achievementBadge.runner_up{border-color:#5a6471}
.profileClose{background:#1b2430;color:#fff;min-width:42px}.clickPlayer{cursor:pointer}.clickPlayer:hover{text-decoration:underline;color:var(--a)}

/* PLAYER PROFILE PICTURES */
.avatar{width:54px;height:54px;border-radius:50%;overflow:hidden;background:#121923;border:2px solid #2a3747;display:grid;place-items:center;flex:0 0 auto}
.avatar img{width:100%;height:100%;display:block}.avatar img.cover{object-fit:cover}.avatar img.contain{object-fit:contain;background:#080b10}
.avatar.sm{width:38px;height:38px}.avatar.lg{width:110px;height:110px;border-width:3px}.avatar.xl{width:140px;height:140px;border-width:3px}
.avatarPlaceholder{font-weight:1000;color:var(--a)}
.profileEditor{display:grid;grid-template-columns:160px 1fr;gap:16px;align-items:start}.profileEditorPreview{display:grid;gap:10px;justify-items:center}.profileEditorControls{display:grid;gap:10px}
.profileEditor input[type=file]{width:100%}.avatarRow{display:flex;gap:10px;align-items:center}.avatarName{display:grid}.avatarName small{color:#8996a8}
.playerProfileHero{align-items:center}.playerProfileIdentity{display:flex;gap:14px;align-items:center}
@media(max-width:700px){.profileEditor{grid-template-columns:1fr}.profileEditorPreview{justify-items:start}.avatar.xl{width:110px;height:110px}}

/* PLAYER AVATARS ACROSS OCD */
.matchPlayer{display:flex;align-items:center;gap:8px;min-width:0}.matchPlayer.right{justify-content:flex-end}
.matchPlayerName{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.spectatorPlayers.withAvatars{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px}
.spectatorPlayers.withAvatars .matchPlayer:last-child{justify-content:flex-end;text-align:right}
.avatar.xs{width:30px;height:30px;border-width:1px}.avatar.md{width:46px;height:46px}
.fixtureAvatarNames{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap}.fixtureAvatarNames .versus{color:var(--a);font-weight:1000}

/* COMPLETE PLAYER IDENTITY + STAT CARDS */
.playerIdentity{display:inline-flex;align-items:center;gap:8px;min-width:0;vertical-align:middle}
.playerIdentity .playerText{display:grid;min-width:0}.playerIdentity .playerText b,.playerIdentity .playerText span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.playerIdentity .playerSub{font-size:.7rem;color:#8996a8}
.fixtureNames{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fixtureNames .vs{color:var(--a);font-weight:1000}
.playerStatCard{background:#0d131c;border:1px solid #263242;border-radius:13px;padding:13px}
.playerStatHead{display:flex;gap:11px;align-items:center;margin-bottom:11px}.playerStatHead h3{margin:0}.playerStatHead small{color:#8996a8}
.playerMiniStats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.playerMiniStats article{background:#111722;border:1px solid #263242;border-radius:9px;padding:8px;text-align:center}.playerMiniStats span{display:block;color:#8f9bad;font-size:.7rem}.playerMiniStats b{font-size:1.05rem}
.avgStat b{color:var(--a)}
.tablePlayerCell{display:flex;align-items:center;gap:8px}.tablePlayerMeta{display:grid}.tablePlayerMeta small{color:#8996a8;font-size:.68rem}

/* PLAYER PERSONAL DASHBOARD */
.playerDashHero{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center}
.playerDashIdentity{display:flex;gap:15px;align-items:center}
.playerDashName h2{font-size:2rem;margin:2px 0}.playerDashName .divisionName{color:var(--a);font-weight:900}
.playerDashStats{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin-top:14px}
.playerDashStats article{background:#0d131c;border:1px solid #263242;border-radius:11px;padding:11px;text-align:center}
.playerDashStats span{display:block;color:#8f9bad;font-size:.72rem}.playerDashStats b{font-size:1.35rem;color:#fff}.playerDashStats .accent b{color:var(--a)}
.playerDashPanels{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.playerDashPanel{background:#111722;border:1px solid #293647;border-radius:14px;padding:14px}
.playerDashNext{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#0d131c;border:1px solid #263242;border-radius:11px;padding:12px;margin-top:9px}
.playerDashOpponent{display:flex;align-items:center;gap:9px}.leaguePos{display:grid;place-items:center;width:78px;height:78px;border-radius:18px;background:linear-gradient(135deg,var(--a),var(--b));color:#041015;font-weight:1000;font-size:1.35rem}

/* HOLIDAY + WEEKLY FIXTURE CONTROL */
.statusPill{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:.7rem;font-weight:900;text-transform:uppercase;background:#202a36}
.statusPill.approved{background:#12351f;color:#9dffb6}.statusPill.pending{background:#3b3210;color:#ffe58c}.statusPill.rejected{background:#3a151a;color:#ffadb5}
.issueFlag{border:1px solid #6d4b15;background:#241b0c;border-radius:10px;padding:9px;color:#ffd780;margin-top:8px}
.deadlineBox{background:#0d131c;border:1px solid #263242;border-radius:9px;padding:8px;margin-top:8px}
.adminAttention{border-left:4px solid #ffb000}

/* ADMIN FIXTURE ISSUES */
.issueAdminGrid{display:grid;gap:12px}.issueAdminCard{background:#111722;border:1px solid #2a3747;border-left:5px solid #ffb000;border-radius:14px;padding:14px}
.issueAdminHead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.issuePlayers{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.issueNotes{display:grid;gap:8px;margin-top:10px}.issueNote{background:#0d131c;border:1px solid #263242;border-radius:10px;padding:10px}.issueNote small{color:#8c98a8}
.issueAdminActions{display:grid;grid-template-columns:180px 1fr auto;gap:8px;align-items:end;margin-top:12px}.issueTimeline{display:grid;gap:6px;margin-top:10px}.timelineItem{border-left:2px solid #344253;padding-left:9px;color:#aab5c1;font-size:.78rem}
.pendingHolidayCard{background:#111722;border:1px solid #2a3747;border-left:5px solid #8c6b12;border-radius:13px;padding:12px}
@media(max-width:800px){.issueAdminActions{grid-template-columns:1fr}}

.weekWindow{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.weekChip{padding:5px 8px;border-radius:999px;background:#111923;border:1px solid #2a3747;color:#b9c4d0;font-size:.72rem}
.weekChip.overdue{background:#3a151a;color:#ffadb5;border-color:#6f2832}
.adminPerms{display:grid;grid-template-columns:repeat(2,1fr);gap:7px;margin-top:9px}.adminPerms label{display:flex;gap:7px;align-items:center;background:#0d131c;border:1px solid #263242;border-radius:9px;padding:8px}
@media(max-width:700px){.adminPerms{grid-template-columns:1fr}}

/* FULL WEEKLY LEAGUE WORKFLOW */
.weekStatusBar{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin-top:12px}
.weekStatusBar article{background:#0d131c;border:1px solid #263242;border-radius:10px;padding:10px;text-align:center}
.weekStatusBar span{display:block;color:#8f9bad;font-size:.68rem}.weekStatusBar b{font-size:1.25rem}
.weekStatusBar .danger b{color:#ff8d98}.weekStatusBar .warn b{color:#ffd56f}.weekStatusBar .good b{color:#9dffb6}
.weekDeadlineBanner{display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap;background:#0d131c;border:1px solid #263242;border-radius:11px;padding:10px;margin-top:9px}
.weekDeadlineBanner.overdue{border-color:#6d2932;background:#211115}.weekDeadlineBanner.holiday{border-color:#6b5a1b;background:#211c0d}
.countdownBig{font-size:1rem;font-weight:1000}.countdownBig.overdue{color:#ff9aa5}.countdownBig.safe{color:#9dffb6}.countdownBig.warn{color:#ffd56f}
.adminQuickActions{display:flex;gap:7px;flex-wrap:wrap;margin-top:9px}
.issueReasonPill{display:inline-flex;padding:4px 8px;border-radius:999px;background:#251c0c;border:1px solid #6a4b13;color:#ffd56f;font-size:.7rem;font-weight:900}
@media(max-width:850px){.weekStatusBar{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){.weekStatusBar{grid-template-columns:repeat(2,1fr)}}

/* WARNINGS + STRIKES */
.disciplineGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px}
.disciplineCard{background:#111722;border:1px solid #2a3747;border-radius:13px;padding:13px}
.disciplineCard.review{border-color:#7a2e37;background:#211116}
.disciplineBadges{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}
.discPill{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:.7rem;font-weight:1000}
.discPill.warning{background:#3a300e;color:#ffe177}.discPill.strike{background:#3a151a;color:#ff9da7}.discPill.expired{background:#1b2430;color:#9da8b6}
.disciplineHistory{display:grid;gap:7px;margin-top:9px}.disciplineRecord{background:#0d131c;border:1px solid #263242;border-radius:9px;padding:9px}
.disciplineRecord small{color:#8c98a8}.strikeCount{font-size:1.8rem;color:#ff8e99;font-weight:1000}
.playerDisciplineBanner{margin-top:10px;border:1px solid #3a4654;background:#101722;border-radius:10px;padding:10px}
.playerDisciplineBanner.review{border-color:#7a2e37;background:#211116}

/* SEASON COMPLETION MANAGER */
.seasonGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px}
.seasonCard{background:#111722;border:1px solid #2a3747;border-radius:13px;padding:13px}
.seasonCard.risk{border-color:#7a2d37;background:#211116}
.seasonStats{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:10px}.seasonStats article{background:#0d131c;border:1px solid #263242;border-radius:9px;padding:8px;text-align:center}.seasonStats span{display:block;color:#8f9bad;font-size:.68rem}.seasonStats b{font-size:1.15rem}
.suggestionBox{margin-top:10px;padding:10px;border-radius:10px;background:#111a24;border:1px solid #334253}
.suggestionBox strong{color:var(--a)}
.paceBadge{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:.7rem;font-weight:1000}.paceBadge.good{background:#12351f;color:#9dffb6}.paceBadge.risk{background:#3a151a;color:#ff9da7}
@media(max-width:650px){.seasonStats{grid-template-columns:repeat(2,1fr)}}

/* SEASON PROGRESS + RECOMMENDATIONS */
.recommendGrid{display:grid;gap:9px}.recommendCard{background:#111722;border:1px solid #2a3747;border-left:5px solid #3e5368;border-radius:12px;padding:12px}.recommendCard.high{border-left-color:#d84f60;background:#211116}.recommendCard.medium{border-left-color:#d9a832;background:#211c0d}
.recommendHead{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.recommendType{font-size:.68rem;text-transform:uppercase;font-weight:1000;color:#8f9bad}
.progressBoard{display:grid;gap:9px}.progressRow{display:grid;grid-template-columns:220px 1fr 70px 90px 90px;gap:10px;align-items:center;background:#111722;border:1px solid #283545;border-radius:11px;padding:10px}.progressPlayer{display:flex;align-items:center;gap:8px}.progressTrack{height:12px;background:#0b1017;border-radius:999px;overflow:hidden;border:1px solid #263242}.progressFill{height:100%;background:linear-gradient(90deg,var(--a),var(--b));border-radius:999px}.progressStatus{font-size:.72rem;font-weight:1000}.progressStatus.risk{color:#ff9da7}.progressStatus.good{color:#9dffb6}
.divisionProgressTabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}.divisionProgressTabs button{background:#17232d;color:#e7eef5}.divisionProgressTabs button.active{background:linear-gradient(90deg,var(--a),var(--b));color:#041015}

/* PLAYER NOTIFICATIONS */
.notifyBadge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#d84f60;color:white;font-size:.68rem;font-weight:1000;margin-left:6px}
.notificationList{display:grid;gap:9px}.notificationCard{background:#111722;border:1px solid #293647;border-radius:12px;padding:12px}.notificationCard.unread{border-left:5px solid var(--a);background:#121b25}
.notificationHead{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.notificationType{font-size:.68rem;text-transform:uppercase;color:#8f9bad;font-weight:1000}
.notificationTime{font-size:.72rem;color:#8d99a9}.notificationActions{display:flex;gap:7px;flex-wrap:wrap;margin-top:8px}
.notificationSummary{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px}

/* PRIVATE ADMIN BETA */
.betaBanner{background:linear-gradient(90deg,#4d3508,#241b08);border:1px solid #7b5b13;color:#ffe28a;border-radius:10px;padding:9px 12px;margin-bottom:12px;font-weight:900}
.betaTools{display:grid;grid-template-columns:1fr 1fr;gap:10px}.betaTool{background:#0d131c;border:1px solid #263242;border-radius:11px;padding:12px}
@media(max-width:700px){.betaTools{grid-template-columns:1fr}}
@media(max-width:900px){.progressRow{grid-template-columns:1fr}.progressTrack{width:100%}}
@media(max-width:900px){.playerDashStats{grid-template-columns:repeat(3,1fr)}.playerDashPanels{grid-template-columns:1fr}}
@media(max-width:600px){.playerDashHero{grid-template-columns:1fr}.playerDashIdentity{align-items:flex-start}.leaguePos{width:64px;height:64px}}

/* ADMIN FIXTURE ISSUES */
.issueAdminGrid{display:grid;gap:12px}.issueAdminCard{background:#111722;border:1px solid #2a3747;border-left:5px solid #ffb000;border-radius:14px;padding:14px}
.issueAdminHead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.issuePlayers{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.issueNotes{display:grid;gap:8px;margin-top:10px}.issueNote{background:#0d131c;border:1px solid #263242;border-radius:10px;padding:10px}.issueNote small{color:#8c98a8}
.issueAdminActions{display:grid;grid-template-columns:180px 1fr auto;gap:8px;align-items:end;margin-top:12px}.issueTimeline{display:grid;gap:6px;margin-top:10px}.timelineItem{border-left:2px solid #344253;padding-left:9px;color:#aab5c1;font-size:.78rem}
.pendingHolidayCard{background:#111722;border:1px solid #2a3747;border-left:5px solid #8c6b12;border-radius:13px;padding:12px}
@media(max-width:800px){.issueAdminActions{grid-template-columns:1fr}}

/* WARNINGS + STRIKES */
.disciplineGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px}
.disciplineCard{background:#111722;border:1px solid #2a3747;border-radius:13px;padding:13px}
.disciplineCard.review{border-color:#7a2e37;background:#211116}
.disciplineBadges{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}
.discPill{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:.7rem;font-weight:1000}
.discPill.warning{background:#3a300e;color:#ffe177}.discPill.strike{background:#3a151a;color:#ff9da7}.discPill.expired{background:#1b2430;color:#9da8b6}
.disciplineHistory{display:grid;gap:7px;margin-top:9px}.disciplineRecord{background:#0d131c;border:1px solid #263242;border-radius:9px;padding:9px}
.disciplineRecord small{color:#8c98a8}.strikeCount{font-size:1.8rem;color:#ff8e99;font-weight:1000}
.playerDisciplineBanner{margin-top:10px;border:1px solid #3a4654;background:#101722;border-radius:10px;padding:10px}
.playerDisciplineBanner.review{border-color:#7a2e37;background:#211116}
@media(max-width:900px){.profileStatsGrid{grid-template-columns:repeat(3,1fr)}.profileColumns{grid-template-columns:1fr}}

/* PLAYER PROFILE PICTURES */
.avatar{width:54px;height:54px;border-radius:50%;overflow:hidden;background:#121923;border:2px solid #2a3747;display:grid;place-items:center;flex:0 0 auto}
.avatar img{width:100%;height:100%;display:block}.avatar img.cover{object-fit:cover}.avatar img.contain{object-fit:contain;background:#080b10}
.avatar.sm{width:38px;height:38px}.avatar.lg{width:110px;height:110px;border-width:3px}.avatar.xl{width:140px;height:140px;border-width:3px}
.avatarPlaceholder{font-weight:1000;color:var(--a)}
.profileEditor{display:grid;grid-template-columns:160px 1fr;gap:16px;align-items:start}.profileEditorPreview{display:grid;gap:10px;justify-items:center}.profileEditorControls{display:grid;gap:10px}
.profileEditor input[type=file]{width:100%}.avatarRow{display:flex;gap:10px;align-items:center}.avatarName{display:grid}.avatarName small{color:#8996a8}
.playerProfileHero{align-items:center}.playerProfileIdentity{display:flex;gap:14px;align-items:center}
@media(max-width:700px){.profileEditor{grid-template-columns:1fr}.profileEditorPreview{justify-items:start}.avatar.xl{width:110px;height:110px}}

/* COMPLETE PLAYER IDENTITY + STAT CARDS */
.playerIdentity{display:inline-flex;align-items:center;gap:8px;min-width:0;vertical-align:middle}
.playerIdentity .playerText{display:grid;min-width:0}.playerIdentity .playerText b,.playerIdentity .playerText span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.playerIdentity .playerSub{font-size:.7rem;color:#8996a8}
.fixtureNames{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.fixtureNames .vs{color:var(--a);font-weight:1000}
.playerStatCard{background:#0d131c;border:1px solid #263242;border-radius:13px;padding:13px}
.playerStatHead{display:flex;gap:11px;align-items:center;margin-bottom:11px}.playerStatHead h3{margin:0}.playerStatHead small{color:#8996a8}
.playerMiniStats{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.playerMiniStats article{background:#111722;border:1px solid #263242;border-radius:9px;padding:8px;text-align:center}.playerMiniStats span{display:block;color:#8f9bad;font-size:.7rem}.playerMiniStats b{font-size:1.05rem}
.avgStat b{color:var(--a)}
.tablePlayerCell{display:flex;align-items:center;gap:8px}.tablePlayerMeta{display:grid}.tablePlayerMeta small{color:#8996a8;font-size:.68rem}

/* PLAYER PERSONAL DASHBOARD */
.playerDashHero{display:grid;grid-template-columns:auto 1fr;gap:18px;align-items:center}
.playerDashIdentity{display:flex;gap:15px;align-items:center}
.playerDashName h2{font-size:2rem;margin:2px 0}.playerDashName .divisionName{color:var(--a);font-weight:900}
.playerDashStats{display:grid;grid-template-columns:repeat(6,1fr);gap:9px;margin-top:14px}
.playerDashStats article{background:#0d131c;border:1px solid #263242;border-radius:11px;padding:11px;text-align:center}
.playerDashStats span{display:block;color:#8f9bad;font-size:.72rem}.playerDashStats b{font-size:1.35rem;color:#fff}.playerDashStats .accent b{color:var(--a)}
.playerDashPanels{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.playerDashPanel{background:#111722;border:1px solid #293647;border-radius:14px;padding:14px}
.playerDashNext{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#0d131c;border:1px solid #263242;border-radius:11px;padding:12px;margin-top:9px}
.playerDashOpponent{display:flex;align-items:center;gap:9px}.leaguePos{display:grid;place-items:center;width:78px;height:78px;border-radius:18px;background:linear-gradient(135deg,var(--a),var(--b));color:#041015;font-weight:1000;font-size:1.35rem}

/* ADMIN FIXTURE ISSUES */
.issueAdminGrid{display:grid;gap:12px}.issueAdminCard{background:#111722;border:1px solid #2a3747;border-left:5px solid #ffb000;border-radius:14px;padding:14px}
.issueAdminHead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.issuePlayers{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.issueNotes{display:grid;gap:8px;margin-top:10px}.issueNote{background:#0d131c;border:1px solid #263242;border-radius:10px;padding:10px}.issueNote small{color:#8c98a8}
.issueAdminActions{display:grid;grid-template-columns:180px 1fr auto;gap:8px;align-items:end;margin-top:12px}.issueTimeline{display:grid;gap:6px;margin-top:10px}.timelineItem{border-left:2px solid #344253;padding-left:9px;color:#aab5c1;font-size:.78rem}
.pendingHolidayCard{background:#111722;border:1px solid #2a3747;border-left:5px solid #8c6b12;border-radius:13px;padding:12px}
@media(max-width:800px){.issueAdminActions{grid-template-columns:1fr}}

/* WARNINGS + STRIKES */
.disciplineGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px}
.disciplineCard{background:#111722;border:1px solid #2a3747;border-radius:13px;padding:13px}
.disciplineCard.review{border-color:#7a2e37;background:#211116}
.disciplineBadges{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}
.discPill{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:.7rem;font-weight:1000}
.discPill.warning{background:#3a300e;color:#ffe177}.discPill.strike{background:#3a151a;color:#ff9da7}.discPill.expired{background:#1b2430;color:#9da8b6}
.disciplineHistory{display:grid;gap:7px;margin-top:9px}.disciplineRecord{background:#0d131c;border:1px solid #263242;border-radius:9px;padding:9px}
.disciplineRecord small{color:#8c98a8}.strikeCount{font-size:1.8rem;color:#ff8e99;font-weight:1000}
.playerDisciplineBanner{margin-top:10px;border:1px solid #3a4654;background:#101722;border-radius:10px;padding:10px}
.playerDisciplineBanner.review{border-color:#7a2e37;background:#211116}
@media(max-width:900px){.playerDashStats{grid-template-columns:repeat(3,1fr)}.playerDashPanels{grid-template-columns:1fr}}
@media(max-width:600px){.playerDashHero{grid-template-columns:1fr}.playerDashIdentity{align-items:flex-start}.leaguePos{width:64px;height:64px}}

/* ADMIN FIXTURE ISSUES */
.issueAdminGrid{display:grid;gap:12px}.issueAdminCard{background:#111722;border:1px solid #2a3747;border-left:5px solid #ffb000;border-radius:14px;padding:14px}
.issueAdminHead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;flex-wrap:wrap}.issuePlayers{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.issueNotes{display:grid;gap:8px;margin-top:10px}.issueNote{background:#0d131c;border:1px solid #263242;border-radius:10px;padding:10px}.issueNote small{color:#8c98a8}
.issueAdminActions{display:grid;grid-template-columns:180px 1fr auto;gap:8px;align-items:end;margin-top:12px}.issueTimeline{display:grid;gap:6px;margin-top:10px}.timelineItem{border-left:2px solid #344253;padding-left:9px;color:#aab5c1;font-size:.78rem}
.pendingHolidayCard{background:#111722;border:1px solid #2a3747;border-left:5px solid #8c6b12;border-radius:13px;padding:12px}
@media(max-width:800px){.issueAdminActions{grid-template-columns:1fr}}

/* WARNINGS + STRIKES */
.disciplineGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px}
.disciplineCard{background:#111722;border:1px solid #2a3747;border-radius:13px;padding:13px}
.disciplineCard.review{border-color:#7a2e37;background:#211116}
.disciplineBadges{display:flex;gap:7px;flex-wrap:wrap;margin:8px 0}
.discPill{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:.7rem;font-weight:1000}
.discPill.warning{background:#3a300e;color:#ffe177}.discPill.strike{background:#3a151a;color:#ff9da7}.discPill.expired{background:#1b2430;color:#9da8b6}
.disciplineHistory{display:grid;gap:7px;margin-top:9px}.disciplineRecord{background:#0d131c;border:1px solid #263242;border-radius:9px;padding:9px}
.disciplineRecord small{color:#8c98a8}.strikeCount{font-size:1.8rem;color:#ff8e99;font-weight:1000}
.playerDisciplineBanner{margin-top:10px;border:1px solid #3a4654;background:#101722;border-radius:10px;padding:10px}
.playerDisciplineBanner.review{border-color:#7a2e37;background:#211116}
@media(max-width:900px){.app{grid-template-columns:1fr}aside{height:auto;position:static}.stats{grid-template-columns:repeat(2,1fr)}.fixtureRow,.resultRow{grid-template-columns:1fr}.checks{grid-template-columns:1fr}.hero{align-items:flex-start;flex-direction:column;gap:12px}}

.animated-ui .fixtureRow,.animated-ui .resultRow,.animated-ui .tournamentCard,.animated-ui .bracketMatch,.animated-ui .publicCard{animation:ocdCardIn .35s ease both;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.animated-ui .fixtureRow:hover,.animated-ui .resultRow:hover,.animated-ui .tournamentCard:hover,.animated-ui .bracketMatch:hover,.animated-ui .publicCard:hover{transform:translateY(-2px);box-shadow:0 10px 28px var(--g);border-color:var(--a)}
.animated-ui .winner{animation:ocdWinnerGlow 1.6s ease-in-out infinite alternate}
@keyframes ocdCardIn{from{opacity:.35;transform:translateY(7px)}to{opacity:1;transform:none}}
@keyframes ocdWinnerGlow{from{filter:drop-shadow(0 0 0 var(--a))}to{filter:drop-shadow(0 0 7px var(--a))}}
@media (prefers-reduced-motion:reduce){.animated-ui *{animation:none!important;transition:none!important}}

.themeLogoWrap{position:relative;display:inline-block;width:100%;height:100%;overflow:hidden;border-radius:10px}
.themeLogo{width:100%;height:100%;object-fit:contain;display:block;transition:filter .25s ease}
.themeLogoTint{display:none}
.theme-logo-on .themeLogo{filter:drop-shadow(0 0 12px var(--g))}
.theme-logo-on .themeLogoTint{display:none}

.ocdMatchup{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:stretch;margin:14px 0}
.ocdVs{display:flex;align-items:center;justify-content:center;font-size:28px;font-weight:1000;color:var(--a);text-shadow:0 0 18px var(--a)}
.ocdPlayerCard{position:relative;overflow:hidden;border:1px solid color-mix(in srgb,var(--a) 55%,#263142);border-radius:18px;padding:16px;background:linear-gradient(145deg,rgba(13,18,27,.97),rgba(4,7,12,.96));box-shadow:0 12px 34px rgba(0,0,0,.28)}
.ocdPlayerCard.opponent{border-color:color-mix(in srgb,var(--b) 60%,#263142)}
.ocdCardGlow{position:absolute;inset:-35% 55% 45% -20%;background:radial-gradient(circle,var(--g),transparent 68%);pointer-events:none}
.ocdCardTop,.ocdCardIdentity,.ocdCardStats,.ocdCardDetails,.ocdCardAvail{position:relative;z-index:1}
.ocdCardTop{display:flex;justify-content:space-between;color:var(--a);font-size:11px;font-weight:900;letter-spacing:.12em}
.ocdCardIdentity{display:flex;align-items:center;gap:15px;margin:14px 0}.ocdCardIdentity h2{margin:0;font-size:24px}.ocdCardIdentity strong,.ocdCardIdentity small{display:block;color:#aab7c6;margin-top:2px}
.ocdCardStats{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.ocdCardStats div{background:#0c111a;border:1px solid #273242;border-radius:10px;padding:9px;text-align:center}.ocdCardStats span{display:block;font-size:10px;color:#8492a5}.ocdCardStats b{font-size:18px}
.ocdCardDetails{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.ocdCardDetails div{background:rgba(10,15,23,.78);padding:8px;border-radius:8px}.ocdCardDetails span{display:block;font-size:10px;color:#7f8da0}.ocdCardDetails b{font-size:12px}
.ocdCardAvail{margin-top:10px;padding-top:9px;border-top:1px solid #243042}.ocdCardAvail b,.ocdCardAvail span{display:block}.ocdCardAvail span{font-size:11px;color:#9aa8b9;margin-top:3px}
.availabilityGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:8px;margin-top:10px}.availabilityDay{display:grid;grid-template-columns:auto 1fr 1fr;gap:7px;align-items:center;background:#0b1018;border:1px solid #263142;padding:9px;border-radius:10px}.availabilityDay b{width:32px}
.localTimePair{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:9px 0}.localTimePair>div{background:#0a1018;border:1px solid #263142;border-radius:9px;padding:9px}.localTimePair span{display:block;font-size:10px;color:#7f8da0}.localTimePair b{display:block;margin-top:3px}
.logoThemePreview{display:flex;align-items:center;gap:14px;margin:12px 0;padding:12px;background:#080c12;border:1px solid #273242;border-radius:12px}.logoThemePreview img{width:94px;height:70px;object-fit:contain}
@media(max-width:850px){.ocdMatchup{grid-template-columns:1fr}.ocdVs{min-height:30px}.ocdCardDetails{grid-template-columns:1fr}.ocdCardStats{grid-template-columns:repeat(2,1fr)}}

.brandingLayout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:24px;align-items:start;margin-top:18px}
.brandingLogoBox,.brandingMain,.brandOptionCard{background:#0a0f17;border:1px solid #273242;border-radius:15px;padding:18px;min-width:0}
.brandingLogoPreview{height:280px;display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 40%,var(--g),transparent 62%),#05080d;border:1px solid #263142;border-radius:14px;margin:12px 0 16px}
.brandingLogoPreview .themeLogoWrap{width:245px;height:245px}.brandingLogoPreview img{width:100%;height:100%;object-fit:contain}
.uploadBox{display:block;margin:12px 0}.uploadBox input{display:block;margin-top:8px;width:100%}
.themeTabs{margin:8px 0 14px;color:#8fa0b5;font-size:12px}
.themeCardGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:13px}
.themeCard{display:flex;flex-direction:column;align-items:center;gap:8px;min-height:180px;padding:10px;border:1px solid #283548;border-radius:13px;background:#0b111a;color:#fff;overflow:hidden}
.themeCard:hover{border-color:var(--a);transform:translateY(-2px)}.themeCard.active{border-color:var(--a);box-shadow:0 0 0 1px var(--a),0 9px 28px var(--g)}
.themeCardLogo{width:100%;height:120px;display:flex;align-items:center;justify-content:center;background:#05080d;border-radius:9px;overflow:hidden}.themeCardLogo img{width:108px;height:108px;object-fit:contain}
.themeCard b{font-size:13px}.themeCard small{color:var(--a);font-weight:900;letter-spacing:.08em}
.brandingOptionsGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;margin-top:20px}.brandOptionCard{min-height:135px}
.brandSwatches{display:flex;gap:9px;margin:10px 0}.brandSwatches span{width:46px;height:30px;border-radius:7px;border:1px solid #38465b}
.adminFixtureTime{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:8px 0 12px;grid-column:1/-1;min-width:0}
.adminFixtureTime>div{background:#090f17;border:1px solid #263142;border-radius:10px;padding:10px;min-width:0}
.adminFixtureTime span,.adminFixtureTime b,.adminFixtureTime small{display:block;overflow-wrap:anywhere}.adminFixtureTime span{font-size:10px;color:#8fa0b5}.adminFixtureTime b{font-size:11px;margin-top:4px}.adminFixtureTime small{font-size:11px;color:var(--a);font-weight:900;margin-top:5px}
.fixtureRow{display:grid!important;grid-template-columns:minmax(120px,.9fr) minmax(220px,1.5fr) minmax(100px,.7fr) minmax(180px,1.1fr) minmax(100px,.7fr)!important;gap:12px!important;align-items:center!important}
.panel,.fixtureRow,.fixtureList>*{min-width:0}.tableWrap{overflow-x:auto}
@media(max-width:1150px){.brandingLayout{grid-template-columns:1fr}.brandingLogoPreview{height:230px}.brandingOptionsGrid{grid-template-columns:1fr 1fr}.fixtureRow{grid-template-columns:1fr 1fr!important}.adminFixtureTime{grid-column:1/-1}}
@media(max-width:720px){.themeCardGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.brandingOptionsGrid{grid-template-columns:1fr}.fixtureRow{grid-template-columns:1fr!important}.adminFixtureTime{grid-template-columns:1fr}}

/* v4.3 dashboard + navigation theming */
nav button,.navBtn,.sideNav button,.sidebar button,[data-tab]{
 transition:background .22s ease,border-color .22s ease,box-shadow .22s ease,transform .18s ease,color .22s ease;
}
nav button:hover,.navBtn:hover,.sideNav button:hover,.sidebar button:hover,[data-tab]:hover{
 border-color:color-mix(in srgb,var(--a) 55%,#2a3648)!important;
 box-shadow:0 0 18px var(--g);
 transform:translateX(2px);
}
nav button.active,.navBtn.active,.sideNav button.active,.sidebar button.active,[data-tab].active{
 background:linear-gradient(90deg,var(--a),var(--b))!important;
 color:#05070b!important;
 border-color:transparent!important;
 box-shadow:0 0 20px var(--g)!important;
}
.sidebar .role,.sidebar .ownerRole,.accountRole,.ey{
 color:var(--a)!important;
}
.dashboardLogo.themeLogoWrap{
 width:110px!important;
 height:110px!important;
 display:inline-flex!important;
 align-items:center;
 justify-content:center;
}
.dashboardLogo .themeLogo,.dashboardLogo.themeLogoWrap .themeLogo{
 width:100%!important;
 height:100%!important;
 object-fit:contain!important;
 filter:drop-shadow(0 0 14px var(--g));
}

/* Dashboard animation layer */
.animated-ui .dashboardAnimatedCard,
.animated-ui .dashboard .panel,
.animated-ui .dashboardGrid>div,
.animated-ui [data-dashboard-card]{
 animation:ocdDashboardIn .48s cubic-bezier(.2,.8,.2,1) both;
 transform-origin:center;
}
.animated-ui .dashboardAnimatedCard:hover,
.animated-ui .dashboard .panel:hover,
.animated-ui .dashboardGrid>div:hover,
.animated-ui [data-dashboard-card]:hover{
 transform:translateY(-4px) scale(1.01);
 box-shadow:0 14px 36px var(--g);
 border-color:var(--a);
}
.animated-ui .dashboardAnimatedCard:nth-child(2),
.animated-ui .dashboardGrid>div:nth-child(2){animation-delay:.05s}
.animated-ui .dashboardAnimatedCard:nth-child(3),
.animated-ui .dashboardGrid>div:nth-child(3){animation-delay:.10s}
.animated-ui .dashboardAnimatedCard:nth-child(4),
.animated-ui .dashboardGrid>div:nth-child(4){animation-delay:.15s}
.animated-ui .dashboardAnimatedCard:nth-child(5),
.animated-ui .dashboardGrid>div:nth-child(5){animation-delay:.20s}
.animated-ui .dashboardAnimatedCard:nth-child(6),
.animated-ui .dashboardGrid>div:nth-child(6){animation-delay:.25s}
@keyframes ocdDashboardIn{
 from{opacity:.25;transform:translateY(14px) scale(.985)}
 to{opacity:1;transform:translateY(0) scale(1)}
}
.animated-ui .dashboardLogo.themeLogoWrap{
 animation:ocdLogoPulse 2.4s ease-in-out infinite alternate;
}
@keyframes ocdLogoPulse{
 from{filter:drop-shadow(0 0 4px var(--a))}
 to{filter:drop-shadow(0 0 18px var(--a)) drop-shadow(0 0 28px var(--b))}
}

/* Make dashboard accents follow selected theme */
.dashboard .panel,.dashboardGrid>div,.dashboardAnimatedCard{
 border-color:color-mix(in srgb,var(--a) 22%,#263142);
}
.dashboard .panel h2,.dashboard .panel h3,.dashboardGrid b{
 color:inherit;
}
@media(prefers-reduced-motion:reduce){
 .animated-ui .dashboardAnimatedCard,
 .animated-ui .dashboard .panel,
 .animated-ui .dashboardGrid>div,
 .animated-ui [data-dashboard-card],
 .animated-ui .dashboardLogo.themeLogoWrap{
  animation:none!important;
  transform:none!important;
 }
}

/* v4.5 exact neon dashboard direction */
.neonDashboard{position:relative;max-width:1320px;margin:0 auto;padding-bottom:20px}
.neonDashHeader{position:relative;min-height:150px;padding:18px 310px 8px 0;display:flex;align-items:flex-start;justify-content:space-between}
.neonDashHeader h1{font-size:38px;margin:6px 0 0;letter-spacing:-.03em}
.sharedDb{display:flex;align-items:center;gap:8px;color:#53ff83;font-weight:800;margin-top:12px;white-space:nowrap}
.sharedDb span{width:9px;height:9px;border-radius:50%;background:#53ff83;box-shadow:0 0 14px #53ff83}
.neonDashBrand{position:absolute;right:10px;top:-14px;width:280px;height:250px;display:flex;align-items:center;justify-content:center;pointer-events:none}
.neonDashBrand:before{content:'';position:absolute;inset:0;background:radial-gradient(circle,var(--g),transparent 66%);filter:blur(8px)}
.neonDashBrand .themeLogoWrap{position:relative;width:250px;height:250px;z-index:1}
.neonDashBrand img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 16px var(--a)) drop-shadow(0 0 26px var(--b))}
.neonBetaBanner{display:flex;align-items:center;gap:10px;padding:16px 20px;border:1px solid #e4af00;border-radius:13px;background:linear-gradient(90deg,rgba(115,73,0,.55),rgba(45,29,0,.36));box-shadow:0 0 22px rgba(255,192,0,.15);color:#ffd84b;margin-bottom:22px}
.neonBetaBanner .shieldIcon{font-size:23px}
.neonOwnerHero{position:relative;padding:25px;border:1px solid var(--a);border-radius:16px;background:linear-gradient(110deg,rgba(0,20,35,.92),rgba(18,4,34,.92));box-shadow:0 0 24px var(--g),inset 0 0 35px rgba(50,70,120,.06);overflow:hidden;margin-bottom:25px}
.neonOwnerHero:after{content:'';position:absolute;inset:0;background:linear-gradient(120deg,transparent 48%,color-mix(in srgb,var(--b) 18%,transparent));pointer-events:none}
.neonOwnerHero h2{font-size:28px;margin:7px 0 10px}.neonOwnerHero p{color:#c0c9d5;margin:0}
.neonStatGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:22px}
.neonStat{min-height:110px;display:flex;align-items:center;gap:20px;padding:18px 22px;border-radius:15px;background:linear-gradient(145deg,#07101a,#080b13);border:1px solid currentColor;box-shadow:0 0 20px color-mix(in srgb,currentColor 26%,transparent),inset 0 0 28px rgba(255,255,255,.015);position:relative;overflow:hidden}
.neonStat:after{content:'';position:absolute;inset:0;background:linear-gradient(130deg,transparent 50%,color-mix(in srgb,currentColor 7%,transparent));pointer-events:none}
.neonStatIcon{font-size:42px;font-weight:900;text-shadow:0 0 15px currentColor;min-width:50px;text-align:center}.neonStat span{display:block;color:currentColor;font-size:14px}.neonStat b{display:block;color:white;font-size:31px;margin-top:5px}
.neonStat.cyan{color:#27cfff}.neonStat.purple{color:#d451ff}.neonStat.blue{color:#19caff}.neonStat.gold{color:#ffc52b}.neonStat.orange{color:#ff8a00}.neonStat.green{color:#35ec72}
.neonFeatureGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.neonFeature{min-height:158px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:start;padding:20px;border:1px solid currentColor;border-radius:15px;background:linear-gradient(145deg,#08111c,#090913);box-shadow:0 0 20px color-mix(in srgb,currentColor 23%,transparent);position:relative;overflow:hidden}
.neonFeature:after{content:'';position:absolute;inset:0;background:linear-gradient(130deg,transparent 53%,color-mix(in srgb,currentColor 8%,transparent));pointer-events:none}
.featureIcon{font-size:35px;text-shadow:0 0 16px currentColor}.neonFeature h3{color:currentColor;margin:3px 0 9px;font-size:17px}.neonFeature p{color:#b5c0cc;font-size:13px;line-height:1.55;margin:0}
.neonFeature.cyan{color:#25c9ff}.neonFeature.green{color:#3dff76}.neonFeature.pink{color:#ff4fb0}.neonFeature.gold{color:#ffbe25}
.miniToggle{width:38px;height:21px;border-radius:20px;background:#263244;position:relative;margin-top:3px}.miniToggle:after{content:'';position:absolute;width:17px;height:17px;left:2px;top:2px;background:#fff;border-radius:50%;transition:.2s}.miniToggle.on{background:#28aaff;box-shadow:0 0 10px #28aaff}.miniToggle.on:after{left:19px}
.sidebarThemeLogo.themeLogoWrap{width:64px!important;height:64px!important}
.sidebarThemeLogo img{width:100%!important;height:100%!important;object-fit:contain!important}
.animated-ui .neonStat,.animated-ui .neonFeature,.animated-ui .neonOwnerHero{animation:neonCardRise .48s cubic-bezier(.2,.8,.2,1) both}
.animated-ui .neonStat:hover,.animated-ui .neonFeature:hover{transform:translateY(-4px);filter:brightness(1.08);box-shadow:0 0 30px color-mix(in srgb,currentColor 42%,transparent)}
@keyframes neonCardRise{from{opacity:.25;transform:translateY(12px) scale(.985)}to{opacity:1;transform:none}}
/* make nav closer to approved mockup */
nav button,.navBtn,.sideNav button,.sidebar button,[data-tab]{border:1px solid transparent!important;border-radius:10px!important}
nav button.active,.navBtn.active,.sideNav button.active,.sidebar button.active,[data-tab].active{background:linear-gradient(90deg,color-mix(in srgb,var(--a) 92%,#fff 8%),var(--b))!important;box-shadow:0 0 18px var(--g),inset 0 0 18px rgba(255,255,255,.07)!important;color:#051018!important}
@media(max-width:1200px){.neonStatGrid{grid-template-columns:repeat(2,1fr)}.neonFeatureGrid{grid-template-columns:repeat(2,1fr)}.neonDashHeader{padding-right:230px}.neonDashBrand{width:220px;height:210px}.neonDashBrand .themeLogoWrap{width:205px;height:205px}}
@media(max-width:760px){.neonDashHeader{padding-right:0;min-height:auto}.neonDashBrand{position:relative;right:auto;top:auto;width:160px;height:150px;margin-left:auto}.neonDashBrand .themeLogoWrap{width:145px;height:145px}.neonStatGrid,.neonFeatureGrid{grid-template-columns:1fr}.neonFeature{grid-template-columns:auto 1fr}}
@media(prefers-reduced-motion:reduce){.animated-ui .neonStat,.animated-ui .neonFeature,.animated-ui .neonOwnerHero{animation:none!important;transform:none!important}}

/* v4.6 premium player cards + fixture matchup */
.playerCardSolo{max-width:720px;margin:18px auto}
.proPlayerCard{position:relative;min-width:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--a) 65%,#263142);border-radius:22px;background:linear-gradient(145deg,#07111a 0%,#0a0d16 48%,#10091a 100%);box-shadow:0 18px 48px rgba(0,0,0,.35),0 0 28px var(--g);padding:20px;color:#fff}
.proPlayerCard.opponent{border-color:color-mix(in srgb,var(--b) 68%,#263142)}
.proCardBg{position:absolute;inset:-30%;background:radial-gradient(circle at 20% 20%,color-mix(in srgb,var(--a) 28%,transparent),transparent 37%),radial-gradient(circle at 80% 80%,color-mix(in srgb,var(--b) 23%,transparent),transparent 40%);filter:blur(8px);pointer-events:none}
.proCardHeader,.proCardHero,.proCardNumbers,.proCardEquipment,.proCardWalkout,.proCardAvailability{position:relative;z-index:1}
.proCardHeader{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:1000;letter-spacing:.13em;color:var(--a);border-bottom:1px solid #263142;padding-bottom:11px}
.proCardHero{display:flex;align-items:center;gap:18px;padding:18px 0}.proCardAvatar .avatar.xl,.proCardAvatar .avatarXL{width:108px!important;height:108px!important;border:2px solid var(--a);box-shadow:0 0 25px var(--g)}
.proCardName small{display:block;color:#8ea0b7;text-transform:uppercase;font-weight:800;letter-spacing:.08em}.proCardName h2{font-size:29px;margin:4px 0;color:#fff}.proCardName strong{color:var(--a)}
.proCardNumbers{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.proCardNumbers div{background:rgba(5,11,18,.82);border:1px solid #273548;border-radius:11px;padding:11px;text-align:center}.proCardNumbers span{display:block;color:#8090a7;font-size:9px;font-weight:900}.proCardNumbers b{display:block;font-size:20px;margin-top:3px}
.proCardEquipment{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.proCardEquipment div,.proCardWalkout{background:rgba(6,12,19,.72);border:1px solid #263142;border-radius:10px;padding:10px}.proCardEquipment span,.proCardWalkout span{display:block;color:#8190a4;font-size:10px}.proCardEquipment b,.proCardWalkout b{display:block;margin-top:4px;font-size:12px;overflow-wrap:anywhere}
.proCardWalkout{margin-top:8px}.proCardAvailability{display:grid;grid-template-columns:.75fr 1.25fr;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid #263142}.proCardAvailability div{min-width:0}.proCardAvailability span{display:block;color:#78889d;font-size:9px;font-weight:900}.proCardAvailability b{display:block;font-size:11px;margin-top:4px;overflow-wrap:anywhere}
.playerFixtureStack{display:grid;gap:22px}.playerFixtureCard{border:1px solid #273548;border-radius:20px;background:linear-gradient(145deg,#080e16,#080a11);padding:20px;box-shadow:0 18px 45px rgba(0,0,0,.28)}
.fixtureTitleBar{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:16px}.fixtureTitleBar span{color:#8ea0b6;font-size:11px;font-weight:800}.fixtureTitleBar h2{margin:4px 0 0;font-size:23px}.fixtureTitleBar em{font-style:normal;color:var(--a);text-shadow:0 0 13px var(--a)}
.fixtureStatus{font-size:10px;font-weight:1000;letter-spacing:.08em;border:1px solid #435168;border-radius:20px;padding:7px 10px;color:#b8c4d2}.fixtureStatus.scheduled,.fixtureStatus.done{color:#54ff87;border-color:#54ff87;box-shadow:0 0 13px rgba(84,255,135,.12)}
.playerVsCards{display:grid;grid-template-columns:minmax(0,1fr) 72px minmax(0,1fr);gap:14px;align-items:center}.bigVs{display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--a)}.bigVs span{font-size:28px;font-weight:1000;text-shadow:0 0 18px var(--a)}.bigVs small{font-size:8px;letter-spacing:.12em;color:#8494aa;margin-top:4px}
.scheduleCompare{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:15px 0}.scheduleCompare>div{border:1px solid #263142;border-radius:10px;background:#070d14;padding:11px}.scheduleCompare span{display:block;color:#7f8ea2;font-size:10px;font-weight:900}.scheduleCompare b{display:block;margin-top:4px;font-size:12px}
.confirmedTimeBox{display:grid;grid-template-columns:auto 1fr 1fr;gap:12px;align-items:center;border:1px solid #44e67b;border-radius:12px;background:rgba(22,85,46,.16);padding:13px;margin:12px 0}.confirmedTimeBox>span{color:#54ff87;font-size:10px;font-weight:1000}.confirmedTimeBox div{border-left:1px solid #294334;padding-left:12px}.confirmedTimeBox b,.confirmedTimeBox small{display:block}.confirmedTimeBox small{color:#8fa298;margin-top:3px}
.scheduleProposalBox,.newScheduleBox{margin:13px 0;padding:14px!important;border-radius:12px}.scheduleProposalBox>span{display:block;color:var(--a);font-weight:1000;font-size:10px;letter-spacing:.08em;margin-bottom:8px}.waitingBadge{color:#ffcf4f;font-weight:900;font-size:11px;margin-top:9px}.suggestTimeForm{margin-top:12px!important;border-top:1px solid #2e3c50;padding-top:12px}
.animated-ui .proPlayerCard{animation:playerCardIn .45s ease both}.animated-ui .playerFixtureCard{animation:playerFixtureIn .5s ease both}.animated-ui .proPlayerCard:hover{transform:translateY(-3px);box-shadow:0 22px 55px rgba(0,0,0,.38),0 0 34px var(--g)}
@keyframes playerCardIn{from{opacity:.2;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}@keyframes playerFixtureIn{from{opacity:.2;transform:translateY(14px)}to{opacity:1;transform:none}}
@media(max-width:1100px){.playerVsCards{grid-template-columns:1fr}.bigVs{min-height:45px}.proCardAvailability{grid-template-columns:1fr}.fixtureTitleBar{flex-direction:column}.confirmedTimeBox{grid-template-columns:1fr}.confirmedTimeBox div{border-left:0;border-top:1px solid #294334;padding:8px 0 0}.scheduleCompare{grid-template-columns:1fr}}
@media(max-width:620px){.proCardNumbers{grid-template-columns:repeat(2,1fr)}.proCardEquipment{grid-template-columns:1fr}.proCardHero{align-items:flex-start}.proCardName h2{font-size:23px}}

.playerProfileShortcut{display:flex;align-items:center;justify-content:space-between;gap:18px}
.playerProfileShortcut h2{margin:4px 0 6px}
.adminCardTools{display:flex;gap:12px;align-items:end;max-width:420px;margin:12px 0}
.adminCardTools label{width:100%}.adminCardPreview{max-width:720px;margin:18px auto 0}
@media(max-width:700px){.playerProfileShortcut{flex-direction:column;align-items:stretch}.adminCardTools{max-width:none}}

.renderPlayerDashboard{max-width:1450px;margin:0 auto}.renderPlayerWelcome{display:grid;grid-template-columns:1fr minmax(420px,.8fr);gap:15px;align-items:center;border-bottom:1px solid #263142;padding-bottom:12px;margin-bottom:14px}.renderPlayerWelcome h1{font-size:28px;margin:0 0 5px}.nextFixtureTop{display:grid;grid-template-columns:1fr auto;gap:3px 12px;border:1px solid #263142;border-radius:10px;background:#07101a;padding:12px}.nextFixtureTop span{color:var(--a);font-weight:900}.nextFixtureTop b,.nextFixtureTop small{grid-column:1}.nextFixtureTop button{grid-column:2;grid-row:1/4}
.renderPlayerGrid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,.72fr);grid-template-areas:"next stats" "recent standing" "upcoming bests" "improve quick";gap:12px}.renderNextFixture{grid-area:next}.renderSeasonStats{grid-area:stats}.renderRecent{grid-area:recent}.renderUpcoming{grid-area:upcoming}.renderStanding{grid-area:standing}.renderPersonalBests{grid-area:bests}.renderImprove{grid-area:improve}.renderQuickLinks{grid-area:quick}.renderNextFixture,.renderSeasonStats,.renderRecent,.renderUpcoming,.renderStanding,.renderPersonalBests,.renderImprove,.renderQuickLinks{border:1px solid #233043;border-radius:11px;background:linear-gradient(145deg,#07101a,#080b12);padding:14px}.renderPlayerDashboard h3{margin:0 0 12px;color:var(--a)}
.renderVsStage{display:grid;grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr);gap:12px;align-items:center}.renderVsCenter{display:flex;flex-direction:column;align-items:center;gap:9px}.renderVsCenter>b{font-size:48px;text-shadow:0 0 18px var(--a),0 0 25px var(--b)}.renderVsCenter span{width:100%;text-align:center;padding:7px;border:1px solid #334154;border-radius:7px;background:#0a1119;font-size:10px}
.renderPlayerCard{position:relative;overflow:hidden;border:1px solid var(--a);border-radius:16px;background:radial-gradient(circle at 30% 30%,color-mix(in srgb,var(--a) 17%,transparent),transparent 35%),linear-gradient(145deg,#081018,#05080d);box-shadow:0 0 28px var(--g);min-height:390px}.renderPlayerCard.opponent{border-color:var(--b)}.renderCardTop{display:flex;justify-content:space-between;align-items:center;padding:9px 11px;font-size:10px;font-weight:900}.renderCardLeagueLogo.themeLogoWrap{width:74px!important;height:74px!important}.renderCardLeagueLogo img{width:100%;height:100%;object-fit:contain}.renderCardBody{display:grid;grid-template-columns:minmax(150px,1fr) minmax(145px,.85fr);gap:10px;padding:0 11px}.renderCardPhoto{display:flex;align-items:flex-end;justify-content:center;min-height:230px}.renderCardPhoto .avatar.xl,.renderCardPhoto .avatarXL{width:185px!important;height:225px!important;border-radius:14px!important;object-fit:cover;border:1px solid var(--a);box-shadow:0 0 22px var(--g)}.renderCardMeta{display:grid;gap:6px;align-content:end}.renderCardMeta>div{border:1px solid color-mix(in srgb,var(--a) 45%,#243244);border-radius:7px;padding:6px;background:rgba(5,10,16,.82)}.renderCardMeta span{display:block;color:var(--a);font-size:8px;font-weight:900}.renderCardMeta b{display:block;font-size:11px}.countryDisplay{display:flex!important;gap:5px;align-items:center}.countryFlag{font-size:18px}.renderCardEquip{display:grid;grid-template-columns:1fr 1fr;gap:6px;padding:8px 11px}.renderCardEquip span{font-size:9px;color:#aab6c4;border:1px solid #263142;border-radius:6px;padding:5px}.renderCardForm{text-align:center;border-top:1px solid #263142;padding:8px}.renderCardForm small{display:block;color:#8d9aab;font-size:8px}.renderCardForm b{font-size:16px;margin:0 3px}.renderCardForm .win{color:#42ff71}.renderCardForm .loss{color:#ff4040}
.seasonStatsGrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.seasonStatsGrid>div{border:1px solid color-mix(in srgb,var(--a) 35%,#273548);border-radius:9px;padding:13px}.seasonStatsGrid span{display:block;color:var(--a);font-size:9px}.seasonStatsGrid b{display:block;font-size:25px;margin-top:8px}.resultMini,.fixtureMini,.renderPersonalBests>div{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:8px 0;border-bottom:1px solid #1f2b3a}.resultMini .win{color:#3cff66}.resultMini .loss{color:#ff3c3c}.renderStanding .standingBig{font-size:40px;font-weight:900;margin-top:14px}.renderPersonalBests>div{grid-template-columns:1fr auto}.renderImprove{position:relative;min-height:110px}.renderImprove>b{position:absolute;right:18px;top:43px;font-size:34px;color:var(--a)}.renderImprove>small{position:absolute;right:18px;top:82px}.renderQuickLinks>div{display:grid;grid-template-columns:1fr 1fr;gap:9px}.renderQuickLinks button{background:#07111a!important;color:#fff!important;border:1px solid var(--a)!important}
@media(max-width:1200px){.renderPlayerGrid{grid-template-columns:1fr;grid-template-areas:"next" "stats" "standing" "recent" "upcoming" "bests" "improve" "quick"}.renderPlayerWelcome{grid-template-columns:1fr}.renderVsStage{grid-template-columns:1fr}.renderPlayerCard{max-width:700px;margin:auto;width:100%}}
@media(max-width:650px){.seasonStatsGrid,.renderQuickLinks>div,.renderCardBody{grid-template-columns:1fr}.nextFixtureTop{grid-template-columns:1fr}.nextFixtureTop button{grid-column:1;grid-row:auto}}

/* v4.7.2 exact Player Manager render */
.playerManagerShell{max-width:1500px;margin:0 auto 20px}.playerManagerHeader{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:12px}.playerManagerHeader h1{font-size:30px;margin:0 0 4px}.playerManagerHeader p{font-size:14px;color:#bdc7d3;margin:0}.playerManagerHeaderActions{display:flex;gap:12px}.playerManagerHeaderActions button{min-width:180px;font-size:14px}
.pmPlayerChooser{max-width:380px;margin-bottom:12px}.pmPlayerChooser label{font-size:13px;font-weight:800}.pmPlayerChooser select{font-size:15px;min-height:42px;margin-top:5px}
.playerManagerGrid{display:grid;grid-template-columns:340px minmax(0,1fr) 380px;grid-template-areas:"preview info country" "image availability stats";gap:12px}.pmPanel{border:1px solid #263548;border-radius:11px;background:linear-gradient(145deg,#071019,#090c13);padding:14px}.pmPanel h3{margin:0 0 12px;color:var(--a);font-size:15px}
.pmPreviewPanel{grid-area:preview}.pmInfoPanel{grid-area:info}.pmCountryPanel{grid-area:country}.pmImagePanel{grid-area:image}.pmAvailabilityPanel{grid-area:availability}.pmStatsPanel{grid-area:stats}
.pmPreviewPanel .renderPlayerCard{min-height:0}.pmPreviewPanel .renderCardBody{grid-template-columns:1fr}.pmPreviewPanel .renderCardPhoto .avatar.xl,.pmPreviewPanel .renderCardPhoto .avatarXL{width:230px!important;height:300px!important}.pmPreviewPanel .renderCardMeta{grid-template-columns:1fr}.pmPreviewPanel .renderCardEquip{display:none}.pmPreviewPanel .renderCardLeagueLogo.themeLogoWrap{width:90px!important;height:90px!important}
.pmForm{display:grid;grid-template-columns:1fr 1fr;gap:12px}.pmForm label{font-size:13px;font-weight:700}.pmForm input,.pmForm select{font-size:15px;min-height:42px;margin-top:5px}.pmFull{grid-column:1/-1}.pmForm .actions{display:flex;gap:12px}.pmForm .actions button{flex:1;font-size:14px}
.countryPickerCurrent{display:grid;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;border:1px solid var(--a);border-radius:8px;padding:10px;background:#07111a;margin-bottom:8px}.countryPickerCurrent b{font-size:15px}.countryPickerList{height:390px;overflow-y:auto;border:1px solid #28384b;border-radius:8px;background:#071019;padding:5px}.countryPickerList button{width:100%;display:grid;grid-template-columns:38px 1fr 24px;align-items:center;gap:8px;text-align:left;background:transparent!important;color:#fff!important;border:0!important;border-radius:5px!important;padding:8px!important;box-shadow:none!important}.countryPickerList button b{font-size:14px}.countryPickerList button.selected{background:#1268ed!important}.countryPickerList button:hover{background:#112033!important}.countryCheck{font-size:18px}
.realCountryFlag{width:32px;height:22px;object-fit:cover;border-radius:2px;box-shadow:0 0 0 1px rgba(255,255,255,.18)}.flagFallback{font-size:24px}.countryDisplay .realCountryFlag{width:27px;height:18px}
.pmImageWrap{display:flex;flex-direction:column;align-items:center;gap:10px}.pmImagePreview .avatar.xl,.pmImagePreview .avatarXL{width:165px!important;height:165px!important;border:2px solid var(--a);box-shadow:0 0 20px var(--g)}.pmChooseImage{width:100%;text-align:center;border:1px solid #39475a;border-radius:8px;padding:10px;cursor:pointer;font-size:14px;font-weight:800}.pmImageWrap select,.pmImageWrap button{width:100%;font-size:14px}
.pmAvailabilityGrid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.pmDay{border:1px solid #263548;border-radius:8px;padding:8px;background:#071019}.pmDay span{display:block;font-size:13px;margin-bottom:6px}.pmDay input[type=time]{width:100%;font-size:14px;margin:3px 0}.pmHint{font-size:12px;color:#96a5b7;margin:12px 0 0}
.pmStatsGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.pmStatsGrid>div{border:1px solid #263548;border-radius:8px;padding:12px;background:#071019}.pmStatsGrid span{font-size:11px;color:#9aa9ba;display:block}.pmStatsGrid b{font-size:15px;display:block;margin-top:8px}
@media(max-width:1260px){.playerManagerGrid{grid-template-columns:1fr 1fr;grid-template-areas:"preview info" "country country" "image availability" "stats stats"}.pmAvailabilityGrid{grid-template-columns:repeat(4,1fr)}}
@media(max-width:820px){.playerManagerHeader{flex-direction:column;align-items:stretch}.playerManagerHeaderActions{flex-direction:column}.playerManagerGrid{grid-template-columns:1fr;grid-template-areas:"preview" "info" "country" "image" "availability" "stats"}.pmForm{grid-template-columns:1fr}.pmFull{grid-column:1}.pmAvailabilityGrid{grid-template-columns:repeat(2,1fr)}.pmStatsGrid{grid-template-columns:1fr 1fr}}

/* v4.7.3 availability layout fix */
.pmAvailabilityPanel{overflow:hidden}
.pmAvailabilityGrid{
 display:grid!important;
 grid-template-columns:repeat(6,minmax(118px,1fr))!important;
 gap:10px!important;
 align-items:stretch!important
}
.pmDay{
 min-width:0!important;
 overflow:hidden!important;
 display:grid!important;
 grid-template-rows:auto auto auto!important;
 gap:6px!important;
 border:1px solid #263548!important;
 border-radius:8px!important;
 padding:9px!important;
 background:#071019!important
}
.pmDay>span{
 display:flex!important;
 align-items:center!important;
 gap:6px!important;
 margin:0!important;
 white-space:nowrap!important;
 font-size:13px!important
}
.pmDay input[type=checkbox]{width:16px!important;height:16px!important;flex:0 0 auto!important}
.pmDay input[type=time]{
 box-sizing:border-box!important;
 display:block!important;
 width:100%!important;
 min-width:0!important;
 max-width:100%!important;
 height:38px!important;
 margin:0!important;
 padding:6px 8px!important;
 font-size:14px!important;
 line-height:1!important;
 overflow:hidden!important
}
.pmDay input[type=time]::-webkit-calendar-picker-indicator{
 margin:0!important;
 padding:0!important;
 width:16px!important;
 height:16px!important
}
.pmHint{clear:both!important}
@media(max-width:1400px){
 .pmAvailabilityGrid{grid-template-columns:repeat(3,minmax(120px,1fr))!important}
}
@media(max-width:900px){
 .pmAvailabilityGrid{grid-template-columns:repeat(2,minmax(120px,1fr))!important}
}
@media(max-width:560px){
 .pmAvailabilityGrid{grid-template-columns:1fr!important}
}

/* v4.7.4 player profile now matches admin editor */
.readOnlyAvg{opacity:.82!important;background:#0b121b!important;color:#d6dfeb!important;cursor:not-allowed!important}
#playerCountryPicker .countryPickerList{height:390px}
#playerCountryPicker .countryPickerCurrent{font-size:15px}
#playerCardPreview .renderPlayerCard{min-height:0}

/* v4.7.6 player registration & average verification */
.loginCardWide{width:min(620px,94vw)!important;max-width:620px!important}
.authTabs{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0 18px}
.authTabs button{min-height:46px;border-radius:9px;border:2px solid color-mix(in srgb,var(--a) 52%,#223447);font-weight:900;font-size:14px;letter-spacing:.2px;opacity:1!important;transition:.18s ease}
.authTabs #showLogin{background:#152231;color:#ffffff}
.authTabs #showRegister{background:var(--a);color:#050805;border-color:color-mix(in srgb,var(--a) 80%,white);box-shadow:0 0 18px var(--g)}
.authTabs #showLogin.active{background:var(--a);color:#050805;border-color:color-mix(in srgb,var(--a) 82%,white);box-shadow:0 0 20px var(--g)}
.authTabs #showRegister.active{background:var(--a);color:#050805;border-color:color-mix(in srgb,var(--a) 88%,white);box-shadow:0 0 24px var(--g)}
.authTabs button:hover{filter:brightness(1.08)}
.login .card{border-color:color-mix(in srgb,var(--a) 46%,#283747);box-shadow:0 0 32px color-mix(in srgb,var(--a) 12%,transparent)}
.login .logo{background:var(--a)!important;color:#050805!important;box-shadow:0 0 18px var(--g)}
.login .ey{color:var(--a)!important}
.login button{border-color:color-mix(in srgb,var(--a) 70%,#33485d)}
.login #regSubmit,.login form>button{background:var(--a);color:#050805;font-weight:900;box-shadow:0 0 16px var(--g)}
.regPreview{border-color:color-mix(in srgb,var(--a) 35%,#33465a)}
.registrationForm{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.registrationForm .regScreenshot,.registrationForm #regPreview,.registrationForm #regMessage,.registrationForm #regSubmit{grid-column:1/-1}
.registrationForm small{display:block;color:#8191a5;margin-top:4px;font-size:11px}
.regPreview{min-height:120px;border:1px dashed #33465a;border-radius:10px;background:#071019;display:flex;align-items:center;justify-content:center;overflow:hidden;color:#77889b}
.regPreview img{max-width:100%;max-height:340px;object-fit:contain}
.registrationReviewGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px;margin-top:15px}
.registrationReviewCard{border:1px solid #294158;border-radius:13px;background:#07111a;padding:15px}
.registrationReviewHead{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.registrationReviewHead h3{margin:0 0 4px}.registrationReviewHead small{color:#8ea2b5}
.pendingTag{font-size:10px;font-weight:900;color:#ffd45b;border:1px solid #8b6b12;border-radius:999px;padding:5px 8px;background:rgba(255,194,0,.08);white-space:nowrap}
.regClaimed{display:flex;justify-content:space-between;align-items:center;margin:13px 0;padding:10px;border-radius:9px;background:#0b1722;border:1px solid #1e3448}
.regClaimed span{color:#9dafc1;font-size:12px}.regClaimed b{font-size:22px;color:var(--a)}
.registrationApproveFields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0}
.registrationApproveFields label{font-size:11px;color:#9fb0c2}
.regShotModal{position:fixed;inset:0;z-index:10000;background:rgba(0,0,0,.82);align-items:center;justify-content:center;padding:22px}
.regShotDialog{position:relative;width:min(980px,96vw);max-height:92vh;overflow:auto;background:#071019;border:1px solid var(--a);border-radius:14px;padding:18px;box-shadow:0 0 35px var(--g)}
.regShotDialog img{display:block;max-width:100%;max-height:72vh;object-fit:contain;margin:12px auto;border-radius:8px}
.regShotClose{position:absolute;right:12px;top:10px;width:40px;height:40px;border-radius:50%;font-size:24px;padding:0}
.regShotDialog h3{padding-right:48px}
.pendingMini,.approvedMini{font-size:10px;font-weight:900;margin-top:5px}
.pendingMini{color:#ffd359}.approvedMini{color:#65ff8e}
@media(max-width:650px){
 .registrationForm,.registrationApproveFields{grid-template-columns:1fr}
 .registrationForm>*{grid-column:1!important}
 .authTabs{grid-template-columns:1fr}
}

/* v4.7.8 login branding sync */
.loginBrandLogo{width:132px;height:132px;margin:0 auto 8px;display:flex;align-items:center;justify-content:center}
.loginBrandLogo .themeLogoWrap{width:132px;height:132px;display:flex;align-items:center;justify-content:center}
.loginBrandLogo img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 16px var(--g))}
.loginCardWide>.ey{text-align:center;color:var(--a)!important;margin-top:4px}
.loginCardWide{background:radial-gradient(circle at 50% 0%,var(--g),transparent 38%),#111722!important}
.authTabs #showRegister,.authTabs #showLogin.active,.login #regSubmit,.login form>button{
 background:linear-gradient(90deg,var(--a),var(--b))!important;
}

/* v4.7.9 forgot password */
.forgotPasswordLink{display:block;width:auto!important;margin:12px auto 0!important;padding:8px 12px!important;background:transparent!important;border:0!important;box-shadow:none!important;color:var(--a)!important;text-decoration:underline;font-weight:800}
.forgotPasswordLink:hover{filter:brightness(1.15)}
#forgotPanel,#resetPanel{max-width:520px;margin:0 auto}
#forgotPanel form,#resetPanel form{margin-top:16px}
#forgotMessage,#resetMessage{margin:10px 0}

/* v4.8.0 OCD TV */
.ocdTvHero{overflow:hidden;background:radial-gradient(circle at 15% 0%,var(--g),transparent 40%),linear-gradient(145deg,#111722,#090e15)}
.ocdTvHeroBrand{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center}
.ocdTvLogo{width:108px;height:108px}.ocdTvLogo .themeLogoWrap{width:100%;height:100%}
.ocdTvHero h2{font-size:2rem;margin:3px 0}.ocdTvHero p{color:#9cacbc;margin:5px 0}
.ocdTvCounters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}
.ocdTvCounters article{background:#0a111a;border:1px solid color-mix(in srgb,var(--a) 35%,#273647);border-radius:12px;padding:13px;text-align:center}
.ocdTvCounters b{display:block;font-size:1.7rem;color:var(--a)}.ocdTvCounters span{font-size:11px;color:#91a0b1}
.ocdTvSectionHead{display:flex;justify-content:space-between;align-items:center;gap:12px}
.privateTvBadge{font-size:11px;font-weight:900;padding:7px 10px;border:1px solid color-mix(in srgb,var(--a) 45%,#253444);border-radius:999px;color:var(--a)}
.ocdTvGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:13px;margin-top:14px}
.ocdTvCard{background:linear-gradient(155deg,#101824,#080d14);border:1px solid #293849;border-radius:15px;padding:14px;min-width:0;transition:.2s ease}
.ocdTvCard.isLive{border-color:var(--a);box-shadow:0 0 24px var(--g)}
.animated-ui .ocdTvCard{animation:ocdDashboardIn .4s ease both}.animated-ui .ocdTvCard:hover{transform:translateY(-3px);box-shadow:0 12px 28px var(--g)}
.ocdTvCardTop{display:flex;justify-content:space-between;align-items:center;gap:10px}.ocdTvCardTop small{color:#8798aa;text-align:right}
.tvTypePill,.livePill{font-size:10px;font-weight:1000;border-radius:999px;padding:5px 8px}.tvTypePill{background:#142232;color:var(--a);border:1px solid #284159}.livePill{background:#102b18;color:#7cff94;border:1px solid #2d7541}
.ocdTvPlayers{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center;margin:16px 0}
.ocdTvPlayers>div{display:flex;flex-direction:column;align-items:center;text-align:center;gap:5px;min-width:0}.ocdTvPlayers b{overflow-wrap:anywhere}.ocdTvPlayers small{color:#8393a5}
.ocdTvVs{font-size:20px;font-weight:1000;color:var(--a);text-shadow:0 0 12px var(--g)}
.ocdTvMeta{font-size:12px;color:#91a0b1;text-align:center}.ocdTvActions{display:flex;justify-content:center;margin-top:12px}
.tournamentTv{border-top:3px solid var(--tvTour,var(--a))}
@media(max-width:650px){.ocdTvHeroBrand{grid-template-columns:1fr;text-align:center}.ocdTvLogo{margin:auto}.ocdTvCounters{grid-template-columns:1fr 1fr 1fr}.ocdTvGrid{grid-template-columns:1fr}.ocdTvPlayers{grid-template-columns:1fr auto 1fr}}

/* v4.8.0 sponsor / charity branding */
.sponsorBrand{display:inline-flex;align-items:center;gap:6px}.sponsorBrand img{max-width:78px;max-height:46px;object-fit:contain;border-radius:7px}.sponsorBrand small{font-size:9px;color:var(--a);font-weight:900}
.sidebarSponsor{margin-right:5px}.loginSponsor{display:flex!important;justify-content:center;margin:0 auto 10px}.loginSponsor img{max-width:120px;max-height:62px}.tvSponsor img{max-width:110px;max-height:65px}
.customBrandPanel{margin-top:20px;background:linear-gradient(145deg,#0b121c,#080d14);border:1px solid #2a3b4d;border-radius:15px;padding:18px}
.customBrandPanel.active{border-color:var(--a);box-shadow:0 0 24px var(--g)}
.customBrandGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:14px}.customBrandGrid label{min-width:0}
.customSponsorPreview{min-height:100px;margin:14px 0;display:flex;align-items:center;justify-content:center;border:1px dashed #34485d;border-radius:10px;background:#070c12;color:#7f90a2}
.customSponsorPreview img{max-width:260px;max-height:100px;object-fit:contain}.sponsorToggle{display:flex!important;align-items:center;gap:8px;margin:12px 0}.sponsorToggle input{width:auto!important}
[data-ocd-theme="original"] body{background-image:radial-gradient(circle at 10% 0%,rgba(0,229,255,.06),transparent 32%),radial-gradient(circle at 95% 10%,rgba(155,44,255,.06),transparent 28%)}
@media(max-width:850px){.customBrandGrid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.customBrandGrid{grid-template-columns:1fr}}

/* v4.8.1 celebration + OCD darts-major previews */
.generatedThemePreview{position:relative;width:100%;height:100%;min-height:108px;overflow:hidden;border-radius:8px;background:radial-gradient(circle at 22% 20%,color-mix(in srgb,var(--tp1) 70%,transparent),transparent 42%),radial-gradient(circle at 80% 78%,color-mix(in srgb,var(--tp2) 70%,transparent),transparent 44%),linear-gradient(145deg,#05080d,#111827);display:flex;align-items:center;justify-content:center}
.generatedThemePreview:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(115deg,transparent 0 18px,color-mix(in srgb,var(--tp1) 12%,transparent) 19px 20px)}
.generatedThemePreview img{position:relative!important;width:78%!important;height:78%!important;object-fit:contain!important;filter:drop-shadow(0 0 12px var(--tp1));z-index:1}
.generatedThemePreview span{position:absolute;left:5px;right:5px;bottom:5px;z-index:2;font-size:7px;font-weight:1000;letter-spacing:.8px;color:white;background:rgba(0,0,0,.68);border:1px solid var(--tp1);border-radius:999px;padding:3px;text-align:center}
.autoThemePanel{margin-top:20px;background:linear-gradient(145deg,#0b121c,#080d14);border:1px solid #2a3b4d;border-radius:15px;padding:18px}
.autoThemeGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:14px 0}.autoThemeGrid select,.autoThemeGrid input{width:100%}
@media(max-width:900px){.autoThemeGrid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.autoThemeGrid{grid-template-columns:1fr}}

/* v4.8.4 exact Branding & Themes page */
.brandingExactPage{max-width:1500px;margin:0 auto}
.brandingExactHeader{display:grid;grid-template-columns:1fr minmax(420px,620px);gap:24px;align-items:center;margin-bottom:12px}
.brandingExactHeader h1{font-size:30px;margin:0 0 5px}.brandingExactHeader p{margin:0;color:#a8b4c2}
.autoThemeSummary{display:grid!important;grid-template-columns:auto 1fr auto auto;align-items:center;gap:13px;padding:13px 16px!important;background:#090f17!important;border:1px solid #293748!important;border-radius:12px!important;color:#fff!important;text-align:left!important;box-shadow:none!important}
.autoThemeSummary .calendarIcon{font-size:26px}.autoThemeSummary b,.autoThemeSummary small{display:block}.autoThemeSummary small{color:#9aa8b7;margin-top:3px;font-size:11px}.autoThemeSummary em{font-style:normal;font-size:10px;font-weight:1000;border-radius:999px;padding:6px 10px}.autoThemeSummary em.enabled{color:#72ff88;background:#082811;border:1px solid #1c6b31}.autoThemeSummary em.disabled{color:#aab5c0;background:#151b23;border:1px solid #35404c}.autoThemeSummary strong{font-size:27px}
.brandingGallery{background:#07101a;border:1px solid #263546;border-radius:15px;padding:0 12px 12px;overflow:hidden}
.brandCategoryTabs{display:flex;gap:3px;align-items:center;border-bottom:1px solid #243142;padding:4px 8px 0;overflow-x:auto}
.brandCategoryTabs button{background:transparent!important;border:0!important;border-radius:8px 8px 0 0!important;padding:13px 20px!important;color:#fff!important;box-shadow:none!important;white-space:nowrap}
.brandCategoryTabs button.active{background:linear-gradient(90deg,#7440cb,#9c28dc)!important;color:white!important;box-shadow:0 0 16px rgba(139,44,255,.22)!important}
.brandThemeGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;padding:12px 2px;align-items:stretch}
.brandThemeCard{appearance:none;background:#0a1018!important;border:1px solid #2a394b!important;border-radius:12px!important;padding:8px!important;color:#fff!important;min-height:235px;display:flex!important;flex-direction:column;align-items:center;gap:8px;box-shadow:none!important;text-align:center;overflow:hidden;transition:.18s ease}
.brandThemeCard:hover{transform:translateY(-2px);border-color:var(--a)!important;box-shadow:0 10px 28px var(--g)!important}
.brandThemeCard.active{border-color:var(--a)!important;box-shadow:0 0 0 1px var(--a),0 0 22px var(--g)!important}
.brandThemeArt{position:relative;width:100%;aspect-ratio:1/1;background:#04080d;border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center}
.brandThemeArt img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;margin:0!important;padding:0!important}
.brandThemeCard>b{font-size:13px;line-height:1.25}.brandThemeCard>small{font-size:11px;color:#98a8b8}
.selectedThemeTick{position:absolute;right:7px;top:7px;width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#17e7eb;color:#061011;font-size:17px;font-weight:1000;box-shadow:0 0 12px rgba(23,231,235,.5)}
.brandBadge{margin-top:auto;display:inline-flex;border-radius:999px;padding:4px 9px;font-size:9px;font-weight:1000;letter-spacing:.04em}.brandBadge.original{color:#41eaff;background:#07304a}.brandBadge.seasonal{color:#54ff82;background:#0c3b1b}.brandBadge.celebration{color:#65e7ff;background:#0a3650}.brandBadge.major{color:#68d8ff;background:#0c3657}.brandBadge.colour{color:#d1d9e2;background:#1c2530}.brandBadge.sponsor{color:#e992ff;background:#43205a}
.customThemeCard{cursor:pointer}.customThemeCard .brandThemeArt img{object-fit:contain!important}
.autoThemeEditor,.customThemeEditor{display:none;margin:8px 2px 14px;padding:16px;border:1px solid #2d3c4f;border-radius:12px;background:#09111a}.autoThemeEditor.open,.customThemeEditor.open{display:block}
.autoEditorHead{display:flex;justify-content:space-between;align-items:center;gap:12px}.autoEditorHead h3{margin:3px 0}.compactToggle{display:flex!important;align-items:center;gap:7px}.compactToggle input{width:auto!important}
.customCreateIntro{display:flex;align-items:center;gap:14px;margin-bottom:12px}.customPlus{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#13243b;color:#79a9ff;font-size:28px}
.customCreateIntro h3{margin:0 0 4px}.customCreateIntro p{margin:0;color:#9aabba}
.customBrandPreviewRow{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}.customBrandPreviewRow>div>span{display:block;font-size:11px;color:#8fa0b2;margin-bottom:6px}.customMiniLogo{height:110px;background:#05090e;border:1px solid #273649;border-radius:10px;display:flex;align-items:center;justify-content:center;overflow:hidden}.customMiniLogo img,.customMiniLogo .themeLogoWrap{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain!important}.customMiniLogo small{color:#778899}
.aboutThemesStrip{display:grid;grid-template-columns:1.7fr repeat(4,1fr);gap:12px;border:1px solid #263546;border-radius:11px;background:#08111a;padding:14px;margin:8px 2px 2px}.aboutThemesStrip article{display:flex;align-items:flex-start;gap:9px}.aboutThemesStrip b,.aboutThemesStrip small{display:block}.aboutThemesStrip b{font-size:12px;color:#40d8ff}.aboutThemesStrip small{font-size:10px;color:#92a2b3;line-height:1.35;margin-top:3px}.aboutThemesStrip .featureIcon,.aboutThemesStrip .aboutIntro>span{width:30px;height:30px;flex:0 0 30px;border-radius:7px;display:grid;place-items:center;background:#0a3342;color:#46deff;font-size:16px}.aboutThemesStrip article:nth-child(2) b{color:#68ff88}.aboutThemesStrip article:nth-child(2) .featureIcon{background:#12361f;color:#68ff88}.aboutThemesStrip article:nth-child(4) b{color:#eb78ff}.aboutThemesStrip article:nth-child(4) .featureIcon{background:#3d1e52;color:#eb78ff}
.brandFooterTools{display:flex;justify-content:flex-end;gap:8px;margin:10px 2px 0}
@media(max-width:1100px){.brandingExactHeader{grid-template-columns:1fr}.aboutThemesStrip{grid-template-columns:1fr 1fr}.brandThemeGrid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}}
@media(max-width:650px){.aboutThemesStrip{grid-template-columns:1fr}.brandCategoryTabs button{padding:11px 13px!important}.brandThemeGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.customBrandPreviewRow{grid-template-columns:1fr}}

/* Theme logo sizing: never crop, never show adjacent artwork. */
.themeLogoWrap,.themeLogoWrap img,.themeLogo{overflow:hidden!important}
.themeLogo{object-fit:contain!important;object-position:center!important}
.brand .logo .themeLogoWrap{width:48px!important;height:48px!important}.brand .logo img{width:100%!important;height:100%!important;object-fit:contain!important}
.neonDashHeader{min-height:130px!important;padding-right:220px!important}
.neonDashBrand{right:12px!important;top:0!important;width:190px!important;height:150px!important}
.neonDashBrand:before{inset:10px!important}
.neonDashBrand .themeLogoWrap{width:145px!important;height:145px!important}
.neonDashBrand img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important}
.loginBrandLogo,.loginBrandLogo .themeLogoWrap{overflow:visible!important}.loginBrandLogo img{object-fit:contain!important}
.renderCardLeagueLogo,.renderCardLeagueLogo img{object-fit:contain!important;overflow:hidden!important}
@media(max-width:760px){.neonDashHeader{padding-right:0!important}.neonDashBrand{position:relative!important;width:140px!important;height:120px!important;margin:8px auto 0!important}.neonDashBrand .themeLogoWrap{width:110px!important;height:110px!important}}

/* v4.8.5 cleaner exact branding layout */
.brandingGallery{padding-bottom:14px!important}
.brandFooterTools{margin-top:14px!important;padding-top:10px!important;border-top:1px solid #223244}
.brandFooterTools.compact{justify-content:flex-end!important}

/* Theme cards: consistent artwork framing */
.brandThemeGrid{grid-template-columns:repeat(auto-fit,minmax(175px,1fr))!important;gap:14px!important}
.brandThemeCard{min-height:250px!important;padding:9px!important}
.brandThemeArt{aspect-ratio:1/1!important;display:grid!important;place-items:center!important;background:#05090f!important;padding:0!important}
.brandThemeArt img{
 width:100%!important;
 height:100%!important;
 max-width:100%!important;
 max-height:100%!important;
 object-fit:contain!important;
 object-position:50% 50%!important;
 transform:none!important;
 margin:0!important;
 padding:0!important;
}

/* Sidebar branding - larger, centered, like chosen mockup */
.brand{
 display:grid!important;
 grid-template-columns:72px 1fr!important;
 align-items:center!important;
 gap:12px!important;
 min-height:86px!important;
 padding:10px 12px!important;
}
.brand .logo{
 width:72px!important;
 height:72px!important;
 display:grid!important;
 place-items:center!important;
 overflow:visible!important;
}
.brand .logo .themeLogoWrap{
 width:72px!important;
 height:72px!important;
 display:grid!important;
 place-items:center!important;
 overflow:hidden!important;
 border-radius:12px!important;
}
.brand .logo img{
 width:100%!important;
 height:100%!important;
 object-fit:contain!important;
 object-position:center!important;
 margin:0!important;
 transform:none!important;
}
.brandTxt{min-width:0!important}
.brandTxt b,.brandTxt span{display:block!important}

/* Dashboard brand logo - centered and contained */
.neonDashHeader{
 min-height:150px!important;
 padding-right:230px!important;
 align-items:flex-start!important;
}
.neonDashBrand{
 right:18px!important;
 top:0!important;
 width:200px!important;
 height:150px!important;
 display:grid!important;
 place-items:center!important;
 overflow:visible!important;
}
.neonDashBrand .themeLogoWrap{
 width:140px!important;
 height:140px!important;
 display:grid!important;
 place-items:center!important;
 overflow:hidden!important;
 border-radius:14px!important;
}
.neonDashBrand img{
 width:100%!important;
 height:100%!important;
 object-fit:contain!important;
 object-position:center!important;
 transform:none!important;
 margin:0!important;
}

/* Login / player card / OCD TV logos */
.loginBrandLogo,.loginBrandLogo .themeLogoWrap,.ocdTvLogo,.ocdTvLogo .themeLogoWrap,
.renderCardLeagueLogo,.renderCardLeagueLogo .themeLogoWrap{
 display:grid!important;
 place-items:center!important;
 overflow:hidden!important;
}
.loginBrandLogo img,.ocdTvLogo img,.renderCardLeagueLogo img{
 width:100%!important;
 height:100%!important;
 object-fit:contain!important;
 object-position:center!important;
 transform:none!important;
}

/* Smaller screens */
@media(max-width:760px){
 .brand{grid-template-columns:58px 1fr!important}
 .brand .logo,.brand .logo .themeLogoWrap{width:58px!important;height:58px!important}
 .neonDashHeader{padding-right:0!important}
 .neonDashBrand{position:relative!important;right:auto!important;top:auto!important;width:150px!important;height:125px!important;margin:8px auto 0!important}
 .neonDashBrand .themeLogoWrap{width:115px!important;height:115px!important}
 .brandThemeGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* v4.9.0 Twitch Community Stream + OCD Partners */
.twitchCommunityPanel{border-color:#6f42c1!important;background:linear-gradient(145deg,rgba(145,70,255,.08),rgba(6,10,16,.96))!important}
.twitchEmbedWrap{width:100%;max-width:1100px;margin:14px auto 0;aspect-ratio:16/9;min-height:300px;border:1px solid #51337c;border-radius:14px;overflow:hidden;background:#05070b;box-shadow:0 0 30px rgba(145,70,255,.13)}
.twitchEmbedWrap iframe{display:block;width:100%;height:100%;min-height:300px;border:0}
.twitchStreamActions{display:flex;justify-content:center;margin-top:12px}
.partnerGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:16px;margin-bottom:18px}
.partnerCard{background:#08111a;border:1px solid #29384a;border-radius:16px;overflow:hidden}
.partnerCard.featured{border-color:var(--a);box-shadow:0 0 24px var(--g)}
.partnerBanner{height:150px;background:linear-gradient(135deg,#0a2030,#111827);display:grid;place-items:center;overflow:hidden}
.partnerBanner img{width:100%;height:100%;object-fit:cover}.partnerBannerFallback{font-size:28px;font-weight:1000;letter-spacing:.14em;color:#7fefff;opacity:.75}
.partnerBody{display:grid;grid-template-columns:92px 1fr;gap:16px;padding:16px}.partnerLogo{width:92px;height:92px;border:1px solid #31445a;border-radius:14px;background:#05090e;display:grid;place-items:center;font-size:38px;overflow:hidden}
.partnerLogo img{width:100%;height:100%;object-fit:contain}.partnerInfo h2{margin:4px 0}.partnerInfo>b{font-size:12px;color:#8fa8bf}.partnerInfo p{color:#a9b6c4;line-height:1.5}.partnerActions{display:flex;gap:8px;flex-wrap:wrap}
.partnerActions a{text-decoration:none;display:inline-flex;align-items:center;justify-content:center}
.partnerAdminList{margin-top:16px;display:grid;gap:8px}.partnerAdminRow{display:grid;grid-template-columns:1fr 1.4fr auto auto;gap:8px;align-items:center;padding:10px;border:1px solid #263649;border-radius:10px;background:#07101a}
@media(max-width:700px){.partnerBody{grid-template-columns:1fr}.partnerLogo{width:76px;height:76px}.partnerAdminRow{grid-template-columns:1fr}.twitchEmbedWrap{min-height:300px}}

/* v4.9.3 Branding alignment + colour image proportion fix */
.brandingExactPage{
  align-self:start!important;
  margin-top:0!important;
  padding-top:0!important;
}
.brandingGallery{
  margin-top:0!important;
}
.brandThemeGrid{
  align-content:start!important;
}
.brandThemeArt{
  aspect-ratio:1 / 1!important;
  height:auto!important;
}
.brandThemeArt img{
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
  object-position:center!important;
  transform:none!important;
}

/* v4.9.4 player onboarding */
.registrationMeta{display:flex;gap:8px;flex-wrap:wrap;margin:9px 0;color:#aebdcb;font-size:12px}.registrationMeta span{padding:6px 8px;border:1px solid #29394b;border-radius:8px;background:#09121c}
.pendingAccountPage{min-height:100vh;display:grid;place-items:center;padding:24px}.pendingAccountCard{width:min(760px,96vw);text-align:center}.pendingAccountIcon{font-size:52px;margin:12px 0}
.pendingAccountDetails{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;text-align:left;margin:18px 0}.pendingAccountDetails div{padding:12px;border:1px solid #2a394b;border-radius:10px;background:#09121b}.pendingAccountDetails span{display:block;color:#8293a6;font-size:11px;text-transform:uppercase;font-weight:900}.pendingAccountDetails b{display:block;margin-top:4px;color:#eef7ff}
@media(max-width:650px){.pendingAccountDetails{grid-template-columns:1fr}}

/* v4.9.5 password reset */
.forgotPasswordLink{margin-top:10px;background:transparent!important;border:0!important;color:var(--a)!important;box-shadow:none!important;padding:7px 3px!important;text-decoration:underline;cursor:pointer}
#forgotPanel,#resetPanel{max-width:520px;margin:0 auto}
#forgotMessage,#resetMessage{margin:10px 0}
.resetHelp{display:block;margin-top:10px;color:#8293a6;line-height:1.45}

/* v4.9.6 finished player card profiles + click-to-view modal */
.playerIdentity.playerCardLink{appearance:none;border:0;background:transparent;color:inherit;padding:0;margin:0;text-align:left;cursor:pointer;font:inherit;display:inline-flex;align-items:center;gap:8px}
.playerIdentity.playerCardLink:hover .playerText b,.playerNameLink:hover{color:var(--a);text-decoration:underline}
.playerNameLink{appearance:none;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin:0!important;color:inherit!important;font:inherit;font-weight:800;cursor:pointer;display:inline}
.playerCardModal{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:22px}.playerCardModal.open{display:flex}
.playerCardModalBackdrop{position:absolute;inset:0;background:rgba(0,0,0,.86);backdrop-filter:blur(8px)}
.playerCardModalDialog{position:relative;z-index:1;width:min(900px,94vw);max-height:94vh;background:#060a10;border:1px solid color-mix(in srgb,var(--a) 55%,#25384d);border-radius:18px;padding:14px;box-shadow:0 0 45px var(--g);display:flex;flex-direction:column}
.playerCardModalImage{min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;border-radius:12px;background:#020407}
.uploadedPlayerCard{display:block;max-width:100%;max-height:76vh;width:auto;height:auto;object-fit:contain;object-position:center;border-radius:10px}
.playerCardModalX{position:absolute;top:8px;right:8px;z-index:3;width:42px;height:42px;border-radius:50%!important;background:#070b10!important;border:1px solid #42536a!important;color:#fff!important;font-size:28px!important;line-height:1!important;padding:0!important}
.playerCardModalFooter{display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;padding:12px 4px 2px}.playerCardModalFooter span{display:block;color:#7e91a5;font-size:10px;font-weight:900;letter-spacing:.1em}.playerCardModalFooter b{display:block;margin-top:3px}
.playerCardMissing{width:min(540px,85vw);padding:55px 20px;text-align:center}.playerCardMissingIcon{font-size:50px}.playerCardMissing p{color:#8293a6}
.playerCardProfilePage{display:grid;gap:16px}.playerCardProfileHead{display:flex;justify-content:space-between;align-items:end}.playerCardProfileHead h1{margin:4px 0}.playerCardProfileHead p{color:#9aacbd;max-width:780px}
.playerCardProfileGrid{display:grid;grid-template-columns:minmax(300px,1.2fr) minmax(280px,.8fr);gap:16px;align-items:start}.playerCardDisplayPanel{display:flex;justify-content:center}.playerCardDisplay{width:100%;display:flex;justify-content:center;align-items:center;min-height:420px}.playerCardDisplay .uploadedPlayerCard{max-height:72vh}
.playerCardDataPanel form{display:grid;gap:12px}.playerCardProfileNote{margin-top:14px;padding:12px;border:1px solid #26384a;border-radius:10px;background:#09131d;color:#9fb0c0;line-height:1.5}.profileTZ{display:grid;gap:6px;margin:14px 0}
.adminFinishedCardPanel{margin:12px 0 18px}.adminFinishedCardPreview{display:flex;justify-content:center;align-items:center;min-height:320px;background:#05080d;border:1px solid #26384a;border-radius:14px;padding:12px}.adminFinishedCardPreview .uploadedPlayerCard{max-height:620px}
.adminFinishedCardControls{display:grid;grid-template-columns:1fr auto auto auto;gap:10px;align-items:end;margin-top:12px}.adminFinishedCardControls label{margin:0}
@media(max-width:800px){.playerCardProfileGrid{grid-template-columns:1fr}.playerCardModalFooter{grid-template-columns:1fr}.adminFinishedCardControls{grid-template-columns:1fr}.uploadedPlayerCard{max-height:70vh}}
