:root{--bg:#0b0a10;--panel:#17161f;--panel2:#1d1b27;--line:#2a2836;--text:#f4f5f7;--muted:#9296a4;--blue:#5865e8;--blue2:#737ef4;--green:#89d6a0;--highlight-accent:#68d5c2;--amber:#f3bd6b;--red:#f08e8e;--font:'DM Sans',sans-serif;--display:'Manrope',sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 0%,#171223 0%,#0e0c13 42%,var(--bg) 100%) fixed;color:var(--text);font-family:var(--font);font-size:14px}.app-shell{min-height:100vh;display:flex}.sidebar{width:248px;flex-shrink:0;background:#14161d;border-right:1px solid #242731;padding:24px 14px 14px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;padding:0 12px 26px;text-decoration:none;color:var(--text)}.brand-mark{height:32px;width:32px;border-radius:10px;background:linear-gradient(145deg,#6570f2,#424fc8);display:grid;place-items:center;font:800 20px var(--display);box-shadow:0 5px 18px #4858da55}.brand-name{font:700 17px var(--display);letter-spacing:-.5px}.brand-name span{font-weight:500;color:#aeb3c2}.org-switch{height:58px;border:1px solid #2a2d38;background:#191b23;border-radius:12px;display:flex;align-items:center;gap:10px;padding:9px 10px;margin:0 3px 28px}.org-avatar{width:33px;height:33px;border-radius:10px;display:grid;place-items:center;background:#ece7d6;color:#786136;font-weight:700}.org-switch b,.profile b{display:block;font-size:11px;font-weight:600}.org-switch small,.profile small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.chevron{margin-left:auto;color:#969baa}.nav-label{font-size:9px;letter-spacing:1.4px;font-weight:700;color:#757a89;padding:0 13px 9px}.nav{display:grid;gap:4px}.nav-item{display:flex;align-items:center;gap:12px;height:40px;padding:0 12px;border:0;background:none;border-radius:9px;color:#a3a7b4;text-align:left;font:500 12px var(--font);cursor:pointer;transition:.16s}
.nav-item[href]{text-decoration:none}.nav-item:hover{color:#f1f2f5;background:#1c1f28}.nav-item.active{color:#fff;background:#282c3a;box-shadow:inset 2px 0 var(--blue2)}.nav-icon{font-size:17px;width:17px;text-align:center;color:#8c91a3}.active .nav-icon{color:#aeb6ff}.nav-count{margin-left:auto;border-radius:6px;background:#343849;color:#c6c9d4;font-size:10px;padding:3px 7px}.tools-label{margin-top:25px}.sidebar-bottom{margin-top:auto}.help-card{border:1px solid #2d3040;border-radius:12px;background:linear-gradient(140deg,#202331,#191b24);padding:14px;margin:0 3px 13px}.help-badge{height:24px;width:24px;border-radius:8px;display:grid;place-items:center;background:#343b6b;color:#b3bcff;margin-bottom:10px}.help-card b{font:600 11px var(--display)}.help-card p{color:#9297a8;font-size:10px;line-height:1.55;margin:5px 0 11px}.help-card button{background:transparent;border:0;color:#c2c8ff;padding:0;font:600 10px var(--font);cursor:pointer}.help-card button span{padding-left:4px}.profile{width:100%;display:flex;align-items:center;gap:10px;background:none;border:0;border-top:1px solid #282b34;padding:14px 9px 2px;color:white;text-align:left}.profile-avatar,.top-avatar{display:grid;place-items:center;border-radius:50%;background:#f2d2c8;color:#794a3d;font-weight:700;font-size:10px;width:32px;height:32px}.dots{margin-left:auto;color:#8a8e9b;font-size:9px;letter-spacing:1px}.main{flex:1;min-width:0}.topbar{height:65px;border-bottom:1px solid #252832;display:flex;align-items:center;justify-content:space-between;padding:0 42px;background:#12141b}.crumb{font-size:11px;color:#898e9b;display:flex;gap:10px}.crumb i{font-style:normal;color:#555a66}.crumb b{font-weight:500;color:#e5e6eb}.top-actions{display:flex;align-items:center;gap:17px}.icon-btn{position:relative;background:none;border:0;color:#aaafbd;font-size:20px;cursor:pointer}.notify em{position:absolute;right:1px;top:2px;width:5px;height:5px;background:#ec8782;border-radius:50%}.top-divider{height:22px;border-left:1px solid #2f323c}.top-avatar{border:0;width:29px;height:29px;cursor:pointer}.content{padding:34px 42px 55px;max-width:1500px;margin:auto}.page-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:27px}.eyebrow{font-size:9px;letter-spacing:1.5px;color:#9095a4;font-weight:700}.page-head h1{font:700 26px var(--display);letter-spacing:-1px;margin:7px 0 5px}.page-head p{margin:0;color:#9398a5;font-size:12px}.head-buttons{display:flex;gap:9px}.button{height:36px;padding:0 14px;display:inline-flex;align-items:center;gap:8px;border:1px solid #353844;border-radius:8px;background:#1b1e27;color:#dfe1e8;font:600 11px var(--font);cursor:pointer}.button:hover{border-color:#5b6279;background:#222632}.primary{background:var(--blue);border:1px solid var(--blue);color:white}.primary:hover{background:#6874f2;border-color:#6874f2}.primary span{font-size:16px}.date-filter{color:#c8cad2}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:17px}.metric{position:relative;overflow:hidden;background:var(--panel);border:1px solid #292c36;border-radius:12px;padding:17px 18px 15px;min-height:111px}.metric:after{content:'';position:absolute;right:-24px;top:-35px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,#5f6bea13,transparent 70%)}.metric-label{font-size:10px;color:#9da1ae}.metric-value{font:700 27px var(--display);letter-spacing:-1px;margin:9px 0 4px}.metric-foot{font-size:10px;color:#858a98}.metric-foot strong{color:var(--green);font-weight:600}.metric-icon{position:absolute;right:17px;top:16px;color:#8189ec;font-size:17px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.88fr);gap:16px}.card{border:1px solid #292c36;border-radius:12px;background:var(--panel);overflow:hidden}.card-head{display:flex;justify-content:space-between;align-items:center;padding:17px 18px 14px}.card-title{font:700 12px var(--display)}.card-sub{font-size:10px;color:#898e9c;margin-top:4px}.link-btn{background:none;border:0;color:#aab1ff;font:600 10px var(--font);cursor:pointer}.event-feature{margin:0 15px 14px;border-radius:11px;min-height:160px;padding:17px 18px;position:relative;overflow:hidden;background:linear-gradient(110deg,#222743 0%,#242a47 48%,#322f50 100%)}.event-feature:after{content:'◉';position:absolute;font-size:180px;color:#ffffff08;right:27px;top:-31px;line-height:1}.feature-top{display:flex;justify-content:space-between;position:relative;z-index:1}.live-pill{background:#462c35;color:#ff9a98;border:1px solid #70424b;border-radius:30px;padding:5px 9px;font-size:9px;font-weight:700;letter-spacing:.3px}.live-pill:before{content:'';display:inline-block;width:5px;height:5px;background:#ff777c;border-radius:50%;margin:0 6px 1px 0;box-shadow:0 0 8px #ff777c}.feature-title{font:700 19px var(--display);max-width:390px;line-height:1.3;margin:18px 0 7px;position:relative;z-index:1}.feature-meta{display:flex;gap:16px;color:#c4c8d7;font-size:10px;position:relative;z-index:1}.feature-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:15px;position:relative;z-index:1}.progress-wrap{width:52%;display:flex;align-items:center;gap:9px;font-size:9px;color:#b4b9ca}.progress{height:4px;flex:1;background:#ffffff28;border-radius:5px;overflow:hidden}.progress i{display:block;width:68%;height:100%;background:#a7adff;border-radius:5px}.event-link{font-size:10px;font-weight:600;color:#fff;text-decoration:none}.event-link:hover{color:#ccd0ff}.mini-events{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:0 15px 15px}.mini-event{padding:12px;background:#1d2029;border-radius:9px;border:1px solid #292c36}.mini-row{display:flex;align-items:center;gap:8px}.sport-chip{height:26px;width:26px;display:grid;place-items:center;border-radius:8px;background:#2d3040;color:#aeb4ff;font-size:13px}.mini-event b{font-size:10px;font-weight:600}.mini-event small{display:block;font-size:9px;color:#9196a4;margin-top:3px}.mini-state{margin-left:auto;font-size:8px;color:#b9c1cc;padding:4px 6px;background:#2b2e39;border-radius:20px}.match-list{padding:0 17px 9px}.match{display:flex;align-items:center;padding:12px 0;border-top:1px solid #292c35;gap:10px}.match-time{width:40px;font-size:9px;color:#8e93a0}.match-teams{flex:1;display:grid;gap:5px}.team{display:flex;align-items:center;gap:7px;font-size:10px;color:#d6d8de}.team-icon{width:17px;height:17px;border-radius:5px;background:#303341;color:#b9bdca;display:grid;place-items:center;font-size:8px}.match-score{font:700 10px var(--display);color:#aeb3c0;text-align:right;line-height:1.8}.match-status{font-size:8px;color:#9ca1af;width:46px;text-align:right}.match-status.live{color:#ff9996}.schedule-link{display:block;border-top:1px solid #292c35;padding:12px 18px;text-align:center;color:#abb1ff;text-decoration:none;font-size:10px;font-weight:600}.lower-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.9fr);gap:16px;margin-top:16px}.table-wrap{padding:0 17px 11px}table{width:100%;border-collapse:collapse;text-align:left}th{padding:8px 7px;color:#777d8a;font-size:8px;letter-spacing:.7px;font-weight:700;border-bottom:1px solid #2c2f39}td{padding:10px 7px;border-bottom:1px solid #252832;font-size:10px;color:#c9cbd2}tr:last-child td{border-bottom:0}td:first-child{color:#9398a5;width:24px}.player{display:flex;align-items:center;gap:8px;color:#e5e6eb;font-weight:500}.player-avatar{height:23px;width:23px;border-radius:7px;background:#333848;color:#c5caff;display:grid;place-items:center;font-size:8px;font-weight:700}.player small{display:block;color:#828795;font-size:8px;font-weight:400;margin-top:2px}.points{font-weight:700;color:#f2f3f5}.trend{color:#8fdaa3}.trend.down{color:#f29292}.activity{padding:0 18px 12px}.activity-item{display:flex;gap:10px;padding:10px 0;border-top:1px solid #292c35}.activity-symbol{flex-shrink:0;width:25px;height:25px;background:#282b3c;border-radius:8px;display:grid;place-items:center;color:#aeb5ff;font-size:11px}.activity-text{font-size:10px;line-height:1.45;color:#d2d4db}.activity-text b{color:#f1f2f6;font-weight:600}.activity-time{color:#7f8492;font-size:9px;margin-top:3px}.page-tabs{display:flex;gap:5px;border-bottom:1px solid #2b2e38;margin-bottom:16px}.page-tab{background:none;border:0;padding:11px 13px;color:#888d9b;font:600 10px var(--font);cursor:pointer;border-bottom:2px solid transparent}.page-tab.active{color:#e9eaff;border-color:#7781f1}.toolbar{display:flex;align-items:center;gap:8px;margin-bottom:12px}.searchbox{height:34px;display:flex;align-items:center;gap:8px;background:#1a1d25;border:1px solid #2b2e38;padding:0 10px;border-radius:8px;flex:1;max-width:260px;color:#8a8e9c}.searchbox input{border:0;outline:0;background:none;color:white;font:10px var(--font);width:100%}.select-small{height:34px;background:#1a1d25;border:1px solid #2b2e38;border-radius:8px;color:#b9bdc8;padding:0 10px;font:10px var(--font)}.table-card{padding-bottom:5px}.table-card th{padding:12px 10px}.table-card td{padding:13px 10px}.status{display:inline-block;border-radius:30px;padding:4px 8px;font-size:8px;background:#26372f;color:#9fe0b1}.status.pending{background:#39342a;color:var(--highlight-accent)}.status.scheduled{background:#292d3a;color:#b3bbeb}.event-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.event-card{background:var(--panel);border:1px solid #2a2d37;border-radius:12px;overflow:hidden}.event-cover{height:112px;padding:15px;display:flex;align-items:flex-end;background:linear-gradient(135deg,#394475,#232841 70%,#4e4165);position:relative}.event-cover.green{background:linear-gradient(135deg,#315949,#1b2e2d 70%,#4b6651)}.event-cover.orange{background:linear-gradient(135deg,#785537,#322822 70%,#784f43)}.event-cover:after{content:'◉';position:absolute;right:14px;top:4px;font-size:100px;color:#ffffff0b}.cover-tag{position:relative;z-index:1;font-size:8px;letter-spacing:1.2px;color:#c8caff;font-weight:700}.event-card-body{padding:14px}.event-card-body h3{font:700 13px var(--display);margin:0 0 6px}.event-card-body p{color:#8e93a0;font-size:9px;margin:0 0 13px}.event-card-foot{border-top:1px solid #2c2f39;padding-top:11px;display:flex;justify-content:space-between;align-items:center;color:#a2a6b3;font-size:9px}.avatar-stack{display:flex}.avatar-stack i{height:20px;width:20px;border:2px solid var(--panel);border-radius:50%;background:#505776;margin-left:-5px;font-size:7px;display:grid;place-items:center;font-style:normal;color:#e6e7ee}.fixture-row{display:grid;grid-template-columns:100px 1fr 100px;align-items:center;padding:15px 18px;border-top:1px solid #292c35}.fixture-date{font-size:9px;color:#9297a5}.fixture-date b{display:block;color:#d4d6dd;font-size:10px;margin-bottom:4px}.fixture-pair{display:flex;align-items:center;justify-content:center;gap:20px}.fixture-team{width:130px;display:flex;align-items:center;gap:8px;font-size:10px}.fixture-team:last-child{justify-content:flex-end}.versus{font:700 9px var(--display);color:#747987}.fixture-result{text-align:right}.fixture-result b{font-size:11px}.fixture-result small{display:block;color:#878c99;font-size:8px;margin-top:4px}.empty-hint{padding:55px 20px;text-align:center;color:#9297a5}.standings-hero{padding:19px 20px;background:linear-gradient(110deg,#292d49,#1e202b);border-radius:11px;margin:0 15px 12px;display:flex;justify-content:space-between;align-items:center}.standings-hero h3{margin:7px 0 3px;font:700 16px var(--display)}.standings-hero p{margin:0;color:#a2a7b8;font-size:10px}.trophy{font-size:37px;opacity:.8}.toast{position:fixed;bottom:24px;right:24px;transform:translateY(15px);opacity:0;pointer-events:none;transition:.2s;border:1px solid #4a5174;border-radius:9px;background:#232738;color:#e9eaff;padding:12px 16px;font-size:11px;box-shadow:0 12px 30px #0006;z-index:20}.toast.show{opacity:1;transform:translateY(0)}.modal-backdrop{position:fixed;inset:0;background:#08090dbb;backdrop-filter:blur(5px);display:none;place-items:center;z-index:10;padding:20px}.modal-backdrop.open{display:grid}.modal{position:relative;width:min(440px,100%);border:1px solid #363a48;background:#191c25;border-radius:16px;padding:29px;box-shadow:0 25px 80px #0008}.modal-close{position:absolute;top:15px;right:16px;background:none;border:0;color:#9fa3af;font-size:22px;cursor:pointer}.modal h2{font:800 25px var(--display);letter-spacing:-.8px;margin:7px 0 5px}.modal-intro{font-size:11px;color:#9ba0ad;margin:0 0 22px}.modal label{display:block;color:#c3c6ce;font-size:10px;font-weight:600;margin-bottom:14px}.modal input,.modal select{display:block;width:100%;height:39px;margin-top:7px;padding:0 11px;background:#111319;border:1px solid #30333e;border-radius:8px;color:#e5e6eb;font:11px var(--font);outline:none}.modal input:focus,.modal select:focus{border-color:#6d78ed}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.full{width:100%;justify-content:center;margin-top:7px}.mobile-menu{display:none}
@media(max-width:1050px){.sidebar{width:218px}.content{padding:28px 25px}.topbar{padding:0 25px}.dashboard-grid,.lower-grid{grid-template-columns:1fr}.event-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.sidebar{width:60px;padding:18px 7px}.brand{padding:0 7px 25px}.brand-name,.org-switch,.nav-label,.nav-item:not(.active),.nav-item.active{font-size:0}.nav-item{justify-content:center;padding:0}.nav-icon{font-size:18px}.nav-count,.sidebar-bottom{display:none}.tools-label{margin-top:22px}.topbar{height:56px;padding:0 16px}.content{padding:24px 15px}.page-head{align-items:flex-start;gap:15px;flex-direction:column}.page-head h1{font-size:23px}.metrics{grid-template-columns:repeat(2,1fr);gap:9px}.metric{padding:13px;min-height:100px}.metric-value{font-size:24px}.event-cards{grid-template-columns:1fr}.mini-events{grid-template-columns:1fr}.feature-title{font-size:17px}.feature-meta{flex-wrap:wrap}.fixture-row{grid-template-columns:70px 1fr 60px;padding:13px 10px}.fixture-pair{gap:7px}.fixture-team{width:auto;font-size:8px}.fixture-team .team-icon{display:none}.top-actions{gap:11px}.standings-hero{margin:0 9px 12px}.table-wrap{overflow:auto}.toolbar{flex-wrap:wrap}.searchbox{max-width:none;min-width:100%}.fixture-date{font-size:8px}}
.empty-admin{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:28px;color:#aeb2bf}.empty-admin b{color:#f4f5f7;font-size:14px}.empty-admin small{font-size:12px;line-height:1.5}.empty-admin .button{margin-top:6px}
.admin-login-card{max-width:560px;margin:48px auto;padding:32px}.admin-login-card h1{margin:10px 0}.admin-login-card p{color:var(--muted)}.admin-login-card label{display:grid;gap:8px;margin:20px 0}.admin-login-card input{padding:14px;border-radius:14px;border:1px solid var(--line);background:var(--panel);color:var(--text)}.admin-code-row{display:flex;gap:12px;align-items:end}.admin-code-row label{flex:1}.admin-login-card [role=status]{display:block;margin-top:12px;color:var(--muted)}
.admin-login-card #adminPasswordSignIn,.admin-login-card #adminSendCode{width:100%;min-height:48px}
.admin-login-card #adminPasswordReset,.admin-login-card #adminContinue{display:block;margin:12px auto;color:#b8bdc9}
.admin-login-divider{display:flex;align-items:center;gap:12px;margin:18px 0;color:var(--muted);font-size:12px}
.admin-login-divider:before,.admin-login-divider:after{content:"";height:1px;flex:1;background:var(--line)}
.workspace-sign-out{height:32px;padding:0 11px;font-size:10px}
.workspace-sign-out[hidden]{display:none}
.brand-logo{display:block;object-fit:contain;background:#23282b;border-radius:7px;box-shadow:none;flex:0 0 auto}
.profile-avatar.brand-logo,.org-avatar.brand-logo{padding:0}
.top-avatar{padding:0;overflow:hidden;border-radius:8px;background:#23282b}
.top-avatar img{display:block;width:100%;height:100%;object-fit:contain;border-radius:7px}
 .event-delete{min-height:28px;padding:0 10px;border:1px solid #5a343b;border-radius:999px;background:#261a20;color:#f0a1a3;font:600 9px var(--font);cursor:pointer;transition:background .15s,border-color .15s}
.event-delete:hover{background:#3a2029;border-color:#a14d57}
.event-delete:focus-visible{outline:2px solid #f0a1a3;outline-offset:2px}
.event-card-actions{display:inline-flex;align-items:center;gap:6px}
.event-edit{min-height:28px;padding:0 10px;border:1px solid #3b4051;border-radius:999px;background:#1c202a;color:#d6d9e3;font:600 9px var(--font);cursor:pointer;transition:background .15s,border-color .15s}
.event-edit:hover{background:#292e3d;border-color:#686f83}
.event-edit:focus-visible{outline:2px solid #abb4ff;outline-offset:2px}
.event-publish{min-height:28px;padding:0 10px;border:1px solid #454b74;border-radius:999px;background:#252a42;color:#c3c9ff;font:600 9px var(--font);cursor:pointer;transition:background .15s,border-color .15s}
.event-publish:hover{background:#303653;border-color:#717bb4}
.event-publish.is-published{border-color:#315641;background:#1b2c22;color:#a9ddb4}
.event-publish.is-published:hover{background:#263c2e;border-color:#4e805f}
.event-publish:focus-visible{outline:2px solid #abb4ff;outline-offset:2px}

/* Keep the admin overview side panels readable inside the dashboard column. */
.dashboard-grid{min-width:0;align-items:start}
.dashboard-grid>.card,.dashboard-side-stack>.card{min-width:0}
.dashboard-side-stack{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-content:start;min-width:0}
.fixture-row{grid-template-columns:minmax(76px,.7fr) minmax(0,2fr) minmax(86px,.8fr) auto;column-gap:12px;min-width:0}
.fixture-pair{min-width:0;gap:10px}
.fixture-team{width:auto;min-width:0;flex:1;overflow-wrap:anywhere}
.fixture-result{min-width:0}
.row-delete{justify-self:end}
@media(max-width:1050px){.dashboard-side-stack{grid-template-columns:minmax(0,1fr)}}
@media(max-width:720px){.fixture-row{grid-template-columns:minmax(0,1fr) auto;row-gap:9px}.fixture-date{grid-column:1}.fixture-pair{grid-column:1/-1;grid-row:2}.fixture-result{grid-column:1;grid-row:3;text-align:left}.row-delete{grid-column:2;grid-row:3}.fixture-team{font-size:9px}}

.admin-reset-button{margin:8px 0 0 8px}


.plmix-team-dialog{width:min(620px,calc(100vw - 32px));max-height:min(82vh,820px)}
.plmix-team-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:58vh;overflow:auto;padding:4px 2px 10px}
.plmix-team-directory-card{display:flex;align-items:center;gap:12px;min-width:0;padding:13px;border:1px solid var(--line);border-radius:14px;background:#191c25}
.plmix-team-directory-card[style*="--team-accent"]{border-color:color-mix(in srgb,var(--team-accent) 42%,var(--line));background:linear-gradient(110deg,color-mix(in srgb,var(--team-accent) 16%,#191c25),#191c25 78%)}
.plmix-team-directory-logo,.plmix-team-directory-card .plmix-logo-placeholder{width:48px;height:48px;flex:0 0 48px;border-radius:13px;object-fit:contain;background:#242838;padding:5px}
.plmix-team-directory-card>span:last-child{display:grid;gap:4px;min-width:0}
.plmix-team-directory-card small{font-size:9px;letter-spacing:.1em;color:var(--muted);font-style:normal}
.plmix-team-directory-card b{font-size:14px;line-height:1.25;overflow-wrap:anywhere}
.plmix-team-directory-card em{font-size:11px;line-height:1.35;color:#aeb4c3;font-style:normal;overflow-wrap:anywhere}
@media(max-width:520px){.plmix-team-directory{grid-template-columns:1fr;gap:8px}.plmix-team-directory-card{padding:11px}.plmix-team-directory-logo,.plmix-team-directory-card .plmix-logo-placeholder{width:42px;height:42px;flex-basis:42px}}

/* Tournament fixture rows use the same compact bracket score-strip layout:
   both players stack on the left, with their scores aligned on the right. */
.fixture-row{grid-template-columns:minmax(88px,.55fr) minmax(0,2fr) minmax(145px,.75fr) auto;column-gap:14px}
.fixture-pair{display:grid;grid-template-columns:minmax(0,1fr) 72px;align-items:stretch;gap:12px}
.fixture-player-stack{display:grid;min-width:0;grid-template-rows:repeat(2,minmax(32px,auto))}
.fixture-team{width:auto;min-width:0;min-height:32px;justify-content:flex-start;padding:5px 8px;border-bottom:1px solid #343846;font-size:11px;line-height:1.25;overflow-wrap:anywhere}
.fixture-row.has-daily-result-conflict{border:1px solid #b44a52!important;background:linear-gradient(100deg,rgba(126,36,45,.2),rgba(25,27,36,.98))!important;box-shadow:inset 3px 0 #ed686e}.fixture-daily-conflict-note{display:block;margin-top:6px;color:#ff8589!important;font-weight:700}
.fixture-team:last-child{justify-content:flex-start;border-bottom:0}
.fixture-score-editor{min-width:0;text-align:right}
.fixture-score-editor summary{grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(32px,auto)) auto;align-items:center;justify-items:end;gap:0}
.fixture-score-editor summary .fixture-score-value{display:grid;place-items:center;min-width:38px;min-height:26px;padding:2px 7px;border:1px solid #41475a;border-radius:8px;background:#202431;color:#e8eaf2;font-size:13px;font-weight:700;line-height:1}
.fixture-score-editor summary small{grid-row:3;text-align:right;font-size:8px;color:#858b9c;padding-top:4px}
.fixture-result>small{display:block;text-align:right;line-height:1.5}
.fixture-row:has(.fixture-score-editor[open]){grid-template-columns:minmax(88px,.55fr) minmax(0,2fr) minmax(145px,.75fr) auto;align-items:start}
.fixture-row:has(.fixture-score-editor[open]) .fixture-pair{grid-template-columns:minmax(0,1fr) minmax(300px,390px)}
.fixture-row:has(.fixture-score-editor[open]) .fixture-score-editor summary{grid-template-columns:1fr;grid-template-rows:repeat(2,minmax(32px,auto)) auto}
@media(max-width:720px){.fixture-row{grid-template-columns:minmax(0,1fr) auto}.fixture-date{grid-column:1}.fixture-pair{grid-column:1/-1;grid-row:2;grid-template-columns:minmax(0,1fr) 66px;gap:9px}.fixture-result{grid-column:1;grid-row:3;text-align:left}.fixture-result>small{text-align:left}.row-delete{grid-column:2;grid-row:3}.fixture-row:has(.fixture-score-editor[open]){grid-template-columns:minmax(0,1fr) auto}.fixture-row:has(.fixture-score-editor[open]) .fixture-pair{grid-template-columns:minmax(0,1fr)}.fixture-score-editor{width:100%}.fixture-score-editor summary{grid-template-columns:1fr 1fr auto;grid-template-rows:minmax(34px,auto);align-items:center;justify-items:center;gap:7px}.fixture-score-editor summary small{grid-row:auto;text-align:center;padding:0}.fixture-score-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:100%}.fixture-score-fields .button{grid-column:1/-1;justify-content:center}.fixture-team{font-size:10px}}

.fixture-score-editor{position:relative;min-width:130px;text-align:right}
.fixture-score-editor summary{list-style:none;cursor:pointer;display:grid;gap:3px}
.fixture-score-editor summary::-webkit-details-marker{display:none}
.fixture-score-editor summary b{font-size:13px;color:#e7e9ef;white-space:nowrap}
.fixture-score-editor summary small{font-size:8px;color:#818797}
.fixture-score-fields{position:absolute;z-index:5;right:0;top:calc(100% + 8px);display:flex;align-items:end;gap:6px;padding:10px;background:#20232d;border:1px solid #3b4050;border-radius:10px;box-shadow:0 12px 28px #0008}
.fixture-score-fields label{display:grid;gap:4px;color:#aeb4c4;font-size:8px;text-align:left}
.fixture-score-fields input{width:54px;height:34px;border:1px solid #3b4050;border-radius:7px;background:#151720;color:#f4f5f8;padding:0 8px;font:600 12px var(--font)}
.fixture-score-fields>span{padding-bottom:9px;color:#aeb4c4}
.fixture-score-fields .button{height:34px;padding:0 10px;white-space:nowrap;font-size:9px}
@media(max-width:720px){.fixture-score-editor{text-align:left}.fixture-score-fields{left:0;right:auto}}

/* Keep the score form in the fixture row's normal flow so it cannot cover
   neighboring matches or squeeze the numeric controls. */
.fixture-row:has(.fixture-score-editor[open]){grid-template-columns:minmax(86px,.7fr) minmax(0,1fr) minmax(330px,390px) auto;align-items:start}
.fixture-score-editor{position:static;min-width:0;text-align:left}
.fixture-score-fields{position:static;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:10px;width:100%;margin-top:10px;padding:12px;background:#20232d;border:1px solid #3b4050;border-radius:10px;box-shadow:none}
.fixture-score-fields label{min-width:0;margin:0;gap:6px;font-size:9px}
.fixture-score-fields input{width:100%;min-width:0;height:38px;padding:0 10px;font-size:13px}
.fixture-score-fields>span{display:none}
.fixture-score-fields .button{height:38px;padding:0 13px;font-size:10px}
@media(max-width:720px){.fixture-row:has(.fixture-score-editor[open]){grid-template-columns:minmax(0,1fr) auto}.fixture-score-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);max-width:100%}.fixture-score-fields .button{grid-column:1/-1;justify-content:center}}
.fixture-row:has(.fixture-name-editor[open]){grid-template-columns:minmax(86px,.7fr) minmax(0,1fr) minmax(300px,390px) auto;align-items:start}
.fixture-name-editor{margin-top:8px;text-align:left}
.fixture-name-editor summary{list-style:none;cursor:pointer;color:#aeb6ff;font-size:10px;font-weight:600}
.fixture-name-editor summary::-webkit-details-marker{display:none}
.fixture-name-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:9px;margin-top:9px;padding:11px;background:#20232d;border:1px solid #3b4050;border-radius:10px}
.fixture-name-fields label{display:grid;gap:5px;min-width:0;color:#aeb4c4;font-size:9px;text-align:left}
.fixture-name-fields input{width:100%;min-width:0;height:36px;border:1px solid #3b4050;border-radius:7px;background:#151720;color:#f4f5f8;padding:0 9px;font:500 12px var(--font)}
.fixture-name-fields .button{grid-column:1/-1;justify-content:center;height:36px;font-size:10px}
@media(max-width:720px){.fixture-row:has(.fixture-name-editor[open]){grid-template-columns:minmax(0,1fr) auto}.fixture-name-fields{grid-template-columns:minmax(0,1fr);max-width:100%}.fixture-name-fields .button{grid-column:1}}
.fixture-round-meta{display:block;margin-top:4px;color:#9ca3b6;font-size:9px;line-height:1.35}

.fixture-round-filter{grid-template-columns:auto minmax(200px,280px) minmax(220px,1fr) auto}
.fixture-player-search{display:grid;grid-template-columns:auto minmax(140px,1fr);align-items:center;gap:9px;color:#cbd0dc;font-size:10px;font-weight:600}
.fixture-player-search input{box-sizing:border-box;width:100%;height:38px;min-width:0;padding:0 11px;border:1px solid #3b4050;border-radius:8px;outline:none;background:#11131a;color:#eef0f5;font:500 11px var(--font)}
.fixture-player-search input:focus{border-color:#6874f2;box-shadow:0 0 0 2px #6874f233}

.fixture-round-filter{display:grid;grid-template-columns:auto minmax(220px,340px) 1fr;align-items:center;gap:10px;margin:0 0 12px;padding:12px 15px;border:1px solid #2d303b;border-radius:10px;background:#171922}
.fixture-round-filter label{font-size:10px;font-weight:600;color:#cbd0dc}
.fixture-round-filter select{height:38px;min-width:0;padding:0 11px;border:1px solid #3b4050;border-radius:8px;background:#11131a;color:#eef0f5;font:500 11px var(--font)}
.fixture-round-filter small{justify-self:end;color:#8f95a4;font-size:9px}
.fixture-row[hidden]{display:none}
@media(max-width:720px){.fixture-round-filter{grid-template-columns:1fr;gap:7px}.fixture-round-filter small{justify-self:start}.fixture-player-search{grid-template-columns:1fr;gap:5px}}

/* All-round admin editor: grouped progression, no stage selector required. */
.fixture-round-filter{grid-template-columns:minmax(0,1fr) auto}
.fixture-round-filter .fixture-player-search{grid-template-columns:auto minmax(160px,1fr);max-width:520px}
.fixture-stage-group{border-top:1px solid #292c35}
.fixture-stage-group[hidden]{display:none}
.fixture-stage-heading{display:flex;align-items:center;justify-content:space-between;padding:13px 18px 9px;background:#191c25}
.fixture-stage-heading b{color:#e6e8ef;font:700 12px var(--display)}
.fixture-stage-heading small{color:#9297a5;font-size:9px}
@media(max-width:720px){.fixture-round-filter{grid-template-columns:minmax(0,1fr)}.fixture-round-filter .fixture-player-search{grid-template-columns:minmax(0,1fr);max-width:none}.fixture-round-filter small{justify-self:start}}

/* Fixture scores stay editable on each match card for fast manual entry. */
.fixture-row .fixture-pair{min-width:0;grid-template-columns:minmax(0,1fr) minmax(220px,.7fr)}
.fixture-row .fixture-score-editor{width:auto;min-width:0;text-align:left}
.fixture-row .fixture-score-fields{position:static;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:end;gap:8px;width:100%;margin:0;padding:0;border:0;background:transparent;box-shadow:none}
.fixture-row .fixture-score-fields label{min-width:0;margin:0;gap:4px;font-size:8px}
.fixture-row .fixture-score-fields input{width:100%;min-width:0;height:34px;padding:0 8px;font-size:13px}
.fixture-row .fixture-score-fields>span{display:block;padding-bottom:8px}
.fixture-row .fixture-score-fields .button{grid-column:1/-1;width:100%;height:32px;justify-content:center;padding:0 10px;font-size:9px}
@media(max-width:720px){.fixture-row .fixture-pair{grid-template-columns:minmax(0,1fr)}.fixture-row .fixture-score-fields{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.fixture-row .fixture-score-fields input{height:38px}}
