:root{color-scheme:dark;--bg:#0c0e12;--surface:#14171e;--raised:#1d222b;--line:#2b303b;--text:#f2f4f8;--muted:#a2aab9;--accent:#f5485b;--soft:#ff9ca7;--good:#8dd7b5;--warn:#edc883;--radius:16px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.45}button:active:not(:disabled){transform:translateY(1px)}button,input,select,textarea,a{outline-offset:4px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:2px solid var(--accent)}h1,h2,h3,p{margin:0}h1{font-size:32px;line-height:1.15;letter-spacing:-1px}h2{font-size:21px;letter-spacing:-.4px}h3{font-size:15px}.muted,small{color:var(--muted)}small{font-size:12px}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.65 ui-monospace,monospace;color:#d0d7e6}code{font-size:12px;overflow-wrap:anywhere}#shell{display:flex;min-height:100vh}#sidebar{width:225px;flex-shrink:0;background:#101319;border-right:1px solid var(--line);padding:30px 18px;position:fixed;inset:0 auto 0 0;overflow-y:auto;z-index:5}.workspace{margin-left:225px;width:calc(100% - 225px);min-width:0}#topbar{height:72px;padding:0 34px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;background:#101319}.top-right,.row,.actions,.chips{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.top-right{justify-content:flex-end}.brand{display:flex;gap:10px;align-items:center;line-height:1}.brand img{width:37px;height:37px}.wordmark{font-size:24px;font-weight:900;letter-spacing:-1.2px}.wordmark b{color:var(--accent)}.tagline{font-size:7px;font-weight:700;letter-spacing:1.65px;color:var(--muted);margin-top:8px}.nav-heading{text-transform:uppercase;font-size:10px;letter-spacing:1.8px;color:#757f92;margin:32px 14px 12px}.nav-link{display:flex;gap:12px;align-items:center;padding:11px 14px;margin:5px 0;border-radius:9px;color:#b8c0ce;font-weight:600}.nav-link:hover{background:#1a1f28}.nav-link.active{color:#fff;background:#46232c;border:1px solid #6e2c3a;padding:10px 13px}.nav-dot{width:8px;height:8px;border:1px solid currentColor;border-radius:2px;flex-shrink:0}.active .nav-dot{background:var(--accent);border-color:var(--accent)}.sidebar-note{margin:26px 8px;padding:15px;border:1px solid var(--line);border-radius:12px;font-size:11px;color:var(--muted)}#main{padding:32px 34px;max-width:1480px;margin:auto;min-height:calc(100vh - 140px)}footer{padding:20px 34px;border-top:1px solid var(--line);display:flex;gap:20px;color:#7f8b9c;font-size:10px;letter-spacing:.6px;flex-wrap:wrap}footer a{margin-left:auto}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:25px}.page-head p{color:var(--muted);margin-top:9px;max-width:680px;font-size:13px}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;text-transform:uppercase;color:var(--soft);margin-bottom:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;background:var(--raised);border:1px solid #383e4b;border-radius:9px;min-height:41px;padding:10px 15px;font-size:12px;font-weight:650;white-space:nowrap}.btn:hover{border-color:#626b7b}.btn.primary{background:var(--accent);border-color:var(--accent);color:white}.btn.danger{color:#ffacb6;background:#3b202b;border-color:#6e3240}.btn.quiet{background:transparent}.btn.small{min-height:33px;padding:6px 10px;font-size:11px}.btn.block{width:100%}.text-link{color:var(--soft)}.pill{display:inline-flex;align-items:center;gap:6px;border:1px solid #3b414d;border-radius:5px;padding:4px 8px;font-size:9px;font-weight:750;letter-spacing:.7px;text-transform:uppercase;color:#c7ceda;white-space:nowrap}.pill.accent{color:var(--soft);background:#351d26;border-color:#65303d}.pill.good{color:var(--good)}.pill.warn{color:var(--warn)}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.panel{padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-width:0}.panel h2,.panel h3{margin-bottom:12px}.panel p+p{margin-top:12px}.panel .actions{margin-top:17px}.section{margin-top:24px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.metric strong{display:block;font-size:32px;letter-spacing:-1px;font-variant-numeric:tabular-nums}.metric small{display:block;margin-top:5px}.metric .eyebrow{color:var(--muted)}.hero{position:relative;overflow:hidden;background:linear-gradient(115deg,#321c26,#171922 65%);border:1px solid #61313f;border-radius:20px;padding:34px;min-height:224px;margin-bottom:24px}.hero h1{font-size:40px;max-width:620px;letter-spacing:-1.6px}.hero p{color:#b7b9c4;margin:14px 0 23px;max-width:530px}.hero .orbit{position:absolute;right:-85px;top:-120px;width:490px;height:490px;border:60px solid #d9364b0b;border-radius:50%;pointer-events:none}.hero .orbit:after{content:'';position:absolute;inset:45px;border:40px solid #d9364b14;border-radius:50%}.action-card{display:block;min-height:140px;padding:23px;background:var(--surface);border:1px solid var(--line);border-radius:15px;transition:border-color .12s}.action-card:hover{border-color:#945362}.action-card .number{font:800 28px/1 ui-sans-serif,system-ui;color:var(--accent);margin-bottom:20px}.action-card p{color:var(--muted);font-size:12px;margin-top:7px}.notice{padding:14px 17px;border:1px solid #655239;border-radius:10px;background:#252116;color:var(--warn);font-size:12px;line-height:1.6;margin:16px 0}.notice.info{background:#171f29;border-color:#334457;color:#b5c9df}.notice.error{background:#321c25;border-color:#723545;color:#ffafb9}.empty{padding:35px 20px;text-align:center;color:var(--muted);border:1px dashed #3c414c;border-radius:14px}.empty h3{color:var(--text);margin-bottom:8px}.empty .btn{margin-top:17px}.list{display:flex;flex-direction:column;gap:11px}.list-row{padding:15px 17px;border:1px solid var(--line);border-radius:12px;background:var(--surface);display:flex;align-items:center;justify-content:space-between;gap:14px;min-width:0}.list-row .title{font-weight:650;overflow-wrap:anywhere}.list-row .meta{font-size:11px;color:var(--muted);margin-top:4px}.list-row .right{text-align:right;flex-shrink:0}.scoreline{font-size:24px;letter-spacing:2px;font-weight:800;font-variant-numeric:tabular-nums}.form{max-width:540px}.field{display:block;margin-bottom:15px}.field>span{font-size:11px;color:#c4ccdb;display:block;margin-bottom:7px}.field input,.field select,.field textarea{width:100%;min-height:43px;padding:10px 12px;border:1px solid #3c4453;border-radius:9px;background:#0e1117;color:var(--text);font-size:14px}.field textarea{min-height:95px;resize:vertical}.field input[type=checkbox]{width:18px;min-height:18px;accent-color:var(--accent);vertical-align:middle;margin-right:8px}.field:has(input[type=checkbox]){font-size:12px;display:flex;gap:8px;align-items:center;color:var(--muted)}.field:has(input[type=checkbox])>span{margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.help{font-size:11px;color:var(--muted);margin:-6px 0 16px;line-height:1.6}.form-error{color:#ffb0bb;font-size:12px;margin:12px 0}.form-error:empty{display:none}dialog{padding:0;background:#171b23;color:var(--text);border:1px solid #434b5b;border-radius:18px;width:min(650px,calc(100vw - 28px));max-height:90dvh;box-shadow:0 35px 100px #000a}dialog::backdrop{background:#000b;backdrop-filter:blur(3px)}.dialog-body{padding:25px}.dialog-head{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:20px}.dialog-head h2{margin:0}.dialog-body .form{max-width:none}#toast{position:fixed;bottom:25px;left:50%;transform:translate(-50%,15px);background:#f1f3f7;color:#10151c;padding:13px 19px;border-radius:10px;max-width:90vw;font-size:12px;font-weight:650;opacity:0;pointer-events:none;z-index:100;transition:.15s}#toast.visible{opacity:1;transform:translate(-50%,0)}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:12px}th{text-align:left;font-size:9px;letter-spacing:.8px;text-transform:uppercase;color:#8f9bae;padding:12px 10px;border-bottom:1px solid #3b4350}td{padding:12px 10px;border-bottom:1px solid #292f39}tr:last-child td{border-bottom:0}.nowrap{white-space:nowrap}.preline{white-space:pre-line}.loading{color:var(--muted);padding:40px;text-align:center}.two-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px}.mono{font-variant-numeric:tabular-nums}.inline-error{color:var(--soft);font-size:12px;margin-top:10px}.tabs{display:flex;gap:6px;flex-wrap:wrap;margin:16px 0}.tab{padding:9px 14px;border:1px solid var(--line);border-radius:8px;background:var(--surface);font-size:11px}.tab.active{border-color:#a24357;color:#ff9aa9;background:#34202b}.checklist{padding-left:18px;color:var(--muted);line-height:1.9;font-size:12px}.post-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:12px 0;color:#d4dae5}.post .meta{font-size:11px;color:var(--muted)}.mobile-brand{display:none}.auth-card{max-width:460px;margin:35px auto}.price{font-size:28px;letter-spacing:-1px;font-weight:750;margin:15px 0}.badges{display:flex;gap:6px;flex-wrap:wrap}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.video-card{background:#05070b;border:1px solid var(--line);border-radius:12px;overflow:hidden}.video-card video{width:100%;height:230px;object-fit:contain;background:#000}.video-card small{display:block;padding:10px}.lesson-text{line-height:1.9;font-size:14px;color:#c4cedd}.menu-button{display:none}.row.between{justify-content:space-between}.spaced{margin-top:16px}.hidden{display:none!important}
/* Dedicated scorer: no administrative controls above the keypad. */
.scoring-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px;align-items:start}.score-head{margin-bottom:13px;display:flex;justify-content:space-between;gap:10px;align-items:center}.score-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.score-card{border:1px solid var(--line);border-radius:15px;background:var(--surface);padding:19px;overflow:hidden;min-width:0;position:relative}.score-card.active{border-color:#c4475a;background:linear-gradient(120deg,#381d28,#201920)}.score-card.active:before{content:'';height:3px;background:var(--accent);position:absolute;top:0;left:0;right:0}.turn-label{font-size:8px;letter-spacing:1.4px;font-weight:800;color:#9fa9b8;height:21px}.score-card.active .turn-label{color:#ff9aaa}.score-name{font-size:17px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-weight:700}.remaining{font-size:93px;line-height:1.18;font-weight:850;letter-spacing:-6px;font-variant-numeric:tabular-nums}.score-stats{display:grid;grid-template-columns:1fr 1fr 1fr;border-top:1px solid #42323e;padding-top:12px;margin-top:10px;gap:5px}.score-stats strong{font-size:16px;display:block;font-variant-numeric:tabular-nums}.score-stats small{font-size:9px;display:block}.leg-count{float:right;font-size:10px;color:var(--muted);margin-top:-19px}.leg-count b{color:white;font-size:15px}.checkout-strip{padding:15px;border:1px solid var(--line);border-radius:11px;margin-top:13px;display:flex;gap:10px;justify-content:space-between;align-items:center;background:#141821}.checkout-strip .eyebrow{margin:0 0 4px;font-size:8px}.checkout-strip .muted{font-size:11px}.route{display:flex;gap:5px}.route span{padding:6px 9px;background:#2c2530;border:1px solid #674053;border-radius:6px;font-size:12px;font-weight:750}.controls{padding:19px;background:var(--surface);border:1px solid var(--line);border-radius:15px;min-width:0}.controls h3{font-size:13px;margin-bottom:12px}.score-entry{display:flex;gap:10px;background:#0c0f14;border:1px solid #424858;border-radius:10px;padding:11px 14px;align-items:center}.score-entry input{background:transparent;border:0;color:white;min-width:0;width:100%;font-size:38px;font-weight:750;padding:0;outline:none;font-variant-numeric:tabular-nums}.score-entry small{font-size:8px;letter-spacing:1px;display:block}.score-entry .leaves{min-width:60px;text-align:right;padding-left:10px;border-left:1px solid var(--line)}.score-entry .leaves b{font-size:23px}.quick-scores{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;margin:11px 0}.quick-scores button{height:33px;border-radius:6px;background:#272d37;border:1px solid #3b4351;font-size:11px;font-weight:700}.quick-scores button:last-child{color:var(--soft);border-color:#754051;background:#38212c}.keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.keypad button{height:50px;background:#222832;border:1px solid #3a4352;border-radius:8px;font-size:22px}.keypad button.utility{font-size:10px;color:var(--muted)}.keypad .score-shortcut{font-size:10px;font-weight:850;letter-spacing:.4px}.keypad .score-shortcut.miss{color:#d9dee8}.keypad .score-shortcut.bust{color:#ffb4bd;border-color:#70404a;background:#35222a}.keypad .score-shortcut.checkout{color:#bff2cf;border-color:#3e6b4e;background:#1e3126}.keypad .score-shortcut:disabled{opacity:.35;cursor:not-allowed}.confirm-score{min-height:48px;width:100%;margin-top:11px;font-size:13px}.minor-controls{display:flex;gap:6px;margin-top:9px}.minor-controls .btn{flex:1;font-size:10px;padding:8px 4px;min-height:36px}.score-note{color:var(--muted);font-size:10px;margin-top:10px}.cricket-board{padding:12px}.cricket-row{display:grid;grid-template-columns:1fr 48px 1fr;align-items:center;border-bottom:1px solid #293240;min-height:43px;text-align:center}.cricket-row:last-child{border:0}.cricket-row strong{font-size:15px}.cricket-row .marks{font-size:24px;letter-spacing:2px;color:#a4afc0}.cricket-row .closed{color:var(--good)}.segment-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:13px 0}.segment-grid button{min-height:39px;background:#232a35;border:1px solid #3a4558;border-radius:7px;font-size:13px;font-weight:700}.segment-grid.cricket{grid-template-columns:repeat(4,minmax(0,1fr))}.multiplier{display:flex;gap:6px}.multiplier button{flex:1;border-radius:7px;border:1px solid var(--line);background:#1d2530;padding:9px;font-size:11px}.multiplier button.selected{border-color:#bb4a61;color:var(--soft);background:#3b2331}.dart-tray{display:flex;gap:7px;min-height:54px;padding:9px;background:#0d1118;border:1px solid #364258;border-radius:8px;margin-top:12px}.dart-chip{display:grid;place-items:center;flex:1;background:#272a36;border:1px solid #4b4056;border-radius:6px;font-size:16px;font-weight:700}.dart-chip.empty{padding:0;border-style:dashed;min-height:33px;color:#535e71}.winner{padding:17px;background:#162920;border:1px solid #416d53;border-radius:11px;margin-top:14px;color:var(--good)}.visit-table th,.visit-table td{padding:9px;font-size:11px}.practice-header{display:flex;gap:10px;justify-content:space-between;align-items:center;margin-bottom:18px}.game-tools{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}
@media(max-width:1150px){#sidebar{width:195px;padding:24px 12px}.workspace{margin-left:195px;width:calc(100% - 195px)}#main{padding:25px 23px}#topbar{padding:0 23px}.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}.scoring-layout{grid-template-columns:minmax(0,1fr) 310px;gap:14px}.remaining{font-size:76px}.score-name{font-size:14px}.score-card{padding:15px}.score-stats small{font-size:8px}.two-layout{grid-template-columns:1fr}}
@media(max-width:900px){#sidebar{display:none;position:fixed;width:230px;box-shadow:0 0 0 100vw #0008}#sidebar.open{display:block}.workspace{margin:0;width:100%}.menu-button{display:inline-flex}.mobile-brand{display:flex}.desktop-heading{display:none}.grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}.hero h1{font-size:34px}}
@media(max-width:650px){body{font-size:13px}#topbar{height:61px;padding:0 13px}.top-right{gap:6px}.top-right .btn{min-height:32px;padding:6px 9px;font-size:10px}.top-right .user-label{display:none}.mobile-brand .brand img{width:26px;height:26px}.mobile-brand .wordmark{font-size:20px}.mobile-brand .tagline{display:none}#main{padding:19px 14px;min-height:calc(100vh - 124px)}footer{padding:18px 15px;gap:10px;font-size:8px}.page-head{align-items:flex-start;gap:10px;margin-bottom:19px}.page-head h1{font-size:25px}.page-head p{font-size:11px;margin-top:7px}.page-head .btn{font-size:10px;min-height:34px;padding:7px 10px}.eyebrow{font-size:8px}.hero{padding:23px;min-height:205px;border-radius:15px}.hero h1{font-size:31px;max-width:330px}.hero p{font-size:12px;max-width:290px}.hero .orbit{right:-270px}.grid{gap:12px}.grid.two,.grid.three{grid-template-columns:1fr}.grid.four{grid-template-columns:1fr 1fr}.panel{padding:17px;border-radius:13px}.action-card{min-height:123px;padding:18px}.action-card .number{font-size:23px;margin-bottom:13px}.quick-actions.grid{grid-template-columns:1fr 1fr}.action-card h3{font-size:13px}.action-card p{font-size:10px}.metric strong{font-size:26px}.metric .eyebrow{font-size:8px}.metric small{font-size:10px}.section{margin-top:20px}.section-head h2{font-size:18px}.list-row{padding:13px 12px}.list-row .title{font-size:12px}.list-row .meta{font-size:10px}.scoreline{font-size:19px}.notice{font-size:11px;padding:12px}.form-grid{grid-template-columns:1fr}.dialog-body{padding:20px}.video-card video{height:160px}.scoring-layout{grid-template-columns:1fr;gap:12px}.score-head{margin-bottom:10px}.score-cards{gap:10px}.score-card{padding:12px 13px;border-radius:12px}.score-name{font-size:14px}.turn-label{font-size:7px;height:19px;letter-spacing:1px}.remaining{font-size:68px;line-height:1.08;letter-spacing:-4px;margin-top:5px}.score-stats{padding-top:8px;margin-top:8px}.score-stats strong{font-size:14px}.score-stats small{font-size:7px}.leg-count{font-size:8px;margin-top:-19px}.leg-count b{font-size:11px}.checkout-strip{padding:10px 12px;margin-top:10px}.checkout-strip .muted{font-size:9px}.route span{padding:5px 7px;font-size:11px}.controls{padding:13px;border-radius:12px}.controls h3{font-size:12px;margin-bottom:9px}.score-entry{padding:9px 12px}.score-entry input{font-size:31px}.score-entry .leaves b{font-size:20px}.quick-scores{margin:9px 0}.quick-scores button{height:31px}.keypad button{height:43px;font-size:21px}.keypad{gap:6px}.confirm-score{min-height:44px;margin-top:9px}.minor-controls{margin-top:8px}.score-note{font-size:9px}.practice-header{margin-bottom:12px}.practice-header h1{font-size:21px}.practice-header .btn{font-size:10px;min-height:33px;padding:7px 10px}.scorer-history{grid-row:3}.score-head .pill{font-size:8px;padding:4px 6px}.cricket-row{min-height:35px}.cricket-row .marks{font-size:20px}.segment-grid button{min-height:37px}.game-tools .btn{font-size:10px}.scoring-layout:has(.cricket-board) .remaining{font-size:42px;letter-spacing:-2px}.scoring-layout:has(.cricket-board) .score-stats{display:none}.scoring-layout:has(.cricket-board) .score-card{padding:10px 12px}.auth-card{margin:20px auto}.row .field{width:100%}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
@media print{#sidebar,#topbar,footer,.btn,.game-tools{display:none!important}.workspace{width:100%;margin:0}body{color:#000;background:#fff}.panel,.list-row{background:#fff;border-color:#aaa}#main{max-width:none;padding:10px}.muted{color:#444}}
@media(max-width:650px){
.scoring-layout{display:flex;flex-direction:column}.scoring-layout>div:first-child{display:contents}.score-cards{order:1;width:100%}.checkout-strip,.cricket-board{order:2;width:100%;margin-top:0}.winner{order:3;width:100%}.scoring-layout>.controls{order:4;width:100%}.scorer-history{order:5;width:100%;margin-top:0}.score-card{padding:10px 12px}.turn-label{height:15px}.score-name{font-size:13px;line-height:1.3}.remaining{font-size:58px;line-height:1.02;margin-top:4px}.score-stats{padding-top:6px;margin-top:7px}.score-stats strong{font-size:12px;line-height:1.2}.score-stats small{font-size:7px;line-height:1.15;margin-top:3px}.practice-header{margin-bottom:9px}#practice-save{font-size:9px;line-height:1.4;margin-bottom:10px}.score-head{margin-bottom:9px}.controls h3{margin-bottom:7px}.score-entry.spaced{margin-top:9px}.multiplier button{padding:7px 9px}.score-entry input{font-size:28px}.keypad button{height:39px}.confirm-score{min-height:42px}.minor-controls .btn{min-height:33px}.score-note{font-size:8px}.controls .game-tools{margin-top:10px}
}

@media(max-width:650px){.checkout-strip.no-route{display:none}}

/* Academy session workflow */
.academy-progress{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 24px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(135deg,#171a22,#24171d)}
.academy-progress p{color:var(--muted);margin-top:7px;max-width:760px}.academy-progress-count{min-width:130px;text-align:right}.academy-progress-count strong{display:block;font-size:32px;line-height:1;color:var(--accent)}.academy-progress-count small{letter-spacing:1px}.academy-lesson-card{display:flex;flex-direction:column;min-height:290px}.academy-lesson-card .actions{margin-top:auto}.academy-lesson-path{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:10px;font-weight:800;letter-spacing:1.2px;margin:18px 0}.academy-lesson-path b{color:var(--accent)}
.academy-session-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.45fr) minmax(240px,.75fr);gap:26px;padding:30px;border:1px solid #63303b;border-radius:20px;background:radial-gradient(circle at 85% 15%,rgba(245,72,91,.17),transparent 32%),linear-gradient(145deg,#171a21,#111319)}.academy-session-hero h2{font-size:30px;margin-top:5px}.academy-session-hero p{color:var(--muted);font-size:15px;max-width:760px;margin-top:10px}.academy-session-goal{align-self:stretch;padding:20px;border:1px solid #71303e;border-radius:14px;background:rgba(245,72,91,.08);display:flex;flex-direction:column;justify-content:center}.academy-session-goal small{letter-spacing:1.4px;color:var(--soft);font-weight:800}.academy-session-goal strong{font-size:16px;margin-top:8px;line-height:1.45}
.academy-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.academy-overview-grid .panel{min-height:230px}.academy-section-title{display:flex;align-items:center;gap:12px;margin-bottom:16px}.academy-section-title span{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#2a1c22;color:var(--accent);font-size:11px;font-weight:900}.academy-list{padding-left:20px;margin:0;color:#c9cfda}.academy-list li{padding:5px 0}.academy-list li::marker{color:var(--accent);font-weight:800}.academy-ready{display:grid;grid-template-columns:1fr 1fr;gap:10px}.academy-ready>div,.checkout-start{padding:14px;border-radius:12px;background:#11141a;border:1px solid var(--line)}.academy-ready strong,.checkout-start strong{display:block;margin-top:5px}.checkout-start{margin-top:10px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:4px 12px}.checkout-start small{grid-column:1}.checkout-start strong{font-size:24px}.checkout-start .btn{grid-column:2;grid-row:1/3}
.academy-start-card{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:24px 28px;border-radius:16px;background:#f2f4f8;color:#11141a}.academy-start-card .eyebrow{color:#9f2638}.academy-start-card p{color:#5f6672;margin-top:5px}.academy-start-card .btn.primary{min-width:180px}
.academy-active-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px}.academy-active-head p{color:var(--muted);margin-top:6px}.academy-live-status{font-size:10px;letter-spacing:1.3px;font-weight:900;color:#f4cbd0;padding:8px 11px;border:1px solid #71303e;border-radius:999px;white-space:nowrap}.academy-live-status span{display:inline-block;width:7px;height:7px;background:var(--accent);border-radius:50%;margin-right:7px}.academy-coach-panel details{border-top:1px solid var(--line);padding:15px 0}.academy-coach-panel details:first-of-type{margin-top:14px}.academy-coach-panel summary{cursor:pointer;font-weight:800}.academy-coach-panel details .academy-list{margin-top:10px}.academy-hint{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px;border:1px solid var(--line);border-radius:12px;margin-top:14px;background:#11141a}.academy-hint p{color:var(--muted);font-size:12px;margin-top:3px}.checkout-route-hint{display:flex;align-items:center;gap:8px;margin-top:10px;padding:14px;border-radius:12px;background:#21171c;border:1px solid #60303a}.checkout-route-hint span{padding:7px 9px;border-radius:8px;background:#101319;font-weight:900}.checkout-route-hint b{color:var(--accent)}
.academy-complete{max-width:880px;margin:0 auto;text-align:center;padding:42px 34px;border:1px solid var(--line);border-radius:20px;background:radial-gradient(circle at 50% 0,rgba(245,72,91,.12),transparent 34%),var(--surface)}.academy-complete-mark{display:grid;place-items:center;width:62px;height:62px;margin:0 auto 14px;border-radius:50%;background:#2a1d22;border:1px solid #71303e;color:var(--accent);font-size:30px;font-weight:900}.academy-complete h2{font-size:30px;margin-top:5px}.academy-complete>p{max-width:650px;margin:10px auto 0;color:var(--muted)}.academy-complete .actions{justify-content:center}.academy-result-goal{text-align:left;padding:15px 17px;border:1px solid var(--line);border-radius:12px;background:#11141a}.academy-result-goal small{display:block;letter-spacing:1.2px}.academy-result-goal span{display:block;margin-top:5px;font-weight:700}
@media(max-width:780px){.academy-session-hero,.academy-overview-grid{grid-template-columns:1fr}.academy-start-card,.academy-active-head,.academy-progress{align-items:flex-start;flex-direction:column}.academy-progress-count{text-align:left}.academy-session-hero{padding:22px}.academy-ready{grid-template-columns:1fr}.academy-start-card .btn.primary{width:100%}.academy-live-status{white-space:normal}.academy-complete{padding:28px 18px}}


/* XDarts module architecture */
.module-grid{align-items:stretch}.module-card{min-height:190px;display:flex;flex-direction:column;justify-content:flex-start}.module-card h3{font-size:1.35rem}.module-switch{margin-top:1rem;flex-wrap:wrap}.competition-card{transition:transform .16s ease,border-color .16s ease}.competition-card:hover{transform:translateY(-2px)}.live-event-card{border:1px solid var(--line);text-decoration:none}.live-event-card h2{margin:.65rem 0}.live-list{gap:.7rem}.live-match{border:1px solid var(--line);border-radius:18px;padding:.65rem;background:var(--surface)}.live-match .list-row{border:0;padding:.7rem .75rem}.live-match-meta{display:flex;gap:.6rem;align-items:center;flex-wrap:wrap;padding:.25rem .75rem .1rem;color:var(--muted);font-size:.82rem}.live-match-meta>span:first-child{font-weight:800;color:var(--text)}.metric.compact{padding:.75rem}.metric.compact strong{font-size:1.35rem}.live-metrics .metric{min-height:110px}
@media(max-width:900px){.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.live-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.module-grid,.live-metrics{grid-template-columns:1fr}.module-card{min-height:unset}}

/* DartsX Bot 1–100 strength control */
.conditional-match-field[hidden]{display:none!important}.bot-config{padding:15px;border:1px solid var(--line);border-radius:12px;background:#11151d}.bot-strength-field{margin:0}.bot-strength-field span{display:flex;justify-content:space-between;align-items:center;gap:12px}.bot-strength-field span b{color:var(--soft);font-size:18px}.bot-strength-field input[type=range]{width:100%;padding:0;margin:12px 0 4px;accent-color:var(--accent)}.bot-scale{display:flex;justify-content:space-between;color:var(--muted);font-size:9px;margin-bottom:12px}.bot-profile{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.bot-profile>div{padding:10px;border:1px solid #303744;border-radius:9px;background:#0c1016;min-width:0}.bot-profile small{display:block;color:var(--muted);font-size:7px;letter-spacing:.7px;margin-bottom:4px}.bot-profile strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:650px){.bot-profile{grid-template-columns:1fr 1fr}.bot-config{padding:12px}}

/* DARTSX GROUP MATRIX v1.0.0 */
.competition-matrix-panel{padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);overflow:hidden}.competition-view-tabs{display:flex;justify-content:center;gap:42px;border-bottom:1px solid var(--line);background:#101319}.competition-view-tab{border:0;border-bottom:4px solid transparent;background:transparent;color:var(--muted);padding:15px 10px 12px;font-size:14px;font-weight:750;min-width:110px}.competition-view-tab.active{color:var(--text);border-bottom-color:var(--accent)}#competition-bracket-panel,#competition-results-panel{padding:22px}.tournament-stage-head{margin-bottom:18px}.tournament-stage-head h2{margin-bottom:4px}.group-matrix+.group-matrix{margin-top:28px}.group-matrix-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:10px}.group-matrix-head h3{font-size:16px;margin:0}.group-matrix-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:11px;background:#0f1218}.group-matrix-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-size:13px;font-variant-numeric:tabular-nums}.group-matrix-table th{height:38px;padding:8px 11px;text-align:center;background:#171b23;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px;letter-spacing:0;text-transform:none;color:var(--text)}.group-matrix-table td{height:58px;padding:7px 10px;text-align:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#11151c}.group-matrix-table tr:last-child td{border-bottom:0}.group-matrix-table th:last-child,.group-matrix-table td:last-child{border-right:0}.group-matrix-table .matrix-no{width:42px;min-width:42px;text-align:center}.group-matrix-table .matrix-name{min-width:245px;text-align:left;position:sticky;left:0;z-index:2;background:#151922}.group-matrix-table thead .matrix-name{z-index:4;background:#171b23}.group-matrix-table .matrix-name small,.matrix-result small{color:var(--muted)}.group-matrix-table .matrix-self{min-width:100px;background:#272c35}.matrix-cell{min-width:105px}.matrix-result{display:flex;min-height:42px;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:6px}.matrix-result:hover{background:#232936}.matrix-result strong{font-size:15px}.matrix-result small{font-size:11px}.matrix-state{font-size:10px;font-weight:800;color:var(--muted);letter-spacing:.6px}.matrix-state.live{color:var(--soft)}.matrix-record,.matrix-legs{min-width:90px;font-size:14px}.matrix-rank{min-width:64px;font-size:16px}.qualifier-row .matrix-name{box-shadow:inset 3px 0 0 var(--good)}.qualifier-mark{display:inline-grid;place-items:center;margin-left:7px;width:20px;height:20px;border-radius:50%;background:#183226;color:var(--good);font-size:10px}.tournament-results{padding-top:4px}
@media(max-width:650px){#competition-bracket-panel,#competition-results-panel{padding:14px}.competition-view-tabs{gap:18px}.competition-view-tab{min-width:90px;padding:12px 8px 10px;font-size:12px}.group-matrix-head{align-items:flex-start;flex-direction:column;gap:2px}.group-matrix-table .matrix-name{min-width:185px}.group-matrix-table td{height:52px}.matrix-cell{min-width:88px}}
@media print{.competition-view-tabs{display:none}.competition-matrix-panel{border:0}.group-matrix-scroll{overflow:visible}.group-matrix-table{width:100%}.group-matrix-table .matrix-name{position:static;background:#fff}.group-matrix-table th,.group-matrix-table td{color:#000;background:#fff;border-color:#aaa}.group-matrix-table .matrix-self{background:#ddd}}

/* DARTSX TOURNAMENT WIZARD v1.0.0 */
.tournament-wizard{background:linear-gradient(145deg,#171b23,#12151b);border-color:#414958}.wizard-step-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.wizard-step{display:flex;gap:10px;align-items:flex-start;padding:13px;border:1px solid var(--line);border-radius:12px;background:#0f1218;min-width:0}.wizard-step>span{display:grid;place-items:center;width:25px;height:25px;flex:0 0 25px;border-radius:50%;background:#321d25;color:var(--soft);font-size:10px;font-weight:900}.wizard-step b,.wizard-step strong,.wizard-step small{display:block}.wizard-step b{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.7px}.wizard-step strong{margin-top:3px;font-size:16px;overflow-wrap:anywhere}.wizard-step small{margin-top:2px}.match-number{display:inline-block;padding:2px 6px;border:1px solid #5c3440;border-radius:5px;background:#2e1d23;color:var(--soft);font:800 10px/1.3 ui-monospace,monospace;letter-spacing:.5px}.matrix-match-number{display:block;color:var(--soft);font:800 9px/1.2 ui-monospace,monospace;margin-bottom:2px}.match-sequence .table-wrap{max-height:520px}.match-sequence td:first-child{white-space:nowrap}.match-sequence td:nth-child(4){min-width:220px}.board-queue-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.board-queue-card{padding:15px;border:1px solid var(--line);border-radius:12px;background:#10141a}.board-queue-card h3{margin:0 0 4px}.board-queue-row{margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}.board-queue-row small,.board-queue-row strong{display:block}.board-queue-row strong{margin-top:3px}
@media(max-width:1100px){.wizard-step-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.board-queue-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.wizard-step-grid,.board-queue-grid{grid-template-columns:1fr}.wizard-step{align-items:center}.match-sequence .table-wrap{max-height:none}}

/* DARTSX LIVE MATCH START v1.0.0 */
.match-row{align-items:stretch}.match-row-main{display:flex;flex-direction:column;justify-content:center;flex:1;min-width:0}.match-row-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.match-row-actions .btn{min-width:88px}.watch-live-note{display:flex;align-items:center;gap:8px}.watch-live-note:before{content:'●';color:var(--accent);font-size:11px}
@media(max-width:650px){.match-row{align-items:flex-start;flex-direction:column}.match-row-main{width:100%}.match-row-actions{width:100%;justify-content:space-between}.match-row-actions .btn{flex:1}}

/* DartsX role-safe live spectator surface: scoreboard only, never scoring controls. */
.spectator-score-view .controls,
.spectator-score-view .checkout-strip,
.spectator-score-view .scorer-history,
.spectator-score-view .cricket-board { display:none !important; }
.spectator-score-view .scoring-layout { grid-template-columns:minmax(0,1fr) !important; }
.spectator-score-view .score-cards { max-width:980px; margin-inline:auto; }
.match-access-panel { max-width:760px; margin:28px auto; }
.match-access-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:18px; }

/* DARTSX PUBLIC MATCH CENTRE v1.0.0 */
.public-match-centre{max-width:1180px;margin:0 auto}.public-match-hero{padding:24px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(145deg,#171b23,#101319)}.public-match-meta{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.public-match-meta>span{padding:5px 8px;border:1px solid #39414f;border-radius:6px;color:#c9d0dc;font-size:10px;font-weight:750}.public-event-title{text-align:center;color:var(--muted);font-size:16px;margin:14px 0 8px}.public-match-scoreline{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:22px}.public-match-scoreline>div{display:flex;align-items:center;justify-content:flex-end;gap:18px;min-width:0}.public-match-scoreline>div:last-child{justify-content:flex-start}.public-match-scoreline strong{font-size:28px;overflow-wrap:anywhere}.public-match-scoreline span{font-size:46px;font-weight:900;font-variant-numeric:tabular-nums}.public-match-scoreline>b{font-size:28px;color:var(--muted)}.public-match-venue{text-align:center;color:var(--muted);margin-top:8px;font-size:11px}.public-match-tabs{display:grid;grid-template-columns:1fr 1fr;margin:18px 0;border-bottom:1px solid var(--line)}.public-match-tabs button{border:0;border-bottom:4px solid transparent;background:transparent;padding:14px;color:var(--muted);font-size:15px;font-weight:800}.public-match-tabs button.active{color:var(--text);border-bottom-color:var(--accent)}.public-score-summary{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);margin-bottom:18px}.public-score-summary>div{text-align:center}.public-score-summary small,.public-score-summary span{display:block;color:var(--muted)}.public-score-summary strong{display:block;font-size:34px;line-height:1.1;font-variant-numeric:tabular-nums}.public-leg-block{margin-top:18px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.public-leg-head{display:flex;align-items:center;justify-content:space-between;padding:13px 16px;background:#11151b;border-bottom:1px solid var(--line)}.public-leg-head span{font-size:11px;color:var(--muted)}.public-score-table-wrap{overflow-x:auto}.public-score-table{min-width:720px;font-size:16px;font-variant-numeric:tabular-nums}.public-score-table thead th{text-align:center;font-size:10px;padding:10px;background:#171b23}.public-score-table td{text-align:center;padding:12px 10px}.public-score-table td strong{display:block;font-size:24px}.public-score-table td small{display:block;margin-top:2px;font-size:9px;color:var(--muted)}.public-score-table .public-visit-col{width:72px;background:#171b23}.public-stats{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.public-stats-head,.public-stat-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.7fr) minmax(0,1fr);align-items:center;gap:12px;text-align:center}.public-stats-head{padding:16px;background:#11151b;border-bottom:1px solid var(--line)}.public-stats-head strong{font-size:20px}.public-stats-head span{color:var(--muted);font-size:12px}.public-stat-row{padding:12px 16px;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.public-stat-row:last-child{border-bottom:0}.public-stat-row strong{font-size:19px}.public-stat-row span{color:#c4ccda}.public-stat-note,.public-archive-note{color:var(--muted);font-size:10px;line-height:1.6}.public-stat-note{margin-top:12px}.public-archive-note{text-align:center;margin-top:16px}.public-cricket-board{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}.public-cricket-row{display:grid;grid-template-columns:1fr 90px 1fr;align-items:center;text-align:center;border-bottom:1px solid var(--line)}.public-cricket-row>div{padding:11px}.public-cricket-row>div strong,.public-cricket-row>div small{display:block}.public-cricket-row>div strong{font-size:22px}.public-cricket-row>b{padding:11px;background:#11151b}.public-cricket-points{display:grid;grid-template-columns:1fr 1fr}.public-cricket-points>div{padding:15px;text-align:center}.public-cricket-points span,.public-cricket-points strong{display:block}.public-cricket-points strong{font-size:28px}.public-visit-list{display:flex;flex-direction:column}.public-visit-list>div{display:flex;justify-content:space-between;gap:14px;padding:10px 0;border-bottom:1px solid var(--line)}.public-visit-list>div:last-child{border-bottom:0}.public-no-play{text-align:center}.public-no-play p{color:var(--muted);margin:8px 0 14px}
@media(max-width:700px){.public-match-scoreline{gap:8px}.public-match-scoreline strong{font-size:17px}.public-match-scoreline span{font-size:34px}.public-match-scoreline>div{gap:8px}.public-stats-head,.public-stat-row{grid-template-columns:1fr minmax(110px,.8fr) 1fr;padding-left:10px;padding-right:10px}.public-stats-head strong{font-size:15px}.public-stat-row strong{font-size:15px}.public-stat-row span{font-size:11px}.public-score-summary{grid-template-columns:1fr 90px 1fr}.public-score-summary strong{font-size:27px}.public-match-hero{padding:17px}.public-event-title{font-size:13px}}

/* DARTSX MATCH STATISTICS v1.0.0 */
.scorer-statistics{margin-top:4px}.scorer-statistics .public-stats-head span{text-transform:uppercase;letter-spacing:.08em;font-size:10px;font-weight:800}.scorer-stat-cards{gap:12px}.scorer-stat-card h3{margin:0 0 12px;font-size:18px}.scorer-stat-card-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 0;border-bottom:1px solid var(--line)}.scorer-stat-card-row:last-child{border-bottom:0}.scorer-stat-card-row span{color:var(--muted);font-size:11px}.scorer-stat-card-row strong{font-size:16px;font-variant-numeric:tabular-nums}

/* DARTSX LEARNER PROGRESS v1.0.0 */
dialog:has(.learner-progress){width:min(980px,calc(100vw - 28px))}.learner-progress{display:flex;flex-direction:column;gap:20px}.learner-progress-hero{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px;border:1px solid var(--line);border-radius:16px;background:linear-gradient(145deg,#171b23,#101319)}.learner-progress-hero h3{font-size:24px;margin:0}.learner-progress-hero p{margin-top:8px;color:var(--muted);max-width:620px}.learner-progress-percent{min-width:130px;text-align:center;padding:14px 18px;border-left:1px solid var(--line)}.learner-progress-percent strong,.learner-progress-percent small{display:block}.learner-progress-percent strong{font-size:34px;line-height:1.05;font-variant-numeric:tabular-nums}.learner-progress-percent small{margin-top:7px;font-size:9px;letter-spacing:.08em}.learner-progress-metrics{gap:10px}.learner-progress-metrics .panel{padding:15px}.learner-progress-metrics .metric strong{font-size:24px}.learner-progress-metrics .learner-last-activity{font-size:18px}.learner-progress-section{padding:19px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}.learner-progress-section .section-head{margin-bottom:12px}.learner-lesson-list,.learner-practice-list{display:flex;flex-direction:column}.learner-lesson-row,.learner-practice-row{display:flex;align-items:center;gap:12px;padding:12px 0;border-bottom:1px solid var(--line)}.learner-lesson-row:last-child,.learner-practice-row:last-child{border-bottom:0}.learner-lesson-row>div:nth-child(2),.learner-practice-row>div:first-child{flex:1;min-width:0}.learner-lesson-row strong,.learner-lesson-row small,.learner-practice-row strong,.learner-practice-row small{display:block}.learner-lesson-row small,.learner-practice-row small{margin-top:3px}.learner-lesson-number{display:grid;place-items:center;width:34px;height:34px;flex:0 0 34px;border-radius:9px;background:#20171d;color:var(--soft);font-size:10px;font-weight:900}.learner-practice-result{text-align:right;min-width:150px}.learner-practice-result b{font-size:14px;font-variant-numeric:tabular-nums}.learner-import-card{position:relative}.learner-import-button{width:max-content}.learner-import-input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.learner-import-name{display:inline-block;margin-left:10px;color:var(--muted);font-size:11px;vertical-align:middle}.learner-import-help{margin:12px 0 0}.learner-history-note{margin:12px 0 0}
@media(max-width:700px){dialog:has(.learner-progress){width:calc(100vw - 18px)}.learner-progress-hero{align-items:flex-start;flex-direction:column}.learner-progress-percent{width:100%;border-left:0;border-top:1px solid var(--line);padding:14px 0 0}.learner-progress-metrics.grid.four{grid-template-columns:1fr 1fr}.learner-practice-row{align-items:flex-start;flex-direction:column}.learner-practice-result{text-align:left;min-width:0}.learner-import-name{display:block;margin:8px 0 0}}
.school-group-card{display:block;text-decoration:none}.school-group-card-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:18px}.school-group-card-metrics span{padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}.school-group-card-metrics b,.school-group-card-metrics small{display:block}.school-group-card-metrics b{font-size:20px}.school-group-card-metrics small{margin-top:3px;color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.06em}.school-progress-cell{min-width:190px}.school-progress-cell progress{width:100%;height:8px;margin-top:8px;accent-color:var(--accent)}.school-progress-cell .row small{color:var(--muted)}
@media(max-width:700px){.school-group-card-metrics{grid-template-columns:1fr}.school-progress-cell{min-width:150px}}

/* DartsX match action sheet */
.match-action-sheet{max-width:620px}
.match-action-sheet .dialog-head{align-items:flex-start}
.match-action-sheet .dialog-head h2{margin:.25rem 0 0;line-height:1.3}
.match-action-list{display:grid;gap:10px;margin-top:18px}
.match-action-list .btn{justify-content:center;min-height:48px;font-size:1rem}

/* Public match winner + checkout notation */
.public-match-winner>strong,.public-match-winner>small,.public-score-table th.public-match-winner{font-weight:900!important;color:#fff}.public-match-scoreline .public-match-winner{font-weight:900}.public-leg-winner{font-weight:900;color:#fff}.public-checkout-mark{font-weight:900;letter-spacing:.08em}

/* DARTSX EVENT / LEAGUE STATISTICS v1.0.0 */
.event-statistics-section{overflow:hidden}.event-stats-scroll{overflow:auto;border:1px solid var(--line);border-radius:12px;max-width:100%}.event-stats-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums}.event-stats-table th,.event-stats-table td{padding:11px 12px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);white-space:nowrap;text-align:center}.event-stats-table th:last-child,.event-stats-table td:last-child{border-right:0}.event-stats-table tbody tr:last-child td{border-bottom:0}.event-stats-table thead th{position:sticky;top:0;z-index:2;background:#171b23}.event-stats-table thead button{appearance:none;border:0;background:transparent;color:var(--text);font:inherit;font-size:10px;font-weight:850;line-height:1.15;cursor:pointer;padding:0;text-align:center}.event-stats-table thead button:hover{color:var(--accent)}.event-stats-table .event-stats-name{text-align:left;position:sticky;left:45px;z-index:1;background:var(--surface);font-weight:800}.event-stats-table thead th:nth-child(2){position:sticky;left:45px;z-index:4}.event-stats-table .event-stats-position{position:sticky;left:0;z-index:1;background:#11151b;min-width:45px}.event-stats-table thead .event-stats-position{z-index:5}.event-stats-table tbody tr:hover td{background:#171c24}.event-stats-table tbody tr:hover .event-stats-name,.event-stats-table tbody tr:hover .event-stats-position{background:#171c24}
@media(max-width:700px){.event-stats-table th,.event-stats-table td{padding:9px 10px;font-size:11px}.event-stats-table .event-stats-name{left:38px}.event-stats-table .event-stats-position{min-width:38px}.event-stats-table thead th:nth-child(2){left:38px}}

/* DARTSX CORPORATE TOURNAMENT MANAGEMENT CLEANUP v1.0.0 */
.management-competition-metrics .metric,.management-event-metrics .metric{min-height:104px}
.management-competition-grid{align-items:stretch}
.management-competition-card{display:flex;min-height:220px;flex-direction:column;gap:12px;text-decoration:none;transition:transform .16s ease,border-color .16s ease,background .16s ease}
.management-competition-card:hover{transform:translateY(-2px);border-color:#4c5565;background:#151922}
.management-competition-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.management-open-label{color:var(--soft);font-size:12px;font-weight:850;white-space:nowrap}
.management-competition-card h2{margin:0;font-size:1.35rem}
.management-competition-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:auto}
.management-competition-meta span{display:flex;min-width:0;flex-direction:column;gap:3px;padding:10px 11px;border:1px solid var(--line);border-radius:10px;background:#0f1218;color:var(--text);font-size:12px;overflow-wrap:anywhere}
.management-competition-meta b{color:var(--muted);font-size:9px;text-transform:uppercase;letter-spacing:.7px}
.management-event-badges{margin-top:2px}
.management-event-toolbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#10141a}
.management-primary-actions{margin:0;flex:1}
.management-more-controls{min-width:220px}
.management-more-controls summary{cursor:pointer;list-style:none;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:#171b23;color:var(--text);font-size:12px;font-weight:800;text-align:center}
.management-more-controls summary::-webkit-details-marker{display:none}
.management-more-controls[open] summary{border-color:#5d3542;color:var(--soft)}
.management-event-tabs{position:sticky;top:0;z-index:8;display:flex;gap:4px;margin:20px 0 16px;padding:5px;border:1px solid var(--line);border-radius:14px;background:#0f1218;overflow-x:auto}
.management-event-tab{flex:1;min-width:118px;border:0;border-radius:10px;background:transparent;color:var(--muted);padding:11px 12px;font-size:12px;font-weight:850;white-space:nowrap}
.management-event-tab:hover{background:#171b23;color:var(--text)}
.management-event-tab.active{background:#5b2634;color:#fff;box-shadow:inset 0 0 0 1px #7d3b4c}
.management-event-panel{min-width:0}
.management-event-summary{padding:18px}
.management-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.management-summary-grid>div{display:flex;min-width:0;flex-direction:column;gap:5px;padding:12px;border:1px solid var(--line);border-radius:11px;background:#0f1218}
.management-summary-grid small{color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.65px}
.management-summary-grid b{font-size:13px;overflow-wrap:anywhere}
.management-boards-panel .list-row{align-items:center}
.management-results-workspace>.section-head{margin-bottom:12px}
.management-event-panel>.section:first-child,.management-event-panel>.panel:first-child{margin-top:0}
@media(max-width:900px){.management-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.management-event-toolbar{flex-direction:column}.management-more-controls{width:100%;min-width:0}.management-more-controls summary{text-align:left}}
@media(max-width:650px){.management-competition-meta,.management-summary-grid{grid-template-columns:1fr}.management-event-tabs{border-radius:10px}.management-event-tab{min-width:105px}.management-event-toolbar{padding:12px}.management-primary-actions{width:100%}}

/* DartsX shared live X01 scoreboard: same projection for chalker and live spectators. */
.dx-live-scoreboard{overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:0 16px 42px rgba(0,0,0,.18);font-variant-numeric:tabular-nums}.dx-live-scoreboard-scorer{margin-bottom:16px}.dx-live-scoreboard-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,.8fr) minmax(0,1fr);align-items:stretch;background:#11151b;border-bottom:1px solid var(--line)}.dx-live-player{padding:14px 16px;display:flex;flex-direction:column;justify-content:center;min-width:0}.dx-live-player.right{text-align:right;align-items:flex-end}.dx-live-player small,.dx-live-legs small,.dx-live-remaining small{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-weight:850}.dx-live-player strong{font-size:22px;line-height:1.15;overflow-wrap:anywhere}.dx-live-player.active{box-shadow:inset 0 -4px 0 var(--accent)}.dx-live-player.active small{color:var(--accent)}.dx-live-player.winner strong{font-weight:950}.dx-live-legs{text-align:center;padding:10px 14px;border-left:1px solid var(--line);border-right:1px solid var(--line)}.dx-live-legs>strong{display:flex;align-items:center;justify-content:center;gap:13px;font-size:36px;line-height:1}.dx-live-legs>strong b{font-size:18px;color:var(--muted)}.dx-live-legs em{display:block;margin-top:5px;font-size:9px;color:var(--muted);font-style:normal}.dx-live-remaining{display:grid;grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr);align-items:stretch;background:#0d1116}.dx-live-remaining>div{padding:12px 16px;text-align:center;border-bottom:1px solid var(--line)}.dx-live-remaining>div:first-child{border-right:1px solid var(--line)}.dx-live-remaining>div:last-child{border-left:1px solid var(--line)}.dx-live-remaining>div.active{background:color-mix(in srgb,var(--accent) 12%,#0d1116)}.dx-live-remaining>div.active small{color:var(--accent)}.dx-live-remaining>div>strong{display:block;font-size:58px;line-height:1.02;font-weight:950}.dx-live-leg-status{display:flex;flex-direction:column;align-items:center;justify-content:center}.dx-live-leg-status strong{font-size:16px!important}.dx-live-leg-status span{font-size:9px;color:var(--muted);font-weight:850;margin-top:3px}.dx-live-sheet-wrap{max-height:310px;overflow:auto}.dx-live-sheet{width:100%;border-collapse:collapse;text-align:center}.dx-live-sheet th{position:sticky;top:0;z-index:1;background:#171b23;padding:8px 6px;font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.dx-live-sheet td{padding:9px 7px;border-top:1px solid var(--line);font-size:15px}.dx-live-sheet td strong{display:block;font-size:20px}.dx-live-sheet td small{display:block;margin-top:2px;font-size:8px;color:var(--muted)}.dx-live-sheet td.checkout strong{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:38px;border:2px solid currentColor;border-radius:999px}.dx-live-visit{width:54px;background:#11151b;color:var(--muted);font-size:11px!important;font-weight:850}.dx-live-stats{border-top:1px solid var(--line);background:#0f1318}.dx-live-stats>div{display:grid;grid-template-columns:1fr minmax(110px,.75fr) 1fr;gap:8px;align-items:center;text-align:center;padding:7px 14px;border-top:1px solid rgba(255,255,255,.045)}.dx-live-stats>div:first-child{border-top:0}.dx-live-stats strong{font-size:15px}.dx-live-stats span{font-size:10px;color:var(--muted)}.x01-two-player-live .score-cards{display:none}.public-leg-history{border:1px solid var(--line);border-radius:14px;background:var(--surface);overflow:hidden}.public-leg-history>summary{cursor:pointer;padding:14px 16px;font-weight:850;background:#11151b}.public-leg-history[open]>summary{border-bottom:1px solid var(--line)}.public-leg-history .public-leg-block{margin:12px;border-radius:10px}
@media(max-width:700px){.dx-live-scoreboard-head{grid-template-columns:1fr 120px 1fr}.dx-live-player{padding:11px 9px}.dx-live-player strong{font-size:15px}.dx-live-legs{padding:8px 6px}.dx-live-legs>strong{font-size:27px;gap:7px}.dx-live-legs em{font-size:7px}.dx-live-remaining{grid-template-columns:1fr 82px 1fr}.dx-live-remaining>div{padding:10px 6px}.dx-live-remaining>div>strong{font-size:48px}.dx-live-leg-status strong{font-size:13px!important}.dx-live-sheet th{font-size:8px}.dx-live-sheet td{padding:8px 4px;font-size:12px}.dx-live-sheet td strong{font-size:17px}.dx-live-stats>div{grid-template-columns:1fr 90px 1fr;padding:7px 9px}.dx-live-stats strong{font-size:13px}.dx-live-stats span{font-size:9px}}

/* Match-end save confirmation */
.match-end-dialog{text-align:center;max-width:460px;margin-inline:auto}.match-end-kicker{font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin-bottom:.55rem}.match-end-dialog h2{font-size:clamp(1.75rem,5vw,2.5rem);margin:.2rem 0 .85rem}.match-end-score{display:flex;align-items:baseline;justify-content:center;gap:.65rem;margin:.4rem 0 1rem}.match-end-score span{color:var(--muted);font-weight:700}.match-end-score strong{font-size:clamp(2rem,7vw,3.25rem);line-height:1}.match-end-save{margin-top:1rem;min-height:52px;font-size:1.05rem}

/* Match-end overlay: owned by the scorer so completion cannot be hidden by another shared dialog. */
.match-end-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#000c;backdrop-filter:blur(4px)}
.match-end-card{width:min(480px,100%);padding:28px;border:1px solid #5b6475;border-radius:20px;background:#171b23;box-shadow:0 35px 100px #000c;text-align:center}
.match-end-card h2{font-size:clamp(1.75rem,5vw,2.5rem);margin:.2rem 0 .85rem}
.match-end-card .match-end-score{margin:.45rem 0 1.1rem}
.match-end-card .match-end-save{margin-top:1rem;min-height:54px;font-size:1.05rem}
@media(max-width:650px){.match-end-overlay{padding:12px}.match-end-card{padding:22px;border-radius:16px}}

/* DartsX mobile scoring focus: phone scorer behaves like a dedicated scoring appliance. */
.mobile-score-keypad{display:none}
@media(max-width:700px){
  .x01-two-player-live.score-active{margin:0 -14px}
  .x01-two-player-live.score-active .score-head{display:none}
  .x01-two-player-live.score-active .scoring-layout{gap:0}
  .x01-two-player-live.score-active .dx-live-scoreboard{display:flex;flex-direction:column;border-left:0;border-right:0;border-radius:0;margin:0;box-shadow:none}
  .x01-two-player-live.score-active .dx-live-scoreboard-head{order:1;grid-template-columns:minmax(0,1fr) 108px minmax(0,1fr)}
  .x01-two-player-live.score-active .dx-live-player{padding:8px 10px;min-height:62px}
  .x01-two-player-live.score-active .dx-live-player small{font-size:7px}
  .x01-two-player-live.score-active .dx-live-player strong{font-size:16px;line-height:1.08}
  .x01-two-player-live.score-active .dx-live-legs{padding:7px 5px}
  .x01-two-player-live.score-active .dx-live-legs>small{font-size:7px}
  .x01-two-player-live.score-active .dx-live-legs>strong{font-size:29px;gap:6px}
  .x01-two-player-live.score-active .dx-live-legs>strong b{font-size:14px}
  .x01-two-player-live.score-active .dx-live-legs em{font-size:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .x01-two-player-live.score-active .dx-live-sheet-wrap{order:2;max-height:164px;overflow:auto;overscroll-behavior:contain;background:#f4f5f7;color:#0b0d11}
  .x01-two-player-live.score-active .dx-live-sheet th{position:sticky;top:0;background:#e2e5e9;color:#1a1d22;padding:4px 3px;font-size:8px;border-color:#aeb4bc}
  .x01-two-player-live.score-active .dx-live-sheet td{height:31px;padding:3px 4px;color:#11151b;border-color:#c3c7cd;font-size:12px}
  .x01-two-player-live.score-active .dx-live-sheet td strong{font-size:15px}
  .x01-two-player-live.score-active .dx-live-sheet td small{display:none}
  .x01-two-player-live.score-active .dx-live-visit{width:44px;background:#e4e7eb;color:#11151b!important;font-size:10px!important}
  .x01-two-player-live.score-active .dx-live-remaining{order:3;grid-template-columns:minmax(0,1fr) 66px minmax(0,1fr);background:#151a23}
  .x01-two-player-live.score-active .dx-live-remaining>div{padding:5px 4px;min-height:77px;display:flex;flex-direction:column;justify-content:center}
  .x01-two-player-live.score-active .dx-live-remaining>div>strong{font-size:54px;letter-spacing:-2px}
  .x01-two-player-live.score-active .dx-live-remaining small{font-size:7px}
  .x01-two-player-live.score-active .dx-live-leg-status strong{font-size:11px!important}
  .x01-two-player-live.score-active .dx-live-leg-status span{font-size:7px}
  .x01-two-player-live.score-active .dx-live-stats{display:none}
  .x01-two-player-live.score-active .checkout-strip{display:none}
  .x01-two-player-live.score-active .scorer-history{display:none}
  .x01-two-player-live.score-active .controls{order:4;border-left:0;border-right:0;border-radius:0;padding:7px 10px 11px;background:#10151d}
  .x01-two-player-live.score-active .controls h3{margin:0 0 5px;font-size:11px;text-align:center;color:var(--soft)}
  .x01-two-player-live.score-active .controls .notice{margin-bottom:6px}
  .x01-two-player-live.score-active .controls .game-tools{display:flex;order:1;margin:0 0 5px;gap:4px;justify-content:center}
  .x01-two-player-live.score-active .controls .game-tools .btn{min-height:30px;padding:5px 9px;font-size:9px}
  .x01-two-player-live.score-active .controls .multiplier{order:2;margin:0 0 5px}
  .x01-two-player-live.score-active .controls .multiplier button{padding:6px;font-size:10px}
  .x01-two-player-live.score-active .controls .score-entry{order:3;margin:0 0 5px;padding:5px 10px;min-height:55px;border-radius:6px}
  .x01-two-player-live.score-active .controls .score-entry input{font-size:30px;line-height:1}
  .x01-two-player-live.score-active .controls .score-entry .leaves b{font-size:19px}
  .x01-two-player-live.score-active .controls .quick-scores{order:4;margin:0 0 5px;gap:3px}
  .x01-two-player-live.score-active .controls .quick-scores button{height:28px;border-radius:3px;font-size:10px}
  .x01-two-player-live.score-active .desktop-score-keypad{display:none}
  .x01-two-player-live.score-active .mobile-score-keypad{display:grid;order:5;grid-template-columns:repeat(3,1fr);gap:2px}
  .x01-two-player-live.score-active .mobile-score-keypad button{height:46px;border-radius:2px;font-size:23px;background:#17233d;border-color:#263755;color:#fff}
  .x01-two-player-live.score-active .mobile-score-keypad .utility{font-size:12px}
  .x01-two-player-live.score-active .mobile-score-keypad .mobile-enter{font-size:13px;font-weight:900;background:var(--accent);border-color:var(--accent);color:#fff}
  .x01-two-player-live.score-active .mobile-score-keypad .score-shortcut{font-size:9px;letter-spacing:.05em}
  .x01-two-player-live.score-active .confirm-score{display:none}
  .x01-two-player-live.score-active .minor-controls{order:6;margin-top:5px;gap:3px}
  .x01-two-player-live.score-active .minor-controls .btn{min-height:30px;font-size:9px;border-radius:4px}
  .x01-two-player-live.score-active #score-error{order:7}
  .x01-two-player-live.score-active .score-note{display:none}
  #main:has(#practice-scorer.x01-two-player-live.score-active) .practice-header,
  #main:has(#practice-scorer.x01-two-player-live.score-active) #practice-save,
  #main:has(#practice-scorer.x01-two-player-live.score-active) #practice-scorer + .game-tools{display:none}
  #main:has(#connected-scorer.x01-two-player-live.score-active) .page-head,
  #main:has(#connected-scorer.x01-two-player-live.score-active) #match-status,
  #main:has(#connected-scorer.x01-two-player-live.score-active) #match-actions{display:none}
}

/* DARTSX_MOBILE_SCORER_FOCUS_v1.0.1 — physical-phone scoring appliance */
.mobile-scorer-focus,.mobile-score-submit{display:none}
@media(max-width:700px){
  .x01-two-player-live.score-active .mobile-scorer-focus{display:block;background:#0d1117;border-bottom:1px solid var(--line)}
  .x01-two-player-live.score-active .dx-live-scoreboard{display:none}
  .x01-two-player-live.score-active .mobile-scorer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-bottom:1px solid var(--line);background:#10151d}
  .x01-two-player-live.score-active .mobile-scorer-toolbar>strong{font-size:13px;letter-spacing:.08em;text-transform:uppercase}
  .x01-two-player-live.score-active .mobile-scorer-toolbar .btn{min-height:30px;padding:5px 9px;font-size:9px}
  .x01-two-player-live.score-active .mobile-player-grid{display:grid;grid-template-columns:1fr 1fr;gap:0}
  .x01-two-player-live.score-active .mobile-player-score{min-width:0;padding:12px 12px 10px;background:#151a22;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
  .x01-two-player-live.score-active .mobile-player-score:last-child{border-right:0}
  .x01-two-player-live.score-active .mobile-player-score.active{background:linear-gradient(160deg,color-mix(in srgb,var(--accent) 28%,#161b24),#171c24 78%);box-shadow:inset 0 -4px 0 var(--accent)}
  .x01-two-player-live.score-active .mobile-player-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
  .x01-two-player-live.score-active .mobile-player-head strong{font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .x01-two-player-live.score-active .mobile-player-head span{flex:0 0 auto;font-size:9px;color:var(--muted);font-weight:800;text-transform:uppercase}
  .x01-two-player-live.score-active .mobile-to-go{font-size:66px;line-height:.95;font-weight:950;letter-spacing:-4px;margin:12px 0 10px;font-variant-numeric:tabular-nums}
  .x01-two-player-live.score-active .mobile-player-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:5px}
  .x01-two-player-live.score-active .mobile-player-metrics span{min-width:0;display:flex;flex-direction:column;gap:1px}
  .x01-two-player-live.score-active .mobile-player-metrics b{font-size:13px;font-variant-numeric:tabular-nums}
  .x01-two-player-live.score-active .mobile-player-metrics small{font-size:6.8px;line-height:1.1;text-transform:uppercase;letter-spacing:.035em;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .x01-two-player-live.score-active .mobile-turn-callout{padding:9px 12px 7px;color:var(--accent);font-weight:950;font-size:15px;text-transform:uppercase;letter-spacing:.025em;background:#0d1117}
  .x01-two-player-live.score-active .controls{padding:8px 10px 10px;background:#0d1117}
  .x01-two-player-live.score-active .controls h3{display:none}
  .x01-two-player-live.score-active .controls .game-tools{display:none}
  .x01-two-player-live.score-active .controls .multiplier{margin:0 0 6px}
  .x01-two-player-live.score-active .controls .score-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:0;padding:0;margin:0 0 7px;min-height:56px;border:1px solid #3a4352;border-radius:14px;overflow:hidden;background:#11161e}
  .x01-two-player-live.score-active .controls .score-entry-main{min-width:0;padding:6px 12px;display:flex;flex-direction:column;justify-content:center}
  .x01-two-player-live.score-active .controls .score-entry-main small{display:none}
  .x01-two-player-live.score-active .controls .score-entry input{font-size:22px;line-height:1.1;padding:0;border:0;background:transparent;min-height:38px}
  .x01-two-player-live.score-active .controls .score-entry input::placeholder{color:#c6cbd4;opacity:.8}
  .x01-two-player-live.score-active .controls .score-entry .leaves{display:none}
  .x01-two-player-live.score-active .mobile-score-submit{display:inline-flex;align-items:center;justify-content:center;min-width:112px;border:0;border-left:1px solid #3a4352;background:var(--accent);color:#fff;font-weight:900;font-size:14px;padding:0 18px}
  .x01-two-player-live.score-active .controls .quick-scores{display:none}
  .x01-two-player-live.score-active .mobile-score-keypad{grid-template-columns:repeat(3,1fr);gap:1px;background:#263043;border:1px solid #263043;border-radius:10px;overflow:hidden}
  .x01-two-player-live.score-active .mobile-score-keypad button{height:56px;border:0;border-radius:0;background:#162036;border-color:transparent;font-size:25px;font-weight:760}
  .x01-two-player-live.score-active .mobile-score-keypad .mobile-enter{background:#233754;color:#fff;font-size:11px;letter-spacing:.08em}
  .x01-two-player-live.score-active .mobile-score-keypad .mobile-back{font-size:17px}
  .x01-two-player-live.score-active .mobile-score-keypad .score-shortcut{height:34px;font-size:8px;background:#141a24}
  .x01-two-player-live.score-active .mobile-score-keypad .score-shortcut.checkout{background:#14251e;color:#bce6d0}
  .x01-two-player-live.score-active .mobile-score-keypad .score-shortcut.bust{background:#2b1920;color:#f3b3bd}
  .x01-two-player-live.score-active .minor-controls{margin-top:6px}
  .x01-two-player-live.score-active .minor-controls .btn{min-height:29px}
  .x01-two-player-live.score-active .score-note{display:none}
  .x01-two-player-live.score-active .inline-error{font-size:10px;margin:5px 0 0}
}
@media(max-width:390px){
  .x01-two-player-live.score-active .mobile-to-go{font-size:58px}
  .x01-two-player-live.score-active .mobile-player-score{padding-left:9px;padding-right:9px}
  .x01-two-player-live.score-active .mobile-score-keypad button{height:52px}
  .x01-two-player-live.score-active .mobile-score-submit{min-width:100px;padding:0 12px}
}

/* DARTSX_MOBILE_SCORER_FOCUS_v1.0.2 — shortcuts + scoring commands */
@media(max-width:700px){
  .x01-two-player-live.score-active .mobile-score-commands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#263043;border-top:1px solid #263043;border-bottom:1px solid #263043}
  .x01-two-player-live.score-active .mobile-score-commands button{min-height:36px;border:0;border-radius:0;background:#141b26;color:var(--text);font-size:11px;font-weight:850;letter-spacing:.035em;text-transform:uppercase}
  .x01-two-player-live.score-active .mobile-score-commands button:active{background:#202a39}
  .x01-two-player-live.score-active .mobile-score-commands #mobile-score-exit{color:#f3bcc4}
  .x01-two-player-live.score-active .controls .quick-scores{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:0 0 6px;background:#263043;border:1px solid #263043;border-radius:8px;overflow:hidden}
  .x01-two-player-live.score-active .controls .quick-scores button{min-width:0;min-height:32px;border:0;border-radius:0;background:#1a2230;color:#e9edf4;font-size:11px;font-weight:800;padding:4px 2px}
  .x01-two-player-live.score-active .controls .quick-scores button:last-child{color:#f2bdc6;background:#2a1820}
}
.mobile-scores-dialog{display:grid;gap:12px}
.mobile-scores-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.mobile-scores-summary>div{display:flex;flex-direction:column;gap:2px;padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--panel)}
.mobile-scores-summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mobile-scores-summary span{font-size:12px;color:var(--muted)}

.mobile-throw-totals .visit-table td:last-child{text-align:right}.mobile-throw-totals .visit-table small{display:block;color:var(--muted);font-size:10px}


/* DARTSX X01 leg-by-leg score sheets */
.x01-score-sheets{display:grid;gap:16px;min-width:0}.score-sheet-match-head{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:#10151d;text-align:center}.score-sheet-match-head strong:first-child{text-align:left}.score-sheet-match-head strong:last-child{text-align:right}.score-sheet-match-head span{font-size:20px;font-weight:900;font-variant-numeric:tabular-nums}.score-sheet-leg{overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface)}.score-sheet-leg-head{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:8px;align-items:center;padding:10px 12px;border-bottom:1px solid var(--line);background:#11151b}.score-sheet-leg-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.score-sheet-leg-head strong.right{text-align:right}.score-sheet-leg-head .starter{font-weight:950;color:#fff}.score-sheet-leg-head span{font-size:11px;color:var(--muted);white-space:nowrap}.score-sheet-wrap{overflow-x:auto}.score-sheet-table{width:100%;min-width:0;table-layout:fixed;border-collapse:collapse;text-align:center;font-variant-numeric:tabular-nums}.score-sheet-table th{padding:7px 4px;text-align:center;font-size:9px;background:#171b23}.score-sheet-table td{padding:9px 4px;text-align:center;border-right:1px solid var(--line);border-bottom:1px solid var(--line);font-size:16px}.score-sheet-table td:last-child{border-right:0}.score-sheet-table th:nth-child(3),.score-sheet-table td:nth-child(3){width:13%;background:#171b23}.score-sheet-table th:not(:nth-child(3)),.score-sheet-table td:not(:nth-child(3)){width:21.75%}.score-sheet-start td{font-size:23px;background:#0f1318}.score-sheet-start td:nth-child(1),.score-sheet-start td:nth-child(3),.score-sheet-start td:nth-child(4){font-size:14px}.score-sheet-darts{font-weight:850;color:#d8dee9}.score-sheet-high{display:inline-flex;align-items:center;justify-content:center;min-width:38px;min-height:30px;padding:2px 6px;border:1.5px solid #7f8898;border-radius:999px}.score-sheet-checkout{font-size:19px;letter-spacing:.05em;color:#fff}.score-sheet-bust{font-size:11px;color:var(--soft)}.score-sheet-leg-result{padding:7px 10px;text-align:center;font-size:10px;color:var(--muted);background:#0f1318}.x01-score-sheets+.muted{margin-top:8px}
@media(max-width:700px){.x01-score-sheets{gap:12px}.score-sheet-match-head{position:sticky;top:0;z-index:2}.score-sheet-match-head strong{font-size:13px}.score-sheet-match-head span{font-size:18px}.score-sheet-leg-head{padding:9px 8px}.score-sheet-leg-head strong{font-size:13px}.score-sheet-table th{font-size:8px;padding:6px 2px}.score-sheet-table td{font-size:15px;padding:8px 2px}.score-sheet-start td{font-size:21px}.score-sheet-high{min-width:34px;min-height:28px;padding:1px 5px}.score-sheet-checkout{font-size:18px}}

/* DARTSX_BRAND_PRICING_v1.0.0 — official brand system + catalogue-backed pricing */
body{background:radial-gradient(circle at 85% 0,#1a070a 0,#0c0e12 26%,#07080b 70%)}
.official-brand{display:flex;align-items:center;min-width:0}.official-brand .brand-full{display:block;width:176px;max-width:100%;height:auto;object-fit:contain}.mobile-brand .official-brand .brand-full{width:148px}
#sidebar>a:first-child{display:block;padding:2px 4px 10px}.mobile-brand{align-items:center}
.brand-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,.92fr);gap:0;padding:0;min-height:360px;background:#080a0e;border-color:#4c2029;box-shadow:0 28px 80px #0007}
.brand-hero .hero-copy{position:relative;z-index:2;padding:46px 42px;background:linear-gradient(90deg,#080a0ef5 0,#080a0ee8 70%,#080a0e75 100%)}
.brand-hero h1{max-width:none;font-size:clamp(46px,5.5vw,78px);line-height:.96;letter-spacing:-3px;font-style:italic}.brand-hero h1 strong{color:var(--accent);font-weight:950}.brand-hero h1 span{font-weight:900}.brand-hero p{max-width:670px;font-size:15px;line-height:1.75;color:#c7cbd3}.brand-hero .actions{gap:12px}.brand-hero .btn{min-height:48px;padding:12px 20px;font-size:13px}.hero-board{min-height:360px;background-image:linear-gradient(90deg,#080a0e 0,transparent 28%),url('/assets/dartsx-hero-t20.jpg');background-size:cover;background-position:center;filter:saturate(1.08) contrast(1.04)}
.hero-proof{display:flex;gap:14px 22px;flex-wrap:wrap;margin-top:26px;color:#d1d5dc;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.hero-proof span:before{content:'•';color:var(--accent);margin-right:7px}
.branded-module-grid .module-card{position:relative;overflow:hidden;background:linear-gradient(150deg,#171b22,#0d1015);min-height:170px}.branded-module-grid .module-card:after{content:'';position:absolute;inset:auto -45px -75px auto;width:145px;height:145px;border:24px solid #f5485b0a;border-radius:50%;pointer-events:none}.branded-module-grid .module-card .number{font-size:20px}.module-cta{display:inline-block;margin-top:16px;color:var(--accent);font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}
.pricing-home{padding:30px;border:1px solid #3c2329;border-radius:20px;background:linear-gradient(145deg,#100d11,#090a0d);box-shadow:inset 0 1px #ffffff08}.pricing-title{text-align:center;max-width:760px;margin:0 auto 24px}.pricing-title h2{font-size:31px;letter-spacing:-1.2px}.pricing-title p{margin-top:8px;color:var(--muted)}.pricing-grid{align-items:stretch}.pricing-card{display:flex;flex-direction:column;position:relative;overflow:hidden;background:linear-gradient(160deg,#171b22,#0c0e12);border-color:#323744}.pricing-card.published{border-color:#5d2c36}.pricing-card.unpriced{background:linear-gradient(160deg,#15181e,#0c0e12)}.pricing-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.pricing-card .price{font-size:30px;line-height:1.05;margin:18px 0 5px}.pricing-note{font-size:10px;color:var(--muted);min-height:30px}.pricing-card .checklist{flex:1;padding-top:8px}.pricing-card .checklist li::marker{color:var(--accent)}.pricing-proposal{margin:5px 0 0!important}.pricing-card-action{margin-top:17px}.pricing-card-action .btn{width:100%}.pricing-more{justify-content:center;margin-top:18px}
footer{background:#090b0f}footer:before{content:'';width:30px;height:18px;background:url('/assets/dartsx-icon-192.png') center/contain no-repeat;flex:0 0 30px}
@media(max-width:980px){.brand-hero{grid-template-columns:1fr}.hero-board{min-height:250px;order:-1;background-image:linear-gradient(0deg,#080a0e 0,transparent 38%),url('/assets/dartsx-hero-t20.jpg');background-position:center}.brand-hero .hero-copy{padding:32px}.pricing-grid.grid.three{grid-template-columns:1fr 1fr}.pricing-grid .pricing-card:last-child{grid-column:1/-1}}
@media(max-width:700px){.official-brand .brand-full{width:154px}.mobile-brand .official-brand .brand-full{width:138px}.brand-hero{border-radius:14px;min-height:0}.hero-board{min-height:185px}.brand-hero .hero-copy{padding:24px 20px}.brand-hero h1{font-size:42px;letter-spacing:-2px}.brand-hero p{font-size:13px;line-height:1.65}.brand-hero .actions{display:grid;grid-template-columns:1fr}.brand-hero .btn{width:100%}.hero-proof{gap:9px;margin-top:18px}.pricing-home{padding:20px 14px}.pricing-title h2{font-size:25px}.pricing-grid.grid.three{grid-template-columns:1fr}.pricing-grid .pricing-card:last-child{grid-column:auto}.pricing-card .price{font-size:27px}}

/* DARTSX_SEEDING_SERIES_v1.0.0 */
.seeding-series-card{display:block}.seeding-series-card p,.seeding-description{color:var(--muted);font-size:12px;line-height:1.7}.seeding-card-meta{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px;color:var(--muted);font-size:11px}.seeding-card-meta b{color:var(--text)}.seeding-top-actions{margin:-8px 0 22px}.seeding-event-card .meta{color:var(--muted);font-size:11px}.seed-leader-name,.seed-status-text{font-size:19px!important;letter-spacing:-.4px!important;overflow-wrap:anywhere}.seed-table-wrap{border:1px solid var(--line);border-radius:14px;background:var(--surface);max-width:100%;max-height:70vh}.seeding-table{min-width:max-content}.seeding-table th,.seeding-table td{text-align:center;white-space:nowrap}.seeding-table th:nth-child(2),.seeding-table td:nth-child(2),.seeding-table th:nth-child(3),.seeding-table td:nth-child(3){text-align:left}.seeding-table th:first-child,.seeding-table td:first-child{position:sticky;left:0;z-index:2;background:var(--surface)}.seeding-table th:nth-child(2),.seeding-table td:nth-child(2){position:sticky;left:54px;z-index:2;background:var(--surface);min-width:190px}.seeding-table thead th:first-child,.seeding-table thead th:nth-child(2){z-index:4;background:#151922}.seed-rank{width:54px;font-weight:800;font-variant-numeric:tabular-nums}.seed-player small{display:block;font-weight:400;margin-top:2px}.seed-cell{min-width:68px;font-weight:700;font-variant-numeric:tabular-nums}.seed-cell[data-result-entry]{cursor:pointer}.seed-cell[data-result-entry]:hover{background:var(--raised)}.seed-cell.ne{color:var(--muted)}.seed-cell.dns{color:var(--warn)}.seed-cell.pending{color:var(--muted)}.seed-total{font-size:15px;font-variant-numeric:tabular-nums}.seed-ineligible{opacity:.68}.seed-ineligible:hover{opacity:1}@media(max-width:700px){.seeding-table th:nth-child(2),.seeding-table td:nth-child(2){left:46px;min-width:150px}.seed-rank{width:46px}.seeding-top-actions{margin-top:0}.seed-table-wrap{max-height:65vh}}

/* DARTSX_BROADCAST_CENTER_v1.0.0 */
.broadcast-centre .broadcast-help{padding:18px}.broadcast-match-row .actions{justify-content:flex-end}.broadcast-link-list{display:grid;gap:10px;margin-top:16px}.broadcast-link-row{display:flex;gap:14px;align-items:center;justify-content:space-between;padding:12px 14px;border:1px solid var(--border);border-radius:14px;background:var(--panel-2)}.broadcast-link-row>div{min-width:0;display:grid;gap:6px}.broadcast-link-row code{display:block;max-width:760px;overflow:auto;white-space:nowrap;color:var(--muted);font-size:12px}@media(max-width:760px){.broadcast-match-row{align-items:flex-start}.broadcast-match-row .right{width:100%;justify-content:flex-start}.broadcast-link-row{align-items:stretch;flex-direction:column}.broadcast-link-row .btn{align-self:flex-start}.broadcast-link-row code{max-width:100%}}

/* DARTSX_RUNNING_COMPETITION_ROWS_v1.0.0 */
.running-competition-table{border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--panel)}
.running-competition-head,.running-competition-row{display:grid;grid-template-columns:minmax(240px,2.2fr) minmax(95px,.8fr) minmax(64px,.55fr) minmax(84px,.7fr) minmax(92px,.75fr) minmax(70px,.6fr) minmax(112px,.9fr) 72px;align-items:center;gap:14px;padding:13px 16px}
.running-competition-head{background:rgba(255,255,255,.025);border-bottom:1px solid var(--border);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:700}
.running-competition-row{color:inherit;text-decoration:none;border-bottom:1px solid var(--border);transition:background .15s ease}
.running-competition-row:last-child{border-bottom:0}
.running-competition-row:hover,.running-competition-row:focus-visible{background:rgba(255,255,255,.045);outline:none}
.running-competition-title{display:flex;flex-direction:column;gap:3px;min-width:0}
.running-competition-title strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.running-competition-title small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--muted)}
.running-competition-number{display:flex;align-items:baseline;gap:5px}
.running-competition-number b{font-size:1rem}
.running-competition-number small{display:none;color:var(--muted)}
.running-competition-status{justify-self:start}
.running-competition-open{justify-self:end;color:var(--muted);font-weight:700;white-space:nowrap}
@media(max-width:980px){.running-competition-head{display:none}.running-competition-row{grid-template-columns:minmax(180px,1.8fr) repeat(4,minmax(64px,.6fr)) minmax(100px,.8fr) 60px}.running-competition-type{display:none}}
@media(max-width:720px){.running-competition-table{border-radius:12px}.running-competition-row{grid-template-columns:1fr auto;padding:14px;gap:10px 14px}.running-competition-title{grid-column:1/2}.running-competition-type{display:block;grid-column:2/3;justify-self:end}.running-competition-number{display:flex;flex-direction:column;align-items:flex-start;gap:1px}.running-competition-number small{display:block;font-size:.68rem}.running-competition-status{grid-column:1/2}.running-competition-open{grid-column:2/3;align-self:end}.running-competition-row .running-competition-number:nth-of-type(6){display:none}}

/* DARTSX TOURNAMENT WIZARD v2.0.0 — step-by-step organiser flow */
.tournament-setup-v2{width:min(1040px,96vw);max-width:none;padding:0;overflow:hidden}
.tournament-setup-v2 .dialog-head{padding:20px 22px 16px;border-bottom:1px solid var(--line);background:#11151b}
.setup-progress{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;padding:0 18px;background:#0c1016;border-bottom:1px solid var(--line)}
.setup-progress-step{position:relative;display:flex;align-items:center;gap:8px;min-width:0;padding:13px 8px;color:var(--muted);border-bottom:3px solid transparent}
.setup-progress-step span{display:grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border-radius:50%;background:#202630;border:1px solid #3b4555;font-size:10px;font-weight:900}
.setup-progress-step b{font-size:10px;line-height:1.15;text-transform:uppercase;letter-spacing:.055em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.setup-progress-step.active{color:var(--text);border-bottom-color:var(--accent)}
.setup-progress-step.active span{background:var(--accent);border-color:var(--accent);color:#fff}
.setup-progress-step.done{color:#d7dce6}.setup-progress-step.done span{background:#263a32;border-color:#3d6b55;color:#b7f1cf}
.tournament-setup-v2 #setup-wizard-form,.knockout-stage-review form{padding:24px 26px 22px;max-height:min(72vh,760px);overflow:auto}
.wizard-step-copy{max-width:760px;margin-bottom:20px}.wizard-step-copy h2{margin:4px 0 8px;font-size:clamp(22px,3vw,30px)}.wizard-step-copy p{margin:0;color:var(--muted);line-height:1.55}
.wizard-metrics{margin:18px 0}.wizard-metrics .metric{padding:18px;background:#10151c;border:1px solid var(--line);border-radius:12px}.wizard-metrics .metric strong{display:block;font-size:30px}.wizard-metrics .metric small{display:block;margin-top:3px;color:var(--muted)}
.group-calculation{display:flex;flex-direction:column;gap:7px;margin-top:15px;padding:16px 18px;border:1px solid #4a3a42;border-radius:12px;background:linear-gradient(135deg,#18131a,#12161d)}.group-calculation b{font-size:18px}.group-calculation span{color:var(--muted);font-size:12px;line-height:1.5}
.group-size-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin:14px 0}.group-size-strip span{display:flex;flex-direction:column;gap:2px;padding:11px 12px;border:1px solid var(--line);border-radius:9px;background:#10151b}.group-size-strip b{font-size:9px;color:var(--muted);text-transform:uppercase}.group-size-strip strong{font-size:22px}.group-size-strip small{font-size:9px;color:var(--muted)}
.group-editor-table{max-height:360px;border:1px solid var(--line);border-radius:10px}.group-editor-table select{min-width:150px}
.section-head.compact{margin-top:8px}.section-head.compact h3{margin:0}.section-head.compact small{display:block;margin-top:4px;color:var(--muted);max-width:760px;line-height:1.45}
.bracket-editor-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}.bracket-pair{padding:13px;border:1px solid var(--line);border-radius:12px;background:#0f141b}.bracket-pair>.eyebrow{margin-bottom:8px}.bracket-slot{display:flex;flex-direction:column;gap:4px;margin-top:7px}.bracket-slot small{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.bracket-slot select{width:100%;min-width:0}.bracket-slot.locked{padding:9px 10px;border:1px dashed #5b4651;border-radius:8px;background:#17131a}.bracket-slot.locked strong{font-size:12px}.bracket-slot.locked span{font-size:10px;color:var(--muted)}
.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px 0}.review-grid>div{padding:14px;border:1px solid var(--line);border-radius:10px;background:#10151b}.review-grid small,.review-grid strong{display:block}.review-grid small{font-size:9px;text-transform:uppercase;color:var(--muted);letter-spacing:.05em}.review-grid strong{margin-top:4px;font-size:15px}
.wizard-nav{position:sticky;bottom:-22px;display:flex;justify-content:space-between;align-items:center;gap:12px;margin:24px -26px -22px;padding:14px 26px;border-top:1px solid var(--line);background:#11151bf2;backdrop-filter:blur(8px);z-index:3}.wizard-nav-right{display:flex;gap:8px;margin-left:auto}.wizard-loading{padding:40px;text-align:center;color:var(--muted)}
.tournament-wizard .wizard-step.complete>span{background:#263a32;border-color:#3d6b55;color:#b7f1cf}.tournament-wizard .wizard-step.current{border-color:#8e3b52;box-shadow:inset 0 0 0 1px #8e3b5233}.tournament-wizard .wizard-step.current>span{background:var(--accent);color:#fff}
.knockout-stage-review{width:min(1040px,96vw);max-width:none}.knockout-stage-review .notice{margin:18px 24px 0}
@media(max-width:850px){.setup-progress{grid-template-columns:repeat(3,minmax(0,1fr))}.bracket-editor-grid{grid-template-columns:1fr}.review-grid{grid-template-columns:1fr}}
@media(max-width:600px){.tournament-setup-v2,.knockout-stage-review{width:100vw;max-width:100vw;min-height:100vh;border-radius:0}.setup-progress{display:flex;overflow-x:auto;padding:0 10px}.setup-progress-step{min-width:118px}.tournament-setup-v2 #setup-wizard-form,.knockout-stage-review form{padding:18px 14px 16px;max-height:none}.wizard-nav{bottom:-16px;margin:22px -14px -16px;padding:12px 14px;flex-direction:column-reverse;align-items:stretch}.wizard-nav-right{width:100%;margin:0}.wizard-nav .btn,.wizard-nav-right .btn{flex:1}.group-editor-table{max-height:none}}


/* DARTSX CLEAN TOURNAMENT WIZARD v2.1.0 — START */
dialog.tournament-setup-dialog-clean{
  width:min(1120px,calc(100vw - 40px));
  max-width:1120px;
  height:min(820px,calc(100dvh - 34px));
  max-height:calc(100dvh - 34px);
  overflow:hidden;
  border-radius:18px;
}
dialog.tournament-setup-dialog-clean::backdrop{background:#000c;backdrop-filter:blur(5px)}
.tournament-setup-clean{
  width:100%;height:100%;min-width:0;min-height:0;padding:0;
  display:grid;grid-template-rows:auto auto minmax(0,1fr);overflow:hidden;
  background:#151922;
}
.wizard-clean-header{
  min-width:0;padding:18px 22px 14px;border-bottom:1px solid var(--line);
  display:flex;align-items:center;justify-content:space-between;gap:18px;background:#11151b;
}
.wizard-clean-header>div{min-width:0}.wizard-clean-header .eyebrow{margin-bottom:5px}.wizard-clean-header h2{font-size:22px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wizard-clean-header p{margin-top:5px;color:var(--muted);font-size:11px}.wizard-clean-header .btn{flex:0 0 auto}
.wizard-progress-clean{
  display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;min-width:0;
  padding:0 18px;background:#0c1016;border-bottom:1px solid var(--line);overflow:hidden;
}
.wizard-progress-step{
  position:relative;min-width:0;height:62px;padding:0 9px;display:flex;align-items:center;gap:9px;
  color:#788295;border-bottom:3px solid transparent;
}
.wizard-progress-step:not(:last-child)::after{content:'';position:absolute;right:-1px;top:19px;width:1px;height:24px;background:#252c37}
.wizard-progress-step span{display:grid;place-items:center;flex:0 0 27px;width:27px;height:27px;border-radius:50%;background:#1c222c;border:1px solid #364050;font-size:10px;font-weight:900}
.wizard-progress-step b{min-width:0;font-size:10px;line-height:1.2;text-transform:uppercase;letter-spacing:.055em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.wizard-progress-step.active{color:#fff;border-bottom-color:var(--accent)}.wizard-progress-step.active span{background:var(--accent);border-color:var(--accent);color:#fff}
.wizard-progress-step.done{color:#c7d0dd}.wizard-progress-step.done span{background:#223a31;border-color:#3a6b55;color:#b9f2cf}
.wizard-clean-form{max-width:none!important;min-width:0;min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto;overflow:hidden}
.wizard-clean-content{
  min-width:0;min-height:0;overflow-y:auto;overflow-x:hidden;padding:24px 28px 26px;scrollbar-gutter:stable;
}
.wizard-clean-content>*{max-width:100%;min-width:0}.wizard-clean-content .wizard-step-copy{margin-bottom:20px;max-width:760px}
.wizard-clean-content .wizard-step-copy .eyebrow{margin-bottom:6px}.wizard-clean-content .wizard-step-copy h2{font-size:28px;line-height:1.18;margin:0 0 8px}.wizard-clean-content .wizard-step-copy p{font-size:13px;line-height:1.6;color:var(--muted)}
.wizard-clean-footer{
  min-width:0;padding:12px 18px;border-top:1px solid var(--line);background:#10141a;
  display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;
}
.wizard-clean-actions{display:flex;justify-content:flex-end;gap:9px;min-width:0}.wizard-footer-position{text-align:center;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.wizard-clean-footer>.btn:first-child{justify-self:start}.wizard-clean-footer .btn{min-width:108px}.wizard-clean-actions .btn.primary{min-width:124px}
.wizard-structure-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(320px,1.2fr);gap:18px;align-items:start}
.wizard-input-card,.wizard-recommendation{min-width:0;padding:18px;border:1px solid var(--line);border-radius:14px;background:#0f141b}
.wizard-input-card .field:last-of-type{margin-bottom:4px}.wizard-inline-help{margin:9px 0 0}
.wizard-recommendation{margin:0;background:linear-gradient(145deg,#17131a,#10151b);border-color:#4d3440}
.wizard-recommendation-head{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:15px}.wizard-recommendation-head span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.wizard-recommendation-head strong{font-size:22px;line-height:1.1;white-space:nowrap}
.wizard-group-size-pills{display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px}.wizard-group-size-pills>span{min-width:0;padding:11px 12px;border:1px solid #313845;border-radius:10px;background:#0c1117}.wizard-group-size-pills b,.wizard-group-size-pills strong{display:block}.wizard-group-size-pills b{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}.wizard-group-size-pills strong{margin-top:2px;font-size:22px}
.wizard-layout-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:5px 0 14px}.wizard-layout-heading>div{min-width:0}.wizard-layout-heading .eyebrow{margin-bottom:5px}.wizard-layout-heading h3{font-size:18px;margin:0}.wizard-layout-heading p{margin-top:5px;max-width:680px;color:var(--muted);font-size:11px;line-height:1.55}
.wizard-group-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;min-width:0}
.wizard-group-card{min-width:0;padding:0;border:1px solid var(--line);border-radius:13px;background:#0e1319;overflow:hidden}.wizard-group-card>header{padding:12px 14px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:10px;background:#121820}.wizard-group-card header small,.wizard-group-card header strong{display:block}.wizard-group-card header small{font-size:9px;text-transform:uppercase;letter-spacing:.07em}.wizard-group-card header strong{font-size:14px;margin-top:2px}.wizard-group-player-list{padding:8px}
.wizard-group-player{min-width:0;padding:10px 9px;display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:12px;align-items:center;border-bottom:1px solid #222934}.wizard-group-player:last-child{border-bottom:0}.wizard-group-player>div{min-width:0}.wizard-group-player b,.wizard-group-player small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wizard-group-player b{font-size:12px}.wizard-group-player small{margin-top:2px;font-size:9px;color:var(--muted)}.wizard-group-player label{min-width:0}.wizard-group-player label>span{display:block;margin-bottom:4px;font-size:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.wizard-group-player select{width:100%;min-width:0;height:34px;padding:5px 8px;border:1px solid #3c4453;border-radius:8px;background:#0b0f14;color:var(--text);font-size:11px}.wizard-group-empty{padding:18px;text-align:center;color:var(--muted);font-size:11px}
.tournament-setup-clean .bracket-editor-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}.tournament-setup-clean .bracket-pair{min-width:0;padding:12px;background:#0e1319}.tournament-setup-clean .bracket-slot select{min-width:0;width:100%}
.tournament-setup-clean .review-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.tournament-setup-clean .review-grid>div{min-width:0;padding:12px 13px}.tournament-setup-clean .review-grid strong{overflow-wrap:anywhere}
.tournament-setup-clean .wizard-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.tournament-setup-clean .wizard-metrics .metric{min-width:0;padding:16px}.tournament-setup-clean .wizard-metrics .metric strong{font-size:28px}
@media(max-width:900px){
  dialog.tournament-setup-dialog-clean{width:min(94vw,860px)}
  .wizard-progress-clean{grid-template-columns:repeat(3,minmax(0,1fr));padding:0 12px}.wizard-progress-step{height:50px}.wizard-progress-step:nth-child(3)::after{display:none}
  .wizard-structure-grid{grid-template-columns:1fr}.wizard-group-cards{grid-template-columns:1fr}.tournament-setup-clean .review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  dialog.tournament-setup-dialog-clean{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border-radius:0;border-left:0;border-right:0}
  .wizard-clean-header{padding:14px 15px 11px}.wizard-clean-header h2{font-size:18px}.wizard-clean-header p{font-size:10px}
  .wizard-progress-clean{grid-template-columns:repeat(3,minmax(0,1fr));padding:0 7px}.wizard-progress-step{height:44px;padding:0 5px;gap:6px}.wizard-progress-step span{width:22px;height:22px;flex-basis:22px}.wizard-progress-step b{font-size:8px}
  .wizard-clean-content{padding:18px 14px 20px;scrollbar-gutter:auto}.wizard-clean-content .wizard-step-copy h2{font-size:23px}.wizard-clean-content .wizard-step-copy p{font-size:12px}
  .wizard-clean-footer{padding:10px 12px;grid-template-columns:auto 1fr}.wizard-footer-position{display:none}.wizard-clean-actions{width:100%}.wizard-clean-footer>.btn:first-child{min-width:78px}.wizard-clean-actions .btn{flex:1;min-width:0}
  .wizard-clean-content .form-grid{grid-template-columns:1fr}.tournament-setup-clean .wizard-metrics{grid-template-columns:1fr 1fr}.tournament-setup-clean .wizard-metrics .metric:last-child{grid-column:1/-1}
  .wizard-recommendation-head{align-items:flex-start;flex-direction:column;gap:5px}.wizard-group-size-pills{grid-template-columns:repeat(2,minmax(0,1fr))}
  .wizard-layout-heading{align-items:stretch;flex-direction:column}.wizard-layout-heading .btn{width:100%}
  .wizard-group-player{grid-template-columns:1fr}.tournament-setup-clean .bracket-editor-grid,.tournament-setup-clean .review-grid{grid-template-columns:1fr}
}
/* DARTSX CLEAN TOURNAMENT WIZARD v2.1.0 — END */
.knockout-stage-clean{grid-template-rows:auto auto minmax(0,1fr)}
.knockout-stage-banner{padding:11px 22px;border-bottom:1px solid #3b3037;background:#1b1419;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.knockout-stage-banner strong{font-size:11px;color:var(--soft);text-transform:uppercase;letter-spacing:.06em}.knockout-stage-banner span{font-size:11px;color:var(--muted)}
.knockout-stage-footer .wizard-clean-actions .btn{min-width:190px}


/* DARTSX TOURNAMENT WIZARD ENTRIES v2.1.1 — START */
.wizard-clean-footer-simple{grid-template-columns:1fr auto}
.wizard-clean-footer-simple .wizard-footer-position{text-align:left}
.wizard-entry-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 14px}
.wizard-entry-stat{min-width:0;padding:13px 14px;border:1px solid var(--line);border-radius:12px;background:#0f141b}
.wizard-entry-stat strong,.wizard-entry-stat span{display:block}.wizard-entry-stat strong{font-size:25px;line-height:1}.wizard-entry-stat span{margin-top:5px;font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.wizard-entry-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.85fr);gap:12px;align-items:start;margin-bottom:14px}
.wizard-entry-toolbar-actions{display:flex;gap:8px;flex-wrap:wrap}.wizard-entry-policy{min-width:0;padding:11px 13px;border:1px solid #342e36;border-radius:11px;background:#161118}.wizard-entry-policy b,.wizard-entry-policy span{display:block}.wizard-entry-policy b{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#f7a2b2}.wizard-entry-policy span{margin-top:4px;font-size:10px;line-height:1.45;color:var(--muted)}
.wizard-entry-composer{margin:0 0 14px;padding:15px;border:1px solid #4a3340;border-radius:13px;background:linear-gradient(145deg,#181218,#0f141a)}
.wizard-entry-composer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:11px}.wizard-entry-composer-head h3{margin:2px 0 0;font-size:17px}.wizard-entry-composer-actions{display:flex;justify-content:flex-end;margin-top:10px}
.wizard-entry-columns{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:12px;align-items:start}
.wizard-entry-section{min-width:0;border:1px solid var(--line);border-radius:13px;background:#0e1319;overflow:hidden}.wizard-entry-section+.wizard-entry-section{margin-top:0}
.wizard-entry-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 13px;border-bottom:1px solid var(--line);background:#121820}.wizard-entry-section-head h3{margin:2px 0 0;font-size:15px}.wizard-entry-count{font-size:9px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.wizard-entry-list{max-height:270px;overflow:auto}.wizard-entry-row{min-width:0;padding:10px 11px;display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #232a35}.wizard-entry-row:last-child{border-bottom:0}.wizard-entry-row.request{background:#151116}
.wizard-entry-main{min-width:0}.wizard-entry-main b,.wizard-entry-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.wizard-entry-main b{font-size:11px}.wizard-entry-main small{margin-top:3px;color:var(--muted);font-size:9px}.wizard-entry-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap;flex:0 0 auto}
.wizard-entry-empty{padding:18px 14px;display:grid;gap:4px;color:var(--muted);font-size:10px}.wizard-entry-empty b{color:var(--text);font-size:11px}.wizard-entry-empty.compact{padding:14px}.wizard-entry-ready{margin-top:12px}
.wizard-entry-section+.wizard-entry-ready,.wizard-entry-columns+.wizard-entry-section{margin-top:12px}
@media(max-width:900px){.wizard-entry-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.wizard-entry-toolbar,.wizard-entry-columns{grid-template-columns:1fr}.wizard-entry-list{max-height:220px}}
@media(max-width:620px){.wizard-clean-footer-simple{grid-template-columns:1fr}.wizard-clean-footer-simple .wizard-footer-position{display:none}.wizard-entry-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.wizard-entry-toolbar-actions .btn{flex:1}.wizard-entry-row{align-items:flex-start;flex-direction:column}.wizard-entry-row-actions{width:100%;justify-content:flex-start}.wizard-entry-composer-actions .btn{width:100%}}
/* DARTSX TOURNAMENT WIZARD ENTRIES v2.1.1 — END */


/* DARTSX TOURNAMENT STRUCTURE PLANNER v2.1.2 — START */
.wizard-structure-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 16px}
.wizard-structure-metrics.compact{margin:12px 0}.wizard-structure-metric{min-width:0;padding:14px 15px;border:1px solid var(--line);border-radius:12px;background:#0e1319}.wizard-structure-metric strong,.wizard-structure-metric span,.wizard-structure-metric small{display:block}.wizard-structure-metric strong{font-size:24px;line-height:1.05;color:var(--text)}.wizard-structure-metric span{margin-top:6px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.055em;color:#c8cfda}.wizard-structure-metric small{margin-top:5px;font-size:9px;line-height:1.4;color:var(--muted)}
.wizard-structure-section{margin:14px 0;padding:16px;border:1px solid #303845;border-radius:14px;background:linear-gradient(145deg,#121821,#0d1218)}.wizard-structure-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:13px}.wizard-structure-section-head h3{margin:3px 0 0;font-size:17px}.wizard-structure-section-head>span{font-size:10px;color:var(--muted);white-space:nowrap}
.wizard-structure-path{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px}.wizard-structure-path-card{min-width:0;padding:11px 12px;border:1px solid #343c49;border-radius:11px;background:#0b1016}.wizard-structure-path-card>span,.wizard-structure-path-card>strong,.wizard-structure-path-card>small{display:block}.wizard-structure-path-card>span{font-size:9px;font-weight:700;text-transform:uppercase;letter-spacing:.045em;color:#f39aaa}.wizard-structure-path-card>strong{margin-top:5px;font-size:21px}.wizard-structure-path-card>small{margin-top:4px;font-size:9px;line-height:1.35;color:var(--muted)}
.wizard-structure-detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px}.wizard-structure-flow{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.wizard-structure-flow span{padding:9px 12px;border:1px solid #343c49;border-radius:999px;background:#0c1117;font-size:10px;font-weight:700}.wizard-structure-flow b{color:#f84b63}.wizard-structure-grid>.wizard-structure-metrics{align-self:start;margin:0}
@media(max-width:900px){.wizard-structure-metrics,.wizard-structure-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wizard-structure-section-head{align-items:flex-start;flex-direction:column}.wizard-structure-section-head>span{white-space:normal}}
@media(max-width:560px){.wizard-structure-metrics,.wizard-structure-detail-grid{grid-template-columns:1fr}.wizard-structure-flow{display:grid;grid-template-columns:1fr}.wizard-structure-flow b{display:none}.wizard-structure-path{grid-template-columns:1fr 1fr}}
/* DARTSX TOURNAMENT STRUCTURE PLANNER v2.1.2 — END */


/* DARTSX_KNOCKOUT_BRACKET_TREE_v2.2.0 */
.bracket-tree-scroll{width:100%;overflow-x:auto;overflow-y:hidden;padding:4px 2px 16px;overscroll-behavior-inline:contain;scrollbar-gutter:stable}.bracket-tree{position:relative;min-width:max-content;margin:0 auto}.bracket-tree-connectors{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:visible}.bracket-tree-connector{fill:none;stroke:#505968;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.bracket-tree-round{position:absolute;top:0;height:100%;z-index:2}.bracket-tree-round-title{height:44px;display:flex;align-items:center;padding-left:2px;color:var(--soft);font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.bracket-tree-node{position:absolute;left:0;width:100%;height:132px}.bracket-tree-match{display:flex;flex-direction:column;justify-content:center;width:100%;height:100%;padding:14px 15px;border:1px solid #343c49;border-radius:13px;background:linear-gradient(145deg,#171c24,#12161d);color:var(--text);text-decoration:none;box-shadow:0 8px 24px rgba(0,0,0,.16);transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}.bracket-tree-match[href]:hover{border-color:#687486;transform:translateY(-1px);box-shadow:0 11px 26px rgba(0,0,0,.25)}.bracket-tree-match.live{border-color:var(--accent);box-shadow:0 0 0 1px rgba(249,72,93,.16),0 10px 28px rgba(0,0,0,.25)}.bracket-tree-match.final{border-color:#455264}.bracket-tree-match.waiting{background:#11151c}.bracket-tree-match.bye{border-style:dashed}.bracket-tree-player{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:35px;padding:6px 8px;border-radius:8px;font-weight:760}.bracket-tree-player+.bracket-tree-player{margin-top:3px;border-top:1px solid rgba(255,255,255,.055);border-radius:0 0 8px 8px}.bracket-tree-player span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bracket-tree-player b{font-size:16px;font-variant-numeric:tabular-nums}.bracket-tree-player.winner{background:rgba(45,184,118,.11);color:#dff7ea}.bracket-tree-player.winner span:after{content:'  ✓';color:var(--good);font-weight:900}.bracket-tree-player.pending{color:var(--muted);font-weight:620}.bracket-tree-match-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:8px;padding-top:8px;border-top:1px solid rgba(255,255,255,.065);font-size:10px;color:var(--muted);letter-spacing:.02em}.bracket-tree-state{display:inline-flex;align-items:center;padding:3px 7px;border:1px solid #4e5968;border-radius:999px;color:#d7dde6;font-size:9px;font-weight:850;letter-spacing:.07em}.bracket-tree-state.live{border-color:var(--accent);color:var(--soft)}
@media(max-width:760px){.bracket-tree-scroll{margin-inline:-4px;padding-bottom:18px}.bracket-tree-round-title{font-size:11px}.bracket-tree-match{padding:12px}.bracket-tree-player{font-size:13px}}

/* DARTSX_UNIVERSAL_BRACKETS_THIRD_PLACE_v2.3.0 */
.bracket-tree-connector-loser{stroke-dasharray:7 6;stroke:#7d8796}
.bracket-tree-classification{position:absolute;z-index:2}
.bracket-tree-classification .classification-node{position:relative!important;top:auto!important;height:132px}
.bracket-tree-classification .bracket-tree-match{border-color:#856d3e;background:linear-gradient(145deg,#1d1b17,#14161b)}
.double-elimination-tree .bracket-tree-round-title{color:#d9dee7}
.wizard-third-place-setting{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:24px;align-items:center}
.wizard-third-place-setting h3{margin:.2rem 0 .35rem}.wizard-third-place-setting p{margin:0;color:var(--muted);line-height:1.55}.wizard-third-place-setting.disabled{opacity:.72}
.third-place-flow{margin-top:18px;border-top:1px solid rgba(255,255,255,.07);padding-top:16px}
@media(max-width:760px){.wizard-third-place-setting{grid-template-columns:1fr}.bracket-tree-classification{min-width:292px}}


/* DARTSX CSP-SAFE BRACKET TREE v2.3.1 — START */
.bracket-tree.bracket-tree-csp{position:relative;display:grid;grid-auto-flow:column;grid-auto-columns:292px;column-gap:94px;width:max-content;min-width:0;margin:0;align-items:start}
.bracket-tree-csp .bracket-tree-connectors{position:absolute;left:0;top:0;z-index:1;pointer-events:none;overflow:visible}
.bracket-tree-csp .bracket-tree-round{position:relative;top:auto;left:auto;width:292px;height:auto;z-index:2;display:block}
.bracket-tree-csp .bracket-tree-round-title{height:54px;padding-left:2px;display:flex;align-items:center;color:var(--soft);font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}
.bracket-tree-csp .bracket-tree-round-body{display:flex;flex-direction:column;justify-content:space-around;width:100%}
.bracket-tree-csp .bracket-tree-node{position:relative;left:auto;top:auto;width:100%;height:132px;flex:0 0 132px}
.bracket-tree-csp .bracket-tree-placeholder{visibility:hidden;pointer-events:none}
.bracket-tree-csp .bracket-tree-classification-flow{margin-top:18px;width:100%}
.bracket-tree-csp .bracket-tree-classification-title{height:44px;display:flex;align-items:center;color:#d8bd7b;font-size:11px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.bracket-tree-csp .classification-node{position:relative!important;left:auto!important;top:auto!important;height:132px!important}
.bracket-tree-csp.bracket-tree-size-2 .bracket-tree-round-body{height:164px}
.bracket-tree-csp.bracket-tree-size-4 .bracket-tree-round-body{height:328px}
.bracket-tree-csp.bracket-tree-size-8 .bracket-tree-round-body{height:656px}
.bracket-tree-csp.bracket-tree-size-16 .bracket-tree-round-body{height:1312px}
.bracket-tree-csp.bracket-tree-size-32 .bracket-tree-round-body{height:2624px}
.bracket-tree-csp.bracket-tree-size-64 .bracket-tree-round-body{height:5248px}
.bracket-tree-csp.bracket-tree-size-128 .bracket-tree-round-body{height:10496px}
.bracket-tree-csp.bracket-tree-rows-1 .bracket-tree-round-body{height:164px}
.bracket-tree-csp.bracket-tree-rows-2 .bracket-tree-round-body{height:328px}
.bracket-tree-csp.bracket-tree-rows-3 .bracket-tree-round-body{height:492px}
.bracket-tree-csp.bracket-tree-rows-4 .bracket-tree-round-body{height:656px}
.bracket-tree-csp.bracket-tree-rows-5 .bracket-tree-round-body{height:820px}
.bracket-tree-csp.bracket-tree-rows-6 .bracket-tree-round-body{height:984px}
.bracket-tree-csp.bracket-tree-rows-7 .bracket-tree-round-body{height:1148px}
.bracket-tree-csp.bracket-tree-rows-8 .bracket-tree-round-body{height:1312px}
.bracket-tree-csp.bracket-tree-rows-9 .bracket-tree-round-body{height:1476px}
.bracket-tree-csp.bracket-tree-rows-10 .bracket-tree-round-body{height:1640px}
.bracket-tree-csp.bracket-tree-rows-11 .bracket-tree-round-body{height:1804px}
.bracket-tree-csp.bracket-tree-rows-12 .bracket-tree-round-body{height:1968px}
.bracket-tree-csp.bracket-tree-rows-13 .bracket-tree-round-body{height:2132px}
.bracket-tree-csp.bracket-tree-rows-14 .bracket-tree-round-body{height:2296px}
.bracket-tree-csp.bracket-tree-rows-15 .bracket-tree-round-body{height:2460px}
.bracket-tree-csp.bracket-tree-rows-16 .bracket-tree-round-body{height:2624px}
.bracket-tree-csp.bracket-tree-rows-17 .bracket-tree-round-body{height:2788px}
.bracket-tree-csp.bracket-tree-rows-18 .bracket-tree-round-body{height:2952px}
.bracket-tree-csp.bracket-tree-rows-19 .bracket-tree-round-body{height:3116px}
.bracket-tree-csp.bracket-tree-rows-20 .bracket-tree-round-body{height:3280px}
.bracket-tree-csp.bracket-tree-rows-21 .bracket-tree-round-body{height:3444px}
.bracket-tree-csp.bracket-tree-rows-22 .bracket-tree-round-body{height:3608px}
.bracket-tree-csp.bracket-tree-rows-23 .bracket-tree-round-body{height:3772px}
.bracket-tree-csp.bracket-tree-rows-24 .bracket-tree-round-body{height:3936px}
.bracket-tree-csp.bracket-tree-rows-25 .bracket-tree-round-body{height:4100px}
.bracket-tree-csp.bracket-tree-rows-26 .bracket-tree-round-body{height:4264px}
.bracket-tree-csp.bracket-tree-rows-27 .bracket-tree-round-body{height:4428px}
.bracket-tree-csp.bracket-tree-rows-28 .bracket-tree-round-body{height:4592px}
.bracket-tree-csp.bracket-tree-rows-29 .bracket-tree-round-body{height:4756px}
.bracket-tree-csp.bracket-tree-rows-30 .bracket-tree-round-body{height:4920px}
.bracket-tree-csp.bracket-tree-rows-31 .bracket-tree-round-body{height:5084px}
.bracket-tree-csp.bracket-tree-rows-32 .bracket-tree-round-body{height:5248px}
.bracket-tree-csp.bracket-tree-rows-33 .bracket-tree-round-body{height:5412px}
.bracket-tree-csp.bracket-tree-rows-34 .bracket-tree-round-body{height:5576px}
.bracket-tree-csp.bracket-tree-rows-35 .bracket-tree-round-body{height:5740px}
.bracket-tree-csp.bracket-tree-rows-36 .bracket-tree-round-body{height:5904px}
.bracket-tree-csp.bracket-tree-rows-37 .bracket-tree-round-body{height:6068px}
.bracket-tree-csp.bracket-tree-rows-38 .bracket-tree-round-body{height:6232px}
.bracket-tree-csp.bracket-tree-rows-39 .bracket-tree-round-body{height:6396px}
.bracket-tree-csp.bracket-tree-rows-40 .bracket-tree-round-body{height:6560px}
.bracket-tree-csp.bracket-tree-rows-41 .bracket-tree-round-body{height:6724px}
.bracket-tree-csp.bracket-tree-rows-42 .bracket-tree-round-body{height:6888px}
.bracket-tree-csp.bracket-tree-rows-43 .bracket-tree-round-body{height:7052px}
.bracket-tree-csp.bracket-tree-rows-44 .bracket-tree-round-body{height:7216px}
.bracket-tree-csp.bracket-tree-rows-45 .bracket-tree-round-body{height:7380px}
.bracket-tree-csp.bracket-tree-rows-46 .bracket-tree-round-body{height:7544px}
.bracket-tree-csp.bracket-tree-rows-47 .bracket-tree-round-body{height:7708px}
.bracket-tree-csp.bracket-tree-rows-48 .bracket-tree-round-body{height:7872px}
.bracket-tree-csp.bracket-tree-rows-49 .bracket-tree-round-body{height:8036px}
.bracket-tree-csp.bracket-tree-rows-50 .bracket-tree-round-body{height:8200px}
.bracket-tree-csp.bracket-tree-rows-51 .bracket-tree-round-body{height:8364px}
.bracket-tree-csp.bracket-tree-rows-52 .bracket-tree-round-body{height:8528px}
.bracket-tree-csp.bracket-tree-rows-53 .bracket-tree-round-body{height:8692px}
.bracket-tree-csp.bracket-tree-rows-54 .bracket-tree-round-body{height:8856px}
.bracket-tree-csp.bracket-tree-rows-55 .bracket-tree-round-body{height:9020px}
.bracket-tree-csp.bracket-tree-rows-56 .bracket-tree-round-body{height:9184px}
.bracket-tree-csp.bracket-tree-rows-57 .bracket-tree-round-body{height:9348px}
.bracket-tree-csp.bracket-tree-rows-58 .bracket-tree-round-body{height:9512px}
.bracket-tree-csp.bracket-tree-rows-59 .bracket-tree-round-body{height:9676px}
.bracket-tree-csp.bracket-tree-rows-60 .bracket-tree-round-body{height:9840px}
.bracket-tree-csp.bracket-tree-rows-61 .bracket-tree-round-body{height:10004px}
.bracket-tree-csp.bracket-tree-rows-62 .bracket-tree-round-body{height:10168px}
.bracket-tree-csp.bracket-tree-rows-63 .bracket-tree-round-body{height:10332px}
.bracket-tree-csp.bracket-tree-rows-64 .bracket-tree-round-body{height:10496px}
@media(max-width:760px){.bracket-tree.bracket-tree-csp{grid-auto-columns:270px;column-gap:74px}.bracket-tree-csp .bracket-tree-round{width:270px}.bracket-tree-csp .bracket-tree-round-title{font-size:11px}.bracket-tree-csp .bracket-tree-match{padding:12px}.bracket-tree-csp .bracket-tree-player{font-size:13px}}
/* DARTSX CSP-SAFE BRACKET TREE v2.3.1 — END */

/* DARTSX CHALKING PRE-MATCH FLOW v2.4.0 */
.prematch-dialog{max-width:760px}
.prematch-dialog .dialog-head{align-items:flex-start}
.prematch-player-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:20px 0}
.prematch-player-card{appearance:none;border:1px solid var(--line,#2c3440);border-radius:18px;background:var(--panel,#151a22);color:inherit;text-align:left;padding:22px;min-height:140px;display:flex;flex-direction:column;gap:8px;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}
.prematch-player-card:hover{border-color:var(--accent,#ff4961);transform:translateY(-1px)}
.prematch-player-card.selected{border-color:var(--accent,#ff4961);background:rgba(255,73,97,.12);box-shadow:0 0 0 1px rgba(255,73,97,.18) inset}
.prematch-player-card small{letter-spacing:.12em;color:var(--muted,#9da7b7);font-weight:700}
.prematch-player-card strong{font-size:1.35rem;line-height:1.2}
.prematch-player-card span{margin-top:auto;color:var(--muted,#9da7b7)}
.prematch-player-card.selected span{color:#ff8393;font-weight:700}
.prematch-dialog-actions{margin-top:8px}
@media(max-width:640px){.prematch-player-grid{grid-template-columns:1fr}.prematch-player-card{min-height:112px;padding:18px}}

/* DARTSX STANDARD SCORER + PRE-MATCH ACTIVATION v2.4.1 — START */
/* The compact X01 scoring appliance is the standard writable scorer on every screen size. */
.standard-scorer-app.score-active{width:min(820px,100%);margin:18px auto 0}
.standard-scorer-app.score-active .scoring-layout{display:flex;flex-direction:column;gap:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:#0d1117;box-shadow:0 18px 44px rgba(0,0,0,.24)}
.standard-scorer-app.score-active .scoring-layout>div:first-child{display:contents}
.standard-scorer-app.score-active .score-head,
.standard-scorer-app.score-active .dx-live-scoreboard,
.standard-scorer-app.score-active .score-cards,
.standard-scorer-app.score-active .checkout-strip,
.standard-scorer-app.score-active .scorer-history{display:none!important}
.standard-scorer-app.score-active .mobile-scorer-focus{display:block;background:#0d1117;border-bottom:1px solid var(--line)}
.standard-scorer-app.score-active .mobile-scorer-toolbar{display:flex;align-items:center;justify-content:center;padding:11px 14px;border-bottom:1px solid var(--line);background:#10151d}
.standard-scorer-app.score-active .mobile-scorer-toolbar>strong{font-size:14px;letter-spacing:.08em;text-transform:uppercase}
.standard-scorer-app.score-active .mobile-player-grid{display:grid;grid-template-columns:1fr 1fr}
.standard-scorer-app.score-active .mobile-player-score{min-width:0;padding:16px 16px 13px;background:#151a22;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.standard-scorer-app.score-active .mobile-player-score:last-child{border-right:0}
.standard-scorer-app.score-active .mobile-player-score.active{background:linear-gradient(160deg,color-mix(in srgb,var(--accent) 28%,#161b24),#171c24 78%);box-shadow:inset 0 -4px 0 var(--accent)}
.standard-scorer-app.score-active .mobile-player-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.standard-scorer-app.score-active .mobile-player-head strong{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.standard-scorer-app.score-active .mobile-player-head span{flex:0 0 auto;font-size:9px;color:var(--muted);font-weight:800;text-transform:uppercase}
.standard-scorer-app.score-active .mobile-to-go{font-size:72px;line-height:.95;font-weight:950;letter-spacing:-4px;margin:14px 0 12px;font-variant-numeric:tabular-nums}
.standard-scorer-app.score-active .mobile-player-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
.standard-scorer-app.score-active .mobile-player-metrics span{min-width:0;display:flex;flex-direction:column;gap:2px}
.standard-scorer-app.score-active .mobile-player-metrics b{font-size:14px;font-variant-numeric:tabular-nums}
.standard-scorer-app.score-active .mobile-player-metrics small{font-size:7px;line-height:1.15;text-transform:uppercase;letter-spacing:.035em;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.standard-scorer-app.score-active .mobile-turn-callout{padding:11px 14px 9px;color:var(--accent);font-weight:950;font-size:16px;text-transform:uppercase;letter-spacing:.025em;background:#0d1117}
.standard-scorer-app.score-active .mobile-score-commands{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#263043;border-top:1px solid #263043;border-bottom:1px solid #263043}
.standard-scorer-app.score-active .mobile-score-commands button{min-height:38px;border:0;border-radius:0;background:#141b26;color:var(--text);font-size:11px;font-weight:850;letter-spacing:.035em;text-transform:uppercase}
.standard-scorer-app.score-active .mobile-score-commands button:active{background:#202a39}
.standard-scorer-app.score-active .mobile-score-commands #mobile-score-exit{color:#f3bcc4}
.standard-scorer-app.score-active .controls{order:4;width:100%;padding:11px 13px 13px;border:0;border-radius:0;background:#0d1117}
.standard-scorer-app.score-active .controls h3,
.standard-scorer-app.score-active .controls .game-tools{display:none}
.standard-scorer-app.score-active .controls .score-entry{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:0;padding:0;margin:0 0 8px;min-height:58px;border:1px solid #3a4352;border-radius:14px;overflow:hidden;background:#11161e}
.standard-scorer-app.score-active .controls .score-entry-main{min-width:0;padding:7px 13px;display:flex;flex-direction:column;justify-content:center}
.standard-scorer-app.score-active .controls .score-entry-main small,
.standard-scorer-app.score-active .controls .score-entry .leaves{display:none}
.standard-scorer-app.score-active .controls .score-entry input{font-size:24px;line-height:1.1;padding:0;border:0;background:transparent;min-height:40px}
.standard-scorer-app.score-active .controls .score-entry input::placeholder{color:#c6cbd4;opacity:.8}
.standard-scorer-app.score-active .mobile-score-submit{display:inline-flex;align-items:center;justify-content:center;min-width:126px;border:0;border-left:1px solid #3a4352;background:var(--accent);color:#fff;font-weight:900;font-size:14px;padding:0 20px}
.standard-scorer-app.score-active .controls .quick-scores{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:1px;margin:0 0 7px;background:#263043;border:1px solid #263043;border-radius:8px;overflow:hidden}
.standard-scorer-app.score-active .controls .quick-scores button{min-width:0;min-height:34px;height:auto;border:0;border-radius:0;background:#1a2230;color:#e9edf4;font-size:11px;font-weight:800;padding:5px 2px}
.standard-scorer-app.score-active .controls .quick-scores button:last-child{color:#f2bdc6;background:#2a1820}
.standard-scorer-app.score-active .desktop-score-keypad{display:none!important}
.standard-scorer-app.score-active .mobile-score-keypad{display:grid!important;grid-template-columns:repeat(3,1fr);gap:1px;background:#263043;border:1px solid #263043;border-radius:10px;overflow:hidden}
.standard-scorer-app.score-active .mobile-score-keypad button{height:58px;border:0;border-radius:0;background:#162036;border-color:transparent;color:#fff;font-size:26px;font-weight:760}
.standard-scorer-app.score-active .mobile-score-keypad .mobile-enter{background:#233754;color:#fff;font-size:11px;letter-spacing:.08em}
.standard-scorer-app.score-active .mobile-score-keypad .mobile-back{font-size:17px}
.standard-scorer-app.score-active .mobile-score-keypad .score-shortcut{height:36px;font-size:8px;background:#141a24}
.standard-scorer-app.score-active .mobile-score-keypad .score-shortcut.checkout{background:#14251e;color:#bce6d0}
.standard-scorer-app.score-active .mobile-score-keypad .score-shortcut.bust{background:#2b1920;color:#f3b3bd}
.standard-scorer-app.score-active .confirm-score{display:none!important}
.standard-scorer-app.score-active .minor-controls{margin-top:7px;gap:4px}
.standard-scorer-app.score-active .minor-controls .btn{min-height:31px}
.standard-scorer-app.score-active .score-note{display:none}
.standard-scorer-app.score-active .inline-error{font-size:10px;margin:6px 0 0}
@media(max-width:700px){
  .standard-scorer-app.score-active{width:auto;margin:0 -14px}
  .standard-scorer-app.score-active .scoring-layout{border-left:0;border-right:0;border-radius:0;box-shadow:none}
  .standard-scorer-app.score-active .mobile-player-score{padding:12px 12px 10px}
  .standard-scorer-app.score-active .mobile-player-head strong{font-size:14px}
  .standard-scorer-app.score-active .mobile-to-go{font-size:66px;margin:12px 0 10px}
  .standard-scorer-app.score-active .mobile-score-keypad button{height:56px}
  .standard-scorer-app.score-active .mobile-score-submit{min-width:112px;padding:0 18px}
}
/* DARTSX STANDARD SCORER + PRE-MATCH ACTIVATION v2.4.1 — END */

/* DARTSX STANDARD SCORER ALIGNMENT v2.4.2 — START */
/* The standard scoring appliance uses one aligned full-width column on desktop, tablet and phone. */
.standard-scorer-app.score-active{width:min(980px,100%);max-width:980px}
.standard-scorer-app.score-active .scoring-layout{align-items:stretch;box-sizing:border-box;width:100%}
.standard-scorer-app.score-active .mobile-scorer-focus{width:100%;min-width:0;align-self:stretch;box-sizing:border-box}
.standard-scorer-app.score-active .mobile-player-grid,
.standard-scorer-app.score-active .mobile-score-commands,
.standard-scorer-app.score-active .controls,
.standard-scorer-app.score-active .controls .score-entry,
.standard-scorer-app.score-active .controls .quick-scores,
.standard-scorer-app.score-active .mobile-score-keypad{width:100%;min-width:0;box-sizing:border-box}
.standard-scorer-app.score-active .mobile-player-score{min-width:0;width:auto;box-sizing:border-box}
.standard-scorer-app.score-active .controls{align-self:stretch}
@media(max-width:700px){
  .standard-scorer-app.score-active{width:auto;max-width:none}
}
/* DARTSX STANDARD SCORER ALIGNMENT v2.4.2 — END */

/* DARTSX CHECKOUT DART TAPS v2.4.3 — START */
.checkout-darts-dialog .notice{margin-bottom:16px}
.checkout-dart-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:14px 0 16px}
.checkout-dart-choice{min-height:92px;border:1px solid #465064;border-radius:14px;background:#121923;color:var(--text);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;cursor:pointer;transition:border-color .14s ease,background .14s ease,transform .08s ease}
.checkout-dart-choice strong{font-size:32px;line-height:1;font-variant-numeric:tabular-nums}
.checkout-dart-choice span{font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;color:var(--muted)}
.checkout-dart-choice:not(:disabled):hover{border-color:var(--accent);background:#19202b}
.checkout-dart-choice:not(:disabled):active{transform:translateY(1px)}
.checkout-dart-choice.selected{border:2px solid var(--accent);background:color-mix(in srgb,var(--accent) 18%,#151b24);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}
.checkout-dart-choice.selected span{color:#fff}
.checkout-dart-choice.frozen,.checkout-dart-choice:disabled{cursor:not-allowed;opacity:.34;filter:saturate(.25);background:#0e131a;border-color:#303744}
.checkout-dart-choice.frozen strong::after{content:'Unavailable';display:block;font-size:8px;line-height:1.2;margin-top:6px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
@media(max-width:520px){.checkout-dart-choices{gap:7px}.checkout-dart-choice{min-height:78px}.checkout-dart-choice strong{font-size:28px}}
/* DARTSX CHECKOUT DART TAPS v2.4.3 — END */

/* DARTSX SCORING CORRECTIONS v2.4.8 — START */
.visit-edit-hint{margin:0 0 8px;color:var(--muted);font-size:12px}
.visit-score-edit{min-width:52px;padding:5px 10px;border:1px solid color-mix(in srgb,var(--accent) 45%,var(--border));border-radius:8px;background:color-mix(in srgb,var(--accent) 10%,transparent);color:inherit;font:inherit;font-weight:900;cursor:pointer}
.visit-score-edit:hover,.visit-score-edit:focus-visible{outline:none;border-color:var(--accent);background:color-mix(in srgb,var(--accent) 18%,transparent)}
/* DARTSX SCORING CORRECTIONS v2.4.8 — END */


/* DARTSX WHITE SCOREBOARD VISIBLE v2.4.16 — keep the writable live score board visible on the standard scorer. */
.standard-scorer-app.score-active .dx-live-scoreboard{display:block!important;margin:0;border:0;border-radius:0;box-shadow:none;background:#fff;color:#11151b}
.standard-scorer-app.score-active .dx-live-scoreboard-head,.standard-scorer-app.score-active .dx-live-remaining,.standard-scorer-app.score-active .dx-live-stats{display:none!important}
.standard-scorer-app.score-active .dx-live-correction-hint{display:block;padding:7px 10px;background:#f2f4f7;border-bottom:1px solid #c9ced6;color:#333b46;text-align:center;font-size:10px;font-weight:850;letter-spacing:.02em}
.standard-scorer-app.score-active .dx-live-sheet-wrap{display:block!important;max-height:220px;overflow:auto;background:#fff;color:#11151b;border-bottom:1px solid #c9ced6}
.standard-scorer-app.score-active .dx-live-sheet{background:#fff;color:#11151b}
.standard-scorer-app.score-active .dx-live-sheet th{background:#e8ebef;color:#252b34;border-color:#c9ced6}
.standard-scorer-app.score-active .dx-live-sheet td{background:#fff;color:#11151b;border-color:#d2d6dc}
.standard-scorer-app.score-active .dx-live-visit{background:#eef0f3!important;color:#303741!important}
.standard-scorer-app.score-active .score-board-edit{appearance:none;-webkit-appearance:none;width:100%;min-height:32px;margin:0;padding:2px 5px;border:1px dashed #9aa2ad;border-radius:6px;background:#fff;color:#11151b;font:inherit;cursor:pointer}
.standard-scorer-app.score-active .score-board-edit strong{color:#11151b}
.standard-scorer-app.score-active .score-board-edit::after{content:'EDIT';display:block;margin-top:1px;font-size:7px;line-height:1;letter-spacing:.08em;color:#5d6672;font-weight:900}
.standard-scorer-app.score-active .score-board-edit:focus-visible{outline:3px solid var(--accent);outline-offset:1px}
@media(max-width:700px){.standard-scorer-app.score-active .dx-live-sheet-wrap{max-height:176px}.standard-scorer-app.score-active .dx-live-correction-hint{font-size:9px;padding:6px 8px}}

/* DARTSX TOURNAMENT GENERATION PRO v2.5.1 */
.generation-qualifier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin-top:14px}
.stage-rule-grid{display:grid;gap:10px;margin-top:14px}
.stage-rule-row{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,2fr);gap:14px;align-items:end}
.stage-rule-row>.form-grid{margin:0}
.generation-group-preview{align-items:start}
.generation-group-preview .list{max-height:360px;overflow:auto}
.generation-round-robin-order .list{max-height:520px;overflow:auto}
.generation-round-robin-order .list-row{display:grid;grid-template-columns:minmax(110px,.45fr) minmax(0,1.55fr);gap:12px;align-items:center}
.generation-round-robin-order .field{margin:0}
.match-sequence td:nth-child(6){min-width:180px}
.match-sequence td:nth-child(6) .btn{margin-left:8px}
.tournament-setup-clean .wizard-third-place-setting{align-items:center}
.tournament-setup-clean .wizard-third-place-setting.disabled{opacity:.72}
.tournament-setup-clean [data-stage-rule] .eyebrow{margin-bottom:5px}
@media(max-width:850px){.stage-rule-row{grid-template-columns:1fr}.generation-round-robin-order .list-row{grid-template-columns:1fr}.match-sequence td:nth-child(6){min-width:150px}}

/* DARTSX TOURNAMENT GENERATION PRO v2.5.2 */

/* DARTSX PREMATCH CHALKER DISPLAY v2.5.4 */
.prematch-assignment{margin:2px 0 12px;padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2,rgba(255,255,255,.045));display:grid;gap:5px}
.prematch-assignment>small{font-size:11px;font-weight:800;letter-spacing:.045em;text-transform:uppercase;opacity:.72}
.prematch-assignment>div{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.prematch-assignment>div span{font-size:12px;opacity:.74}
.prematch-assignment>div strong{font-size:16px;text-align:right}
.prematch-assignment>p{margin:0;font-size:11px;opacity:.72}
.prematch-assignment.pending{border-style:dashed}
@media(max-width:700px){.prematch-assignment>div{align-items:flex-start;flex-direction:column;gap:3px}.prematch-assignment>div strong{text-align:left}}


/* DARTSX UNIVERSAL RECORD ROWS v2.5.11
   Record collections use compact rows system-wide.
   Purpose-built scoreboards, metrics, forms, pricing, navigation modules,
   Academy teaching cards and media panels intentionally remain purpose-built. */
#main .list{gap:7px}
#main .list-row{min-height:46px;padding:11px 13px;border-radius:8px;gap:11px}
#main .list-row.compact{min-height:40px;padding:9px 11px}
#main .list-row .meta{margin-top:2px}
#main .list>.panel:not(.metric):not(.auth-card){margin:0;padding:12px 14px;border-radius:8px}

/* Any linked record previously presented as a two/three/four-column panel card
   becomes a single compact full-width row. This covers organisations, teams,
   school groups, public competitions and other future linked record indexes. */
#main .grid.two:has(>a.panel),
#main .grid.three:has(>a.panel),
#main .grid.four:has(>a.panel){grid-template-columns:1fr!important;gap:8px!important}
#main .grid.two>a.panel,
#main .grid.three>a.panel,
#main .grid.four>a.panel{min-height:0!important;padding:12px 14px!important;border-radius:8px!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px 14px!important;flex-wrap:wrap!important}
#main .grid.two>a.panel h2,
#main .grid.three>a.panel h2,
#main .grid.four>a.panel h2{margin:0!important;font-size:15px!important;letter-spacing:-.15px}
#main .grid.two>a.panel .eyebrow,
#main .grid.three>a.panel .eyebrow,
#main .grid.four>a.panel .eyebrow{margin:0!important;min-width:118px}
#main .grid.two>a.panel>.badges,
#main .grid.three>a.panel>.badges,
#main .grid.four>a.panel>.badges{margin:0 0 0 auto!important}

/* Tournament management: override the earlier large organiser cards without
   touching draw, scoring, entries, boards or tournament lifecycle logic. */
#main .management-competition-grid{grid-template-columns:1fr!important;gap:8px!important}
#main .management-competition-card{min-height:0!important;padding:12px 14px!important;border-radius:8px!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:12px 16px!important;transform:none!important}
#main .management-competition-card:hover{transform:none!important}
#main .management-competition-card-top{flex:1 1 260px;min-width:0;align-items:center}
#main .management-competition-card h2{margin:0!important;font-size:15px!important}
#main .management-competition-meta{display:flex!important;align-items:center!important;justify-content:flex-end!important;flex:0 1 auto;gap:5px!important;margin:0!important;flex-wrap:wrap}
#main .management-competition-meta span{display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:4px!important;padding:4px 7px!important;border-radius:6px!important;background:transparent!important;font-size:10px!important}
#main .management-competition-meta b{font-size:8px!important;letter-spacing:.5px}
#main .management-event-badges{margin:0!important}
#main .management-open-label{font-size:11px}

/* Player tournament / league cards become rows even on a pre-v2.5.10 source. */
#main .competition-card{min-height:0!important;padding:12px 14px!important;border-radius:8px!important;align-items:center!important}
#main .competition-card h2{margin:0!important;font-size:15px!important}
#main .competition-card p{margin:0!important;font-size:11px!important;flex:1 1 240px}
#main .competition-card>.badges:last-child{margin-left:auto!important}

/* Live-centre competition records remain information-rich but compact. */
#main .live-event-card{min-height:0!important;padding:12px 14px!important;border-radius:8px!important}
#main .live-event-card>.grid.three{display:flex!important;gap:12px!important;margin:0 0 0 auto!important;flex-wrap:wrap}
#main .live-event-card .metric strong{font-size:18px!important}
#main .live-event-card .metric small{margin-top:1px!important}

/* School coaching groups use one row with their three progress values inline. */
#main .school-group-card{display:flex!important;align-items:center!important;gap:12px 16px!important}
#main .school-group-card .eyebrow{margin:0!important;min-width:130px}
#main .school-group-card h2{margin:0!important;flex:1 1 220px}
#main .school-group-card-metrics{display:flex!important;align-items:center!important;justify-content:flex-end;gap:6px!important;margin:0 0 0 auto!important;flex-wrap:wrap}
#main .school-group-card-metrics span{min-width:82px;padding:5px 8px!important;border-radius:6px!important;background:transparent!important;text-align:right}
#main .school-group-card-metrics b{font-size:14px!important}
#main .school-group-card-metrics small{margin-top:1px!important;font-size:8px!important}

/* Dense responsive row behaviour. */
@media(max-width:760px){
 #main .list-row{align-items:flex-start;padding:10px 11px}
 #main .list-row .right{margin-left:auto}
 #main .grid.two>a.panel,
 #main .grid.three>a.panel,
 #main .grid.four>a.panel{align-items:flex-start!important}
 #main .grid.two>a.panel .eyebrow,
 #main .grid.three>a.panel .eyebrow,
 #main .grid.four>a.panel .eyebrow{min-width:0;width:100%}
 #main .grid.two>a.panel>.badges,
 #main .grid.three>a.panel>.badges,
 #main .grid.four>a.panel>.badges{margin-left:0!important}
 #main .management-competition-card{align-items:flex-start!important;flex-direction:column!important}
 #main .management-competition-meta{width:100%;justify-content:flex-start!important}
 #main .school-group-card{align-items:flex-start!important}
 #main .school-group-card .eyebrow{min-width:0;width:100%}
 #main .school-group-card-metrics{width:100%;margin-left:0!important;justify-content:flex-start}
 #main .school-group-card-metrics span{text-align:left}
}
/* DARTSX UNIVERSAL RECORD ROWS v2.5.11 */


/* DARTSX_SOCIAL_IDENTITY_v2.6.0 */
.social-auth{margin:18px 0 20px}
.auth-divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.12em;margin:4px 0 14px}
.auth-divider:before,.auth-divider:after{content:'';height:1px;background:var(--line);flex:1}
.social-auth-buttons{display:grid;gap:9px}
.social-auth-button{width:100%;background:#10141b;border-color:#3a4250;min-height:44px}
.social-auth-button:hover{border-color:#687486;background:#171c24}
.social-auth .help{margin:10px 0 0}

/* DARTSX_PLAN_TIERS_SUBSCRIPTIONS_v2.8.0 */
.billing-switch{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.billing-switch .btn{min-width:110px}.pricing-card .price{white-space:nowrap}

/* DARTSX PRICING CARD UX v2.8.2 */
.plan-billing-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:18px 0 12px}.plan-billing-option{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:3px;padding:11px 12px;border:1px solid #343945;border-radius:12px;background:#0d1015;color:var(--text);text-align:left}.plan-billing-option span{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.plan-billing-option strong{font-size:20px;line-height:1.15}.plan-billing-option small{font-size:10px;line-height:1.3;color:var(--muted)}button.plan-billing-option{cursor:pointer;font:inherit}button.plan-billing-option:hover,button.plan-billing-option:focus-visible{border-color:#6b3b45}.plan-billing-option.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.pricing-addons{margin-top:12px;padding-top:12px;border-top:1px solid #2b3038}.pricing-addons-title{font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:7px}.pricing-addon-list{display:flex;flex-wrap:wrap;gap:6px}.pricing-addon-list span{display:inline-flex;padding:5px 8px;border:1px solid #343945;border-radius:999px;font-size:10px;line-height:1.2;color:var(--text);background:#0d1015}.pricing-home .plan-billing-option{pointer-events:none}.pricing-home .plan-billing-options{margin-top:14px}.pricing-home .plan-billing-option strong{font-size:18px}
@media(max-width:520px){.plan-billing-options{grid-template-columns:1fr}.plan-billing-option{padding:10px 11px}}


/* DARTSX SCORER HEADER LEG SCORES v2.8.5 */
.standard-scorer-app.score-active .mobile-scorer-toolbar,
.x01-two-player-live.score-active .mobile-scorer-toolbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;
  gap:18px;
  padding:10px 18px;
}
.standard-scorer-app.score-active .mobile-match-format,
.x01-two-player-live.score-active .mobile-match-format{
  justify-self:center;
  font-size:14px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.standard-scorer-app.score-active .mobile-match-leg-score,
.x01-two-player-live.score-active .mobile-match-leg-score{
  justify-self:center;
  font-size:64px;
  line-height:.9;
  font-weight:950;
  letter-spacing:-.04em;
  min-width:1.1em;
  text-align:center;
  font-variant-numeric:tabular-nums;
  color:#fff;
}
.standard-scorer-app.score-active .mobile-match-leg-score.left,
.x01-two-player-live.score-active .mobile-match-leg-score.left{color:var(--accent)}
.standard-scorer-app.score-active .mobile-player-head,
.x01-two-player-live.score-active .mobile-player-head{justify-content:flex-start}
@media(max-width:700px){
  .standard-scorer-app.score-active .mobile-scorer-toolbar,
  .x01-two-player-live.score-active .mobile-scorer-toolbar{gap:10px;padding:9px 12px}
  .standard-scorer-app.score-active .mobile-match-leg-score,
  .x01-two-player-live.score-active .mobile-match-leg-score{font-size:44px}
  .standard-scorer-app.score-active .mobile-match-format,
  .x01-two-player-live.score-active .mobile-match-format{font-size:12px;letter-spacing:.06em}
}


/* DARTSX SCORER HEADER SCORE SIZE v2.8.6 */
@media(max-width:420px){
  .standard-scorer-app.score-active .mobile-match-leg-score,
  .x01-two-player-live.score-active .mobile-match-leg-score{font-size:38px}
}
