/* v2.1.33 Local Inter static font foundation
   Expected filenames follow the provided local font package.
   No external font requests are made by this CSS. */
@font-face{
  font-family:"Inter";
  font-style:normal;
  font-weight:300;
  font-display:swap;
  src:url("/assets/fonts/inter/inter-v20-latin-300.woff2") format("woff2");
}
@font-face{
  font-family:"Inter";
  font-style:normal;
  font-weight:400;
  font-display:swap;
  src:url("/assets/fonts/inter/inter-v20-latin-regular.woff2") format("woff2");
}
@font-face{
  font-family:"Inter";
  font-style:normal;
  font-weight:600;
  font-display:swap;
  src:url("/assets/fonts/inter/inter-v20-latin-600.woff2") format("woff2");
}
@font-face{
  font-family:"Inter";
  font-style:normal;
  font-weight:700;
  font-display:swap;
  src:url("/assets/fonts/inter/inter-v20-latin-600.woff2") format("woff2");
}
@font-face{
  font-family:"Inter";
  font-style:normal;
  font-weight:800;
  font-display:swap;
  src:url("/assets/fonts/inter/inter-v20-latin-800.woff2") format("woff2");
}
@font-face{
  font-family:"Inter";
  font-style:normal;
  font-weight:900;
  font-display:swap;
  src:url("/assets/fonts/inter/inter-v20-latin-800.woff2") format("woff2");
}

:root{--dc-bg:#050607;--dc-bg-soft:#0b0d0f;--dc-surface:#111417;--dc-surface-2:#181c20;--dc-surface-3:#22272d;--dc-border:rgba(255,255,255,.1);--dc-border-strong:rgba(255,255,255,.18);--dc-text:#fff;--dc-text-soft:#d7dce2;--dc-muted:#8f98a3;--dc-primary:#35e07f;--dc-primary-strong:#65ff9f;--dc-primary-soft:rgba(53,224,127,.14);--dc-danger:#ff4d5e;--dc-danger-soft:rgba(255,77,94,.14);--dc-warning:#ffbd4a;--dc-radius-sm:10px;--dc-radius-md:16px;--dc-radius-lg:24px;--dc-space-2:8px;--dc-space-3:12px;--dc-space-4:16px;--dc-space-5:24px;--dc-space-6:32px;--dc-shadow-card:0 18px 50px rgba(0,0,0,.32);--dc-font:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top right,rgba(53,224,127,.10),transparent 35%),var(--dc-bg);color:var(--dc-text);font-family:var(--dc-font);line-height:1.5}a{color:inherit;text-decoration:none}.dc-shell{display:grid;grid-template-columns:270px 1fr;min-height:100vh}.dc-sidebar{padding:24px;background:#080a0c;border-right:1px solid var(--dc-border);position:sticky;top:0;height:100vh}.dc-brand{display:flex;align-items:center;gap:12px;font-weight:800;margin-bottom:28px}.dc-brand__mark{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;background:var(--dc-primary);color:#06100a}.dc-nav{display:grid;gap:8px}.dc-nav a{padding:12px 14px;border-radius:12px;color:var(--dc-text-soft)}.dc-nav a:hover{background:var(--dc-surface-2);color:var(--dc-text)}.dc-sidebar__note{margin-top:28px;color:var(--dc-muted);font-size:13px}.dc-main{padding:24px;max-width:1480px;width:100%;margin:0 auto}.dc-topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px;padding:14px 18px;border:1px solid var(--dc-border);border-radius:var(--dc-radius-md);background:rgba(17,20,23,.7);backdrop-filter:blur(10px);color:var(--dc-muted);position:relative;z-index:160}.dc-page-header,.dc-match-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin:0 0 22px}.dc-page-header h1,.dc-match-header h1{margin:0;font-size:clamp(28px,4vw,52px);line-height:1}.dc-page-header p,.dc-match-header p,.dc-muted{color:var(--dc-muted)}.dc-card,.dc-player-card,.dc-stat-card,.dc-player-score-card{background:linear-gradient(180deg,var(--dc-surface),#0d1013);border:1px solid var(--dc-border);border-radius:var(--dc-radius-lg);box-shadow:var(--dc-shadow-card);padding:22px;margin-bottom:18px}.dc-grid{display:grid;gap:18px}.dc-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}.dc-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}.dc-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}.dc-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:14px}.dc-cluster{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.dc-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border:1px solid var(--dc-border-strong);border-radius:12px;background:var(--dc-surface-2);color:var(--dc-text);cursor:pointer;font-weight:700}.dc-button:hover{background:var(--dc-surface-3)}.dc-button--primary{background:var(--dc-primary);border-color:var(--dc-primary);color:#06100a}.dc-button--danger{background:var(--dc-danger-soft);border-color:rgba(255,77,94,.42);color:#ffd8dc}.dc-button--ghost{background:transparent;color:var(--dc-muted)}.dc-form{display:grid;gap:16px}.dc-field{display:grid;gap:7px}.dc-field span,.dc-fieldset legend{color:var(--dc-text-soft);font-weight:700}.dc-input,.dc-select{width:100%;border:1px solid var(--dc-border-strong);background:#080a0c;color:var(--dc-text);border-radius:12px;padding:12px 14px}.dc-input--score{font-size:42px;font-weight:900;text-align:center}.dc-fieldset{border:1px solid var(--dc-border);border-radius:16px;padding:16px}.dc-check-card{display:flex;gap:10px;align-items:center;padding:13px 14px;border:1px solid var(--dc-border);border-radius:14px;background:var(--dc-surface-2);cursor:pointer}.dc-alert{border-radius:14px;padding:12px 16px;margin-bottom:16px;border:1px solid var(--dc-border)}.dc-alert--success{background:var(--dc-primary-soft);border-color:rgba(53,224,127,.35)}.dc-alert--danger{background:var(--dc-danger-soft);border-color:rgba(255,77,94,.35)}.dc-player-card__mark{--player-color:#35e07f;width:54px;height:54px;border-radius:18px;background:var(--player-color);color:#06100a;display:grid;place-items:center;font-size:26px;font-weight:900}.dc-stat-label{color:var(--dc-muted);font-size:13px;text-transform:uppercase;letter-spacing:.06em}.dc-stat-value{font-size:34px;font-weight:900;line-height:1.1;margin-top:8px}.dc-stat-meta{color:var(--dc-muted);font-size:13px;margin-top:6px}.dc-stat-unavailable{font-weight:800;color:var(--dc-text-soft);margin-top:8px}.dc-table{width:100%;border-collapse:collapse}.dc-table th,.dc-table td{padding:12px;border-bottom:1px solid var(--dc-border);text-align:left}.dc-table th{color:var(--dc-muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em}.dc-match-board{display:grid;gap:18px}.dc-player-score-card{position:relative}.dc-player-score-card.is-active{border-color:rgba(53,224,127,.75);box-shadow:0 0 0 1px rgba(53,224,127,.35),var(--dc-shadow-card)}.dc-score-display{font-size:clamp(48px,8vw,96px);font-weight:950;line-height:.95;margin:14px 0}.dc-badge{display:inline-flex;border:1px solid rgba(53,224,127,.35);background:var(--dc-primary-soft);color:var(--dc-primary-strong);border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800}.dc-score-pad{display:grid;grid-template-columns:repeat(5,1fr);gap:8px}.dc-checkout-panel{padding:14px;border-radius:16px;background:rgba(255,189,74,.09);border:1px solid rgba(255,189,74,.22)}.dc-inline-form{margin:0 0 18px}.dc-bull-row{display:grid;grid-template-columns:1fr 180px auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--dc-border);border-radius:14px;background:var(--dc-surface-2)}.dc-dartboard{width:100%;max-width:460px;display:block;margin:auto;touch-action:manipulation}.dc-dartboard__outer{fill:#070809;stroke:var(--dc-border-strong);stroke-width:2}.dc-dartboard__segment{stroke:#050607;stroke-width:.8;cursor:pointer}.dc-dartboard__segment--s:nth-of-type(odd),.dc-dartboard__segment--t:nth-of-type(odd),.dc-dartboard__segment--d:nth-of-type(odd){fill:#e8edf2}.dc-dartboard__segment--s{fill:#f4f6f8}.dc-dartboard__segment--t,.dc-dartboard__segment--d{fill:#1ba85d}.dc-dartboard__segment:hover{filter:brightness(1.3)}.dc-dartboard__outer-bull{fill:#35e07f;stroke:#050607;cursor:pointer}.dc-dartboard__bull{fill:#ff4d5e;stroke:#050607;cursor:pointer}.dc-dartboard__number{fill:var(--dc-text);font-size:10px;font-weight:800}.dc-dartboard__summary{padding:12px;border:1px solid var(--dc-border);border-radius:12px;background:#080a0c;margin:12px 0}@media (max-width:900px){.dc-shell{grid-template-columns:1fr}.dc-sidebar{position:static;height:auto}.dc-main{padding:16px}.dc-grid--2,.dc-grid--3,.dc-grid--4{grid-template-columns:1fr}.dc-page-header,.dc-match-header{display:grid}.dc-score-pad{grid-template-columns:repeat(3,1fr)}.dc-bull-row{grid-template-columns:1fr}.dc-nav{grid-template-columns:repeat(2,1fr)}}

/* v1.1.6 Match Engine Hardening Pass */
.dc-match-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.dc-button--subtle-danger{background:transparent;color:#ffd8dc;border-color:rgba(255,77,94,.32)}.dc-player-score-card__badges{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px}.dc-badge--neutral{border-color:var(--dc-border-strong);background:rgba(255,255,255,.06);color:var(--dc-text-soft)}.dc-badge--start{border-color:rgba(255,255,255,.28);background:rgba(255,255,255,.09);color:#fff}.dc-badge--leg{border-color:rgba(255,189,74,.38);background:rgba(255,189,74,.14);color:#ffd789}
.dc-match-average-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:8px 0 2px}
.dc-match-average-strip__item{border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);border-radius:12px;padding:7px 9px}
.dc-match-average-strip__item span{display:block;font-size:9px;line-height:1.1;letter-spacing:.08em;text-transform:uppercase;color:var(--dc-muted);font-weight:850}
.dc-match-average-strip__item strong{display:block;margin-top:2px;font-size:16px;line-height:1.05;font-weight:950;color:var(--dc-text)}
.dc-live-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}.dc-live-stat{border:1px solid var(--dc-border);border-radius:12px;padding:9px;background:rgba(255,255,255,.035)}.dc-live-stat__label{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--dc-muted);font-weight:800}.dc-live-stat__value{font-size:18px;font-weight:900;color:var(--dc-text);margin-top:2px}.dc-live-stat__empty{font-size:12px;color:var(--dc-muted);font-weight:700;margin-top:4px}.dc-modal-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.66);display:none;align-items:center;justify-content:center;z-index:50;padding:18px}.dc-modal-backdrop.is-open{display:flex}.dc-modal{max-width:520px;width:100%;background:linear-gradient(180deg,var(--dc-surface),#0b0d10);border:1px solid var(--dc-border-strong);border-radius:24px;box-shadow:0 28px 90px rgba(0,0,0,.55);padding:24px}.dc-modal h2{margin-top:0}.dc-status-cancelled{color:#ffd8dc;background:var(--dc-danger-soft);border:1px solid rgba(255,77,94,.35);padding:4px 9px;border-radius:999px;font-weight:800;font-size:12px;display:inline-flex}.dc-status-finished{color:var(--dc-primary-strong);background:var(--dc-primary-soft);border:1px solid rgba(53,224,127,.35);padding:4px 9px;border-radius:999px;font-weight:800;font-size:12px;display:inline-flex}.dc-dartboard__miss-zone{fill:#050607;stroke:#20262d;stroke-width:2;cursor:pointer}.dc-dartboard__wire{fill:none;stroke:#0b0d0f;stroke-width:1.8;pointer-events:none}.dc-dartboard__segment{stroke:#0b0d0f;stroke-width:.9;cursor:pointer;transition:filter .12s ease, opacity .12s ease, stroke-width .12s ease}.dc-dartboard__segment--s_outer.dc-dartboard__segment--dark,.dc-dartboard__segment--s_inner.dc-dartboard__segment--dark{fill:#111111}.dc-dartboard__segment--s_outer.dc-dartboard__segment--light,.dc-dartboard__segment--s_inner.dc-dartboard__segment--light{fill:#f3ead7}.dc-dartboard__segment--t.dc-dartboard__segment--dark,.dc-dartboard__segment--d.dc-dartboard__segment--dark{fill:#d61f2c}.dc-dartboard__segment--t.dc-dartboard__segment--light,.dc-dartboard__segment--d.dc-dartboard__segment--light{fill:#11994b}.dc-dartboard__outer-bull{fill:#11994b;stroke:#0b0d0f;stroke-width:1.4;cursor:pointer}.dc-dartboard__bull{fill:#d61f2c;stroke:#0b0d0f;stroke-width:1.4;cursor:pointer}.dc-dartboard [data-segment]:hover{filter:brightness(1.22)}.dc-dartboard [data-segment].is-hit{filter:brightness(1.7) drop-shadow(0 0 8px rgba(255,255,255,.75));stroke:#fff;stroke-width:1.8}.dc-dartboard__number{fill:#f6f7f8;font-size:10px;font-weight:900;pointer-events:none}.dc-dartboard__throw-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.dc-dart-chip{padding:5px 8px;border-radius:999px;background:var(--dc-primary-soft);color:var(--dc-primary-strong);border:1px solid rgba(53,224,127,.35);font-size:12px;font-weight:900}@media (max-width:700px){.dc-live-stats{grid-template-columns:1fr}.dc-match-actions{display:grid}.dc-match-actions .dc-button{width:100%}}

/* v1.2.8 Auth & Player Ownership */
.dc-auth-app{min-height:100vh}.dc-auth-shell{min-height:100vh;display:grid;grid-template-columns:minmax(0,1fr) 460px;gap:32px;align-items:center;max-width:1180px;margin:0 auto;padding:32px}.dc-auth-brand h1{font-size:clamp(42px,6vw,76px);line-height:.95;margin:26px 0 18px}.dc-auth-brand p{max-width:560px;color:var(--dc-muted);font-size:18px}.dc-brand--auth{font-size:20px;margin-bottom:0}.dc-auth-panel{width:100%}.dc-auth-card{background:linear-gradient(180deg,var(--dc-surface),#0b0d10);border:1px solid var(--dc-border);border-radius:28px;box-shadow:var(--dc-shadow-card);padding:28px}.dc-auth-card h2{font-size:34px;margin:0 0 8px}.dc-auth-link{margin:18px 0 0;color:var(--dc-muted)}.dc-auth-link a{color:var(--dc-primary-strong);font-weight:800}.dc-password-field__control{position:relative;display:block}.dc-password-field__control .dc-input{padding-right:54px}.dc-password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:40px;height:40px;border-radius:10px;border:1px solid var(--dc-border);background:var(--dc-surface-2);color:var(--dc-text);cursor:pointer}.dc-password-toggle:hover{background:var(--dc-surface-3)}.dc-topbar{gap:12px}.dc-topbar__account{color:var(--dc-text-soft);font-weight:700}.dc-logout-form{margin:0}.dc-badge--pending{border-color:rgba(255,189,74,.38);background:rgba(255,189,74,.14);color:#ffd789}.dc-badge--active{border-color:rgba(53,224,127,.35);background:var(--dc-primary-soft);color:var(--dc-primary-strong)}.dc-badge--rejected,.dc-badge--suspended,.dc-badge--disabled{border-color:rgba(255,77,94,.35);background:var(--dc-danger-soft);color:#ffd8dc}.dc-player-card__mark{margin-bottom:14px}@media (max-width:900px){.dc-auth-shell{grid-template-columns:1fr;padding:18px}.dc-auth-brand h1{font-size:42px}.dc-topbar{display:grid;align-items:start}.dc-logout-form .dc-button{width:100%}}

/* v1.2.15 Player deletion confirmation and purge semantics */
.dc-confirm-modal{position:relative;overflow:hidden}.dc-confirm-modal::before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:linear-gradient(90deg,var(--dc-warning),var(--dc-danger));opacity:.9}.dc-confirm-modal__icon{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;font-weight:950;font-size:24px;background:rgba(255,189,74,.14);border:1px solid rgba(255,189,74,.38);color:#ffd789;margin-bottom:14px}.dc-confirm-modal__icon.is-danger{background:var(--dc-danger-soft);border-color:rgba(255,77,94,.42);color:#ffd8dc}.dc-confirm-modal__warning{margin:16px 0 0;padding:12px 14px;border-radius:14px;border:1px solid rgba(255,77,94,.35);background:var(--dc-danger-soft);color:#ffd8dc;font-weight:800}.dc-confirm-modal__actions{justify-content:flex-end;margin-top:20px}.dc-player-card__actions form{margin:0}@media (max-width:700px){.dc-confirm-modal__actions{display:grid}.dc-confirm-modal__actions .dc-button{width:100%}}

/* v1.3 Match history and report */
.dc-empty-state{display:grid;gap:12px;align-items:start}.dc-match-history{display:grid;gap:16px}.dc-match-history-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;align-items:center}.dc-match-history-card__titleline{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.dc-match-history-card__titleline h2{margin:0;font-size:22px}.dc-match-history-card__score{font-size:clamp(38px,6vw,64px);font-weight:950;line-height:1;margin:12px 0}.dc-match-history-card__meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--dc-muted);font-size:13px}.dc-match-history-card__meta span{border:1px solid var(--dc-border);border-radius:999px;padding:4px 9px;background:rgba(255,255,255,.035)}.dc-match-history-card__actions{display:grid;justify-items:end;gap:8px}.dc-report-hero{display:flex;justify-content:space-between;gap:24px;align-items:center}.dc-report-hero__score{font-size:clamp(52px,8vw,94px);font-weight:950;line-height:.95;margin:8px 0}.dc-report-hero__status{display:grid;gap:10px;justify-items:end;text-align:right}.dc-report-player-card__header{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}.dc-report-player-card__header h2{margin:0}.dc-report-turn-list{display:grid;gap:8px;max-height:520px;overflow:auto;padding-right:4px}.dc-report-turn{display:grid;grid-template-columns:70px minmax(100px,1fr) 90px 80px auto auto;gap:8px;align-items:center;border:1px solid var(--dc-border);border-radius:12px;padding:9px 10px;background:rgba(255,255,255,.035);font-size:13px}.dc-report-turn span:first-child{color:var(--dc-muted);font-weight:800}.dc-report-turn strong{color:var(--dc-text)}@media (max-width:900px){.dc-match-history-card{grid-template-columns:1fr}.dc-match-history-card__actions{justify-items:stretch}.dc-report-hero{display:grid}.dc-report-hero__status{justify-items:start;text-align:left}.dc-report-turn{grid-template-columns:1fr 1fr}.dc-report-player-card__header{display:grid}}


/* v1.4 Player profiles and real aggregate stats */
.dc-player-card__stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:16px 0}.dc-player-stat-pill{border:1px solid var(--dc-border);border-radius:12px;background:rgba(255,255,255,.035);padding:9px 10px;display:grid;gap:2px}.dc-player-stat-pill span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--dc-muted);font-weight:900}.dc-player-stat-pill strong{font-size:18px;line-height:1.1}.dc-player-stat-pill em{font-style:normal;color:var(--dc-muted);font-size:12px;font-weight:700}.dc-player-profile-hero__identity{display:flex;gap:18px;align-items:center}.dc-player-profile-hero__identity .dc-player-card__mark{margin:0;width:70px;height:70px;font-size:28px}.dc-player-profile-section{margin-bottom:20px}.dc-section-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:16px}.dc-section-head h2{margin:0}.dc-section-head p{margin:3px 0 0;color:var(--dc-muted)}.dc-profile-match-list{display:grid;gap:10px}.dc-profile-match-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;border:1px solid var(--dc-border);border-radius:14px;background:rgba(255,255,255,.035);padding:12px}.dc-profile-match-row:hover{background:rgba(255,255,255,.06)}.dc-profile-match-row strong{display:block}.dc-profile-match-row em{display:block;font-style:normal;color:var(--dc-muted);font-size:12px}.dc-profile-match-row__score{font-weight:950;font-size:22px;color:var(--dc-text)}@media (max-width:700px){.dc-player-card__stats{grid-template-columns:1fr}.dc-player-profile-hero__identity{align-items:flex-start}.dc-section-head{display:grid}.dc-profile-match-row{grid-template-columns:1fr}.dc-profile-match-row__score{font-size:28px}}
.dc-filter-bar{display:grid;grid-template-columns:1.4fr repeat(3,minmax(160px,1fr)) auto;gap:14px;align-items:end}.dc-filter-bar h2,.dc-match-setup-section h2{margin:0}.dc-filter-bar p,.dc-section-head p{margin:.25rem 0 0}.dc-match-setup-section{margin-bottom:18px}.dc-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px}.dc-check-card em{display:block;color:var(--dc-muted);font-style:normal;font-size:12px;margin-top:2px}.dc-check-card--full{height:100%;align-items:center}.dc-status-finished{display:inline-flex;border:1px solid rgba(53,224,127,.35);background:var(--dc-primary-soft);color:var(--dc-primary-strong);border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800}.dc-status-cancelled{display:inline-flex;border:1px solid rgba(255,77,94,.42);background:var(--dc-danger-soft);color:#ffd8dc;border-radius:999px;padding:4px 9px;font-size:12px;font-weight:800}@media (max-width:1100px){.dc-filter-bar{grid-template-columns:1fr 1fr}.dc-filter-bar .dc-cluster{grid-column:1/-1}}@media (max-width:700px){.dc-filter-bar{grid-template-columns:1fr}.dc-section-head{display:block}}

/* v1.7 AI opponent */
.dc-ai-config{margin-top:16px;padding:16px;border:1px solid var(--dc-border);border-radius:18px;background:rgba(255,255,255,.035)}
.dc-inline-inputs{display:grid;grid-template-columns:1fr 1fr;gap:8px}.dc-badge--ai{border-color:rgba(101,255,159,.38);background:rgba(53,224,127,.16);color:var(--dc-primary-strong)}
.dc-ai-turn-card{border-color:rgba(53,224,127,.42)}.dc-ai-countdown{margin:14px 0 16px;padding:14px 16px;border:1px solid var(--dc-border);border-radius:14px;background:rgba(255,255,255,.04);font-weight:800}.dc-ai-countdown strong{color:var(--dc-primary-strong)}

/* v1.7.1 Match setup layout fix: prevent mode/AI fields from overflowing the card */
.dc-main,.dc-card,.dc-match-setup-section,.dc-field,.dc-input,.dc-select{min-width:0}
.dc-match-setup-section{overflow:hidden}
.dc-match-setup-section .dc-section-head{display:grid;gap:6px;min-width:0}
.dc-match-setup-section .dc-section-head p{max-width:100%;overflow-wrap:anywhere}
.dc-match-setup-section .dc-grid--2,.dc-match-setup-section .dc-grid--3{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))}
.dc-match-setup-section .dc-field,.dc-match-setup-section .dc-check-card{width:100%;max-width:100%}
.dc-match-setup-section .dc-check-card span{min-width:0;overflow-wrap:anywhere}
.dc-inline-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}
@media (max-width:1180px){.dc-match-setup-section .dc-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:760px){.dc-match-setup-section .dc-grid--2,.dc-match-setup-section .dc-grid--3{grid-template-columns:1fr}.dc-inline-inputs{grid-template-columns:1fr}}


/* v1.7.3: real X01 match selection and participant-stat separation */
.dc-stat-split-card .dc-stats-grid--compact{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:10px}
.dc-stat-split-card .dc-stat-card{padding:16px;border-radius:16px}
.dc-match-setup-section .dc-muted{max-width:100%;overflow-wrap:anywhere}

/* v1.7.4/v1.7.5 Board UX & Stats Clarity */
.dc-dartboard-wrap{position:relative;display:grid;place-items:center;min-width:0}
.dc-dartboard-score-overlay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) scale(.92);z-index:5;display:grid;gap:4px;place-items:center;min-width:150px;padding:16px 22px;border-radius:20px;border:1px solid rgba(53,224,127,.46);background:rgba(5,6,7,.88);box-shadow:0 22px 70px rgba(0,0,0,.55),0 0 0 1px rgba(53,224,127,.22);opacity:0;pointer-events:none;transition:opacity .14s ease,transform .14s ease;backdrop-filter:blur(10px)}
.dc-dartboard-score-overlay.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}
.dc-dartboard-score-overlay strong{font-size:clamp(32px,5vw,58px);line-height:1;font-weight:950;color:var(--dc-primary-strong)}
.dc-dartboard-score-overlay span{font-size:13px;color:var(--dc-text-soft);font-weight:800;text-align:center}
.dc-button:disabled{opacity:.55;cursor:not-allowed}
/* v1.8 friends and local player grant foundation */
.dc-list{display:grid;gap:12px;margin-top:14px}.dc-list--compact{gap:10px}.dc-list-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid var(--dc-border);border-radius:14px;background:var(--dc-surface-2)}.dc-list-item>div{display:grid;gap:2px}.dc-inline-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.dc-friend-card{margin-bottom:14px}.dc-local-grant-box{margin-top:16px;background:rgba(53,224,127,.06)}@media(max-width:720px){.dc-list-item{display:grid}.dc-inline-actions{width:100%}.dc-inline-actions .dc-button{flex:1}}

/* v1.8.1 Notification Center */
.dc-topbar{gap:12px;justify-content:flex-start}.dc-topbar>strong{margin-right:auto}.dc-button--sm{padding:7px 10px;border-radius:10px;font-size:12px}.dc-notifications{position:relative;display:inline-flex}.dc-notification-toggle{position:relative;display:inline-grid;place-items:center;width:42px;height:42px;border-radius:14px;border:1px solid var(--dc-border-strong);background:var(--dc-surface-2);color:var(--dc-text);cursor:pointer}.dc-notification-toggle:hover,.dc-notification-toggle.is-open{background:var(--dc-surface-3)}.dc-notification-badge{position:absolute;right:-5px;top:-6px;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--dc-primary);color:#06100a;font-size:11px;font-weight:950;display:grid;place-items:center;border:2px solid #080a0c}.dc-notification-panel{position:absolute;right:0;top:calc(100% + 10px);width:min(420px,calc(100vw - 32px));max-height:70vh;overflow:auto;background:linear-gradient(180deg,var(--dc-surface),#0b0d10);border:1px solid var(--dc-border-strong);border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.55);z-index:80;padding:14px;display:none}.dc-notification-panel.is-open{display:block}.dc-notification-panel__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:4px 4px 12px;border-bottom:1px solid var(--dc-border);margin-bottom:10px}.dc-notification-panel__head p{margin:2px 0 0;color:var(--dc-muted);font-size:12px}.dc-notification-list{display:grid;gap:10px}.dc-notification-empty{padding:12px;margin:0}.dc-notification-item{display:grid;gap:10px;padding:12px;border:1px solid var(--dc-border);border-radius:16px;background:rgba(255,255,255,.045)}.dc-notification-item:not(.is-read){border-color:rgba(53,224,127,.26);background:rgba(53,224,127,.07)}.dc-notification-item.is-read{opacity:.75}.dc-notification-item__body strong{display:block;color:var(--dc-text)}.dc-notification-item__body p{margin:4px 0;color:var(--dc-text-soft);font-size:13px}.dc-notification-item__body small{color:var(--dc-muted);font-size:11px}.dc-notification-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.dc-notification-actions form{margin:0}@media(max-width:900px){.dc-topbar{flex-wrap:wrap}.dc-notifications{order:2}.dc-notification-panel{right:auto;left:0}.dc-topbar__account{order:3;width:100%}}

/* v1.9 Online room module */
.dc-room-list{display:grid;gap:14px}.dc-room-card h3,.dc-room-participant h3{margin:0}.dc-room-hero{border-color:rgba(53,224,127,.22)}.dc-room-participant{margin-bottom:0}.dc-list{display:grid;gap:12px}.dc-list-item{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid var(--dc-border);border-radius:14px;background:rgba(255,255,255,.035)}.dc-list-item strong{display:block}.dc-list-item span{display:block}.dc-card--inner{box-shadow:none;background:rgba(255,255,255,.035)}.dc-empty-state{text-align:center}.dc-modal__actions{display:flex;gap:10px;justify-content:flex-end;margin-top:18px}.dc-confirm-icon{width:42px;height:42px;border-radius:999px;display:grid;place-items:center;background:var(--dc-primary-soft);color:var(--dc-primary-strong);font-weight:900;margin-bottom:12px}.dc-confirm-icon.is-danger{background:var(--dc-danger-soft);color:#ffd8dc}@media (max-width:700px){.dc-list-item{display:grid}.dc-modal__actions{display:grid}.dc-modal__actions .dc-button{width:100%}}

/* v1.9.1 Live match score summary */
.dc-live-stat--compact .dc-live-stat__value{font-size:16px}
@media (min-width:1100px){.dc-player-score-card .dc-live-stats{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* v1.9.6 Live Match UX */
.dc-match-current-strip{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px;border-color:rgba(53,224,127,.28);background:linear-gradient(90deg,rgba(53,224,127,.10),rgba(255,255,255,.035))}
.dc-match-current-strip>div{display:grid;gap:2px}.dc-match-current-strip strong{font-size:clamp(24px,4vw,42px);line-height:1}.dc-match-input-grid{align-items:start}.dc-form.is-submitting{opacity:.75;pointer-events:none}.dc-form.is-submitting::after{content:'Wird gespeichert …';display:inline-flex;width:max-content;padding:7px 10px;border-radius:999px;background:var(--dc-primary-soft);color:var(--dc-primary-strong);font-size:12px;font-weight:900}.dc-online-waiting{border-color:rgba(255,189,74,.32);background:linear-gradient(180deg,var(--dc-surface),rgba(255,189,74,.06))}
@media (max-width:900px){.dc-match-header{position:sticky;top:0;z-index:25;background:rgba(5,6,7,.92);backdrop-filter:blur(12px);padding:12px;border:1px solid var(--dc-border);border-radius:18px}.dc-match-header h1{font-size:28px}.dc-match-actions{width:100%}.dc-match-actions .dc-button{flex:1}.dc-match-current-strip{position:sticky;top:92px;z-index:24;padding:13px 14px;display:grid;grid-template-columns:1fr auto auto;align-items:center}.dc-match-current-strip .dc-badge{grid-column:1/-1;width:max-content}.dc-match-current-strip strong{font-size:28px}.dc-score-panel{order:1}.dc-match-input-grid{order:2}.dc-match-input-grid .dc-card{margin-bottom:12px}.dc-dartboard{max-width:min(92vw,420px)}.dc-player-score-card{padding:16px}.dc-player-score-card:not(.is-active) .dc-live-stats{display:none}.dc-player-score-card:not(.is-active) .dc-score-display{font-size:42px}.dc-live-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.dc-table{display:block;overflow-x:auto;white-space:nowrap}.dc-score-pad{grid-template-columns:repeat(5,1fr)}}
@media (max-width:520px){.dc-match-current-strip{top:104px;grid-template-columns:1fr 1fr}.dc-score-pad{grid-template-columns:repeat(3,1fr)}.dc-input--score{font-size:36px}.dc-dartboard-score-overlay{min-width:128px;padding:13px 18px}.dc-dartboard-score-overlay strong{font-size:38px}}

/* v1.9.7 Checkout Advisor */
.dc-checkout-advisor{border-color:rgba(53,224,127,.30);background:linear-gradient(180deg,var(--dc-surface),rgba(53,224,127,.055))}
.dc-checkout-advisor h2{margin:3px 0 0;font-size:clamp(24px,3vw,38px);line-height:1}
.dc-checkout-routes{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:14px}
.dc-checkout-route{display:grid;gap:6px;padding:14px 16px;border:1px solid var(--dc-border);border-radius:16px;background:rgba(255,255,255,.045)}
.dc-checkout-route span{color:var(--dc-muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}
.dc-checkout-route strong{font-size:clamp(22px,3vw,34px);line-height:1.05;color:var(--dc-primary-strong)}
@media (max-width:700px){.dc-checkout-routes{grid-template-columns:1fr}.dc-checkout-route{padding:13px 14px}.dc-checkout-route strong{font-size:26px}}

/* v1.9.17 Desktop Match UX rebuild from stable base */
.dc-match-sidebar-toggle{display:none}
.dc-input-mode-bar{display:flex;align-items:center;justify-content:center;gap:10px;margin:0 0 14px;padding:10px;border:1px solid var(--dc-border);border-radius:16px;background:rgba(255,255,255,.035)}
.dc-input-mode-toggle{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--dc-border-strong);border-radius:999px;background:var(--dc-surface-2);color:var(--dc-text);padding:8px 12px;font-weight:800;cursor:pointer}.dc-input-mode-toggle[aria-pressed="false"]{opacity:.55;background:transparent}.dc-input-mode-divider{color:var(--dc-muted);font-weight:900}.dc-input-mode-toggle__icon{font-size:14px}.dc-checkout-advisor--inline{display:none;margin:10px 0 12px;padding:12px;border-radius:16px;border:1px solid rgba(53,224,127,.28);background:rgba(53,224,127,.075)}.dc-checkout-routes--inline{display:grid;grid-template-columns:1fr;gap:8px;margin-top:8px}.dc-checkout-route--inline{padding:9px 10px;border-radius:12px}.dc-checkout-route--inline strong{font-size:18px}.dc-checkout-route--inline span{font-size:10px}
[data-input-hidden="textscore"] [data-input-section="textscore"], [data-input-hidden="board"] [data-input-section="board"]{display:none!important}
@media (min-width:901px){
  body.dc-match-mode{overflow:hidden}
  body.dc-match-mode .dc-shell{grid-template-columns:34px minmax(0,1fr);transition:grid-template-columns .34s cubic-bezier(.2,.8,.2,1)}
  body.dc-match-mode.dc-match-sidebar-open .dc-shell{grid-template-columns:270px minmax(0,1fr)}
  body.dc-match-mode .dc-sidebar{width:270px;transform:translateX(-236px);transition:transform .34s cubic-bezier(.2,.8,.2,1),opacity .34s ease,box-shadow .34s ease;z-index:35;will-change:transform;box-shadow:none;overflow:hidden}
  body.dc-match-mode.dc-match-sidebar-open .dc-sidebar{transform:translateX(0);opacity:1;box-shadow:22px 0 70px rgba(0,0,0,.34)}
  body.dc-match-mode:not(.dc-match-sidebar-open) .dc-sidebar .dc-brand,
  body.dc-match-mode:not(.dc-match-sidebar-open) .dc-sidebar .dc-nav,
  body.dc-match-mode:not(.dc-match-sidebar-open) .dc-sidebar .dc-sidebar__note{opacity:0;pointer-events:none;transition:opacity .18s ease}
  body.dc-match-mode.dc-match-sidebar-open .dc-sidebar .dc-brand,
  body.dc-match-mode.dc-match-sidebar-open .dc-sidebar .dc-nav,
  body.dc-match-mode.dc-match-sidebar-open .dc-sidebar .dc-sidebar__note{opacity:1;transition:opacity .22s ease .08s}
  body.dc-match-mode .dc-match-sidebar-toggle{display:grid;place-items:center;position:fixed;left:9px;top:18px;width:34px;height:34px;border-radius:12px;border:1px solid var(--dc-border-strong);background:rgba(17,20,23,.94);color:var(--dc-text);z-index:60;cursor:pointer;box-shadow:0 12px 28px rgba(0,0,0,.3);transition:transform .28s ease,background .2s ease}
  body.dc-match-mode.dc-match-sidebar-open .dc-match-sidebar-toggle{transform:translateX(236px);background:var(--dc-primary);color:#06100a;border-color:var(--dc-primary)}
  body.dc-match-mode .dc-main{max-width:none;height:100vh;overflow:hidden;padding:14px 18px 12px 18px;margin:0}
  body.dc-match-mode .dc-topbar{height:50px;margin-bottom:10px;padding:9px 14px;border-radius:15px;font-size:13px}
  body.dc-match-mode .dc-match-live-root{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}
  body.dc-match-mode .dc-match-header{margin:0 0 10px;align-items:center;flex:0 0 auto}
  body.dc-match-mode .dc-match-header h1{font-size:clamp(24px,2.2vw,36px)}
  body.dc-match-mode .dc-match-header p{margin:.25rem 0 0;font-size:13px}
  body.dc-match-mode .dc-match-current-strip{display:none!important}
  body.dc-match-mode .dc-match-live-root>.dc-checkout-advisor:not(.dc-checkout-advisor--inline){display:none!important}
  body.dc-match-mode .dc-match-board{flex:1;min-height:0;display:grid;grid-template-columns:minmax(360px,42%) minmax(520px,1fr);grid-template-rows:auto auto minmax(0,1fr) auto;gap:12px;align-items:stretch;overflow:hidden}
  body.dc-match-mode .dc-match-input-zone{display:contents}
  body.dc-match-mode .dc-input-mode-bar{grid-column:1;grid-row:1;margin:0;padding:8px;justify-content:flex-start}
  body.dc-match-mode .dc-input-mode-toggle{padding:7px 11px;font-size:13px}
  body.dc-match-mode .dc-match-input-grid{display:contents}
  body.dc-match-mode .dc-textscore-card{grid-column:1;grid-row:2;margin:0;padding:14px;border-radius:18px;gap:10px}
  body.dc-match-mode .dc-textscore-card .dc-field{gap:5px}
  body.dc-match-mode .dc-input--score{font-size:34px;padding:8px 12px}
  body.dc-match-mode .dc-score-pad{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
  body.dc-match-mode .dc-score-pad .dc-button{padding:7px 8px;font-size:13px}
  body.dc-match-mode .dc-checkout-panel{padding:10px;border-radius:14px;font-size:13px}
  body.dc-match-mode .dc-checkout-panel h3{margin:0 0 4px;font-size:15px}
  body.dc-match-mode .dc-checkout-panel p{margin:0 0 8px}
  body.dc-match-mode .dc-score-panel{grid-column:1;grid-row:3;min-height:0;overflow:hidden}
  body.dc-match-mode .dc-score-panel>.dc-grid{grid-template-columns:1fr!important;gap:10px;height:100%;grid-auto-rows:minmax(0,1fr)}
  body.dc-match-mode .dc-player-score-card{margin:0;padding:14px;border-radius:18px;min-height:0;overflow:hidden;display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto auto 1fr;column-gap:12px;align-content:start}
  body.dc-match-mode .dc-player-score-card__badges{grid-column:1/-1;margin:0 0 4px}
  body.dc-match-mode .dc-player-score-card h2{margin:0;font-size:clamp(20px,1.7vw,28px)}
  body.dc-match-mode .dc-score-display{grid-column:2;grid-row:2/span 2;font-size:clamp(58px,5.7vw,92px);margin:0;align-self:start;text-align:right;min-width:120px}
  body.dc-match-mode .dc-player-score-card>p{margin:4px 0 8px;color:var(--dc-muted);font-weight:800}
  body.dc-match-mode .dc-live-stats{grid-column:1/-1;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px;margin-top:6px;align-self:end}
  body.dc-match-mode .dc-live-stat{padding:6px 7px;border-radius:10px}
  body.dc-match-mode .dc-live-stat__label{font-size:9px;letter-spacing:.04em}
  body.dc-match-mode .dc-live-stat__value{font-size:15px}
  body.dc-match-mode .dc-live-stat__empty{font-size:10px}
  body.dc-match-mode .dc-checkout-advisor--inline{display:block;grid-column:1;grid-row:3;margin:5px 0 8px}
  body.dc-match-mode .dc-dartboard-card{grid-column:2;grid-row:1/4;margin:0;padding:14px;border-radius:22px;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto auto;align-items:center;overflow:hidden}
  body.dc-match-mode .dc-dartboard-help{margin:0;font-size:12px;text-align:center}
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-wrap{min-height:0;height:100%;align-self:stretch}
*/
  body.dc-match-mode .dc-dartboard{max-width:min(100%,calc(100vh - 205px));max-height:calc(100vh - 205px)}
  body.dc-match-mode .dc-dartboard__summary{margin:8px 0 0;padding:8px 10px;font-size:13px}
  body.dc-match-mode .dc-dartboard-card .dc-cluster{justify-content:center;gap:7px;margin-top:8px}
  body.dc-match-mode .dc-dartboard-card .dc-button{padding:8px 10px;font-size:13px}
  body.dc-match-mode .dc-inline-form{grid-column:1;grid-row:4;margin:0}.dc-inline-form .dc-button{font-size:13px;padding:8px 10px}
  body.dc-match-mode .dc-match-board>section.dc-card:last-child{grid-column:2;grid-row:4;margin:0;max-height:44px;overflow:hidden;padding:10px 14px;border-radius:16px;opacity:.76}
  body.dc-match-mode .dc-match-board>section.dc-card:last-child h2{font-size:14px;margin:0}
  body.dc-match-mode .dc-match-board>section.dc-card:last-child table,body.dc-match-mode .dc-match-board>section.dc-card:last-child p{display:none}
  body.dc-match-mode [data-input-hidden="textscore"] .dc-score-panel{grid-row:2/4}
  body.dc-match-mode [data-input-hidden="textscore"] .dc-dartboard-card{grid-row:1/4}
  body.dc-match-mode [data-input-hidden="board"] .dc-match-board{grid-template-columns:minmax(520px,1fr)}
  body.dc-match-mode [data-input-hidden="board"] .dc-textscore-card,body.dc-match-mode [data-input-hidden="board"] .dc-score-panel,body.dc-match-mode [data-input-hidden="board"] .dc-input-mode-bar{grid-column:1}
}
@media (min-width:901px){
  body.dc-match-mode .dc-match-live-root[data-input-hidden="textscore"] .dc-score-panel{grid-row:2/4}
  body.dc-match-mode .dc-match-live-root[data-input-hidden="textscore"] .dc-dartboard-card{grid-row:1/4}
  body.dc-match-mode .dc-match-live-root[data-input-hidden="board"] .dc-match-board{grid-template-columns:minmax(0,1fr)}
  body.dc-match-mode .dc-match-live-root[data-input-hidden="board"] .dc-input-mode-bar,
  body.dc-match-mode .dc-match-live-root[data-input-hidden="board"] .dc-textscore-card,
  body.dc-match-mode .dc-match-live-root[data-input-hidden="board"] .dc-score-panel,
  body.dc-match-mode .dc-match-live-root[data-input-hidden="board"] .dc-inline-form,
  body.dc-match-mode .dc-match-live-root[data-input-hidden="board"] .dc-match-board>section.dc-card:last-child{grid-column:1}
}

/* v1.9.18 AI dart timing display */
.dc-ai-dart-steps{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.dc-ai-dart-step{display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid var(--dc-border);border-radius:999px;background:rgba(255,255,255,.055);font-size:12px;color:var(--dc-text-soft);font-weight:800}.dc-ai-dart-step.is-done{border-color:rgba(53,224,127,.38);background:rgba(53,224,127,.12);color:var(--dc-primary-strong)}
@media (max-width:900px){.dc-ai-dart-steps{gap:6px}.dc-ai-dart-step{font-size:11px;padding:4px 7px}}

/* v2.0 Statistikzentrum */
.dc-stats-hero h1{letter-spacing:-.04em}.dc-stats-filter{grid-template-columns:1.4fr repeat(4,minmax(150px,1fr)) auto}.dc-stats-filter .dc-cluster{align-self:end}.dc-stats-player-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.dc-stats-player-head h2{margin:0;font-size:clamp(26px,3vw,42px);line-height:1}.dc-stats-rating-mini{display:grid;gap:4px;min-width:180px;padding:16px 18px;border:1px solid rgba(53,224,127,.28);border-radius:18px;background:var(--dc-primary-soft)}.dc-stats-rating-mini span,.dc-stats-rating-mini em{color:var(--dc-muted);font-style:normal;font-size:13px}.dc-stats-rating-mini strong{font-size:40px;line-height:1;color:var(--dc-primary-strong)}.dc-stats-analysis-grid{align-items:start}.dc-stats-rating-card{overflow:hidden}.dc-stats-rating-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:16px}.dc-stats-rating-kpis>div{padding:14px;border:1px solid var(--dc-border);border-radius:16px;background:rgba(255,255,255,.035)}.dc-stats-rating-kpis span{display:block;color:var(--dc-muted);font-size:12px;text-transform:uppercase;letter-spacing:.07em}.dc-stats-rating-kpis strong{display:block;font-size:30px;line-height:1.1;margin-top:7px}.dc-stats-line-chart{width:100%;height:auto;display:block;border:1px solid var(--dc-border);border-radius:18px;background:linear-gradient(180deg,rgba(53,224,127,.08),rgba(255,255,255,.025));overflow:visible}.dc-stats-line-chart polyline{fill:none;stroke:var(--dc-primary-strong);stroke-width:4;stroke-linecap:round;stroke-linejoin:round}.dc-stats-line-chart circle{fill:var(--dc-primary-strong);stroke:#06100a;stroke-width:2}.dc-stats-grid--compact .dc-stat-card{padding:16px}.dc-stats-grid--compact .dc-stat-value{font-size:28px}.dc-profile-match-row em{display:block;color:var(--dc-muted);font-style:normal;font-size:12px;margin-top:2px}.dc-profile-match-row__score{font-weight:900;font-size:20px}@media (max-width:1250px){.dc-stats-filter{grid-template-columns:1fr 1fr}.dc-stats-filter>div:first-child,.dc-stats-filter .dc-cluster{grid-column:1/-1}.dc-stats-rating-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:760px){.dc-stats-filter{grid-template-columns:1fr}.dc-stats-player-head{display:grid}.dc-stats-rating-mini{min-width:0}.dc-stats-rating-kpis{grid-template-columns:1fr 1fr}.dc-stats-line-chart{min-height:160px}.dc-table{display:block;overflow-x:auto;white-space:nowrap}}

/* v2.0.1 Match reliability/feedback fixes */
.dc-last-score{display:inline-grid;grid-template-columns:auto auto;align-items:center;gap:8px;margin:2px 0 8px;padding:6px 9px;border:1px solid var(--dc-border);border-radius:999px;background:rgba(255,255,255,.045);width:max-content;max-width:100%}
.dc-last-score span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--dc-muted);font-weight:900}
.dc-last-score strong{font-size:18px;line-height:1;color:var(--dc-text)}
.dc-player-score-flash{position:absolute;inset:0;display:grid;place-items:center;border-radius:inherit;background:rgba(0,0,0,.72);color:var(--dc-primary-strong);font-size:clamp(68px,10vw,140px);font-weight:950;letter-spacing:-.06em;opacity:0;pointer-events:none;transform:scale(.96);transition:opacity .18s ease,transform .18s ease;z-index:6;text-shadow:0 0 24px rgba(53,224,127,.28)}
.dc-player-score-card.is-score-flashing .dc-player-score-flash{opacity:1;transform:scale(1)}
.dc-ai-planned-total{margin-top:10px;color:var(--dc-muted);font-weight:800}.dc-ai-planned-total strong{color:var(--dc-primary-strong);font-size:22px}.dc-ai-dart-step{display:inline-flex;margin:4px 6px 0 0;padding:5px 8px;border-radius:999px;background:rgba(53,224,127,.1);border:1px solid rgba(53,224,127,.26);color:var(--dc-primary-strong);font-size:12px;font-weight:900}
.dc-turn-history-entry{margin-top:6px}.dc-modal--wide{max-width:min(980px,calc(100vw - 32px));max-height:min(82vh,820px);overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr)}.dc-table-scroll{overflow:auto;max-height:64vh;padding-right:4px}.dc-turn-history-modal{z-index:120}.dc-notification-panel{z-index:180}.dc-notifications{z-index:170}.dc-modal-backdrop{z-index:200}.dc-dartboard-wrap{position:relative}
@media (min-width:901px){body.dc-match-mode .dc-turn-history-entry{margin-bottom:0}body.dc-match-mode .dc-modal--wide{animation:dcModalSoftIn .18s ease both}}@keyframes dcModalSoftIn{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}

/* v2.0.3 Match layout cleanup: Verlauf in toolbar, Board never clipped */
.dc-input-mode-bar__modes{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dc-turn-history-open{margin-left:auto;white-space:nowrap}.dc-turn-history-entry{display:none!important}.dc-turn-history-modal .dc-modal{transform-origin:center top}
@media (min-width:901px){
  body.dc-match-mode .dc-input-mode-bar{justify-content:space-between;align-items:center;gap:12px}
  body.dc-match-mode .dc-turn-history-open{margin-left:auto;padding:7px 12px;font-size:13px}
  body.dc-match-mode .dc-match-board{grid-template-rows:auto auto minmax(0,1fr) auto;gap:10px}
  body.dc-match-mode .dc-dartboard-card{grid-column:2;grid-row:1/5;overflow:visible;grid-template-rows:auto minmax(0,1fr) auto auto;align-content:stretch;min-height:0}
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-wrap{height:100%;min-height:0;display:flex;align-items:center;justify-content:center;overflow:visible;padding:2px 0}
*/
  body.dc-match-mode .dc-dartboard{width:auto;height:auto;max-width:100%;max-height:min(100%,calc(100vh - 184px));aspect-ratio:1/1;object-fit:contain}
  body.dc-match-mode .dc-dartboard__summary{flex:0 0 auto}
  body.dc-match-mode .dc-dartboard-card .dc-cluster{flex:0 0 auto}
}
@media (max-width:900px){.dc-input-mode-bar{justify-content:space-between}.dc-turn-history-open{margin-left:0}}

/* v2.0.4 Match input + AI feedback fix */
.dc-dartboard [data-segment].is-ai-hit{filter:brightness(1.95) drop-shadow(0 0 18px rgba(53,224,127,.95)) drop-shadow(0 0 8px rgba(255,255,255,.72));stroke:#35e07f;stroke-width:2.4;transition:filter .12s ease,stroke .12s ease,stroke-width .12s ease}.dc-ai-planned-total{display:none!important}

/* v2.0.5 AI board visibility fix */
.dc-ai-match-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px;padding:10px;border:1px solid var(--dc-border);border-radius:16px;background:rgba(255,255,255,.035)}
.dc-dartboard-card--ai{border-color:rgba(53,224,127,.28)}
/* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
.dc-dartboard-wrap--ai{position:relative;display:grid;place-items:center;min-height:260px}
*/
@media (min-width:901px){
  body.dc-match-mode .dc-ai-match-toolbar{grid-column:1;grid-row:1;margin:0;padding:8px 10px;align-self:start}
  body.dc-match-mode .dc-ai-turn-card{grid-column:1;grid-row:2;margin:0;padding:14px;border-radius:18px;align-self:start}
  body.dc-match-mode .dc-ai-turn-card h2{margin:0 0 6px;font-size:clamp(20px,1.7vw,28px)}
  body.dc-match-mode .dc-ai-turn-card p{margin:0 0 10px;font-size:13px}
  body.dc-match-mode .dc-ai-countdown{margin:8px 0 10px;padding:10px 12px}
  body.dc-match-mode .dc-dartboard-card--ai{grid-column:2;grid-row:1/4;margin:0;padding:14px;border-radius:22px;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);align-items:center;overflow:visible}
  body.dc-match-mode .dc-dartboard-card--ai .dc-dartboard-help{margin:0 0 8px;font-size:12px;text-align:center}
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-dartboard-wrap--ai{height:100%;min-height:0;align-self:stretch}
*/
  body.dc-match-mode .dc-dartboard-card--ai .dc-dartboard{width:auto;height:auto;max-width:100%;max-height:calc(100vh - 170px);aspect-ratio:1/1;object-fit:contain}
}

/* v2.0.6 Restrechner */
.dc-input-mode-bar__actions{display:flex;gap:10px;align-items:center;margin-left:auto;flex-wrap:wrap}.dc-rest-calculator-modal{z-index:205}.dc-rest-calculator{display:grid;gap:16px}.dc-rest-calculator__start,.dc-rest-calculator__result{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.dc-rest-calculator__start{grid-template-columns:1fr}.dc-rest-calculator__start,.dc-rest-calculator__result>div{padding:14px;border:1px solid var(--dc-border);border-radius:16px;background:rgba(255,255,255,.045)}.dc-rest-calculator__start span,.dc-rest-calculator__result span,.dc-rest-calculator__step span{display:block;color:var(--dc-muted);font-size:12px;text-transform:uppercase;letter-spacing:.06em;font-weight:800}.dc-rest-calculator__start strong,.dc-rest-calculator__result strong{display:block;margin-top:4px;font-size:34px;line-height:1;font-weight:950}.dc-rest-calculator__inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.dc-rest-calculator__steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.dc-rest-calculator__step{padding:10px 12px;border:1px solid var(--dc-border);border-radius:14px;background:#080a0c}.dc-rest-calculator__step strong{display:block;margin-top:3px;font-size:20px}.dc-rest-calculator__step.is-bust{border-color:rgba(255,77,94,.42);background:var(--dc-danger-soft);color:#ffd8dc}@media(max-width:700px){.dc-input-mode-bar__actions{width:100%;margin-left:0}.dc-input-mode-bar__actions .dc-button{flex:1}.dc-rest-calculator__inputs,.dc-rest-calculator__steps,.dc-rest-calculator__result{grid-template-columns:1fr}}

/* v2.0.7 AI dart flight animation: visual only, driven by existing server-side AI segments. */

.dc-dartboard__outer-shell{fill:#050607;stroke:#1c2328;stroke-width:7}
.dc-dartboard__number-ring{fill:#11161a;stroke:#252d32;stroke-width:2}
.dc-dartboard__miss-zone{fill:#0b0f12;stroke:#2a3338;stroke-width:1.6;cursor:pointer}
.dc-dartboard__segment{cursor:pointer;stroke:#15191c;stroke-width:.9;vector-effect:non-scaling-stroke;transition:filter .12s ease,stroke .12s ease,stroke-width .12s ease}
.dc-dartboard__segment--single_inner.dc-dartboard__segment--dark,
.dc-dartboard__segment--single_outer.dc-dartboard__segment--dark{fill:#20282b}
.dc-dartboard__segment--single_inner.dc-dartboard__segment--light,
.dc-dartboard__segment--single_outer.dc-dartboard__segment--light{fill:#d8cfb4}
.dc-dartboard__segment--triple.dc-dartboard__segment--dark,
.dc-dartboard__segment--double.dc-dartboard__segment--dark{fill:#b7262f}
.dc-dartboard__segment--triple.dc-dartboard__segment--light,
.dc-dartboard__segment--double.dc-dartboard__segment--light{fill:#16864f}
.dc-dartboard__spider{pointer-events:none;fill:none;stroke:#0d1113;stroke-width:.95;vector-effect:non-scaling-stroke;opacity:.82}
.dc-dartboard__score-boundary{pointer-events:none;fill:none;stroke:#343d42;stroke-width:1.2;vector-effect:non-scaling-stroke;opacity:.9}
.dc-dartboard__outer-bull{fill:#16864f;stroke:#101417;stroke-width:.9;vector-effect:non-scaling-stroke;cursor:pointer}
.dc-dartboard__bull{fill:#b7262f;stroke:#101417;stroke-width:.9;vector-effect:non-scaling-stroke;cursor:pointer}
.dc-dartboard__number{fill:#edf0f2;font-size:17px;font-weight:950;font-family:var(--dc-font);pointer-events:none;text-shadow:0 1px 2px rgba(0,0,0,.72)}
.dc-dartboard [data-segment]:hover{filter:brightness(1.18) saturate(1.08)}
.dc-dartboard [data-segment].is-hit{filter:brightness(1.65) drop-shadow(0 0 9px rgba(255,255,255,.76));stroke:#f5fbff;stroke-width:1.8}
.dc-dartboard [data-segment].is-ai-hit{filter:brightness(1.95) drop-shadow(0 0 18px rgba(53,224,127,.95)) drop-shadow(0 0 8px rgba(255,255,255,.72));stroke:#35e07f;stroke-width:2.4}

/* v2.1.73 AI Dart Asset + Direction Pass */
/* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
.dc-dartboard-wrap--ai{
  isolation:isolate;
  overflow:visible;
  position:relative;
}
*/

.dc-ai-flying-dart,
.dc-ai-flying-dart::before,
.dc-ai-flying-dart::after{
  box-sizing:border-box;
}

.dc-ai-flying-dart{
  --dc-dart-start-x:190px;
  --dc-dart-start-y:-46px;
  --dc-dart-rotation:0deg;
  --dc-dart-delay:0ms;
  --dc-dart-width:100px;
  --dc-dart-height:156px;
  --dc-dart-anchor-x:50px;
  --dc-dart-anchor-y:150px;
  position:absolute;
  z-index:12;
  left:0;
  top:0;
  width:var(--dc-dart-width);
  height:var(--dc-dart-height);
  pointer-events:none;
  opacity:0;
  transform:translate(calc(var(--dc-dart-start-x) - var(--dc-dart-anchor-x)), calc(var(--dc-dart-start-y) - var(--dc-dart-anchor-y))) rotate(var(--dc-dart-rotation)) scale(.935);
  transform-origin:var(--dc-dart-anchor-x) var(--dc-dart-anchor-y);
  filter:drop-shadow(0 10px 14px rgba(0,0,0,.24)) drop-shadow(0 18px 20px rgba(0,0,0,.15));
  transition:transform .5s cubic-bezier(.16,.82,.18,1), opacity .14s ease;
  transition-delay:var(--dc-dart-delay);
}

.dc-ai-flying-dart::after{
  content:"";
  position:absolute;
  left:max(4px, calc(var(--dc-dart-anchor-x) - 16px));
  top:max(4px, calc(var(--dc-dart-anchor-y) - 7px));
  width:32px;
  height:16px;
  border-radius:999px;
  background:radial-gradient(ellipse at center, rgba(0,0,0,.28) 0%, rgba(0,0,0,.13) 50%, rgba(0,0,0,0) 82%);
  filter:blur(2px);
  opacity:.9;
  z-index:0;
  transform:translate(-50%, -30%) rotate(-8deg);
}

.dc-ai-flying-dart.is-flying{
  opacity:1;
  transform:translate(calc(0px - var(--dc-dart-anchor-x)), calc(0px - var(--dc-dart-anchor-y))) rotate(var(--dc-dart-rotation)) scale(1);
}

.dc-ai-flying-dart.is-stuck{
  animation:dcDartStickV6 .17s ease-out;
}

@keyframes dcDartStickV6{
  0%{transform:translate(calc(0px - var(--dc-dart-anchor-x)), calc(0px - var(--dc-dart-anchor-y))) rotate(var(--dc-dart-rotation)) scale(1.05)}
  100%{transform:translate(calc(0px - var(--dc-dart-anchor-x)), calc(0px - var(--dc-dart-anchor-y))) rotate(var(--dc-dart-rotation)) scale(1)}
}

.dc-ai-flying-dart__asset{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center center;
  user-select:none;
  -webkit-user-drag:none;
}


.dc-ai-dart-debug-point{
  position:absolute;
  z-index:20;
  left:0;
  top:0;
  width:0;
  height:0;
  pointer-events:none;
}

.dc-ai-dart-debug-point__cross{
  position:absolute;
  left:0;
  top:0;
  width:14px;
  height:14px;
  transform:translate(-50%, -50%);
}

.dc-ai-dart-debug-point__cross::before,
.dc-ai-dart-debug-point__cross::after{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  background:#7EEBFF;
  box-shadow:0 0 0 1px rgba(0,0,0,.85), 0 0 8px rgba(0,216,255,.35);
  transform:translate(-50%, -50%);
}

.dc-ai-dart-debug-point__cross::before{
  width:14px;
  height:2px;
}

.dc-ai-dart-debug-point__cross::after{
  width:2px;
  height:14px;
}

.dc-ai-dart-debug-point__label{
  position:absolute;
  left:10px;
  top:10px;
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:3px 6px;
  border-radius:999px;
  background:rgba(8,12,16,.82);
  border:1px solid rgba(126,235,255,.42);
  color:#dff9ff;
  font-size:11px;
  font-weight:700;
  line-height:1.2;
  white-space:nowrap;
  box-shadow:0 8px 16px rgba(0,0,0,.18);
}
.dc-ai-dart-debug-point.is-mismatch .dc-ai-dart-debug-point__label{
  border-color:rgba(255,122,122,.72);
  color:#ffe5e5;
  background:rgba(50,12,14,.88);
}



/* legacy css-drawn dart parts are no longer used */
.dc-ai-flying-dart__tip,
.dc-ai-flying-dart__barrel,
.dc-ai-flying-dart__rear,
.dc-ai-flying-dart__shaft,
.dc-ai-flying-dart__flight{
  display:none !important;
}

@media (max-width:720px){
  .dc-ai-flying-dart{
    filter:drop-shadow(0 7px 9px rgba(0,0,0,.22)) drop-shadow(0 12px 14px rgba(0,0,0,.16));
  }
}

@media (prefers-reduced-motion:reduce){
  .dc-ai-flying-dart{
    transition:none;
    transform:translate(0,-50%) rotate(var(--dc-dart-rotation));
    opacity:1;
  }
  .dc-ai-flying-dart.is-stuck{
    animation:none;
  }
}

/* v2.1.7 Matchreport progress graphs */
.dc-report-progress{display:grid;gap:18px}
.dc-report-progress .dc-section-head{align-items:flex-start}
.dc-report-chart-card,.dc-report-leg-graph{border:1px solid var(--dc-border);border-radius:18px;background:rgba(255,255,255,.035);padding:14px}
.dc-report-chart-card__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}
.dc-report-chart-card__head h3{margin:0;font-size:18px}
.dc-report-chart-legend{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 10px}
.dc-report-chart-legend__item{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:850;color:var(--dc-muted)}
.dc-report-chart-legend__item::before{content:"";display:inline-block;width:22px;height:3px;border-radius:999px;background:var(--dc-chart-line)}
.dc-report-chart-legend__item--1{--dc-chart-line:#35e07f}
.dc-report-chart-legend__item--2{--dc-chart-line:#7aa7ff}
.dc-report-chart-legend__item--3{--dc-chart-line:#f6c85f}
.dc-report-chart-legend__item--4{--dc-chart-line:#ff7a90}
.dc-report-chart{display:block;width:100%;height:auto;min-height:210px;border-radius:16px;background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));overflow:visible}
.dc-report-chart__grid{stroke:rgba(255,255,255,.18);stroke-width:1;vector-effect:non-scaling-stroke}
.dc-report-chart__axis-label{fill:var(--dc-muted);font-size:12px;font-weight:800}
.dc-report-chart__line{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 4px 8px rgba(0,0,0,.25))}
.dc-report-chart__line--1{stroke:#35e07f}
.dc-report-chart__line--2{stroke:#7aa7ff}
.dc-report-chart__line--3{stroke:#f6c85f}
.dc-report-chart__line--4{stroke:#ff7a90}
.dc-report-chart__dot{stroke:#0b0f12;stroke-width:1.5}
.dc-report-chart__dot--1{fill:#35e07f}
.dc-report-chart__dot--2{fill:#7aa7ff}
.dc-report-chart__dot--3{fill:#f6c85f}
.dc-report-chart__dot--4{fill:#ff7a90}
.dc-report-leg-graphs{display:grid;gap:10px}
.dc-report-leg-graph{padding:0;overflow:hidden}
.dc-report-leg-graph summary{display:grid;grid-template-columns:minmax(80px,auto) 1fr auto;gap:12px;align-items:center;cursor:pointer;padding:14px 16px;font-weight:850}
.dc-report-leg-graph summary span{color:var(--dc-muted);font-size:13px;font-weight:750}
.dc-report-leg-graph[open]{padding-bottom:14px}
.dc-report-leg-graph[open] .dc-report-chart-legend,.dc-report-leg-graph[open] .dc-report-chart{margin-left:14px;margin-right:14px;width:calc(100% - 28px)}
@media(max-width:720px){
  .dc-report-leg-graph summary{grid-template-columns:1fr;gap:4px}
  .dc-report-chart{min-height:180px}
  .dc-report-chart__line{stroke-width:3}
}


/* v2.1.8 Matchreport chart tooltip */
.dc-report-chart__dot{
  cursor:help;
  transition:r .12s ease, filter .12s ease, stroke-width .12s ease;
}

.dc-report-chart__dot:hover,
.dc-report-chart__dot:focus{
  r:6.5;
  stroke-width:2;
  filter:drop-shadow(0 0 10px rgba(255,255,255,.55));
  outline:none;
}

.dc-report-tooltip{
  position:fixed;
  z-index:350;
  min-width:150px;
  max-width:240px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:14px;
  background:rgba(8,10,12,.96);
  box-shadow:0 16px 36px rgba(0,0,0,.42), inset 0 1px 0 rgba(255,255,255,.08);
  color:var(--dc-text);
  pointer-events:none;
  opacity:0;
  transform:translateY(4px);
  transition:opacity .1s ease, transform .1s ease;
  backdrop-filter:blur(10px);
}

.dc-report-tooltip.is-visible{
  opacity:1;
  transform:translateY(0);
}

.dc-report-tooltip strong,
.dc-report-tooltip span,
.dc-report-tooltip em{
  display:block;
}

.dc-report-tooltip strong{
  font-size:13px;
  line-height:1.25;
  font-weight:950;
}

.dc-report-tooltip span{
  margin-top:2px;
  color:var(--dc-muted);
  font-size:11px;
  font-weight:750;
}

.dc-report-tooltip em{
  margin-top:5px;
  color:#fff;
  font-size:18px;
  line-height:1;
  font-style:normal;
  font-weight:950;
}

.dc-report-tooltip::after{
  content:"";
  position:absolute;
  left:50%;
  bottom:-7px;
  width:12px;
  height:12px;
  transform:translateX(-50%) rotate(45deg);
  border-right:1px solid rgba(255,255,255,.16);
  border-bottom:1px solid rgba(255,255,255,.16);
  background:rgba(8,10,12,.96);
}

@media(max-width:720px){
  .dc-report-tooltip{
    display:none;
  }
}


/* v2.1.9 Matchreport graph polish */
.dc-report-chart__goal-label{
  fill:rgba(255,255,255,.76);
  font-size:12px;
  font-weight:950;
  letter-spacing:.04em;
}

.dc-report-winner-line,
.dc-report-winner-chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
}

.dc-report-winner-line{
  color:#fff;
}

.dc-report-winner-chip{
  color:#fff !important;
  font-weight:950 !important;
}

.dc-report-leg-graph summary .dc-report-winner-chip{
  justify-self:start;
  padding:4px 9px;
  border:1px solid rgba(53,224,127,.24);
  border-radius:999px;
  background:rgba(53,224,127,.08);
}


/* v2.1.11 Matchreport checkout marker */
.dc-report-chart__checkout-badge{
  pointer-events:none;
}

.dc-report-chart__checkout-line{
  stroke:rgba(255,255,255,.24);
  stroke-width:1.5;
  stroke-dasharray:3 4;
}

.dc-report-chart__checkout-trophy-ring{
  fill:rgba(53,224,127,.12);
  stroke:rgba(53,224,127,.35);
  stroke-width:1.5;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.24));
}

.dc-report-chart__checkout-trophy{
  font-size:14px;
  text-anchor:middle;
  dominant-baseline:middle;
}

.dc-report-chart__checkout-pill{
  fill:rgba(10,13,16,.96);
  stroke:rgba(53,224,127,.34);
  stroke-width:1.5;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.32));
}

.dc-report-chart__checkout-pill-text{
  fill:#f4fff8;
  font-size:11px;
  font-weight:950;
  letter-spacing:.08em;
  text-anchor:middle;
}


/* v2.1.12 checkout marker layering tweak */
.dc-report-chart__checkout-badge{
  isolation:isolate;
}


/* v2.1.14 checkout marker simplify */
.dc-report-chart__checkout-line,
.dc-report-chart__checkout-pill,
.dc-report-chart__checkout-pill-text{display:none !important;}

.dc-report-chart__checkout-trophy-ring{
  fill:rgba(53,224,127,.18);
  stroke:rgba(53,224,127,.42);
  stroke-width:1.6;
}

.dc-report-chart__checkout-trophy{
  font-size:15px;
  text-anchor:middle;
  dominant-baseline:middle;
}


/* v2.1.16 Bed and Statfast branding pass */
.dc-brand__mark--image{
  overflow:hidden;
  background:#050607;
  border:1px solid rgba(255,255,255,.14);
  box-shadow:0 10px 24px rgba(0,0,0,.28);
}

.dc-brand__mark--image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transform:scale(1.18);
}

.dc-brand--app span:last-child{
  line-height:1.05;
}

.dc-auth-app{
  background:
    radial-gradient(circle at 18% 20%,rgba(53,224,127,.13),transparent 32%),
    radial-gradient(circle at 78% 16%,rgba(255,125,28,.12),transparent 28%),
    linear-gradient(180deg,#050607,#080a0c 52%,#050607);
}

.dc-auth-shell{
  max-width:1260px;
  grid-template-columns:minmax(0,1.18fr) 440px;
  gap:36px;
}

.dc-auth-brand--bedstat{
  align-self:center;
}

.dc-auth-logo{
  display:block;
  width:min(720px,100%);
  max-height:430px;
  object-fit:contain;
  object-position:left center;
  margin:0 0 18px;
  filter:drop-shadow(0 28px 50px rgba(0,0,0,.38));
}

.dc-auth-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin:0 0 16px !important;
  padding:8px 12px;
  border:1px solid rgba(53,224,127,.28);
  border-radius:999px;
  background:rgba(53,224,127,.08);
  color:var(--dc-primary-strong) !important;
  font-size:13px;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.dc-auth-brand--bedstat h1{
  max-width:780px;
  margin-top:0;
  font-size:clamp(34px,4.8vw,62px);
  line-height:.98;
}

.dc-auth-brand--bedstat p:not(.dc-auth-kicker){
  max-width:700px;
  font-size:clamp(16px,1.7vw,20px);
  color:#dce3dc;
}

.dc-auth-panel{
  border:1px solid rgba(255,255,255,.12);
  border-radius:28px;
  background:linear-gradient(180deg,rgba(17,20,23,.92),rgba(9,11,13,.92));
  box-shadow:0 28px 80px rgba(0,0,0,.42);
  padding:18px;
}

.dc-auth-card{
  margin-bottom:0;
}

@media (max-width:980px){
  .dc-auth-shell{
    grid-template-columns:1fr;
    padding:24px;
  }

  .dc-auth-logo{
    max-height:330px;
    margin-inline:auto;
    object-position:center;
  }

  .dc-auth-brand--bedstat{
    text-align:center;
  }

  .dc-auth-kicker{
    justify-content:center;
  }

  .dc-auth-brand--bedstat h1,
  .dc-auth-brand--bedstat p:not(.dc-auth-kicker){
    margin-left:auto;
    margin-right:auto;
  }
}

@media (max-width:560px){
  .dc-auth-shell{
    padding:18px;
  }

  .dc-auth-logo{
    max-height:240px;
  }

  .dc-auth-panel{
    padding:12px;
    border-radius:22px;
  }
}


/* v2.1.18 Spielräume PvP hero */
.dc-room-pvp-hero{
  display:grid;
  grid-template-columns:minmax(0,.82fr) minmax(360px,1.18fr);
  gap:22px;
  align-items:center;
  margin:0 0 22px;
  padding:22px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:30px;
  background:
    radial-gradient(circle at 18% 22%,rgba(53,224,127,.14),transparent 32%),
    radial-gradient(circle at 82% 24%,rgba(255,126,28,.12),transparent 34%),
    linear-gradient(180deg,rgba(17,20,23,.92),rgba(8,10,12,.96));
  box-shadow:var(--dc-shadow-card);
  overflow:hidden;
}

.dc-room-pvp-hero__copy{
  position:relative;
  z-index:2;
  padding:8px 0 8px 6px;
}

.dc-room-pvp-hero__copy h1{
  max-width:660px;
  margin:10px 0 14px;
  font-size:clamp(34px,4.8vw,64px);
  line-height:.96;
  letter-spacing:-.045em;
}

.dc-room-pvp-hero__copy p{
  max-width:620px;
  margin:0 0 18px;
  color:#dce3dc;
  font-size:clamp(15px,1.4vw,18px);
}

.dc-room-pvp-hero__note{
  color:var(--dc-muted);
  font-size:13px;
  font-weight:800;
}

.dc-room-pvp-hero__art{
  position:relative;
  align-self:stretch;
  min-height:280px;
  border-radius:24px;
  overflow:hidden;
  background:#050607;
  border:1px solid rgba(255,255,255,.1);
}

.dc-room-pvp-hero__art img{
  width:100%;
  height:100%;
  min-height:280px;
  object-fit:cover;
  object-position:center;
  display:block;
  filter:saturate(1.03) contrast(1.03);
}

@media (max-width:980px){
  .dc-room-pvp-hero{
    grid-template-columns:1fr;
  }

  .dc-room-pvp-hero__art{
    min-height:240px;
  }

  .dc-room-pvp-hero__art img{
    min-height:240px;
  }
}

@media (max-width:560px){
  .dc-room-pvp-hero{
    padding:16px;
    border-radius:24px;
  }

  .dc-room-pvp-hero__copy{
    padding:0;
  }

  .dc-room-pvp-hero__art,
  .dc-room-pvp-hero__art img{
    min-height:200px;
  }
}


/* v2.1.19 dashboard + friends hero art */
.dc-dashboard-hero,
.dc-friends-hero{
  display:grid;
  grid-template-columns:minmax(0,.88fr) minmax(320px,1.12fr);
  gap:22px;
  align-items:center;
  margin:0 0 22px;
  padding:22px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:30px;
  background:linear-gradient(180deg,rgba(17,20,23,.92),rgba(8,10,12,.96));
  box-shadow:var(--dc-shadow-card);
  overflow:hidden;
}

.dc-dashboard-hero{
  background:
    radial-gradient(circle at 18% 20%,rgba(53,224,127,.12),transparent 34%),
    radial-gradient(circle at 82% 22%,rgba(255,126,28,.14),transparent 32%),
    linear-gradient(180deg,rgba(17,20,23,.92),rgba(8,10,12,.96));
}

.dc-friends-hero{
  background:
    radial-gradient(circle at 20% 20%,rgba(53,224,127,.13),transparent 34%),
    radial-gradient(circle at 84% 18%,rgba(255,126,28,.10),transparent 28%),
    linear-gradient(180deg,rgba(17,20,23,.92),rgba(8,10,12,.96));
}

.dc-dashboard-hero__copy,
.dc-friends-hero__copy{position:relative;z-index:2;padding:6px 0 6px 6px}

.dc-dashboard-hero__copy h1,
.dc-friends-hero__copy h1{
  margin:10px 0 14px;
  font-size:clamp(34px,4.7vw,62px);
  line-height:.96;
  letter-spacing:-.045em;
}

.dc-dashboard-hero__copy p,
.dc-friends-hero__copy p{
  max-width:620px;
  margin:0 0 18px;
  color:#dce3dc;
  font-size:clamp(15px,1.4vw,18px);
}

.dc-dashboard-hero__art,
.dc-friends-hero__art{
  min-height:280px;
  border-radius:24px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.1);
  background:#050607;
}

.dc-dashboard-hero__art img,
.dc-friends-hero__art img{
  width:100%;
  height:100%;
  min-height:280px;
  display:block;
  object-fit:cover;
  object-position:center;
}

.dc-dashboard-hero__art img{object-position:center top}
.dc-friends-hero__art img{object-position:center}

@media (max-width:980px){
  .dc-dashboard-hero,
  .dc-friends-hero{grid-template-columns:1fr}
  .dc-dashboard-hero__art,
  .dc-friends-hero__art,
  .dc-dashboard-hero__art img,
  .dc-friends-hero__art img{min-height:220px}
}

@media (max-width:560px){
  .dc-dashboard-hero,
  .dc-friends-hero{padding:16px;border-radius:24px}
  .dc-dashboard-hero__copy,
  .dc-friends-hero__copy{padding:0}
  .dc-dashboard-hero__art,
  .dc-friends-hero__art,
  .dc-dashboard-hero__art img,
  .dc-friends-hero__art img{min-height:180px}
}


/* v2.1.20 rated/unrated match controls */
.dc-check-card em{
  display:block;
  margin-top:3px;
  color:var(--dc-muted);
  font-size:12px;
  font-style:normal;
  font-weight:600;
}


/* v2.1.22 Statistikzentrum v1 on summary basis */
.dc-stats-data-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:0 0 18px;
}
.dc-stats-data-strip>div{
  padding:16px 18px;
  border:1px solid var(--dc-border);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));
  box-shadow:var(--dc-shadow-soft);
}
.dc-stats-data-strip span{
  display:block;
  color:var(--dc-muted);
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-weight:800;
}
.dc-stats-data-strip strong{
  display:block;
  margin-top:6px;
  font-size:24px;
  line-height:1.1;
  overflow-wrap:anywhere;
}
.dc-stats-data-strip em{
  display:block;
  margin-top:6px;
  color:var(--dc-muted);
  font-size:12px;
  font-style:normal;
}
@media (max-width:900px){
  .dc-stats-data-strip{grid-template-columns:1fr}
}


/* v2.1.23 Heatmap v1 */
.dc-stats-heatmap h3{margin:0 0 12px;font-size:18px}
.dc-stats-heatmap__summary{
  display:grid;
  grid-template-columns:1.6fr .7fr .7fr;
  gap:12px;
  margin-bottom:18px;
}
.dc-stats-heatmap__summary>div,
.dc-stats-heatmap__rings>div{
  padding:14px 16px;
  border:1px solid var(--dc-border);
  border-radius:16px;
  background:rgba(255,255,255,.035);
}
.dc-stats-heatmap__summary span,
.dc-stats-heatmap__rings span{
  display:block;
  color:var(--dc-muted);
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-weight:800;
}
.dc-stats-heatmap__summary strong{
  display:block;
  margin-top:6px;
  overflow-wrap:anywhere;
}
.dc-stats-heatmap__grid{align-items:start}
.dc-stats-heatmap__bars{display:grid;gap:10px}
.dc-stats-heatmap__bar{
  display:grid;
  grid-template-columns:58px minmax(0,1fr) 92px;
  gap:10px;
  align-items:center;
}
.dc-stats-heatmap__bar span{font-weight:900}
.dc-stats-heatmap__bar>div{
  height:12px;
  border-radius:999px;
  background:rgba(255,255,255,.08);
  overflow:hidden;
}
.dc-stats-heatmap__bar i{
  display:block;
  width:calc(max(.04,var(--heat)) * 100%);
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,var(--dc-primary),#ff7e1c);
}
.dc-stats-heatmap__bar strong{
  color:var(--dc-muted);
  font-size:12px;
  text-align:right;
}
.dc-stats-heatmap__rings{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}
.dc-stats-heatmap__rings strong{
  display:block;
  margin-top:5px;
  font-size:26px;
  line-height:1.1;
}
.dc-stats-heatmap__rings em{
  display:block;
  color:var(--dc-muted);
  font-size:12px;
  font-style:normal;
}
@media (max-width:980px){
  .dc-stats-heatmap__summary,
  .dc-stats-heatmap__rings{grid-template-columns:1fr}
}
@media (max-width:620px){
  .dc-stats-heatmap__bar{grid-template-columns:44px minmax(0,1fr);gap:8px}
  .dc-stats-heatmap__bar strong{grid-column:2;text-align:left}
}


/* v2.1.24 Smart Checkout UX */
.dc-smart-checkout{
  border:1px solid rgba(255,189,74,.36);
  background:linear-gradient(180deg,rgba(255,189,74,.12),rgba(255,255,255,.025));
  border-radius:18px;
  padding:16px;
  box-shadow:0 16px 38px rgba(0,0,0,.22);
}
.dc-smart-checkout[hidden]{display:none!important}
.dc-smart-checkout h3{margin:0 0 6px;font-size:20px}
.dc-smart-checkout p{margin:0 0 14px;color:var(--dc-muted)}
.dc-smart-checkout__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-bottom:10px;
}
.dc-smart-checkout-hint{
  font-size:12px;
  line-height:1.45;
}
.dc-textscore-card.has-smart-checkout-open{
  border-color:rgba(255,189,74,.48);
}


/* v2.1.25 checkout double-attempt accuracy */
.dc-smart-checkout__actions .dc-button{
  min-height:42px;
}


/* v2.1.26 Dartboard live restscore */
.dc-dartboard__summary--live{
  display:grid;
  gap:10px;
}
.dc-dartboard-live-score{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  align-items:stretch;
}
.dc-dartboard-live-score>span{
  display:grid;
  gap:4px;
  padding:10px 12px;
  border:1px solid var(--dc-border);
  border-radius:14px;
  background:rgba(255,255,255,.035);
}
.dc-dartboard-live-score strong{
  color:var(--dc-muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.dc-dartboard-live-score em{
  font-style:normal;
  font-size:24px;
  font-weight:950;
  line-height:1;
}
.dc-dartboard-live-status{
  font-weight:900;
}
.dc-dartboard-live-status.is-checkout{
  border-color:rgba(53,224,127,.55);
  background:var(--dc-primary-soft);
  color:var(--dc-primary-strong);
}
.dc-dartboard-live-status.is-bust{
  border-color:rgba(255,77,94,.48);
  background:var(--dc-danger-soft);
  color:#ffd8dc;
}
@media (max-width:720px){
  .dc-dartboard-live-score{grid-template-columns:1fr}
}


/* v2.1.27 Board checkout confirmation */
.dc-dartboard-live-status.is-checkout{
  animation:dcCheckoutPulse 1.2s ease-in-out infinite;
}
[data-dartboard-confirm-checkout]{
  box-shadow:0 0 0 1px rgba(53,224,127,.28),0 14px 32px rgba(53,224,127,.14);
}
@keyframes dcCheckoutPulse{
  0%,100%{filter:brightness(1)}
  50%{filter:brightness(1.18)}
}


/* v2.1.28 Board Heatmap Visual v1 */
.dc-stats-heatmap--visual{
  overflow:hidden;
}
.dc-stats-heatmap__layout{
  display:grid;
  grid-template-columns:minmax(360px,560px) minmax(0,1fr);
  gap:22px;
  align-items:start;
}
.dc-stats-heatmap__board-wrap{
  display:grid;
  place-items:center;
  padding:18px;
  border:1px solid var(--dc-border);
  border-radius:24px;
  background:
    radial-gradient(circle at center,rgba(255,255,255,.05),rgba(0,0,0,.16) 62%,rgba(0,0,0,.38)),
    #080a0c;
}
.dc-heatmap-board{
  width:100%;
  max-width:540px;
  display:block;
  overflow:visible;
}
.dc-heatmap-board__outer{
  fill:#171b1f;
  stroke:#596169;
  stroke-width:7;
}
.dc-heatmap-board__miss{
  fill:var(--hm-fill);
  fill-opacity:var(--hm-opacity);
  stroke:#22282d;
  stroke-width:1.4;
}
.dc-heatmap-board__base-segment--dark{fill:#33383d}
.dc-heatmap-board__base-segment--light{fill:#a6abb0}
.dc-heatmap-board__base-bull-outer{fill:#757b80}
.dc-heatmap-board__base-bull{fill:#555b60}
.dc-heatmap-board__base{
  filter:grayscale(1) saturate(0);
}
.dc-heatmap-board__base-segment,
.dc-heatmap-board__base-bull,
.dc-heatmap-board__base-bull-outer{
  stroke:#20262b;
  stroke-width:.85;
  vector-effect:non-scaling-stroke;
}
.dc-heatmap-board__heat-segment{
  fill:var(--hm-fill);
  fill-opacity:var(--hm-opacity);
  stroke:rgba(255,255,255,.08);
  stroke-width:.35;
  vector-effect:non-scaling-stroke;
  transition:fill-opacity .14s ease,filter .14s ease,stroke .14s ease;
}
.dc-heatmap-board__heat-segment:hover{
  fill-opacity:1;
  filter:brightness(1.25) drop-shadow(0 0 10px rgba(255,255,255,.18));
  stroke:rgba(255,255,255,.72);
  stroke-width:1.4;
}
.dc-heatmap-board__spider{
  pointer-events:none;
  fill:none;
  stroke:#11161a;
  stroke-width:1.05;
  vector-effect:non-scaling-stroke;
  opacity:.92;
}
.dc-heatmap-board__boundary{
  pointer-events:none;
  fill:none;
  stroke:#69727a;
  stroke-width:1.2;
  vector-effect:non-scaling-stroke;
  opacity:.75;
}
.dc-heatmap-board__number{
  fill:#e6e9ec;
  font-size:17px;
  font-weight:950;
  font-family:var(--dc-font);
  pointer-events:none;
  text-shadow:0 1px 2px rgba(0,0,0,.85);
}
.dc-stats-heatmap__side{
  display:grid;
  gap:16px;
}
.dc-stats-heatmap__side .dc-stats-heatmap__summary{
  grid-template-columns:1fr;
  margin-bottom:0;
}
.dc-heatmap-legend{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:8px;
}
.dc-heatmap-legend>div{
  display:grid;
  gap:5px;
  padding:10px;
  border:1px solid var(--dc-border);
  border-radius:14px;
  background:rgba(255,255,255,.035);
}
.dc-heatmap-legend i{
  display:block;
  height:10px;
  border-radius:999px;
  background:var(--legend-color);
  border:1px solid rgba(255,255,255,.18);
}
.dc-heatmap-legend span{
  font-weight:900;
  font-size:12px;
}
.dc-heatmap-legend em{
  color:var(--dc-muted);
  font-size:11px;
  font-style:normal;
  line-height:1.25;
}
.dc-stats-heatmap__tables{
  margin-top:18px;
  align-items:start;
}
.dc-stats-heatmap__tables h3{
  margin:0 0 12px;
}
@media (max-width:1180px){
  .dc-stats-heatmap__layout{grid-template-columns:1fr}
  .dc-stats-heatmap__board-wrap{max-width:680px;width:100%;justify-self:center}
}
@media (max-width:760px){
  .dc-heatmap-legend{grid-template-columns:1fr 1fr}
}


/* v2.1.29 Heatmap + report tooltip polish */
.dc-heatmap-board__miss{
  fill:transparent !important;
  fill-opacity:0 !important;
}
.dc-heatmap-board__miss:hover{
  fill:rgba(255,255,255,.04) !important;
  fill-opacity:1 !important;
}
.dc-heatmap-legend{
  grid-template-columns:repeat(6,minmax(0,1fr));
}
.dc-report-tooltip small{
  display:block;
  margin-top:6px;
  padding-top:6px;
  border-top:1px solid rgba(255,255,255,.10);
  color:var(--dc-text-soft);
  font-size:11px;
  line-height:1.25;
  font-weight:800;
}
@media (max-width:900px){
  .dc-heatmap-legend{grid-template-columns:1fr 1fr 1fr}
}
@media (max-width:560px){
  .dc-heatmap-legend{grid-template-columns:1fr 1fr}
}


/* v2.1.30 Local SVG navigation icon system */
.dc-icon{
  width:18px;
  height:18px;
  flex:0 0 18px;
  display:inline-block;
  fill:none;
  stroke:currentColor;
  stroke-width:2;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
.dc-nav{
  gap:6px;
}
.dc-nav__link{
  display:flex;
  align-items:center;
  gap:10px;
  padding:11px 13px;
  border:1px solid transparent;
  border-radius:14px;
  color:var(--dc-text-soft);
  font-weight:800;
  transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease;
}
.dc-nav__link:hover{
  background:var(--dc-surface-2);
  border-color:var(--dc-border);
  color:var(--dc-text);
}
.dc-nav__link.is-active{
  background:linear-gradient(180deg,rgba(53,224,127,.18),rgba(53,224,127,.08));
  border-color:rgba(53,224,127,.32);
  color:var(--dc-primary-strong);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.dc-nav__link.is-active .dc-icon{
  filter:drop-shadow(0 0 8px rgba(53,224,127,.28));
}
.dc-button--with-icon{
  gap:8px;
}
.dc-button--with-icon .dc-icon{
  width:16px;
  height:16px;
  flex-basis:16px;
}
.dc-match-sidebar-collapsed .dc-nav__link span{
  display:none;
}
.dc-match-sidebar-collapsed .dc-nav__link{
  justify-content:center;
  padding:11px;
}
.dc-match-sidebar-collapsed .dc-nav__link .dc-icon{
  width:20px;
  height:20px;
  flex-basis:20px;
}
@media (max-width:900px){
  .dc-nav__link{
    justify-content:flex-start;
  }
}


/* v2.1.34 Stats visual winrate donut */
.dc-winrate-hero{overflow:hidden}
.dc-winrate-hero__body{display:grid;grid-template-columns:minmax(260px,320px) minmax(0,1fr);gap:24px;align-items:center}
.dc-winrate-donut{position:relative;display:grid;place-items:center;min-height:220px;padding:12px;border:1px solid var(--dc-border);border-radius:24px;background:radial-gradient(circle at center,rgba(53,224,127,.10),rgba(255,255,255,.02) 58%,rgba(0,0,0,.18));}
.dc-winrate-donut svg{width:220px;height:220px;display:block;transform:rotate(-90deg)}
.dc-winrate-donut__track{fill:none;stroke:rgba(255,255,255,.08);stroke-width:14}
.dc-winrate-donut__progress{fill:none;stroke:var(--dc-primary-strong);stroke-width:14;stroke-linecap:round;filter:drop-shadow(0 0 10px rgba(53,224,127,.28));transition:stroke-dashoffset .28s ease}
.dc-winrate-donut__center{position:absolute;inset:0;display:grid;place-items:center;text-align:center;gap:4px}
.dc-winrate-donut__center strong{font-size:46px;line-height:1;font-weight:950;color:var(--dc-primary-strong)}
.dc-winrate-donut__center span{color:var(--dc-muted);font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.dc-winrate-donut.is-empty .dc-winrate-donut__progress{stroke:rgba(255,255,255,.12);filter:none}
.dc-winrate-donut.is-empty .dc-winrate-donut__center strong{color:var(--dc-text-soft)}
.dc-winrate-hero__meta{display:grid;gap:16px}
.dc-winrate-hero__kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.dc-winrate-hero__kpis>div{padding:14px 16px;border:1px solid var(--dc-border);border-radius:18px;background:rgba(255,255,255,.035)}
.dc-winrate-hero__kpis span{display:block;color:var(--dc-muted);font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.dc-winrate-hero__kpis strong{display:block;margin-top:8px;font-size:34px;line-height:1;font-weight:950}
.dc-winrate-hero__split{padding:16px 18px;border:1px solid var(--dc-border);border-radius:18px;background:rgba(255,255,255,.035)}
.dc-winrate-hero__split-bar{display:flex;height:16px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}
.dc-winrate-hero__split-bar i{display:block;height:100%}
.dc-winrate-hero__split-bar .is-win{background:linear-gradient(90deg,var(--dc-primary),var(--dc-primary-strong))}
.dc-winrate-hero__split-bar .is-loss{background:linear-gradient(90deg,rgba(255,255,255,.18),rgba(255,255,255,.10))}
.dc-winrate-hero__split-labels{display:flex;justify-content:space-between;gap:16px;margin-top:10px;color:var(--dc-text-soft);font-size:13px;font-weight:700}
.dc-winrate-hero__split-labels b{font-weight:950;color:var(--dc-text)}
.dc-winrate-hero__note{margin:0;color:var(--dc-muted)}
@media (max-width:1000px){.dc-winrate-hero__body{grid-template-columns:1fr}.dc-winrate-donut{max-width:360px;width:100%;justify-self:center}.dc-winrate-hero__kpis{grid-template-columns:1fr 1fr 1fr}}
@media (max-width:640px){.dc-winrate-hero__kpis{grid-template-columns:1fr}.dc-winrate-hero__split-labels{display:grid;gap:6px}}


/* v2.1.35 stats hero + heatmap custom tooltip polish */
.dc-stats-overview-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:24px;align-items:center;padding:26px 28px;border:1px solid rgba(53,224,127,.22);border-radius:30px;background:linear-gradient(135deg,rgba(53,224,127,.10),rgba(255,255,255,.03) 48%,rgba(0,0,0,.12));box-shadow:var(--dc-shadow-card);margin:0 0 22px;overflow:hidden;position:relative}
.dc-stats-overview-hero::before{content:"";position:absolute;inset:auto -80px -80px auto;width:220px;height:220px;border-radius:999px;background:radial-gradient(circle,rgba(53,224,127,.12),transparent 70%);pointer-events:none}
.dc-stats-overview-hero__copy{position:relative;z-index:2;padding:6px 0 6px 6px}
.dc-stats-overview-hero__copy h1{margin:10px 0 8px;font-size:clamp(34px,4vw,60px);line-height:.96;letter-spacing:-.04em}
.dc-stats-overview-hero__copy p{max-width:64ch;color:var(--dc-text-soft);font-size:15px}
.dc-stats-overview-hero__art{position:relative;z-index:2;display:grid;place-items:center}
.dc-stats-overview-hero__art img{width:min(100%,420px);height:auto;display:block;filter:drop-shadow(0 22px 48px rgba(0,0,0,.35))}
.dc-heatmap-board__heat-segment:focus,.dc-heatmap-board__miss:focus{outline:none;filter:brightness(1.12)}
@media (max-width:980px){.dc-stats-overview-hero{grid-template-columns:1fr}.dc-stats-overview-hero__art,.dc-stats-overview-hero__art img{min-height:220px}.dc-stats-overview-hero__copy p{max-width:none}}
@media (max-width:640px){.dc-stats-overview-hero{padding:16px;border-radius:24px}.dc-stats-overview-hero__copy{padding:0}.dc-stats-overview-hero__art,.dc-stats-overview-hero__art img{min-height:180px}}


/* v2.1.36 webp brand assets + stats polish */
.dc-winrate-hero__body{grid-template-columns:minmax(240px,280px) minmax(0,1fr);gap:20px}
.dc-winrate-donut{min-height:200px;padding:10px 8px;border-radius:22px;background:radial-gradient(circle at center,rgba(53,224,127,.12),rgba(255,255,255,.018) 54%,rgba(0,0,0,.14))}
.dc-winrate-donut svg{width:190px;height:190px}
.dc-winrate-donut__track,.dc-winrate-donut__progress{stroke-width:12}
.dc-winrate-donut__center strong{font-size:32px;line-height:1.02;letter-spacing:-.03em}
.dc-winrate-donut__center span{font-size:12px;letter-spacing:.12em}
.dc-winrate-hero__kpis strong{font-size:28px}
.dc-winrate-hero__split{display:grid;gap:10px}
.dc-winrate-hero__note{font-size:14px}
.dc-period-trend-card{overflow:hidden}
.dc-period-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.dc-period-card{padding:16px;border:1px solid var(--dc-border);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.02));display:grid;gap:14px}
.dc-period-card__top{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.dc-period-card__top strong{display:block;font-size:20px;line-height:1.1}
.dc-period-card__top span{display:block;margin-top:5px;color:var(--dc-muted);font-size:13px}
.dc-period-card__split{display:grid;gap:10px}
.dc-period-card__split-bar{display:flex;height:12px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.06);box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}
.dc-period-card__split-bar i{display:block;height:100%}
.dc-period-card__split-bar .is-win{background:linear-gradient(90deg,var(--dc-primary),var(--dc-primary-strong))}
.dc-period-card__split-bar .is-loss{background:linear-gradient(90deg,rgba(255,255,255,.18),rgba(255,255,255,.10))}
.dc-period-card__split-labels{display:flex;flex-wrap:wrap;gap:12px 16px;color:var(--dc-text-soft);font-size:13px}
.dc-period-card__split-labels b{font-weight:950;color:var(--dc-text)}
.dc-period-card__kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.dc-period-card__kpis>div{padding:12px 12px;border:1px solid var(--dc-border);border-radius:14px;background:rgba(255,255,255,.03)}
.dc-period-card__kpis span{display:block;color:var(--dc-muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:800}
.dc-period-card__kpis strong{display:block;margin-top:6px;font-size:22px;line-height:1.05;font-weight:950}
@media (max-width:640px){.dc-period-card__top,.dc-period-card__split-labels{display:grid}.dc-period-card__kpis{grid-template-columns:1fr}}


/* v2.1.37 Average extremes */

.dc-average-layer-badges{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
.dc-average-layer{
  display:grid;
  gap:12px;
}
.dc-average-layer + .dc-average-layer{
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid var(--dc-border);
}
.dc-average-layer__head{
  display:flex;
  align-items:center;
  gap:12px;
}
.dc-average-layer__head p{
  margin:0;
  color:var(--dc-text-soft);
  font-size:13px;
}
.dc-average-layer__badge{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:0 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.055);
  color:var(--dc-text);
  font-size:12px;
  font-weight:950;
  letter-spacing:.12em;
}
@media(max-width:720px){
  .dc-average-layer-badges{justify-content:flex-start}
  .dc-average-layer__head{align-items:flex-start;flex-direction:column;gap:8px}
}

.dc-average-extremes{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.dc-average-extreme{
  display:grid;
  gap:16px;
  align-content:space-between;
  padding:18px;
  border:1px solid var(--dc-border);
  border-radius:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.02));
}
.dc-average-extreme--high{
  border-color:rgba(53,224,127,.28);
  background:linear-gradient(180deg,rgba(53,224,127,.09),rgba(255,255,255,.025));
}
.dc-average-extreme--low{
  border-color:rgba(255,255,255,.12);
}
.dc-average-extreme strong{
  display:block;
  margin-top:8px;
  font-size:clamp(42px,6vw,72px);
  line-height:.95;
  letter-spacing:-.05em;
  font-weight:950;
}
.dc-average-extreme--high strong{
  color:var(--dc-primary-strong);
}
.dc-average-extreme p{
  margin:10px 0 0;
  color:var(--dc-text-soft);
}
.dc-average-extreme__meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.dc-average-extreme__meta span{
  display:inline-flex;
  gap:5px;
  align-items:center;
  padding:6px 9px;
  border:1px solid var(--dc-border);
  border-radius:999px;
  background:rgba(255,255,255,.035);
  color:var(--dc-muted);
  font-size:12px;
  font-weight:800;
}
.dc-average-extreme__meta b{
  color:var(--dc-text);
}
@media(max-width:820px){
  .dc-average-extremes{grid-template-columns:1fr}
}


/* v2.1.38 winrate donut alignment fix */
.dc-winrate-donut{grid-template-rows:auto auto;align-content:center;justify-items:center;gap:8px}
.dc-winrate-donut svg{grid-row:1;grid-column:1}
.dc-winrate-donut__center{position:absolute;inset:0 0 34px 0;display:flex;align-items:center;justify-content:center;text-align:center;pointer-events:none}
.dc-winrate-donut__center strong{font-size:28px;line-height:1;letter-spacing:-.04em;max-width:140px}
.dc-winrate-donut__label{grid-row:2;display:flex;justify-content:center;align-items:center;min-height:18px;margin-top:-6px}
.dc-winrate-donut__label span{color:var(--dc-muted);font-size:13px;font-weight:900;text-transform:uppercase;letter-spacing:.14em}
.dc-winrate-donut.is-empty .dc-winrate-donut__label span{color:var(--dc-text-soft)}
@media (max-width:640px){.dc-winrate-donut__center strong{font-size:26px}.dc-winrate-donut__label span{font-size:12px}}


/* v2.1.39 Checkout and double quote visual rings */
.dc-quality-rings{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.dc-quality-ring{
  display:grid;
  grid-template-columns:132px minmax(0,1fr);
  gap:18px;
  align-items:center;
  padding:18px;
  border:1px solid rgba(53,224,127,.22);
  border-radius:22px;
  background:linear-gradient(180deg,rgba(53,224,127,.07),rgba(255,255,255,.024));
}
.dc-quality-ring--double{
  border-color:rgba(255,189,74,.24);
  background:linear-gradient(180deg,rgba(255,189,74,.06),rgba(255,255,255,.024));
}
.dc-quality-ring__chart{
  position:relative;
  display:grid;
  place-items:center;
  width:132px;
  height:132px;
}
.dc-quality-ring__chart svg{
  width:132px;
  height:132px;
  display:block;
  transform:rotate(-90deg);
}
.dc-quality-ring__track{
  fill:none;
  stroke:rgba(255,255,255,.08);
  stroke-width:10;
}
.dc-quality-ring__progress{
  fill:none;
  stroke:var(--dc-primary-strong);
  stroke-width:10;
  stroke-linecap:round;
  filter:drop-shadow(0 0 8px rgba(53,224,127,.26));
}
.dc-quality-ring--double .dc-quality-ring__progress{
  stroke:var(--dc-warning);
  filter:drop-shadow(0 0 8px rgba(255,189,74,.22));
}
.dc-quality-ring__chart strong{
  position:absolute;
  font-size:26px;
  line-height:1;
  font-weight:950;
  color:var(--dc-text);
  letter-spacing:-.04em;
}
.dc-quality-ring__copy h3{
  margin:6px 0 4px;
  font-size:22px;
  line-height:1.1;
}
.dc-quality-ring__copy p{
  margin:0 0 12px;
  color:var(--dc-muted);
}
.dc-quality-ring__kpis{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.dc-quality-ring__kpis>div{
  padding:9px 10px;
  border:1px solid var(--dc-border);
  border-radius:13px;
  background:rgba(255,255,255,.035);
}
.dc-quality-ring__kpis span{
  display:block;
  color:var(--dc-muted);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:850;
}
.dc-quality-ring__kpis strong{
  display:block;
  margin-top:4px;
  font-size:20px;
  line-height:1;
  font-weight:950;
}
.dc-quality-ring.is-empty{
  border-color:var(--dc-border);
  background:rgba(255,255,255,.025);
}
.dc-quality-ring.is-empty .dc-quality-ring__progress{
  stroke:rgba(255,255,255,.12);
  filter:none;
}
@media(max-width:1180px){
  .dc-quality-rings{grid-template-columns:1fr}
}
@media(max-width:620px){
  .dc-quality-ring{grid-template-columns:1fr;justify-items:center;text-align:center}
  .dc-quality-ring__kpis{grid-template-columns:1fr 1fr 1fr;width:100%}
}


/* v2.1.41 Scoring distribution */
.dc-scoring-distribution{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(240px,.75fr);
  gap:18px;
  align-items:start;
}
.dc-scoring-distribution__bars{
  display:grid;
  gap:10px;
}
.dc-scoring-bucket{
  display:grid;
  grid-template-columns:92px minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:10px 12px;
  border:1px solid var(--dc-border);
  border-radius:15px;
  background:rgba(255,255,255,.03);
}
.dc-scoring-bucket__label strong{
  display:block;
  font-size:15px;
  line-height:1.1;
}
.dc-scoring-bucket__label span{
  display:block;
  color:var(--dc-muted);
  font-size:12px;
  margin-top:4px;
  font-weight:800;
}
.dc-scoring-bucket__track{
  height:16px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.065);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.04);
}
.dc-scoring-bucket__track i{
  display:block;
  height:100%;
  width:calc(max(.035,var(--bucket)) * 100%);
  border-radius:999px;
  background:linear-gradient(90deg,rgba(255,255,255,.20),var(--dc-primary-strong));
}
.dc-scoring-bucket--low .dc-scoring-bucket__track i{background:linear-gradient(90deg,rgba(255,255,255,.14),rgba(143,152,163,.68))}
.dc-scoring-bucket--mid .dc-scoring-bucket__track i{background:linear-gradient(90deg,rgba(53,224,127,.24),rgba(53,224,127,.72))}
.dc-scoring-bucket--good .dc-scoring-bucket__track i{background:linear-gradient(90deg,rgba(53,224,127,.34),var(--dc-primary-strong))}
.dc-scoring-bucket--high .dc-scoring-bucket__track i{background:linear-gradient(90deg,rgba(255,189,74,.36),var(--dc-warning))}
.dc-scoring-bucket--max .dc-scoring-bucket__track i{background:linear-gradient(90deg,rgba(255,77,94,.36),#ff7a85)}
.dc-scoring-distribution__summary{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.dc-scoring-distribution__summary>div{
  padding:14px;
  border:1px solid var(--dc-border);
  border-radius:16px;
  background:rgba(255,255,255,.035);
}
.dc-scoring-distribution__summary span{
  display:block;
  color:var(--dc-muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:850;
}
.dc-scoring-distribution__summary strong{
  display:block;
  margin-top:7px;
  font-size:30px;
  line-height:1;
  font-weight:950;
}
.dc-scoring-distribution__summary em{
  display:block;
  margin-top:5px;
  color:var(--dc-muted);
  font-style:normal;
  font-size:12px;
  font-weight:800;
}
@media(max-width:980px){
  .dc-scoring-distribution{grid-template-columns:1fr}
}
@media(max-width:560px){
  .dc-scoring-bucket{grid-template-columns:1fr}
  .dc-scoring-distribution__summary{grid-template-columns:1fr}
}


/* v2.1.42 Matchreport polish + local SVG icons */
.dc-report-icon{
  width:20px;
  height:20px;
  display:inline-block;
  vertical-align:-4px;
  flex:0 0 auto;
}
.dc-report-page-header{
  border-color:rgba(53,224,127,.2);
}
.dc-report-hero{
  position:relative;
  overflow:hidden;
  border-color:rgba(53,224,127,.22);
  background:linear-gradient(135deg,rgba(53,224,127,.095),rgba(255,255,255,.028) 55%,rgba(0,0,0,.12));
}
.dc-report-hero::after{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  right:-120px;
  top:-130px;
  border-radius:999px;
  background:radial-gradient(circle,rgba(53,224,127,.16),transparent 68%);
  pointer-events:none;
}
.dc-report-hero__status{position:relative;z-index:1}
.dc-report-winner-line{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:9px 12px;
  border:1px solid rgba(53,224,127,.25);
  border-radius:999px;
  background:rgba(53,224,127,.10);
}
.dc-report-winner-line .dc-report-icon{
  color:var(--dc-primary-strong);
}
.dc-report-summary-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:20px;
}
.dc-report-summary-strip>div{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-areas:"icon label" "icon value";
  column-gap:12px;
  align-items:center;
  padding:15px 16px;
  border:1px solid var(--dc-border);
  border-radius:18px;
  background:rgba(255,255,255,.035);
}
.dc-report-summary-strip .dc-report-icon{
  grid-area:icon;
  width:26px;
  height:26px;
  color:var(--dc-primary-strong);
}
.dc-report-summary-strip span{
  grid-area:label;
  color:var(--dc-muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:850;
}
.dc-report-summary-strip strong{
  grid-area:value;
  font-size:19px;
  line-height:1.15;
}
.dc-report-progress .dc-section-head h2,
.dc-card h2{
  display:flex;
  align-items:center;
  gap:9px;
}
.dc-report-progress .dc-section-head h2 .dc-report-icon{
  color:var(--dc-primary-strong);
  width:24px;
  height:24px;
}
.dc-report-player-card--polished{
  overflow:hidden;
  border-color:rgba(255,255,255,.11);
}
.dc-report-player-card--polished .dc-report-player-card__header{
  margin-bottom:18px;
  padding-bottom:14px;
  border-bottom:1px solid var(--dc-border);
}
.dc-report-player-card--polished .dc-report-player-card__header h2{
  margin:4px 0 0;
}
.dc-report-stat-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.dc-report-stat-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:12px;
  align-items:start;
  padding:14px;
  border:1px solid var(--dc-border);
  border-radius:17px;
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.022));
}
.dc-report-stat-card__icon{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:rgba(53,224,127,.10);
  color:var(--dc-primary-strong);
  box-shadow:inset 0 0 0 1px rgba(53,224,127,.16);
}
.dc-report-stat-card__icon .dc-report-icon{
  width:20px;
  height:20px;
}
.dc-report-stat-card span{
  display:block;
  color:var(--dc-muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:850;
}
.dc-report-stat-card strong{
  display:block;
  margin-top:6px;
  font-size:clamp(22px,3vw,32px);
  line-height:1;
  font-weight:950;
  letter-spacing:-.03em;
}
.dc-report-stat-card em{
  display:block;
  margin-top:6px;
  color:var(--dc-muted);
  font-style:normal;
  font-size:12px;
  line-height:1.25;
}
.dc-report-turn{
  border-color:rgba(255,255,255,.10);
}
@media(max-width:1120px){
  .dc-report-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:860px){
  .dc-report-summary-strip{grid-template-columns:1fr}
  .dc-report-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .dc-report-stat-grid{grid-template-columns:1fr}
  .dc-report-stat-card{grid-template-columns:auto minmax(0,1fr)}
}


/* v2.1.43 Game Mode Foundation */
.dc-game-modes-hero{
  border-color:rgba(53,224,127,.22);
  background:linear-gradient(135deg,rgba(53,224,127,.095),rgba(255,255,255,.03) 60%,rgba(0,0,0,.12));
}
.dc-mode-foundation-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-bottom:20px;
}
.dc-mode-foundation-strip>div{
  padding:16px;
  border:1px solid var(--dc-border);
  border-radius:18px;
  background:rgba(255,255,255,.035);
}
.dc-mode-foundation-strip span,
.dc-game-mode-card__caps span{
  display:block;
  color:var(--dc-muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:850;
}
.dc-mode-foundation-strip strong{
  display:block;
  margin-top:7px;
  font-size:28px;
  line-height:1;
  font-weight:950;
}
.dc-mode-foundation-strip em{
  display:block;
  margin-top:7px;
  color:var(--dc-muted);
  font-style:normal;
  font-size:13px;
}
.dc-mode-principles{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}
.dc-mode-principles>div{
  padding:16px;
  border:1px solid var(--dc-border);
  border-radius:18px;
  background:rgba(255,255,255,.03);
}
.dc-mode-principles strong{
  width:34px;
  height:34px;
  display:grid;
  place-items:center;
  border-radius:12px;
  background:rgba(53,224,127,.11);
  color:var(--dc-primary-strong);
  margin-bottom:11px;
}
.dc-mode-principles span{
  display:block;
  font-weight:900;
  font-size:17px;
}
.dc-mode-principles p{
  margin:7px 0 0;
  color:var(--dc-muted);
}
.dc-game-mode-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.dc-game-mode-card{
  display:flex;
  flex-direction:column;
  gap:14px;
  min-height:100%;
}
.dc-game-mode-card.is-active{
  border-color:rgba(53,224,127,.24);
  background:linear-gradient(180deg,rgba(53,224,127,.07),rgba(255,255,255,.025));
}
.dc-game-mode-card__top{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
}
.dc-game-mode-card__top h2{
  margin:4px 0 0;
}
.dc-game-mode-card p{
  margin:0;
  color:var(--dc-muted);
}
.dc-game-mode-card__meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.dc-game-mode-card__meta span{
  padding:7px 9px;
  border:1px solid var(--dc-border);
  border-radius:999px;
  background:rgba(255,255,255,.035);
  color:var(--dc-muted);
  font-size:12px;
}
.dc-game-mode-card__meta b{color:var(--dc-text)}
.dc-game-mode-card__caps{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.dc-game-mode-card__caps>div{
  padding:10px;
  border:1px solid var(--dc-border);
  border-radius:14px;
  background:rgba(255,255,255,.028);
}
.dc-mode-capability{
  display:inline-flex!important;
  margin-top:5px;
  padding:4px 7px;
  border-radius:999px;
  font-size:12px!important;
  letter-spacing:0!important;
  text-transform:none!important;
  font-weight:900!important;
}
.dc-mode-capability.is-yes{
  color:var(--dc-primary-strong)!important;
  background:rgba(53,224,127,.11);
}
.dc-mode-capability.is-no{
  color:var(--dc-muted)!important;
  background:rgba(255,255,255,.055);
}
.dc-game-mode-card__footer{
  margin-top:auto;
  padding-top:12px;
  border-top:1px solid var(--dc-border);
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
}
.dc-game-mode-card__footer em{
  color:var(--dc-muted);
  font-style:normal;
  font-size:13px;
}
.dc-button--disabled{
  opacity:.62;
  cursor:not-allowed;
  pointer-events:none;
}
@media(max-width:980px){
  .dc-mode-foundation-strip,
  .dc-mode-principles,
  .dc-game-mode-grid{grid-template-columns:1fr}
}
@media(max-width:560px){
  .dc-game-mode-card__caps{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dc-game-mode-card__footer{align-items:flex-start;flex-direction:column}
}


/* v2.1.44 Game modes catalog structure */
.dc-game-modes-hero .dc-button--primary{
  white-space:normal;
}
.dc-game-mode-card__footer .dc-button{
  text-align:center;
}


/* v2.1.45 Around the Clock v1 */
.dc-around-hero{border-color:rgba(53,224,127,.22);background:linear-gradient(135deg,rgba(53,224,127,.095),rgba(255,255,255,.03) 60%,rgba(0,0,0,.12))}
.dc-around-score-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}
.dc-around-score-strip>div{padding:16px;border:1px solid var(--dc-border);border-radius:18px;background:rgba(255,255,255,.035)}
.dc-around-score-strip span{display:block;color:var(--dc-muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:850}.dc-around-score-strip strong{display:block;margin-top:7px;font-size:30px;line-height:1;font-weight:950}
.dc-around-targets{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}.dc-around-targets span{display:grid;place-items:center;min-height:44px;border:1px solid var(--dc-border);border-radius:14px;background:rgba(255,255,255,.035);font-weight:900}.dc-around-targets span.is-complete{background:rgba(53,224,127,.14);border-color:rgba(53,224,127,.28);color:var(--dc-primary-strong)}.dc-around-targets span.is-current{background:rgba(255,189,74,.14);border-color:rgba(255,189,74,.32);color:var(--dc-warning)}
.dc-around-quick-input{display:flex;flex-wrap:wrap;gap:10px}.dc-around-segment-form{display:inline-flex;margin:0}.dc-around-input-card summary{cursor:pointer;display:flex;gap:10px;align-items:center;justify-content:space-between}.dc-around-segment-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.dc-around-segment-number{padding:10px;border:1px solid var(--dc-border);border-radius:15px;background:rgba(255,255,255,.03)}.dc-around-segment-number strong{display:block;margin-bottom:8px}.dc-around-segment-number>div{display:flex;gap:6px;flex-wrap:wrap}.dc-around-segment-number .dc-button{padding:7px 9px;min-width:38px}
.dc-around-target-report{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.dc-around-target-report>div{padding:12px;border:1px solid var(--dc-border);border-radius:15px;background:rgba(255,255,255,.03)}.dc-around-target-report>div.is-complete{border-color:rgba(53,224,127,.24);background:rgba(53,224,127,.08)}.dc-around-target-report strong,.dc-around-target-report span,.dc-around-target-report em{display:block}.dc-around-target-report span{margin-top:5px;font-weight:850}.dc-around-target-report em{margin-top:4px;color:var(--dc-muted);font-style:normal;font-size:12px}
@media(max-width:980px){.dc-around-score-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.dc-around-targets,.dc-around-target-report{grid-template-columns:repeat(4,minmax(0,1fr))}.dc-around-segment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.dc-around-score-strip{grid-template-columns:1fr}.dc-around-targets,.dc-around-target-report{grid-template-columns:repeat(3,minmax(0,1fr))}.dc-around-segment-grid{grid-template-columns:1fr}.dc-around-quick-input .dc-button{width:100%;justify-content:center}}


/* v2.1.46 Match mode dropdown + user-facing game manuals */
.dc-inline-mode-form{display:grid;grid-template-columns:minmax(260px,420px) auto;gap:12px;align-items:end}
.dc-match-mode-picker .dc-field{margin:0}
.dc-game-mode-card--manual .dc-game-mode-card__intro{font-size:15px;line-height:1.55;color:var(--dc-text)}
.dc-game-mode-manual-block{padding:13px 14px;border:1px solid var(--dc-border);border-radius:16px;background:rgba(255,255,255,.03)}
.dc-game-mode-manual-block h3{margin:0 0 8px;font-size:15px}
.dc-game-mode-manual-block ol{margin:0;padding-left:20px;color:var(--dc-muted)}
.dc-game-mode-manual-block li+li{margin-top:5px}
.dc-game-mode-card__meta--user span{white-space:normal;border-radius:14px}
@media(max-width:640px){.dc-inline-mode-form{grid-template-columns:1fr}.dc-inline-mode-form .dc-button{width:100%}}


/* v2.1.47 Neues Match UX Startscreen */
.dc-match-new-header p strong{color:var(--dc-primary-strong)}
.dc-match-type-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.dc-match-type-card-form{margin:0}
.dc-match-type-card{width:100%;display:flex;align-items:center;gap:18px;padding:18px;border-radius:22px;border:1px solid var(--dc-border);background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));color:var(--dc-text);text-align:left;cursor:pointer;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease;box-shadow:0 14px 32px rgba(0,0,0,.18)}
.dc-match-type-card:hover{transform:translateY(-2px);border-color:var(--dc-border-strong)}
.dc-match-type-card.is-active{border-color:rgba(255,255,255,.22);box-shadow:0 20px 40px rgba(0,0,0,.25)}
.dc-match-type-card.is-disabled{opacity:.52;filter:saturate(.75);cursor:not-allowed;pointer-events:none}
.dc-match-type-card--rated{background:radial-gradient(circle at top right,rgba(53,224,127,.12),transparent 45%),linear-gradient(180deg,rgba(53,224,127,.10),rgba(255,255,255,.02))}
.dc-match-type-card--fun{background:radial-gradient(circle at top right,rgba(255,189,74,.16),transparent 45%),linear-gradient(180deg,rgba(255,146,36,.10),rgba(255,255,255,.02))}
.dc-match-type-card--training{background:radial-gradient(circle at top right,rgba(82,190,255,.16),transparent 45%),linear-gradient(180deg,rgba(82,190,255,.10),rgba(255,255,255,.02))}
.dc-match-type-card__media{flex:0 0 96px;width:96px;height:96px;border-radius:24px;background:rgba(255,255,255,.06);display:grid;place-items:center;border:1px solid rgba(255,255,255,.08);overflow:hidden}
.dc-match-type-card__media img{display:block;width:86px;height:86px;object-fit:contain}
.dc-match-type-card__body{display:grid;gap:8px}
.dc-match-type-card__body strong{font-size:21px;line-height:1.1}
.dc-match-type-card__body span:last-child{color:var(--dc-text-soft);font-size:14px}
.dc-badge--soft{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.08);color:var(--dc-text);font-size:12px;font-weight:700;width:max-content}
.dc-inline-mode-form--full{max-width:340px}
.dc-match-mode-summary{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px;color:var(--dc-text-soft)}
.dc-match-mode-summary strong{color:var(--dc-text)}
.dc-match-context-note{border-color:rgba(255,255,255,.12)}
.dc-match-context-note--rated{background:radial-gradient(circle at top right,rgba(53,224,127,.14),transparent 40%),linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01))}
.dc-match-context-note--fun{background:radial-gradient(circle at top right,rgba(255,189,74,.16),transparent 40%),linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01))}
.dc-match-context-note--training{background:radial-gradient(circle at top right,rgba(82,190,255,.16),transparent 40%),linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.01))}
.dc-match-submit-card{display:grid;gap:10px}.dc-match-submit-card h2{margin:0}
@media (max-width:1080px){.dc-match-type-grid{grid-template-columns:1fr}.dc-match-type-card__media{width:84px;height:84px;flex-basis:84px}.dc-match-type-card__media img{width:74px;height:74px}}
@media (max-width:720px){.dc-match-type-card{padding:16px;align-items:flex-start}.dc-match-type-card__body strong{font-size:19px}.dc-match-mode-picker--ux .dc-inline-mode-form--full{max-width:none;width:100%}}


/* v2.1.48 Neues Match selection polish */
.dc-match-type-section--modern{
  background:
    radial-gradient(circle at 12% 0%,rgba(255,255,255,.055),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));
}
.dc-match-type-section--modern .dc-section-head{
  align-items:flex-end;
}
.dc-match-type-grid{
  align-items:stretch;
}
.dc-match-type-card{
  position:relative;
  min-height:190px;
  align-items:flex-start;
  isolation:isolate;
}
.dc-match-type-card::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:22px;
  background:linear-gradient(135deg,rgba(255,255,255,.11),transparent 38%);
  opacity:.55;
  pointer-events:none;
  z-index:-1;
}
.dc-match-type-card__state{
  position:absolute;
  top:14px;
  right:14px;
  padding:5px 9px;
  border-radius:999px;
  background:rgba(0,0,0,.28);
  border:1px solid rgba(255,255,255,.10);
  color:var(--dc-text-soft);
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.dc-match-type-card.is-active .dc-match-type-card__state{
  background:rgba(53,224,127,.15);
  border-color:rgba(53,224,127,.32);
  color:var(--dc-primary-strong);
}
.dc-match-type-card.is-active::after{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.12);
  pointer-events:none;
}
.dc-match-type-card__media{
  margin-top:12px;
  transform:translateZ(0);
}
.dc-match-type-card__body{
  padding-top:22px;
}
.dc-match-type-card__body strong{
  font-size:24px;
  letter-spacing:-.02em;
}
.dc-match-type-card--rated.is-active{box-shadow:0 22px 44px rgba(53,224,127,.10),0 18px 40px rgba(0,0,0,.25)}
.dc-match-type-card--fun.is-active{box-shadow:0 22px 44px rgba(255,189,74,.11),0 18px 40px rgba(0,0,0,.25)}
.dc-match-type-card--training.is-active{box-shadow:0 22px 44px rgba(82,190,255,.11),0 18px 40px rgba(0,0,0,.25)}
.dc-match-type-card--rated .dc-match-type-card__media{background:rgba(53,224,127,.09)}
.dc-match-type-card--fun .dc-match-type-card__media{background:rgba(255,189,74,.10)}
.dc-match-type-card--training .dc-match-type-card__media{background:rgba(82,190,255,.10)}
.dc-match-mode-picker--ux{
  border-color:rgba(255,255,255,.12);
}
@media (max-width:720px){
  .dc-match-type-card{min-height:0}
  .dc-match-type-card__state{position:static;order:3;width:max-content;margin-left:auto}
  .dc-match-type-card__body{padding-top:0}
}


/* v2.1.49 KI Gegner visual polish */
.dc-ai-section{
  background:
    radial-gradient(circle at top right, rgba(61, 232, 144, 0.08), transparent 30%),
    radial-gradient(circle at bottom left, rgba(82,190,255,0.07), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
}
.dc-ai-hero{
  display:grid;
  grid-template-columns:minmax(0,1.3fr) minmax(220px,.7fr);
  gap:20px;
  align-items:center;
  margin-bottom:18px;
}
.dc-ai-hero__copy h2{margin:4px 0 10px;font-size:32px;line-height:1.05}
.dc-ai-hero__copy p{margin:0;color:var(--dc-text-soft);max-width:70ch}
.dc-ai-hero__chips{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
.dc-ai-hero__art{
  display:flex;
  justify-content:center;
  align-items:center;
  padding:12px;
  min-height:220px;
  border-radius:22px;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.07);
}
.dc-ai-hero__art img{
  display:block;
  max-width:100%;
  max-height:260px;
  object-fit:contain;
  filter: drop-shadow(0 18px 32px rgba(0,0,0,.28));
}
.dc-ai-setup-row{align-items:end}
.dc-ai-toggle-card{
  background:linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,.015));
  border-color:rgba(255,255,255,.1);
}
.dc-ai-toggle-card input:checked + span{
  color:var(--dc-text);
}
@media (max-width:980px){
  .dc-ai-hero{grid-template-columns:1fr}
  .dc-ai-hero__art{order:-1;min-height:180px}
  .dc-ai-hero__art img{max-height:220px}
}


/* v2.1.50 KI Gegner transparent image + lower section polish */
.dc-ai-hero__art{
  background:transparent;
  border:0;
  padding:4px 0 0;
  min-height:220px;
}
.dc-ai-hero__art::after{
  content:"";
  position:absolute;
  width:72%;
  height:28px;
  bottom:18px;
  left:50%;
  transform:translateX(-50%);
  background:radial-gradient(circle, rgba(0,0,0,.28), transparent 68%);
  filter:blur(10px);
  z-index:0;
  pointer-events:none;
}
.dc-ai-hero__art{position:relative}
.dc-ai-hero__art img{position:relative;z-index:1;max-height:280px}
.dc-ai-setup-row--polished{align-items:stretch;margin-top:6px}
.dc-ai-toggle-card,
.dc-ai-preset-card{
  min-height:120px;
  border-radius:20px;
}
.dc-ai-preset-card{
  display:grid;
  align-content:start;
  gap:12px;
  padding:18px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  box-shadow:0 12px 28px rgba(0,0,0,.16);
}
.dc-ai-preset-card .dc-field{margin:0}
.dc-ai-preset-hint{
  margin:0;
  font-size:13px;
  color:var(--dc-text-soft);
}
.dc-ai-config{
  margin-top:18px;
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.015));
  box-shadow:0 14px 30px rgba(0,0,0,.14);
}
.dc-ai-config__head{
  display:flex;
  flex-wrap:wrap;
  gap:10px 14px;
  align-items:center;
  margin-bottom:16px;
}
.dc-ai-config__head strong{font-size:16px;color:var(--dc-text)}
.dc-ai-config__head span{font-size:13px;color:var(--dc-text-soft)}
@media (max-width:980px){
  .dc-ai-hero__art img{max-height:240px}
}


/* v2.1.51 Neues Match UX Polish II */
.dc-mode-card-picker{background:radial-gradient(circle at 12% 0%,rgba(53,224,127,.06),transparent 30%),linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012))}
.dc-mode-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.dc-mode-card-form{margin:0}
.dc-mode-card{width:100%;position:relative;display:grid;grid-template-columns:92px minmax(0,1fr);gap:14px;align-items:center;min-height:118px;padding:14px;border-radius:22px;border:1px solid rgba(255,255,255,.10);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.016));color:var(--dc-text);text-align:left;cursor:pointer;transition:border-color .16s ease,transform .16s ease,background .16s ease,box-shadow .16s ease}
.dc-mode-card:hover{transform:translateY(-1px);border-color:rgba(53,224,127,.26);box-shadow:0 16px 30px rgba(0,0,0,.18)}
.dc-mode-card.is-active{border-color:rgba(53,224,127,.46);box-shadow:0 20px 40px rgba(53,224,127,.08),0 16px 32px rgba(0,0,0,.18)}
.dc-mode-card--planned{opacity:.52;cursor:not-allowed}
.dc-mode-card--planned:hover{transform:none;border-color:rgba(255,255,255,.10);box-shadow:none}
.dc-mode-card__state{position:absolute;right:12px;top:12px;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;background:rgba(0,0,0,.24);color:var(--dc-text-soft);border:1px solid rgba(255,255,255,.09)}
.dc-mode-card.is-active .dc-mode-card__state{color:var(--dc-primary-strong);background:rgba(53,224,127,.12);border-color:rgba(53,224,127,.26)}
.dc-mode-card__image{display:flex;align-items:center;justify-content:center;width:92px;height:92px;border-radius:18px;background:rgba(0,0,0,.18);overflow:hidden}
.dc-mode-card__image img{display:block;max-width:116%;max-height:116%;object-fit:contain;filter:drop-shadow(0 10px 20px rgba(0,0,0,.24))}
.dc-mode-card__image--placeholder span{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(255,255,255,.08);font-weight:900;color:var(--dc-text-soft)}
.dc-mode-card__copy{display:grid;gap:6px;padding-right:56px}
.dc-mode-card__copy strong{font-size:19px;letter-spacing:-.01em}
.dc-mode-card__copy em{color:var(--dc-text-soft);font-style:normal;line-height:1.35}
.dc-x01-rules-card{background:radial-gradient(circle at top left,rgba(53,224,127,.045),transparent 28%),linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.012))}
.dc-x01-score-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}
.dc-x01-score-card,.dc-finish-rule-card{position:relative;display:block;cursor:pointer}
.dc-x01-score-card input,.dc-finish-rule-card input{position:absolute;opacity:0;pointer-events:none}
.dc-x01-score-card{border-radius:20px;border:1px solid rgba(255,255,255,.10);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));overflow:hidden;transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease,background .16s ease}
.dc-x01-score-card:hover{transform:translateY(-1px);border-color:rgba(53,224,127,.28)}
.dc-x01-score-card:has(input:checked){border-color:rgba(53,224,127,.52);box-shadow:0 16px 32px rgba(53,224,127,.08),0 14px 28px rgba(0,0,0,.18)}
.dc-x01-score-card__image{display:flex;align-items:center;justify-content:center;height:116px;padding:8px;background:rgba(0,0,0,.16)}
.dc-x01-score-card__image img{display:block;max-width:118%;max-height:118%;object-fit:contain;filter:drop-shadow(0 12px 24px rgba(0,0,0,.24))}
.dc-x01-score-card__copy{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px}
.dc-x01-score-card__copy strong{font-size:24px;letter-spacing:.02em}
.dc-x01-score-card__copy em{font-style:normal;color:var(--dc-text-soft);font-weight:700}
.dc-finish-rule-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.dc-finish-rule-card span{min-height:90px;display:grid;align-content:start;gap:7px;padding:15px;border-radius:18px;border:1px solid rgba(255,255,255,.10);background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.014));transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease}
.dc-finish-rule-card:hover span{transform:translateY(-1px);border-color:rgba(53,224,127,.25)}
.dc-finish-rule-card input:checked + span{border-color:rgba(53,224,127,.48);box-shadow:0 14px 28px rgba(53,224,127,.07),0 12px 24px rgba(0,0,0,.16)}
.dc-finish-rule-card strong{color:var(--dc-text)}
.dc-finish-rule-card em{font-style:normal;color:var(--dc-text-soft);font-size:13px;line-height:1.35}
.dc-match-mode-chip{margin-top:14px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:16px;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.08)}
.dc-match-mode-chip span{color:var(--dc-text-soft);font-size:13px}
.dc-match-mode-chip strong{color:var(--dc-primary-strong)}
.dc-select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,currentColor 50%),linear-gradient(135deg,currentColor 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 12px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:38px}
.dc-field:focus-within .dc-select,.dc-field:focus-within .dc-input{border-color:rgba(53,224,127,.45);box-shadow:0 0 0 3px rgba(53,224,127,.10)}
@media (max-width:980px){.dc-mode-card-grid{grid-template-columns:1fr}.dc-x01-score-grid,.dc-finish-rule-grid{grid-template-columns:1fr}.dc-x01-score-card{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:center}.dc-x01-score-card__image{height:92px}}
@media (max-width:560px){.dc-mode-card{grid-template-columns:76px minmax(0,1fr);min-height:104px}.dc-mode-card__image{width:76px;height:76px}.dc-mode-card__copy{padding-right:0;padding-top:22px}.dc-x01-score-card{grid-template-columns:92px minmax(0,1fr)}.dc-x01-score-card__image{height:84px}}


/* v2.1.52 Board Skin Foundation */
.dc-board-skin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dc-board-skin-card{position:relative;display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center;padding:16px;border:1px solid var(--dc-border);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.dc-board-skin-card:hover{transform:translateY(-1px);border-color:var(--dc-border-strong)}.dc-board-skin-card input{position:absolute;opacity:0;pointer-events:none}.dc-board-skin-card.is-active,.dc-board-skin-card:has(input:checked){border-color:rgba(53,224,127,.44);box-shadow:0 0 0 1px rgba(53,224,127,.18),0 16px 28px rgba(0,0,0,.18)}.dc-board-skin-card__swatch{display:flex;align-items:center;justify-content:center}.dc-board-skin-card__mini{position:relative;display:block;width:96px;height:96px;border-radius:999px;overflow:hidden;border:4px solid rgba(255,255,255,.08);box-shadow:inset 0 0 0 2px rgba(0,0,0,.2)}.dc-board-skin-card__mini::before,.dc-board-skin-card__mini::after{content:"";position:absolute;inset:0;border-radius:999px}.dc-board-skin-card__mini--bristle{background:radial-gradient(circle at center,#0f1317 0 18%,#35e07f 18% 22%,#ff4d5e 22% 25%,#efe8d3 25% 45%,#171c21 45% 49%,#35e07f 49% 52%,#ff4d5e 52% 56%,#efe8d3 56% 73%,#171c21 73% 77%,#11161a 77% 100%)}.dc-board-skin-card__mini--edart{background:radial-gradient(circle at center,#214b38 0 18%,#35e07f 18% 22%,#ff4d5e 22% 25%,#e8e1cf 25% 45%,#1d252c 45% 49%,#35e07f 49% 52%,#ff4d5e 52% 56%,#e8e1cf 56% 73%,#1d252c 73% 77%,#1c1f23 77% 100%)}.dc-board-skin-card__mini--edart::after{background-image:radial-gradient(circle at 3px 3px,rgba(0,0,0,.18) 0 1.2px,transparent 1.3px);background-size:8px 8px;mix-blend-mode:multiply;opacity:.46}.dc-board-skin-card__copy{display:grid;gap:6px}.dc-board-skin-card__copy strong{font-size:17px}.dc-board-skin-card__copy em{font-style:normal;color:var(--dc-text-soft);line-height:1.5}.dc-board-skin-card--edart{background:linear-gradient(180deg,rgba(85,182,255,.05),rgba(255,255,255,.015))}.dc-board-skin-card--bristle{background:linear-gradient(180deg,rgba(53,224,127,.04),rgba(255,255,255,.015))}.dc-dartboard{filter:drop-shadow(0 18px 28px rgba(0,0,0,.32))}.dc-dartboard__outer-shell{fill:#0c0f12;stroke:#2a3239;stroke-width:3}.dc-dartboard__number-ring{fill:#0a0d10}.dc-dartboard__miss-zone{fill:#11161a;stroke:rgba(0,0,0,.22);stroke-width:1;cursor:pointer}.dc-dartboard__brand-mark{opacity:.16;pointer-events:none}.dc-dartboard__segment{stroke:#06080a;stroke-width:.9;cursor:pointer;transition:filter .12s ease,transform .12s ease}.dc-dartboard__segment--dark{fill:#171c21}.dc-dartboard__segment--light{fill:#efe8d3}.dc-dartboard__segment--t,.dc-dartboard__segment--d{fill:#18a75e}.dc-dartboard__segment--t.dc-dartboard__segment--dark,.dc-dartboard__segment--d.dc-dartboard__segment--dark{fill:#18a75e}.dc-dartboard__segment--t.dc-dartboard__segment--light,.dc-dartboard__segment--d.dc-dartboard__segment--light{fill:#d83b46}.dc-dartboard__segment:hover,.dc-dartboard__outer-bull:hover,.dc-dartboard__bull:hover,.dc-dartboard__miss-zone:hover{filter:brightness(1.16)}.dc-dartboard__outer-bull{fill:#22b368;stroke:#050607;cursor:pointer}.dc-dartboard__bull{fill:#db3c48;stroke:#050607;cursor:pointer}.dc-dartboard__score-boundary{fill:none;stroke:rgba(0,0,0,.12);stroke-width:1}.dc-dartboard__number{fill:#f5f7fa;font-size:10px;font-weight:800;letter-spacing:.02em;text-shadow:0 1px 1px rgba(0,0,0,.45)}.dc-dartboard__spider circle,.dc-dartboard__spider line{fill:none;stroke:rgba(10,13,15,.78);stroke-width:1}.dc-dartboard--skin-bristle .dc-dartboard__outer-shell{fill:#0d1014}.dc-dartboard--skin-bristle .dc-dartboard__number-ring{fill:#07090b}.dc-dartboard--skin-bristle .dc-dartboard__miss-zone{fill:#0f1318}.dc-dartboard--skin-bristle .dc-dartboard__brand-mark{opacity:.12}.dc-dartboard--skin-bristle .dc-dartboard__spider circle,.dc-dartboard--skin-bristle .dc-dartboard__spider line{stroke:#14181c;stroke-width:.92}.dc-dartboard--skin-edart .dc-dartboard__outer-shell{fill:url(#dc-edart-hole-shell);stroke:#46505b;stroke-width:2.2}.dc-dartboard--skin-edart .dc-dartboard__number-ring{fill:#171c20}.dc-dartboard--skin-edart .dc-dartboard__miss-zone{fill:url(#dc-edart-hole-shell);stroke:#343b43}.dc-dartboard--skin-edart .dc-dartboard__brand-mark{opacity:.2}.dc-dartboard--skin-edart .dc-dartboard__segment--light{fill:url(#dc-edart-hole-light)}.dc-dartboard--skin-edart .dc-dartboard__segment--dark{fill:url(#dc-edart-hole-dark)}.dc-dartboard--skin-edart .dc-dartboard__segment--t.dc-dartboard__segment--dark,.dc-dartboard--skin-edart .dc-dartboard__segment--t.dc-dartboard__segment--light,.dc-dartboard--skin-edart .dc-dartboard__segment--d.dc-dartboard__segment--dark,.dc-dartboard--skin-edart .dc-dartboard__segment--d.dc-dartboard__segment--light{fill:url(#dc-edart-hole-green)}.dc-dartboard--skin-edart .dc-dartboard__segment--t.dc-dartboard__segment--light,.dc-dartboard--skin-edart .dc-dartboard__segment--d.dc-dartboard__segment--light{fill:url(#dc-edart-hole-red)}.dc-dartboard--skin-edart .dc-dartboard__outer-bull{fill:url(#dc-edart-hole-green);stroke:#eef3f7;stroke-width:1.1}.dc-dartboard--skin-edart .dc-dartboard__bull{fill:url(#dc-edart-hole-red);stroke:#eef3f7;stroke-width:1.1}.dc-dartboard--skin-edart .dc-dartboard__spider circle,.dc-dartboard--skin-edart .dc-dartboard__spider line{stroke:#edf3f8;stroke-width:1.35}.dc-dartboard--skin-edart .dc-dartboard__score-boundary{stroke:rgba(255,255,255,.16)}.dc-dartboard--skin-edart .dc-dartboard__number{fill:#f7f9fb}.dc-dartboard-wrap[data-board-skin="edart"]{}@media (max-width:900px){.dc-board-skin-grid{grid-template-columns:1fr}.dc-board-skin-card{grid-template-columns:88px 1fr}.dc-board-skin-card__mini{width:72px;height:72px}}


/* v2.1.53 Around the Clock board input */
.dc-around-board-card{border-color:rgba(53,224,127,.2)}
.dc-around-board-layout{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:18px;align-items:start}
.dc-dartboard-wrap--around{padding:10px;border:1px solid var(--dc-border);border-radius:22px;background:radial-gradient(circle at top,rgba(255,255,255,.04),rgba(255,255,255,.015) 48%,rgba(0,0,0,.12));min-height:0}
.dc-around-board-side{display:grid;gap:14px}
.dc-around-board-side__current,.dc-around-board-feedback .dc-dartboard__summary,.dc-around-board-hint{padding:16px;border:1px solid var(--dc-border);border-radius:18px;background:rgba(255,255,255,.035)}
.dc-around-board-side__current strong{display:block;font-size:42px;line-height:1;margin-top:8px;margin-bottom:8px}
.dc-around-board-side__current p,.dc-around-board-hint p{margin:0;color:var(--dc-muted)}
.dc-around-board-feedback{display:grid;gap:12px}
.dc-around-board-feedback strong{display:block;margin-top:8px;font-size:18px}
.dc-around-board-feedback strong.is-hit{color:var(--dc-primary-strong)}
.dc-around-board-feedback strong.is-miss{color:#ffd789}
.dc-around-board-hint{display:grid;gap:10px}
@media(max-width:980px){.dc-around-board-layout{grid-template-columns:1fr}.dc-around-board-side__current strong{font-size:34px}}


/* v2.1.54 Around the Clock Experience Pass */
.dc-cluster--tight{gap:8px}
.dc-around-hero--play,
.dc-around-hero--report{
  background:
    radial-gradient(circle at 12% 0%,rgba(53,224,127,.13),transparent 34%),
    linear-gradient(135deg,rgba(53,224,127,.075),rgba(255,255,255,.028) 58%,rgba(0,0,0,.12));
}
.dc-around-focus-card{
  display:grid;
  grid-template-columns:minmax(190px,.72fr) minmax(0,1.4fr) minmax(190px,.88fr);
  gap:16px;
  align-items:stretch;
}
.dc-around-focus-card>div{
  border:1px solid rgba(255,255,255,.09);
  border-radius:20px;
  background:rgba(255,255,255,.03);
  padding:18px;
}
.dc-around-focus-card__target strong{
  display:block;
  font-size:clamp(54px,8vw,96px);
  line-height:.9;
  margin:12px 0;
  color:var(--dc-primary-strong);
}
.dc-around-focus-card__target p,
.dc-around-focus-card__last p{margin:0;color:var(--dc-muted)}
.dc-around-progress-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  color:var(--dc-text-soft);
  font-weight:900;
}
.dc-around-progress-head strong{color:var(--dc-primary-strong)}
.dc-around-progress-bar{
  height:16px;
  border-radius:999px;
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.09);
  overflow:hidden;
  margin:16px 0 12px;
}
.dc-around-progress-bar span{
  display:block;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,var(--dc-primary),var(--dc-primary-strong));
  box-shadow:0 0 24px rgba(53,224,127,.28);
}
.dc-around-focus-card__mini{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.dc-around-focus-card__mini span{
  padding:7px 9px;
  border-radius:999px;
  background:rgba(0,0,0,.22);
  border:1px solid rgba(255,255,255,.08);
  color:var(--dc-text-soft);
  font-size:12px;
  font-weight:800;
}
.dc-around-focus-card__last strong{
  display:block;
  font-size:34px;
  line-height:1;
  margin:12px 0;
}
.dc-around-score-strip--enhanced>div{
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
}
.dc-around-board-card{
  background:
    radial-gradient(circle at top left,rgba(53,224,127,.055),transparent 32%),
    linear-gradient(180deg,var(--dc-surface),#0c0f12);
}
.dc-around-input-card--quick{
  border-color:rgba(53,224,127,.14);
}
.dc-around-report-summary{
  display:grid;
  grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr);
  gap:18px;
  align-items:stretch;
}
.dc-around-report-summary__main{
  padding:18px;
  border-radius:20px;
  background:rgba(53,224,127,.07);
  border:1px solid rgba(53,224,127,.18);
}
.dc-around-report-summary__main>strong{
  display:block;
  font-size:52px;
  line-height:1;
  margin-top:10px;
}
.dc-around-report-summary__stats{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.dc-around-report-summary__stats>div{
  padding:16px;
  border-radius:18px;
  background:rgba(255,255,255,.035);
  border:1px solid rgba(255,255,255,.09);
}
.dc-around-report-summary__stats span{
  display:block;
  color:var(--dc-muted);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
}
.dc-around-report-summary__stats strong{
  display:block;
  margin-top:8px;
  font-size:28px;
  line-height:1;
}
.dc-around-throw-list .dc-report-turn.is-hit{
  border-color:rgba(53,224,127,.22);
  background:rgba(53,224,127,.055);
}
@media(max-width:1080px){
  .dc-around-focus-card,
  .dc-around-report-summary{grid-template-columns:1fr}
  .dc-around-report-summary__stats{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .dc-around-report-summary__stats{grid-template-columns:1fr}
}


/* v2.1.55 X01 Exact Input & Stats Cleanup */
.dc-checkout-advisor--compact{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin:0 0 12px;
  padding:9px 11px;
  border:1px solid rgba(53,224,127,.22);
  border-radius:16px;
  background:linear-gradient(90deg,rgba(53,224,127,.075),rgba(255,255,255,.025));
}
.dc-checkout-routes--compact{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin:0;
}
.dc-checkout-route--compact{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:6px 9px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:999px;
  background:rgba(255,255,255,.04);
}
.dc-checkout-route--compact em{
  color:var(--dc-muted);
  font-style:normal;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-weight:900;
}
.dc-checkout-route--compact strong{
  color:var(--dc-primary-strong);
  font-size:14px;
  line-height:1;
}
.dc-checkout-advisor__message{
  color:var(--dc-text-soft);
  font-weight:800;
  font-size:13px;
}
.dc-exact-card{
  border-color:rgba(53,224,127,.18);
  background:
    radial-gradient(circle at top left,rgba(53,224,127,.055),transparent 34%),
    linear-gradient(180deg,var(--dc-surface),#0c0f12);
}
.dc-section-head--compact{margin-bottom:0}
.dc-section-head--compact h2{margin:0;font-size:20px}
.dc-section-head--compact p{margin:4px 0 0;color:var(--dc-muted)}
.dc-exact-quick,
.dc-exact-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.dc-exact-all summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  cursor:pointer;
  padding:8px 0;
  list-style:none;
  position:relative;
  padding-right:22px;
}
.dc-exact-all summary::-webkit-details-marker{display:none}
.dc-exact-all summary::after{
  content:"";
  position:absolute;
  right:2px;
  top:50%;
  width:8px;
  height:8px;
  border-right:2px solid var(--dc-muted);
  border-bottom:2px solid var(--dc-muted);
  transform:translateY(-65%) rotate(45deg);
  transition:transform .18s ease,border-color .18s ease;
}
.dc-exact-all[open] summary::after{
  transform:translateY(-35%) rotate(225deg);
  border-color:var(--dc-text-soft);
}
.dc-exact-grid{
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin-top:10px;
}
.dc-exact-number{
  display:grid;
  grid-template-columns:1fr repeat(3,auto);
  gap:5px;
  align-items:center;
  padding:8px;
  border:1px solid var(--dc-border);
  border-radius:13px;
  background:rgba(255,255,255,.03);
}
.dc-exact-number strong{font-size:13px}
.dc-exact-number .dc-button{
  min-width:33px;
  padding:6px 7px;
  border-radius:10px;
  font-size:12px;
}
.dc-exact-number--wide{grid-template-columns:1fr repeat(2,auto)}
.dc-exact-summary{margin:0}
.dc-exact-summary--compact{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(210px,.75fr);gap:8px;align-items:center;padding:10px 12px;border-radius:16px}
.dc-exact-summary__main{display:grid;gap:4px;min-width:0;align-content:center}
.dc-exact-summary__main [data-dartboard-list]{min-width:0;font-size:14px;line-height:1.35}
.dc-exact-summary__meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
.dc-exact-summary__status-badge{display:inline-flex;align-items:center;justify-content:flex-start;gap:6px;min-height:0;padding:0;color:var(--dc-text-soft);font-size:12px;font-weight:800;line-height:1.2}
.dc-exact-summary__status-badge.is-checkout{color:var(--dc-primary-strong)}
.dc-exact-summary__status-badge.is-bust{color:#ffd8dc}
.dc-exact-summary .dc-board-entry-chip{margin:0;min-height:auto;padding:8px 10px;border-radius:14px;background:rgba(255,255,255,.03);border:1px solid var(--dc-border)}
.dc-exact-summary .dc-board-entry-chip span{display:block;color:var(--dc-muted);font-size:11px;text-transform:uppercase;letter-spacing:.06em}
.dc-exact-summary .dc-board-entry-chip strong{display:block;font-size:22px;font-weight:900;line-height:1.05;color:var(--dc-text)}
.dc-exact-actions{justify-content:flex-start;gap:8px}
.dc-exact-actions .dc-button{padding:8px 12px;border-radius:11px}
.dc-player-score-card.is-score-flashing .dc-score-display{
  color:var(--dc-primary-strong);
  text-shadow:0 0 24px rgba(53,224,127,.42);
}
@media (min-width:901px){
  body.dc-match-mode .dc-match-live-root>.dc-checkout-advisor--compact{
    display:flex!important;
    flex:0 0 auto;
    margin:0 0 8px;
    padding:7px 10px;
    max-height:46px;
    overflow:hidden;
  }
  body.dc-match-mode .dc-checkout-route--compact{padding:5px 8px}
  body.dc-match-mode .dc-checkout-route--compact strong{font-size:13px}
  body.dc-match-mode .dc-exact-card{
    grid-column:1;
    grid-row:2;
    margin:0;
    padding:14px;
    border-radius:18px;
    gap:9px;
    min-height:0;
    overflow:auto;
  }
  body.dc-match-mode .dc-exact-quick{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  body.dc-match-mode .dc-exact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  body.dc-match-mode .dc-exact-number{padding:6px;gap:4px}
  body.dc-match-mode .dc-exact-number .dc-button{padding:5px 6px;min-width:30px}
  body.dc-match-mode .dc-exact-all summary{padding:6px 0}
  body.dc-match-mode .dc-exact-summary{padding:8px 10px;font-size:13px}
  body.dc-match-mode .dc-exact-summary--compact{grid-template-columns:minmax(0,1.15fr) minmax(180px,.85fr);gap:8px}
  body.dc-match-mode .dc-exact-summary__meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}
  body.dc-match-mode .dc-exact-summary .dc-board-entry-chip{padding:7px 9px}
  body.dc-match-mode .dc-exact-summary .dc-board-entry-chip strong{font-size:20px}
  body.dc-match-mode .dc-exact-summary__main [data-dartboard-list]{font-size:13px}
  body.dc-match-mode .dc-exact-summary__status-badge{font-size:11px}
  body.dc-match-mode .dc-exact-actions .dc-button{padding:7px 10px}
  body.dc-match-mode .dc-match-live-root[data-input-hidden="board"] .dc-exact-card{grid-column:1}
}
@media(max-width:900px){
  .dc-exact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .dc-exact-quick,.dc-exact-grid{grid-template-columns:1fr}
  .dc-exact-summary--compact,.dc-exact-summary__meta{grid-template-columns:1fr}
  }


/* v2.1.56 X01 input toggle hotfix */
[data-left-input-mode="textscore"] [data-input-section="exact"],
[data-left-input-mode="exact"] [data-input-section="textscore"],
[data-input-hidden="board"] [data-input-section="board"]{
  display:none!important;
}
[data-left-input-mode="textscore"] [data-input-section="textscore"],
[data-left-input-mode="exact"] [data-input-section="exact"]{
  display:grid!important;
}
.dc-input-mode-toggle[aria-pressed="true"]{
  border-color:rgba(53,224,127,.48);
  background:rgba(53,224,127,.13);
  color:var(--dc-primary-strong);
}


/* v2.1.57 E-Dart board visual refinement */
.dc-dartboard__brand-plate{fill:rgba(3,6,8,.38);stroke:rgba(255,255,255,.08);stroke-width:.8;pointer-events:none}
.dc-dartboard__mount{fill:#5c8d60;stroke:#2d4732;stroke-width:2;filter:drop-shadow(0 1px 2px rgba(0,0,0,.35));pointer-events:none}
.dc-dartboard--skin-edart .dc-dartboard__outer-shell{fill:url(#dc-edart-hole-shell);stroke:#56626f;stroke-width:2.8}
.dc-dartboard--skin-edart .dc-dartboard__number-ring{fill:#1a2026}
.dc-dartboard--skin-edart .dc-dartboard__miss-zone{fill:url(#dc-edart-hole-shell);stroke:#4a545e;stroke-width:1.4}
.dc-dartboard--skin-edart .dc-dartboard__brand-plate{fill:rgba(8,10,12,.55);stroke:rgba(255,255,255,.1)}
.dc-dartboard--skin-edart .dc-dartboard__brand-mark{opacity:.5;filter:drop-shadow(0 1px 4px rgba(0,0,0,.45))}
.dc-dartboard--skin-edart .dc-dartboard__segment{stroke:#eef3f7;stroke-width:1.4}
.dc-dartboard--skin-edart .dc-dartboard__segment--light{fill:url(#dc-edart-hole-red)}
.dc-dartboard--skin-edart .dc-dartboard__segment--dark{fill:url(#dc-edart-hole-blue)}
.dc-dartboard--skin-edart .dc-dartboard__segment--t.dc-dartboard__segment--light,
.dc-dartboard--skin-edart .dc-dartboard__segment--d.dc-dartboard__segment--light{fill:url(#dc-edart-hole-red)}
.dc-dartboard--skin-edart .dc-dartboard__segment--t.dc-dartboard__segment--dark,
.dc-dartboard--skin-edart .dc-dartboard__segment--d.dc-dartboard__segment--dark{fill:url(#dc-edart-hole-blue)}
.dc-dartboard--skin-edart .dc-dartboard__outer-bull{fill:url(#dc-edart-hole-blue);stroke:#eef3f7;stroke-width:1.6}
.dc-dartboard--skin-edart .dc-dartboard__bull{fill:url(#dc-edart-hole-red);stroke:#eef3f7;stroke-width:1.6}
.dc-dartboard--skin-edart .dc-dartboard__spider circle,.dc-dartboard--skin-edart .dc-dartboard__spider line{stroke:#f4f7fb;stroke-width:1.8}
.dc-dartboard--skin-edart .dc-dartboard__score-boundary{stroke:rgba(255,255,255,.24)}
.dc-dartboard--skin-edart .dc-dartboard__number{fill:#fbfdff;font-size:11px;font-weight:900}


/* v2.1.58 Board skin active-state hotfix */
.dc-board-skin-card:not(.is-active):not(:has(input:checked)){
  box-shadow:none;
}
.dc-board-skin-card.is-active{
  border-color:rgba(53,224,127,.44);
  box-shadow:0 0 0 1px rgba(53,224,127,.18),0 16px 28px rgba(0,0,0,.18);
}


/* v2.1.60 Real board skin previews */
.dc-board-skin-card__swatch--real{
  width:128px;
  min-height:104px;
}
.dc-board-skin-card__preview{
  display:grid;
  place-items:center;
  width:112px;
  height:112px;
  border-radius:18px;
  background:
    radial-gradient(circle at center,rgba(255,255,255,.045),transparent 58%),
    rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.08);
  overflow:hidden;
  pointer-events:none;
}
.dc-board-skin-card__preview .dc-dartboard{
  width:104px;
  max-width:104px;
  height:104px;
  margin:0;
  filter:drop-shadow(0 8px 14px rgba(0,0,0,.36));
  pointer-events:none;
}
.dc-board-skin-card__preview .dc-dartboard [data-segment]{
  pointer-events:none;
}
.dc-board-skin-card__preview .dc-dartboard__number{
  font-size:15px;
}
.dc-board-skin-card__preview .dc-dartboard__brand-mark{
  opacity:.62;
}
.dc-board-skin-card__preview .dc-dartboard--skin-bristle .dc-dartboard__brand-mark{
  opacity:.34;
}
.dc-board-skin-card__preview .dc-dartboard--skin-edart .dc-dartboard__brand-mark{
  opacity:.7;
}
.dc-board-skin-card__preview .dc-dartboard__brand-plate{
  opacity:.82;
}
@media(max-width:900px){
  .dc-board-skin-card__swatch--real{width:92px;min-height:82px}
  .dc-board-skin-card__preview{width:78px;height:78px;border-radius:14px}
  .dc-board-skin-card__preview .dc-dartboard{width:74px;max-width:74px;height:74px}
  .dc-board-skin-card__preview .dc-dartboard__number{font-size:14px}
}


/* v2.1.67 X01 icon integration */
.dc-game-mode-card__hero{display:grid;grid-template-columns:88px minmax(0,1fr);gap:14px;align-items:center}
.dc-game-mode-card__art{width:88px;height:88px;display:flex;align-items:center;justify-content:center;border-radius:20px;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.06);overflow:hidden;flex:0 0 88px}
.dc-game-mode-card__art img{display:block;max-width:112%;max-height:112%;object-fit:contain;filter:drop-shadow(0 10px 20px rgba(0,0,0,.22))}
@media(max-width:640px){.dc-game-mode-card__hero{grid-template-columns:72px minmax(0,1fr);gap:12px}.dc-game-mode-card__art{width:72px;height:72px;border-radius:18px}}


/* v2.1.69 New Match Builder UX */
.dc-step-pill{
  display:inline-grid;
  place-items:center;
  width:28px;
  height:28px;
  margin-right:8px;
  border-radius:999px;
  background:rgba(53,224,127,.12);
  border:1px solid rgba(53,224,127,.28);
  color:var(--dc-primary-strong);
  font-size:13px;
  font-weight:900;
  vertical-align:middle;
}
.dc-match-builder{
  display:grid;
  gap:18px;
}
.dc-match-builder-summary{
  display:grid;
  grid-template-columns:minmax(260px,1.1fr) minmax(340px,1.8fr);
  gap:18px;
  align-items:stretch;
  background:
    radial-gradient(circle at 12% 0%,rgba(53,224,127,.14),transparent 36%),
    linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.015));
  border-color:rgba(53,224,127,.22);
}
.dc-match-builder-summary__main{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:8px;
}
.dc-match-builder-summary__main h2{
  margin:0;
  font-size:clamp(24px,3vw,38px);
  letter-spacing:-.04em;
}
.dc-match-builder-summary__main p{
  margin:0;
  color:var(--dc-text-soft);
  line-height:1.45;
}
.dc-match-builder-summary__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.dc-match-builder-summary__grid div{
  min-height:78px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:10px;
  padding:12px;
  border-radius:18px;
  background:rgba(0,0,0,.18);
  border:1px solid rgba(255,255,255,.08);
}
.dc-match-builder-summary__grid span{
  color:var(--dc-muted);
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.dc-match-builder-summary__grid strong{
  color:var(--dc-text);
  font-size:14px;
  line-height:1.2;
}
.dc-match-submit-card--builder{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
  border-color:rgba(53,224,127,.2);
  background:linear-gradient(135deg,rgba(53,224,127,.075),rgba(255,255,255,.018));
}
.dc-match-submit-card--builder h2{
  margin:4px 0 8px;
}
.dc-match-submit-card--builder p{
  margin:0;
}
.dc-match-submit-card--builder p.is-ready{
  color:var(--dc-primary-strong);
}
.dc-match-start-button{
  min-width:190px;
  justify-content:center;
}
@media(max-width:980px){
  .dc-match-builder-summary{
    grid-template-columns:1fr;
  }
  .dc-match-builder-summary__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media(max-width:640px){
  .dc-match-builder-summary__grid{
    grid-template-columns:1fr;
  }
  .dc-match-submit-card--builder{
    flex-direction:column;
    align-items:stretch;
  }
  .dc-match-start-button{
    width:100%;
  }
}


/* v2.1.70 Match board stability */
.dc-match-play-layout .dc-dartboard-card--stable,
.dc-dartboard-card--stable{
  overflow:visible;
}

.dc-dartboard-card--stable .dc-dartboard-wrap,
.dc-dartboard-card--stable .dc-board-play-wrap,
.dc-dartboard-card--stable .dc-board-input,
.dc-dartboard-card--stable [data-dartboard-form]{
  overflow:visible;
}

/* Keep the board area geometrically stable while darts/turn feedback appears below it. */
.dc-dartboard-card--stable .dc-dartboard{
  width:min(100%,620px);
  max-width:620px;
  aspect-ratio:1/1;
  margin-inline:auto;
  padding:14px;
  box-sizing:border-box;
  overflow:visible;
}

/* Prevent tiny visual clipping at the SVG edge and reserve breathing room around the board. */
.dc-dartboard-card--stable svg.dc-dartboard,
.dc-dartboard-card--stable .dc-dartboard svg{
  overflow:visible;
}

/* The live turn/score feedback must not resize the board after the first dart. */
.dc-dartboard-card--stable .dc-live-turn,
.dc-dartboard-card--stable .dc-current-turn,
.dc-dartboard-card--stable .dc-turn-preview,
.dc-dartboard-card--stable .dc-board-score,
.dc-dartboard-card--stable [data-current-turn],
.dc-dartboard-card--stable [data-turn-preview],
.dc-dartboard-card--stable [data-live-turn]{
  min-height:76px;
}

/* Empty feedback area still reserves space, but remains visually quiet. */
.dc-dartboard-card--stable .dc-live-turn:empty,
.dc-dartboard-card--stable .dc-current-turn:empty,
.dc-dartboard-card--stable .dc-turn-preview:empty,
.dc-dartboard-card--stable .dc-board-score:empty,
.dc-dartboard-card--stable [data-current-turn]:empty,
.dc-dartboard-card--stable [data-turn-preview]:empty,
.dc-dartboard-card--stable [data-live-turn]:empty{
  visibility:hidden;
}

/* AI dart animation layer should not change board dimensions. */
.dc-dartboard-card--stable .dc-ai-dart-layer,
.dc-dartboard-card--stable [data-ai-dart-layer],
.dc-dartboard-card--stable .dc-dartboard__dart-layer{
  position:absolute;
  inset:0;
  pointer-events:none;
  overflow:visible;
}

/* Mobile: keep a stable board size but avoid horizontal clipping. */
@media(max-width:720px){
  .dc-dartboard-card--stable .dc-dartboard{
    width:min(100%,calc(100vw - 42px));
    padding:12px;
  }
  .dc-dartboard-card--stable .dc-live-turn,
  .dc-dartboard-card--stable .dc-current-turn,
  .dc-dartboard-card--stable .dc-turn-preview,
  .dc-dartboard-card--stable .dc-board-score,
  .dc-dartboard-card--stable [data-current-turn],
  .dc-dartboard-card--stable [data-turn-preview],
  .dc-dartboard-card--stable [data-live-turn]{
    min-height:68px;
  }
}


/* v2.1.71 Notification top-layer z-index fix */
:root{
  --dc-z-notification:2147483000;
}

/* Toast/notification containers must always sit above board, cards, overlays, animations and menus. */
.dc-toast,
.dc-toasts,
.dc-toast-stack,
.dc-notification,
.dc-notifications,
.dc-flash,
.dc-flash-message,
.dc-alert-stack,
.dc-alert-floating,
[data-toast],
[data-toasts],
[data-notification],
[data-flash-message]{
  position:fixed!important;
  z-index:var(--dc-z-notification)!important;
  isolation:isolate;
  pointer-events:auto;
}

/* Common top-right notification placement fallback, without changing existing offsets if already defined. */
.dc-toast:not([style*="top"]),
.dc-toasts:not([style*="top"]),
.dc-toast-stack:not([style*="top"]),
.dc-notification:not([style*="top"]),
.dc-notifications:not([style*="top"]),
.dc-flash-message:not([style*="top"]),
[data-toast]:not([style*="top"]),
[data-toasts]:not([style*="top"]),
[data-notification]:not([style*="top"]),
[data-flash-message]:not([style*="top"]){
  top:max(16px,env(safe-area-inset-top,0px) + 16px);
}

.dc-toast:not([style*="right"]),
.dc-toasts:not([style*="right"]),
.dc-toast-stack:not([style*="right"]),
.dc-notification:not([style*="right"]),
.dc-notifications:not([style*="right"]),
.dc-flash-message:not([style*="right"]),
[data-toast]:not([style*="right"]),
[data-toasts]:not([style*="right"]),
[data-notification]:not([style*="right"]),
[data-flash-message]:not([style*="right"]){
  right:max(16px,env(safe-area-inset-right,0px) + 16px);
}

/* Children of the notification layer inherit the same top-layer context. */
.dc-toast *,
.dc-toasts *,
.dc-toast-stack *,
.dc-notification *,
.dc-notifications *,
.dc-flash *,
.dc-flash-message *,
.dc-alert-stack *,
.dc-alert-floating *{
  z-index:auto;
}

/* Mobile: keep messages inside viewport and above bottom UI. */
@media(max-width:640px){
  .dc-toast,
  .dc-toasts,
  .dc-toast-stack,
  .dc-notification,
  .dc-notifications,
  .dc-flash-message,
  [data-toast],
  [data-toasts],
  [data-notification],
  [data-flash-message]{
    left:max(12px,env(safe-area-inset-left,0px) + 12px)!important;
    right:max(12px,env(safe-area-inset-right,0px) + 12px)!important;
    width:auto!important;
    max-width:none!important;
  }
}


/* v2.1.72 Stats Formkurve Polish */
.dc-stats-rating-card--polished{
  background:
    radial-gradient(circle at 10% 0%,rgba(53,224,127,.12),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.012));
}
.dc-rating-trend{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:96px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.1);
  background:rgba(255,255,255,.04);
  color:var(--dc-text-soft);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.dc-rating-trend.is-up{
  color:var(--dc-primary-strong);
  border-color:rgba(53,224,127,.32);
  background:rgba(53,224,127,.12);
}
.dc-rating-trend.is-down{
  color:#ff8a8a;
  border-color:rgba(255,90,90,.32);
  background:rgba(255,90,90,.11);
}
.dc-stats-rating-kpis--main>div{
  min-height:104px;
}
.dc-stats-rating-kpis em,
.dc-rating-form-grid em{
  display:block;
  margin-top:6px;
  color:var(--dc-muted);
  font-style:normal;
  font-size:12px;
  line-height:1.3;
}
.dc-rating-form-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin:0 0 16px;
}
.dc-rating-form-grid>div{
  padding:14px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  background:rgba(0,0,0,.16);
}
.dc-rating-form-grid span{
  display:block;
  color:var(--dc-muted);
  font-size:12px;
  text-transform:uppercase;
  letter-spacing:.07em;
  font-weight:800;
}
.dc-rating-form-grid strong{
  display:block;
  margin-top:7px;
  font-size:30px;
  line-height:1.05;
  color:var(--dc-text);
}
.dc-rating-chart-wrap{
  padding:10px;
  border:1px solid rgba(255,255,255,.06);
  border-radius:22px;
  background:rgba(0,0,0,.14);
}
.dc-stats-line-chart--rating{
  border-color:rgba(53,224,127,.18);
  background:
    linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(180deg,rgba(255,255,255,.035) 1px,transparent 1px),
    linear-gradient(180deg,rgba(53,224,127,.08),rgba(255,255,255,.018));
  background-size:76px 100%,100% 48px,100% 100%;
}
.dc-stats-line-chart--rating .dc-rating-baseline{
  stroke:rgba(255,255,255,.16);
  stroke-width:2;
  stroke-dasharray:6 6;
}
.dc-stats-line-chart--rating circle.is-current{
  r:6px;
  fill:var(--dc-primary-strong);
  stroke:#fff;
}

.dc-stats-line-chart--rating .dc-rating-point{
  cursor:help;
  pointer-events:all;
  transition:r .14s ease,opacity .14s ease,stroke-width .14s ease;
}
.dc-stats-line-chart--rating .dc-rating-point:not(.is-important){
  opacity:.72;
  stroke-width:1.6;
}
.dc-stats-line-chart--rating .dc-rating-point:hover,
.dc-stats-line-chart--rating .dc-rating-point:focus{
  opacity:1;
  stroke:#fff;
  stroke-width:2.5;
}
.dc-rating-note{
  margin:12px 0 0;
}
@media(max-width:900px){
  .dc-rating-form-grid{
    grid-template-columns:1fr;
  }
}

/* v2.1.79 Leg Celebration Layer */
.dc-leg-celebration{position:fixed;inset:0;display:grid;place-items:center;pointer-events:none;z-index:120;opacity:0;transform:scale(.98);transition:opacity .18s ease,transform .18s ease}
.dc-leg-celebration.is-visible{opacity:1;transform:scale(1)}
.dc-leg-celebration__card{display:flex;align-items:center;gap:18px;max-width:min(92vw,520px);padding:20px 24px;border:1px solid rgba(255,255,255,.2);border-radius:28px;background:linear-gradient(135deg,rgba(14,17,20,.96),rgba(10,12,14,.91));box-shadow:0 26px 90px rgba(0,0,0,.62),0 0 0 1px rgba(53,224,127,.12);backdrop-filter:blur(14px)}
.dc-leg-celebration__logo{width:86px;height:86px;object-fit:contain;filter:drop-shadow(0 10px 20px rgba(0,0,0,.42))}
.dc-leg-celebration__kicker{display:block;color:var(--dc-primary-strong);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em;margin-bottom:4px}
.dc-leg-celebration__title{display:block;color:#fff;font-size:clamp(30px,6vw,54px);line-height:1;font-weight:950;letter-spacing:-.04em;text-shadow:0 10px 30px rgba(0,0,0,.48)}
@media (max-width:620px){.dc-leg-celebration__card{gap:14px;padding:16px 18px;border-radius:22px}.dc-leg-celebration__logo{width:64px;height:64px}.dc-leg-celebration__title{font-size:34px}}

/* v2.1.80 Statistikzentrum Mode Foundation */
.dc-stats-mode-foundation{border-color:rgba(53,224,127,.2);background:linear-gradient(180deg,rgba(53,224,127,.055),rgba(255,255,255,.015))}
.dc-stats-mode-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
.dc-stats-mode-card{border:1px solid var(--dc-border);border-radius:18px;background:rgba(255,255,255,.035);padding:16px;display:grid;gap:6px;cursor:default;transition:border-color .16s ease,background .16s ease,transform .16s ease}
.dc-stats-mode-card strong{font-size:18px}.dc-stats-mode-card span{color:var(--dc-muted);font-size:14px;line-height:1.45}.dc-stats-mode-card.is-active{border-color:rgba(53,224,127,.48);background:rgba(53,224,127,.1)}.dc-stats-mode-card[data-stats-advanced-card]{cursor:pointer;border-color:rgba(255,189,74,.24)}.dc-stats-mode-card[data-stats-advanced-card]:hover{transform:translateY(-1px);border-color:rgba(255,189,74,.42)}.dc-stats-mode-card[data-stats-advanced-card].is-active{border-color:rgba(255,189,74,.52);background:rgba(255,189,74,.14)}
.dc-stats-coverage-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.dc-stats-coverage-item{border:1px solid var(--dc-border);border-radius:14px;background:rgba(0,0,0,.16);padding:12px}.dc-stats-coverage-item span{display:block;color:var(--dc-muted);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.dc-stats-coverage-item strong{display:block;font-size:24px;line-height:1.1;margin-top:4px}.dc-stats-coverage-item.is-available{border-color:rgba(53,224,127,.28)}.dc-stats-coverage-item.is-empty{opacity:.72}.dc-stats-advanced-panel{border-color:rgba(255,189,74,.26);background:linear-gradient(180deg,rgba(255,189,74,.055),rgba(255,255,255,.012))}.dc-stats-advanced-panel[hidden]{display:none!important}.dc-stat-label--with-tip{display:flex;align-items:center;gap:7px;justify-content:space-between}.dc-info-tip{width:22px;height:22px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);color:var(--dc-text-soft);display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:900;line-height:1;cursor:help;padding:0;flex:0 0 auto}.dc-info-tip:hover,.dc-info-tip:focus{border-color:rgba(53,224,127,.5);color:var(--dc-primary-strong);outline:none}.dc-app-tooltip{position:fixed;z-index:2147482000;max-width:min(320px,calc(100vw - 24px));padding:10px 12px;border:1px solid rgba(53,224,127,.32);border-radius:13px;background:linear-gradient(180deg,#12171b,#080b0d);color:var(--dc-text-soft);box-shadow:0 18px 50px rgba(0,0,0,.42);font-size:13px;line-height:1.45;pointer-events:none;opacity:0;transform:translateY(4px);transition:opacity .12s ease,transform .12s ease}.dc-app-tooltip.is-visible{opacity:1;transform:translateY(0)}
@media (max-width:800px){.dc-stats-mode-cards,.dc-stats-coverage-grid{grid-template-columns:1fr}.dc-stat-label--with-tip{align-items:flex-start}}

/* v2.1.83 – Global button hover contrast guard
   Keeps all existing button behavior, but prevents hover states where label and background converge. */
.dc-button,
a.dc-button,
button.dc-button{
  transition:background-color .14s ease,border-color .14s ease,color .14s ease,box-shadow .14s ease,transform .14s ease;
}
.dc-button:hover,
a.dc-button:hover,
button.dc-button:hover,
.dc-button:focus-visible,
a.dc-button:focus-visible,
button.dc-button:focus-visible{
  background:#242a31;
  border-color:rgba(255,255,255,.26);
  color:#ffffff;
  box-shadow:0 0 0 1px rgba(255,255,255,.045),0 12px 24px rgba(0,0,0,.20);
}
.dc-button--primary:hover,
a.dc-button--primary:hover,
button.dc-button--primary:hover,
.dc-button--primary:focus-visible,
a.dc-button--primary:focus-visible,
button.dc-button--primary:focus-visible{
  background:var(--dc-primary-strong);
  border-color:var(--dc-primary-strong);
  color:#06100a;
  box-shadow:0 0 0 1px rgba(101,255,159,.22),0 14px 28px rgba(53,224,127,.16);
}
.dc-button--secondary:hover,
a.dc-button--secondary:hover,
button.dc-button--secondary:hover,
.dc-button--secondary:focus-visible,
a.dc-button--secondary:focus-visible,
button.dc-button--secondary:focus-visible{
  background:#273039;
  border-color:rgba(255,255,255,.28);
  color:#ffffff;
}
.dc-button--ghost:hover,
a.dc-button--ghost:hover,
button.dc-button--ghost:hover,
.dc-button--ghost:focus-visible,
a.dc-button--ghost:focus-visible,
button.dc-button--ghost:focus-visible{
  background:rgba(255,255,255,.085);
  border-color:rgba(255,255,255,.22);
  color:#ffffff;
  box-shadow:none;
}
.dc-button--danger:hover,
a.dc-button--danger:hover,
button.dc-button--danger:hover,
.dc-button--danger:focus-visible,
a.dc-button--danger:focus-visible,
button.dc-button--danger:focus-visible{
  background:rgba(255,77,94,.24);
  border-color:rgba(255,77,94,.58);
  color:#ffffff;
}
.dc-button--subtle-danger:hover,
a.dc-button--subtle-danger:hover,
button.dc-button--subtle-danger:hover,
.dc-button--subtle-danger:focus-visible,
a.dc-button--subtle-danger:focus-visible,
button.dc-button--subtle-danger:focus-visible{
  background:rgba(255,77,94,.16);
  border-color:rgba(255,77,94,.44);
  color:#ffffff;
}
.dc-button--disabled,
.dc-button:disabled,
button.dc-button:disabled,
.dc-button--disabled:hover,
.dc-button:disabled:hover,
button.dc-button:disabled:hover{
  background:rgba(255,255,255,.045);
  border-color:rgba(255,255,255,.10);
  color:rgba(255,255,255,.42);
  box-shadow:none;
  cursor:not-allowed;
  transform:none;
}


/* v2.1.84 Match board layout stability
   Board rendering gets a stable stage and the live turn feedback moves into its own panel. */
.dc-board-entry-shell{
  display:grid;
  grid-template-columns:minmax(320px,1fr) minmax(190px,240px);
  gap:16px;
  align-items:center;
  min-width:0;
}
.dc-dartboard-stage{
  position:relative;
  display:grid;
  place-items:center;
  width:min(100%,620px);
  min-width:min(320px,100%);
  aspect-ratio:1/1;
  margin-inline:auto;
  overflow:visible;
  contain:layout;
}
.dc-dartboard-stage .dc-dartboard-wrap{
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  display:grid;
  place-items:center;
  overflow:visible;
  padding:10px;
  box-sizing:border-box;
}
.dc-dartboard-stage .dc-dartboard,
.dc-dartboard-card--stable .dc-dartboard-stage .dc-dartboard{
  display:block;
  width:100%!important;
  height:100%!important;
  max-width:100%!important;
  max-height:100%!important;
  aspect-ratio:1/1;
  object-fit:contain;
  padding:0;
  box-sizing:border-box;
  overflow:visible;
}
.dc-board-entry-panel{
  align-self:stretch;
  display:flex;
  min-width:0;
}
.dc-board-entry-panel .dc-dartboard__summary--live{
  width:100%;
  min-height:210px;
  margin:0;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:14px;
}
.dc-board-entry-panel .dc-dartboard-live-score{
  display:grid;
  gap:10px;
}
.dc-board-entry-panel .dc-dartboard-live-score span{
  display:flex;
  justify-content:space-between;
  gap:10px;
  padding:10px 12px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:14px;
  background:rgba(0,0,0,.16);
}
.dc-board-entry-panel .dc-dartboard-live-status{
  justify-content:center!important;
  color:var(--dc-primary-strong);
  font-weight:900;
}
.dc-board-entry-actions{
  justify-content:center;
}

/* Safari-safe overrides for the compact match layout. */
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable{
  display:grid;
  grid-template-rows:auto auto auto;
  align-content:start;
  align-items:start;
  overflow:visible;
}
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-shell{
  min-height:0;
}
/* DEPRECATED v2.2.131 — legacy stable-board pixel/vh cap restricted the real stage container.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-stage{
  width:min(100%,calc(100vh - 190px),620px);
  min-width:min(320px,100%);
  max-width:620px;
}
*/
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-wrap{
  height:100%;
}
*/
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard{
  width:100%!important;
  height:100%!important;
  max-height:none!important;
}
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard__summary--live{
  min-height:210px;
}
/* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card--stable--ai .dc-dartboard-stage */

/* DEPRECATED v2.2.131 — obsolete pre-consolidation AI stage cap; AI uses the shared board stage.
body.dc-match-mode .dc-dartboard-card--ai .dc-dartboard-stage{
  width:min(100%,calc(100vh - 170px),620px);
  min-width:min(320px,100%);
}
*/

@media(max-width:1080px){
  .dc-board-entry-shell{
    grid-template-columns:1fr;
  }
  .dc-board-entry-panel .dc-dartboard__summary--live{
    min-height:118px;
  }
  .dc-board-entry-panel .dc-dartboard-live-score{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .dc-board-entry-panel .dc-dartboard-live-score span{
    display:grid;
    justify-items:center;
    text-align:center;
  }
}
@media(max-width:720px){
  .dc-dartboard-stage,
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-stage{
    width:min(100%,calc(100vw - 44px));
    min-width:0;
  }
  .dc-board-entry-panel .dc-dartboard-live-score{
    grid-template-columns:1fr;
  }
  .dc-board-entry-panel .dc-dartboard__summary--live{
    min-height:168px;
  }
}


/* v2.1.87 Match view stability + board/score decoupling
   Goals:
   - board column must not shrink because of the right live score panel
   - right live score panel must never overlap its own text
   - AI dart size must stay visually proportional to the final rendered board */
.dc-board-entry-shell{
  grid-template-columns:minmax(0,1fr) minmax(250px,280px);
  align-items:stretch;
}
.dc-dartboard-stage{
  width:min(100%,760px);
  max-width:760px;
  min-width:0;
}
.dc-board-entry-panel{
  flex:0 0 min(280px,100%);
  width:min(280px,100%);
  max-width:100%;
}
.dc-board-entry-panel .dc-dartboard-live-score{
  grid-template-columns:1fr;
}
.dc-board-entry-panel .dc-dartboard-live-score span{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:8px 12px;
}
.dc-board-entry-panel .dc-dartboard-live-score strong,
.dc-board-entry-panel .dc-dartboard-live-score em{
  min-width:0;
}
.dc-board-entry-panel .dc-dartboard-live-score strong{
  white-space:normal;
  overflow-wrap:anywhere;
}
.dc-board-entry-panel .dc-dartboard-live-score em{
  text-align:right;
}
.dc-board-entry-panel .dc-dartboard-live-status{
  grid-template-columns:1fr !important;
  justify-items:center;
  text-align:center;
}
.dc-board-entry-panel .dc-dartboard-live-status em{
  text-align:center;
}

@media (min-width:901px){
  body.dc-match-mode .dc-match-board{
    grid-template-columns:minmax(340px,38%) minmax(640px,1fr);
  }
  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai */
body.dc-match-mode .dc-dartboard-card,
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable{
    justify-items:center;
  }
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-shell{
    width:100%;
    grid-template-columns:minmax(0,1fr) minmax(250px,280px);
    align-items:stretch;
  }
  /* DEPRECATED v2.2.131 — legacy 760px/vh matchscreen stage cap restricted the real stage container.
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-stage{
    width:min(100%,760px,calc(100vh - 160px));
    max-width:760px;
    justify-self:center;
  }
  */
  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card--stable--ai .dc-dartboard-stage */

  /* DEPRECATED v2.2.131 — obsolete pre-consolidation AI stage cap; AI uses the shared board stage.
  body.dc-match-mode .dc-dartboard-card--ai .dc-dartboard-stage{
    width:min(100%,760px,calc(100vh - 150px));
    max-width:760px;
    justify-self:center;
  }
  */
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-dartboard-wrap--ai{
    width:100%;
    height:100%;
    display:grid;
    place-items:center;
  }
*/
}

@media (max-width:1200px){
  .dc-board-entry-shell{
    grid-template-columns:1fr;
  }
  .dc-board-entry-panel{
    flex-basis:auto;
    width:100%;
  }
}


/* v2.1.88 X01 start score image visibility restore
   The image files are present; this forces the score-card art layer to render visibly
   and keeps it independent from the lower label row. */
.dc-x01-score-card{
  display:grid;
  grid-template-rows:minmax(142px,1fr) auto;
  min-height:178px;
}
.dc-x01-score-card__image{
  position:relative;
  min-height:142px;
  height:142px;
  padding:0;
  overflow:hidden;
  isolation:isolate;
  background:radial-gradient(circle at 50% 42%,rgba(53,224,127,.08),transparent 58%),rgba(0,0,0,.18);
}
.dc-x01-score-card__image::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:2;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(0,0,0,0) 0%,rgba(0,0,0,.18) 100%);
}
.dc-x01-score-card__image img{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  max-width:none;
  max-height:none;
  object-fit:contain;
  object-position:center center;
  transform:scale(1.34);
  opacity:1;
  visibility:visible;
  filter:drop-shadow(0 14px 22px rgba(0,0,0,.34));
}
.dc-x01-score-card__copy{
  position:relative;
  z-index:3;
  background:linear-gradient(180deg,rgba(8,10,12,.86),rgba(8,10,12,.96));
}
@media (max-width:980px){
  .dc-x01-score-card{
    grid-template-columns:132px minmax(0,1fr);
    grid-template-rows:auto;
    min-height:112px;
  }
  .dc-x01-score-card__image{
    min-height:112px;
    height:112px;
  }
  .dc-x01-score-card__image img{transform:scale(1.42)}
}
@media (max-width:560px){
  .dc-x01-score-card{grid-template-columns:104px minmax(0,1fr)}
  .dc-x01-score-card__image{min-height:96px;height:96px}
}

/* v2.1.89 Match board focus mode
   - board keeps priority on the match page
   - right live-score rail can be collapsed without reload
   - board size stays independent from the score rail width */
.dc-board-entry-shell{
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
}

.dc-board-entry-panel{
  position:relative;
  width:280px;
  flex:0 0 280px;
  min-width:0;
  max-width:280px;
  display:flex;
  flex-direction:column;
  gap:12px;
  transition:flex-basis .24s ease,width .24s ease,max-width .24s ease;
}

.dc-board-entry-panel__toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  width:100%;
  padding:10px 12px;
  border:1px solid rgba(53,224,127,.26);
  border-radius:14px;
  background:rgba(53,224,127,.08);
  color:var(--dc-primary-strong);
  font-weight:900;
  letter-spacing:.02em;
  cursor:pointer;
}

.dc-board-entry-panel__toggle:hover{background:rgba(53,224,127,.14)}
.dc-board-entry-panel__toggle-text--closed{display:none}

.dc-board-entry-panel__body{
  display:flex;
  flex:1 1 auto;
  min-height:0;
  transition:opacity .18s ease,transform .22s ease,max-height .22s ease;
}

.dc-board-entry-panel .dc-dartboard__summary--live{
  min-height:0;
  height:100%;
}

.dc-board-entry-shell.is-panel-collapsed{grid-template-columns:minmax(0,1fr) 54px}

.dc-board-entry-shell.is-panel-collapsed .dc-board-entry-panel{
  width:54px;
  flex-basis:54px;
  max-width:54px;
}

.dc-board-entry-shell.is-panel-collapsed .dc-board-entry-panel__toggle{
  height:100%;
  min-height:320px;
  padding:14px 6px;
  writing-mode:vertical-rl;
  text-orientation:mixed;
  letter-spacing:.04em;
}

.dc-board-entry-shell.is-panel-collapsed .dc-board-entry-panel__toggle-text--open{display:none}
.dc-board-entry-shell.is-panel-collapsed .dc-board-entry-panel__toggle-text--closed{display:inline}

.dc-board-entry-shell.is-panel-collapsed .dc-board-entry-panel__body{
  opacity:0;
  pointer-events:none;
  transform:translateX(10px);
  max-height:0;
  overflow:hidden;
}

.dc-board-entry-shell.is-panel-open .dc-board-entry-panel__toggle-text--open{display:inline}
.dc-board-entry-shell.is-panel-open .dc-board-entry-panel__toggle-text--closed{display:none}

@media (min-width:901px){
  body.dc-match-mode .dc-match-board{grid-template-columns:minmax(340px,38%) minmax(700px,1fr)}
  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai */
body.dc-match-mode .dc-dartboard-card,
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable{justify-items:stretch}
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-shell{width:100%;height:100%;align-items:center;grid-template-columns:minmax(0,1fr) auto}
  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card--stable--ai .dc-dartboard-stage */
/* DEPRECATED v2.2.131 — legacy desktop pixel/vh cap restricted the real stage container.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-stage,
body.dc-match-mode .dc-dartboard-card--ai .dc-dartboard-stage{width:min(100%,calc(100vh - 148px),860px);max-width:860px;min-width:0;justify-self:center}
*/
  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card--stable--ai .dc-dartboard-wrap */
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-wrap,
  body.dc-match-mode .dc-dartboard-card--ai .dc-dartboard-wrap{width:100%;height:100%;display:grid;place-items:center}
*/
  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card--stable--ai .dc-dartboard */
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard,
  body.dc-match-mode .dc-dartboard-card--ai .dc-dartboard{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;padding:4px;object-fit:contain}
  /* DEPRECATED v2.2.131 — legacy collapsed-panel pixel/vh cap restricted the real stage container.
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-shell.is-panel-collapsed .dc-dartboard-stage{width:min(100%,calc(100vh - 142px),920px);max-width:920px}
  */
}

@media (max-width:1200px){
  .dc-board-entry-shell,
  .dc-board-entry-shell.is-panel-collapsed{grid-template-columns:1fr}
  .dc-board-entry-panel,
  .dc-board-entry-shell.is-panel-collapsed .dc-board-entry-panel{width:100%;max-width:100%;flex-basis:auto}
  .dc-board-entry-panel__toggle,
  .dc-board-entry-shell.is-panel-collapsed .dc-board-entry-panel__toggle{min-height:44px;height:auto;writing-mode:horizontal-tb;text-orientation:mixed;padding:10px 12px}
  .dc-board-entry-panel__body,
  .dc-board-entry-shell.is-panel-collapsed .dc-board-entry-panel__body{opacity:1;pointer-events:auto;transform:none;max-height:none;overflow:visible}
  .dc-board-entry-panel__toggle-text--open,
  .dc-board-entry-shell.is-panel-collapsed .dc-board-entry-panel__toggle-text--open{display:inline}
  .dc-board-entry-panel__toggle-text--closed,
  .dc-board-entry-shell.is-panel-collapsed .dc-board-entry-panel__toggle-text--closed{display:none}
}

/* v2.1.90 Match board center + viewport sizing fix
   Goals:
   - the board keeps a stable geometric center even when the score rail is toggled
   - the board scales primarily from viewport height instead of fixed pixel caps
   - the right score rail never reduces the board by changing the stage height
   - live-score labels in the right rail never overlap */
:root{
  --dc-board-rail-width:280px;
  --dc-board-rail-collapsed-width:58px;
  --dc-board-size-open:min(84vh,100%);
  --dc-board-size-collapsed:min(88vh,100%);
}

/* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai */
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable{
  display:grid;
  align-items:stretch;
  justify-items:stretch;
  min-height:0;
}

body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable{
  grid-template-rows:auto minmax(0,1fr) auto;
}

/* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai{
  grid-template-rows:auto minmax(0,1fr);
}
*/

body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-shell{
  display:grid;
  grid-template-columns:minmax(0,1fr) var(--dc-board-rail-width);
  gap:18px;
  width:100%;
  height:100%;
  min-height:0;
  align-items:stretch;
}

body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-shell.is-panel-collapsed{
  grid-template-columns:minmax(0,1fr) var(--dc-board-rail-collapsed-width);
}

/* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card--stable--ai .dc-dartboard-stage */
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-stage,
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-stage,
body.dc-match-mode .dc-dartboard-card--ai .dc-dartboard-stage{
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  display:grid;
  place-items:center;
  align-self:stretch;
  justify-self:stretch;
}
*/

/* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card--stable--ai .dc-dartboard-wrap */
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-stage .dc-dartboard-wrap,
body.dc-match-mode .dc-dartboard-card--ai .dc-dartboard-wrap{
  width:var(--dc-board-size-open);
  max-width:100%;
  aspect-ratio:1/1;
  min-width:0;
  min-height:0;
  display:grid;
  place-items:center;
  justify-self:center;
  align-self:center;
}
*/

/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-shell.is-panel-collapsed .dc-dartboard-wrap{
  width:var(--dc-board-size-collapsed);
}
*/

/* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card--stable--ai .dc-dartboard */
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-stage .dc-dartboard,
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard,
body.dc-match-mode .dc-dartboard-card--ai .dc-dartboard{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  margin:0 auto;
  padding:6px;
  box-sizing:border-box;
  object-fit:contain;
}
*/

body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-panel{
  width:var(--dc-board-rail-width);
  flex:0 0 var(--dc-board-rail-width);
  max-width:var(--dc-board-rail-width);
  min-width:0;
  height:100%;
}

body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-shell.is-panel-collapsed .dc-board-entry-panel{
  width:var(--dc-board-rail-collapsed-width);
  flex-basis:var(--dc-board-rail-collapsed-width);
  max-width:var(--dc-board-rail-collapsed-width);
}

body.dc-match-mode .dc-board-entry-panel__body{
  min-height:0;
  height:100%;
}

body.dc-match-mode .dc-board-entry-panel .dc-dartboard__summary--live{
  height:100%;
  display:grid;
  align-content:start;
}

body.dc-match-mode .dc-board-entry-panel .dc-dartboard-live-score{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}

body.dc-match-mode .dc-board-entry-panel .dc-dartboard-live-score span{
  display:grid;
  grid-template-columns:1fr;
  gap:4px;
  align-items:start;
  min-width:0;
}

body.dc-match-mode .dc-board-entry-panel .dc-dartboard-live-score strong,
body.dc-match-mode .dc-board-entry-panel .dc-dartboard-live-score em,
body.dc-match-mode .dc-board-entry-panel .dc-dartboard-live-status{
  min-width:0;
  white-space:normal;
  overflow-wrap:anywhere;
}

body.dc-match-mode .dc-board-entry-panel .dc-dartboard-live-score em,
body.dc-match-mode .dc-board-entry-panel .dc-dartboard-live-status em{
  text-align:left;
}

@media (min-width:901px){
  body.dc-match-mode .dc-match-board{
    grid-template-columns:minmax(340px,38%) minmax(0,1fr);
  }

  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card--stable--ai .dc-dartboard-stage */
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-stage,
  body.dc-match-mode .dc-dartboard-card--ai .dc-dartboard-stage{
    padding:2px;
  }
*/

  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card--stable--ai .dc-dartboard-wrap */
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-wrap,
  body.dc-match-mode .dc-dartboard-card--ai .dc-dartboard-wrap{
    width:min(84vh,100%);
  }
*/

  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-shell.is-panel-collapsed .dc-dartboard-wrap{
    width:min(88vh,100%);
  }
*/
}

@media (max-width:1200px){
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-shell,
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-shell.is-panel-collapsed{
    grid-template-columns:1fr;
    height:auto;
  }

  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-panel,
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-shell.is-panel-collapsed .dc-board-entry-panel{
    width:100%;
    max-width:100%;
    flex-basis:auto;
    height:auto;
  }

  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card--stable--ai .dc-dartboard-wrap */
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-stage .dc-dartboard-wrap,
  body.dc-match-mode .dc-dartboard-card--ai .dc-dartboard-wrap{
    width:min(78vh,100%);
  }
*/
}


/* v2.1.91 Board focus topbar layout */
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable{
  grid-template-rows:auto minmax(0,1fr) auto;
  align-items:stretch;
}

/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  gap:10px;
  min-height:0;
  height:100%;
}
*/

body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-topbar{
  display:grid;
  grid-template-columns:minmax(240px,1.8fr) repeat(3,minmax(120px,1fr));
  gap:10px;
  align-items:stretch;
}

body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip{
  min-width:0;
  min-height:56px;
  padding:10px 12px;
  border:1px solid var(--dc-border);
  border-radius:16px;
  background:rgba(255,255,255,.04);
  display:grid;
  align-content:center;
  gap:4px;
}

body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip span{
  display:block;
  color:var(--dc-muted);
  font-size:11px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  line-height:1.1;
}

body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip strong,
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip em,
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip .dc-dartboard-live-status{
  display:block;
  min-width:0;
  margin:0;
  color:var(--dc-text);
  font-size:20px;
  font-weight:900;
  line-height:1.1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-style:normal;
}

body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip--selected strong{
  font-size:16px;
}

body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip--status .dc-dartboard-live-status{
  color:var(--dc-primary-strong);
}

/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard-stage{
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  display:grid;
  place-items:center;
}
*/

/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard-wrap{
  width:min(100%, calc(100vh - 208px));
  max-width:100%;
  aspect-ratio:1/1;
  min-width:0;
  min-height:0;
  display:grid;
  place-items:center;
  justify-self:center;
  align-self:center;
}
*/

/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  margin:0 auto;
  padding:6px;
  box-sizing:border-box;
  object-fit:contain;
}
*/

/* DEPRECATED v2.2.130 — broad stable-card cluster margin also targeted the board action row and created duplicate vertical spacing.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-cluster{
  margin-top:10px;
}
*/

@media (min-width:901px){
  body.dc-match-mode .dc-match-board{
    grid-template-columns:minmax(340px,38%) minmax(0,1fr);
  }

  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard-wrap{
    width:min(100%, calc(100vh - 198px));
  }
*/
}

@media (max-width:1200px){
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-topbar{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard-wrap{
    width:min(100%, calc(100vh - 256px));
  }
*/
}

@media (max-width:720px){
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-topbar{
    grid-template-columns:1fr;
  }

  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip,
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip strong,
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip .dc-dartboard-live-status{
    white-space:normal;
  }

  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard-wrap{
    width:min(100%, calc(100vh - 340px));
  }
*/
}


/* v2.1.92 Board topbar stability + AI parity */
/* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-board-entry-topbar */
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-topbar{
  min-height:56px;
  grid-auto-rows:56px;
}

/* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-board-entry-chip */
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip{
  min-height:56px;
  height:56px;
  overflow:hidden;
}

/* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-board-entry-chip strong, body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-board-entry-chip .dc-dartboard-live-status */
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip strong,
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip .dc-dartboard-live-status{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-board-entry-chip--selected strong */
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip--selected strong{
  font-size:14px;
}

/* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai{
  grid-template-rows:minmax(0,1fr);
}
*/

/* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-board-entry-layout{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  gap:10px;
  min-height:0;
  height:100%;
}
*/

/* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-dartboard-stage{
  width:100%;
  height:100%;
  min-width:0;
  min-height:0;
  display:grid;
  place-items:center;
}
*/

/* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-dartboard-wrap{
  width:min(100%, calc(100vh - 198px));
  max-width:100%;
  aspect-ratio:1/1;
  min-width:0;
  min-height:0;
  display:grid;
  place-items:center;
  justify-self:center;
  align-self:center;
}
*/

/* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-dartboard{
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  max-height:100% !important;
  margin:0 auto;
  padding:6px;
  box-sizing:border-box;
  object-fit:contain;
}
*/

@media (max-width:1200px){
  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-board-entry-topbar */
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-topbar{
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:minmax(56px,auto);
  }
  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-board-entry-chip */
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip{
    height:auto;
    min-height:56px;
  }
  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-dartboard-wrap */

  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard-wrap{
    width:min(100%, calc(100vh - 252px));
  }
*/
}

@media (max-width:720px){
  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-board-entry-topbar */
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-topbar{
    grid-template-columns:1fr;
  }
  /* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-dartboard-wrap */

  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard-wrap{
    width:min(100%, calc(100vh - 336px));
  }
*/
}


/* v2.1.93 Stats contextual Advanced placement */
.dc-stats-contextual-advanced{
  margin-top:18px;
  padding:16px;
  border-radius:18px;
}
.dc-stats-contextual-advanced .dc-section-head{margin-bottom:12px}
.dc-stats-contextual-advanced h3{margin:0;font-size:20px}
.dc-stat-card[data-stats-metric-mode="advanced"]{
  border-color:rgba(255,189,74,.32);
  background:linear-gradient(180deg,rgba(255,189,74,.075),rgba(255,255,255,.02));
}
.dc-stat-card[data-stats-metric-mode="advanced"] .dc-stat-label span::after{
  content:"Advanced";
  display:inline-flex;
  margin-left:8px;
  padding:2px 6px;
  border:1px solid rgba(255,189,74,.36);
  border-radius:999px;
  color:#ffd38a;
  background:rgba(255,189,74,.1);
  font-size:10px;
  font-weight:900;
  letter-spacing:.05em;
  text-transform:uppercase;
  vertical-align:middle;
}
.dc-stats-heatmap.dc-stats-advanced-panel{
  border-color:rgba(255,189,74,.32);
}

/* v2.2.0 Statistics availability pass + normal double quote tone */
.dc-stats-availability-panel{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}
.dc-stats-availability-panel>div{
  padding:14px 15px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(255,255,255,.026);
}
.dc-stats-availability-panel>div.is-available{
  border-color:rgba(53,224,127,.2);
  background:linear-gradient(180deg,rgba(53,224,127,.055),rgba(255,255,255,.022));
}
.dc-stats-availability-panel>div.has-limited-advanced{
  border-color:rgba(255,189,74,.2);
  background:linear-gradient(180deg,rgba(255,189,74,.045),rgba(255,255,255,.022));
}
.dc-stats-availability-panel span{
  display:block;
  color:var(--dc-muted);
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.1em;
}
.dc-stats-availability-panel strong{
  display:block;
  margin-top:5px;
  color:var(--dc-text);
  font-size:20px;
  font-weight:950;
  letter-spacing:-.03em;
}
.dc-stats-availability-panel em{
  display:block;
  margin-top:5px;
  color:var(--dc-text-soft);
  font-size:12px;
  line-height:1.45;
  font-style:normal;
}
.dc-quality-ring--double{
  border-color:rgba(53,224,127,.22);
  background:linear-gradient(180deg,rgba(53,224,127,.06),rgba(255,255,255,.024));
}
.dc-quality-ring--double .dc-quality-ring__progress{
  stroke:var(--dc-primary-strong);
  filter:drop-shadow(0 0 8px rgba(53,224,127,.24));
}
@media (max-width:760px){
  .dc-stats-availability-panel{grid-template-columns:1fr}
}

/* v2.2.1 Player tracking preference / v2.2.2 input preference polish */
.dc-profile-tracking-card{margin-top:18px;padding:18px;border:1px solid rgba(255,255,255,.1);border-radius:18px;background:rgba(255,255,255,.035)}
.dc-profile-tracking-card .dc-section-head{margin-bottom:12px}
.dc-option-card{display:flex;gap:12px;align-items:flex-start;padding:14px 15px;border:1px solid var(--dc-border);border-radius:16px;background:rgba(0,0,0,.16);margin-top:10px;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}
.dc-option-card:hover{border-color:rgba(53,224,127,.32);background:rgba(53,224,127,.055);transform:translateY(-1px)}
.dc-option-card input{margin-top:3px;accent-color:var(--dc-primary)}
.dc-option-card strong{display:block;color:var(--dc-text);font-size:15px;margin-bottom:3px}
.dc-option-card em{display:block;color:var(--dc-muted);font-style:normal;font-size:13px;line-height:1.45}
.dc-option-card--advanced{border-color:rgba(255,189,74,.2);background:rgba(255,189,74,.055)}
.dc-option-card--advanced:hover{border-color:rgba(255,189,74,.38);background:rgba(255,189,74,.09)}
.dc-player-score-card__badges .dc-badge--advanced{white-space:nowrap}
.dc-badge--advanced{border-color:rgba(255,189,74,.38);background:rgba(255,189,74,.14);color:#ffd789}

/* v2.2.4 Avatar Fit Contain */
.dc-player-avatar{--player-color:#35e07f;display:inline-grid;place-items:center;position:relative;overflow:hidden;flex:0 0 auto;width:46px;height:46px;border-radius:999px;border:1px solid rgba(255,255,255,.16);background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.02)),var(--player-color);box-shadow:0 12px 28px rgba(0,0,0,.28)}
.dc-player-avatar img{width:100%;height:100%;display:block;object-fit:cover;border-radius:inherit}
.dc-player-avatar span{display:none;font-weight:900;color:#06110b;text-transform:uppercase;line-height:1}
.dc-player-avatar.is-fallback img{opacity:.9;object-fit:contain;padding:8px;background:rgba(255,255,255,.08)}
.dc-player-avatar.is-fallback span{display:none}
.dc-player-avatar--card{width:58px;height:58px;margin-bottom:14px}
.dc-player-avatar--profile,.dc-player-avatar--stats{width:78px;height:78px}
.dc-player-avatar--editor{width:112px;height:112px;border-radius:28px}
.dc-player-avatar--match{width:42px;height:42px}
.dc-player-avatar--current{width:38px;height:38px}
.dc-player-avatar-editor{display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}.dc-player-avatar-editor__fields{min-width:min(100%,360px);flex:1}.dc-profile-avatar-card{display:grid;gap:14px;padding:18px;border:1px solid var(--dc-border);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.015));margin:14px 0}.dc-option-card--compact{padding:12px 14px}.dc-player-score-card__identity{display:flex;align-items:center;justify-content:center;gap:12px;margin:4px 0 8px}.dc-player-score-card__identity h2{margin:0}.dc-match-current-strip__player{display:flex!important;align-items:center;gap:12px}.dc-match-current-strip__player span span{display:block}.dc-match-current-strip__player strong{display:block}.dc-stats-player-head .dc-player-profile-hero__identity,.dc-player-profile-hero__identity{align-items:center}.dc-leg-celebration__logo{border-radius:999px;object-fit:cover;background:rgba(255,255,255,.06)}
@media (max-width:640px){.dc-player-avatar--profile,.dc-player-avatar--stats{width:64px;height:64px}.dc-player-avatar--editor{width:92px;height:92px}.dc-player-score-card__identity{gap:8px}.dc-player-avatar--match{width:36px;height:36px}}

/* v2.2.5 Superstats Foundation v1 */
.dc-superstats-subhead{
  margin-top:16px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.08);
}
.dc-superstats-subhead h3{
  font-size:18px;
}


/* v2.2.6 Checkout Advisor Player Restore */
.dc-player-checkout-advisor{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  margin:6px 0 4px;
  padding:8px 10px;
  border:1px solid rgba(53,224,127,.22);
  border-radius:14px;
  background:linear-gradient(90deg,rgba(53,224,127,.075),rgba(255,255,255,.025));
}
.dc-player-checkout-advisor__label{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.08);
  color:var(--dc-text-soft);
  font-size:11px;
  font-weight:900;
  letter-spacing:.02em;
}
.dc-player-checkout-advisor__routes{
  display:flex;
  align-items:center;
  gap:7px;
  flex-wrap:wrap;
}
.dc-player-checkout-route{
  display:inline-flex;
  align-items:center;
  gap:7px;
  padding:5px 8px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.04);
}
.dc-player-checkout-route em{
  color:var(--dc-muted);
  font-style:normal;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-weight:900;
}
.dc-player-checkout-route strong{
  color:var(--dc-primary-strong);
  font-size:13px;
  line-height:1;
}
.dc-player-checkout-advisor__message{
  color:var(--dc-text-soft);
  font-size:12px;
  font-weight:800;
}
@media (min-width:901px){
  body.dc-match-mode .dc-player-checkout-advisor{
    margin:4px 0 3px;
    padding:6px 8px;
    max-height:38px;
    overflow:hidden;
  }
  body.dc-match-mode .dc-player-checkout-route{padding:4px 7px}
  body.dc-match-mode .dc-player-checkout-route strong{font-size:12px}
  body.dc-match-mode .dc-player-checkout-advisor__label{font-size:10px;padding:3px 7px}
}


/* v2.2.8 Match Active Player Focus */
@media (min-width:901px){
  /* DEPRECATED v2.2.141 — static desktop active/inactive card density. Card detail is now selected from measured score-panel height; inactive no longer means permanently compact.
  body.dc-match-mode .dc-score-panel>.dc-grid{
    display:flex;
    flex-direction:column;
    gap:8px;
    height:100%;
    min-height:0;
  }
  body.dc-match-mode .dc-player-score-card.is-active{
    flex:1 1 auto;
    min-height:0;
    overflow:auto;
  }
  body.dc-match-mode .dc-player-score-card.is-compact{
    flex:0 0 auto;
    padding:10px 12px;
    grid-template-columns:auto minmax(0,1fr) auto;
    grid-template-rows:auto auto;
    align-items:center;
    column-gap:10px;
    row-gap:2px;
    opacity:.92;
    border-color:rgba(255,255,255,.08);
    box-shadow:0 10px 28px rgba(0,0,0,.22);
  }
  body.dc-match-mode .dc-player-score-card.is-compact .dc-player-score-card__badges,
  body.dc-match-mode .dc-player-score-card.is-compact .dc-live-stats,
  body.dc-match-mode .dc-player-score-card.is-compact .dc-player-checkout-advisor,
  body.dc-match-mode .dc-player-score-card.is-compact>p{
    display:none!important;
  }
  body.dc-match-mode .dc-player-score-card.is-compact .dc-player-score-card__identity{
    grid-column:1/3;
    grid-row:1;
    justify-content:flex-start;
    min-width:0;
    margin:0;
  }
  body.dc-match-mode .dc-player-score-card.is-compact .dc-player-score-card__identity h2{
    font-size:clamp(15px,1.15vw,18px);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  body.dc-match-mode .dc-player-score-card.is-compact .dc-player-avatar--match{
    width:34px;
    height:34px;
    flex:0 0 34px;
  }
  body.dc-match-mode .dc-player-score-card.is-compact .dc-score-display{
    grid-column:3;
    grid-row:1/3;
    min-width:84px;
    font-size:clamp(36px,3.4vw,54px);
    line-height:.95;
    margin:0;
    align-self:center;
  }
  body.dc-match-mode .dc-player-score-card.is-compact .dc-last-score{
    grid-column:1/3;
    grid-row:2;
    margin:0;
    padding:4px 7px;
    gap:6px;
    width:max-content;
    max-width:100%;
  }
  body.dc-match-mode .dc-player-score-card.is-compact .dc-last-score span{
    font-size:9px;
    letter-spacing:.05em;
  }
  body.dc-match-mode .dc-player-score-card.is-compact .dc-last-score strong{
    font-size:15px;
  }
  */
}
/* DEPRECATED v2.2.142 — role class must not choose card geometry.
   Mobile inactive compression is now driven only by data-player-card-density="active-priority".
@media (max-width:900px){
  .dc-player-score-card.is-compact .dc-live-stats,
  .dc-player-score-card.is-compact .dc-player-checkout-advisor,
  .dc-player-score-card.is-compact>p{
    display:none!important;
  }
}
*/

/* v2.2.9 Match score flash hold + active player alignment */
@media (min-width:901px){
  body.dc-match-mode .dc-player-score-card.is-active .dc-player-score-card__identity{
    justify-content:flex-start;
  }
  /* DEPRECATED v2.2.142 — legacy .is-compact score-flash geometry.
     The generic score-flash overlay remains; player role no longer changes card layout.
  body.dc-match-mode .dc-player-score-card.is-compact.is-score-flashing{
    flex:1 1 auto;
    min-height:0;
    overflow:auto;
    padding:18px 20px;
    display:block;
    opacity:1;
    border-color:rgba(53,224,127,.24);
    box-shadow:0 18px 50px rgba(0,0,0,.32);
  }
  body.dc-match-mode .dc-player-score-card.is-compact.is-score-flashing .dc-player-score-card__badges{
    display:flex!important;
  }
  body.dc-match-mode .dc-player-score-card.is-compact.is-score-flashing .dc-player-score-card__identity{
    display:flex;
    justify-content:flex-start;
    margin:4px 0 8px;
  }
  body.dc-match-mode .dc-player-score-card.is-compact.is-score-flashing .dc-player-score-card__identity h2{
    font-size:inherit;
    white-space:normal;
    overflow:visible;
    text-overflow:clip;
  }
  body.dc-match-mode .dc-player-score-card.is-compact.is-score-flashing .dc-player-avatar--match{
    width:48px;
    height:48px;
    flex:0 0 48px;
  }
  body.dc-match-mode .dc-player-score-card.is-compact.is-score-flashing .dc-score-display{
    min-width:0;
    font-size:clamp(52px,6vw,88px);
    margin:0;
  }
  body.dc-match-mode .dc-player-score-card.is-compact.is-score-flashing .dc-last-score{
    margin:2px 0 8px;
    padding:6px 9px;
    gap:8px;
    width:max-content;
  }
  body.dc-match-mode .dc-player-score-card.is-compact.is-score-flashing .dc-last-score span{
    font-size:10px;
    letter-spacing:.08em;
  }
  body.dc-match-mode .dc-player-score-card.is-compact.is-score-flashing .dc-last-score strong{
    font-size:18px;
  }
  body.dc-match-mode .dc-player-score-card.is-compact.is-score-flashing .dc-live-stats,
  body.dc-match-mode .dc-player-score-card.is-compact.is-score-flashing .dc-player-checkout-advisor,
  body.dc-match-mode .dc-player-score-card.is-compact.is-score-flashing>p{
    display:none!important;
  }
  */
}
@media (max-width:900px){
  .dc-player-score-card.is-active .dc-player-score-card__identity{
    justify-content:flex-start;
  }
}

/* v2.2.10 Match score flash transition: show scorer first, then expand next active player. */
@media (min-width:901px){
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-active:not(.is-score-flashing){
    flex:0 0 auto;
    padding:10px 12px;
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto;
    grid-template-rows:auto auto;
    align-items:center;
    column-gap:10px;
    row-gap:2px;
    min-height:0;
    overflow:visible;
    opacity:.92;
    border-color:rgba(255,255,255,.08);
    box-shadow:0 10px 28px rgba(0,0,0,.22);
  }
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-active:not(.is-score-flashing) .dc-player-score-card__badges,
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-active:not(.is-score-flashing) .dc-live-stats,
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-active:not(.is-score-flashing) .dc-player-checkout-advisor,
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-active:not(.is-score-flashing)>p{
    display:none!important;
  }
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-active:not(.is-score-flashing) .dc-player-score-card__identity{
    grid-column:1/3;
    grid-row:1;
    justify-content:flex-start;
    min-width:0;
    margin:0;
  }
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-active:not(.is-score-flashing) .dc-player-score-card__identity h2{
    font-size:clamp(15px,1.15vw,18px);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-active:not(.is-score-flashing) .dc-player-avatar--match{
    width:34px;
    height:34px;
    flex:0 0 34px;
  }
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-active:not(.is-score-flashing) .dc-score-display{
    grid-column:3;
    grid-row:1/3;
    min-width:84px;
    font-size:clamp(36px,3.4vw,54px);
    line-height:.95;
    margin:0;
    align-self:center;
  }
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-active:not(.is-score-flashing) .dc-last-score{
    grid-column:1/3;
    grid-row:2;
    margin:0;
    padding:4px 7px;
    gap:6px;
    width:max-content;
    max-width:100%;
  }
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-active:not(.is-score-flashing) .dc-last-score span{
    font-size:9px;
    letter-spacing:.05em;
  }
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-active:not(.is-score-flashing) .dc-last-score strong{
    font-size:15px;
  }
  /* DEPRECATED v2.2.142 — legacy inactive scorer resize during score transition.
     Score feedback remains visual and does not alter the canonical card geometry.
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-compact.is-score-flashing{
    flex:0 0 auto;
    min-height:172px;
    overflow:visible;
    padding:16px 18px;
  }
  body.dc-match-mode .dc-match-live-root.is-score-transition-pending .dc-player-score-card.is-compact.is-score-flashing .dc-score-display{
    font-size:clamp(48px,5.2vw,78px);
  }
  */
}


/* v2.2.11 Exact input compact layout: reduce duplicate info, remove manual save/reset, compact two-column summary. */


/* v2.2.12 Exact input summary compactness + chevron for expandable number list. */


/* v2.2.13 Exact input real compact layout.
   Strong final override because older match-mode rules previously overrode the compact attempt. */
.dc-exact-card .dc-exact-summary.dc-exact-summary--compact{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto auto auto !important;
  gap:8px !important;
  align-items:center !important;
  margin:0 !important;
  padding:8px 10px !important;
  min-height:0 !important;
  border-radius:14px !important;
}
.dc-exact-summary__selected{
  display:flex;
  align-items:center;
  gap:8px;
  min-width:0;
}
.dc-exact-summary__selected .dc-stat-label{
  flex:0 0 auto;
  font-size:11px;
  letter-spacing:.06em;
}
.dc-exact-summary__selected [data-dartboard-list]{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px;
  line-height:1.2;
  font-weight:800;
}
.dc-exact-summary__mini{
  display:flex;
  align-items:baseline;
  gap:6px;
  min-width:74px;
  padding:5px 8px;
  border:1px solid var(--dc-border);
  border-radius:10px;
  background:rgba(255,255,255,.03);
}
.dc-exact-summary__mini span{
  color:var(--dc-muted);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.06em;
  line-height:1;
}
.dc-exact-summary__mini strong{
  color:var(--dc-text);
  font-size:18px;
  line-height:1;
  font-weight:950;
}
.dc-exact-summary__status{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-width:0;
}
.dc-exact-summary__status-badge{
  display:inline-flex !important;
  align-items:center;
  max-width:150px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--dc-text-soft) !important;
  font-size:11px !important;
  line-height:1.1 !important;
  font-weight:850 !important;
}
.dc-exact-summary__status-badge.is-checkout{color:var(--dc-primary-strong) !important}
.dc-exact-summary__status-badge.is-bust{color:#ffd8dc !important}
.dc-exact-card .dc-exact-actions{
  margin-top:-2px;
  gap:7px;
}
.dc-exact-card .dc-exact-actions .dc-button{
  padding:7px 10px !important;
  border-radius:10px !important;
  font-size:13px;
}
.dc-exact-all summary{
  min-height:30px !important;
  padding:5px 34px 5px 0 !important;
  border-top:1px solid rgba(255,255,255,.06);
  border-bottom:1px solid rgba(255,255,255,.04);
}
.dc-exact-all__label{
  display:flex;
  align-items:baseline;
  gap:8px;
  min-width:0;
}
.dc-exact-all__label strong{
  font-size:13px;
}
.dc-exact-all__chevron{
  position:absolute;
  right:5px;
  top:50%;
  transform:translateY(-50%);
  display:grid;
  place-items:center;
  width:22px;
  height:22px;
  border:1px solid var(--dc-border);
  border-radius:999px;
  background:rgba(255,255,255,.04);
  color:var(--dc-text-soft);
  font-size:17px;
  line-height:1;
  transition:transform .18s ease,background .18s ease,border-color .18s ease;
}
.dc-exact-all[open] .dc-exact-all__chevron{
  transform:translateY(-50%) rotate(180deg);
  background:var(--dc-primary-soft);
  border-color:rgba(53,224,127,.34);
  color:var(--dc-primary-strong);
}
.dc-exact-all summary::after{
  content:none !important;
}

body.dc-match-mode .dc-exact-card{
  gap:7px !important;
}
body.dc-match-mode .dc-exact-summary.dc-exact-summary--compact{
  grid-template-columns:minmax(0,1fr) auto auto auto !important;
  padding:7px 9px !important;
  gap:6px !important;
}
body.dc-match-mode .dc-exact-summary__mini{
  min-width:64px;
  padding:4px 7px;
}
body.dc-match-mode .dc-exact-summary__mini strong{
  font-size:16px;
}
body.dc-match-mode .dc-exact-summary__status-badge{
  max-width:120px;
  font-size:10.5px !important;
}
body.dc-match-mode .dc-exact-all summary{
  min-height:28px !important;
  padding-top:4px !important;
  padding-bottom:4px !important;
}

@media(max-width:700px){
  .dc-exact-card .dc-exact-summary.dc-exact-summary--compact,
  body.dc-match-mode .dc-exact-summary.dc-exact-summary--compact{
    grid-template-columns:1fr auto auto !important;
  }
  .dc-exact-summary__status{
    grid-column:1/-1;
    justify-content:flex-start;
  }
  .dc-exact-summary__status-badge{
    max-width:100%;
  }
}


/* v2.2.14 Matchreport leg tabs and richer chart context */
.dc-report-leg-tabs{
  display:grid;
  gap:14px;
}
.dc-report-leg-tabs__nav{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:2px 2px 8px;
  scrollbar-width:thin;
}
.dc-report-leg-tab{
  flex:0 0 auto;
  min-width:128px;
  display:grid;
  gap:2px;
  text-align:left;
  padding:10px 12px;
  border:1px solid var(--dc-border);
  border-radius:14px;
  background:rgba(255,255,255,.035);
  color:var(--dc-text-soft);
  cursor:pointer;
}
.dc-report-leg-tab:hover{
  background:rgba(255,255,255,.06);
  color:var(--dc-text);
}
.dc-report-leg-tab.is-active{
  border-color:rgba(53,224,127,.46);
  background:var(--dc-primary-soft);
  color:var(--dc-primary-strong);
  box-shadow:0 0 0 1px rgba(53,224,127,.16);
}
.dc-report-leg-tab strong{
  font-size:14px;
  line-height:1.1;
}
.dc-report-leg-tab span{
  max-width:150px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:inherit;
  font-size:12px;
  opacity:.88;
}
.dc-report-leg-panel{
  display:grid;
  gap:12px;
}
.dc-report-leg-panel[hidden]{
  display:none!important;
}
.dc-report-leg-panel__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.dc-report-leg-panel__head h3{
  margin:2px 0 0;
  font-size:20px;
}
.dc-report-tooltip small{
  max-width:min(460px,calc(100vw - 40px));
  line-height:1.35;
}

@media(max-width:700px){
  .dc-report-leg-tabs__nav{
    gap:6px;
  }
  .dc-report-leg-tab{
    min-width:112px;
    padding:9px 10px;
  }
  .dc-report-leg-panel__head{
    display:grid;
  }
}


.dc-ai-style-field{margin-top:4px}.dc-dart-style-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dc-dart-style-card{position:relative;display:grid;grid-template-columns:116px 1fr;gap:16px;align-items:center;padding:16px;border:1px solid var(--dc-border);border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.015));cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.dc-dart-style-card:hover{transform:translateY(-1px);border-color:var(--dc-border-strong)}.dc-dart-style-card input{position:absolute;opacity:0;pointer-events:none}.dc-dart-style-card.is-active,.dc-dart-style-card:has(input:checked){border-color:rgba(53,224,127,.44);box-shadow:0 0 0 1px rgba(53,224,127,.18),0 16px 28px rgba(0,0,0,.18)}.dc-dart-style-card__thumb{display:flex;align-items:center;justify-content:center;min-height:92px;padding:8px;border-radius:16px;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.06)}.dc-dart-style-card__thumb img{display:block;max-width:100%;max-height:88px;object-fit:contain;filter:drop-shadow(0 12px 20px rgba(0,0,0,.26))}.dc-dart-style-card__copy{display:grid;gap:6px}.dc-dart-style-card__copy strong{font-size:17px}.dc-dart-style-card__copy em{font-style:normal;color:var(--dc-text-soft);line-height:1.45}@media (max-width:980px){.dc-dart-style-grid{grid-template-columns:1fr}.dc-dart-style-card{grid-template-columns:96px 1fr}.dc-dart-style-card__thumb{min-height:78px}.dc-dart-style-card__thumb img{max-height:72px}}


/* DEPRECATED v2.2.142 — legacy .is-compact geometry.
   Player role is now .is-inactive; density alone controls compactness.
body.dc-match-mode .dc-player-score-card.is-compact .dc-match-average-strip{
  grid-column:1/3;
  grid-row:3;
  display:flex;
  gap:6px;
  margin:3px 0 0;
}
body.dc-match-mode .dc-player-score-card.is-compact .dc-match-average-strip__item{
  padding:4px 7px;
  border-radius:999px;
  background:rgba(255,255,255,.04);
}
body.dc-match-mode .dc-player-score-card.is-compact .dc-match-average-strip__item span{
  font-size:8px;
  letter-spacing:.06em;
}
body.dc-match-mode .dc-player-score-card.is-compact .dc-match-average-strip__item strong{
  font-size:13px;
  margin-top:0;
}
body.dc-match-mode .dc-player-score-card.is-compact.is-score-flashing .dc-match-average-strip{
  display:flex;
}
*/


/* v2.2.37: keep match player card meta rows compact after average strip restore */
body.dc-match-mode .dc-player-score-card .dc-last-score{
  border-radius:10px;
  padding:5px 8px;
  gap:7px;
  min-height:0;
}
body.dc-match-mode .dc-player-score-card .dc-last-score span{
  font-size:9px;
  line-height:1.05;
  letter-spacing:.06em;
}
body.dc-match-mode .dc-player-score-card .dc-last-score strong{
  font-size:15px;
  line-height:1;
}
body.dc-match-mode .dc-player-score-card .dc-match-average-strip{
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:6px;
  margin:6px 0 0;
}
body.dc-match-mode .dc-player-score-card .dc-match-average-strip__item{
  border-radius:10px;
  padding:5px 7px;
}
body.dc-match-mode .dc-player-score-card .dc-match-average-strip__item span{
  font-size:8px;
  line-height:1;
}
body.dc-match-mode .dc-player-score-card .dc-match-average-strip__item strong{
  font-size:13px;
  line-height:1;
  margin-top:1px;
}
/* DEPRECATED v2.2.142 — legacy .is-compact geometry.
   Player role is now .is-inactive; density alone controls compactness.
body.dc-match-mode .dc-player-score-card.is-compact .dc-last-score{
  grid-column:1/3;
  grid-row:2;
  width:auto;
  max-width:100%;
  padding:3px 6px;
  border-radius:8px;
  gap:5px;
}
body.dc-match-mode .dc-player-score-card.is-compact .dc-last-score span{
  font-size:8px;
  letter-spacing:.04em;
}
body.dc-match-mode .dc-player-score-card.is-compact .dc-last-score strong{
  font-size:13px;
}
body.dc-match-mode .dc-player-score-card.is-compact .dc-match-average-strip{
  grid-column:1/3;
  grid-row:3;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:5px;
  margin:2px 0 0;
}
body.dc-match-mode .dc-player-score-card.is-compact .dc-match-average-strip__item{
  padding:3px 6px;
  border-radius:8px;
}
body.dc-match-mode .dc-player-score-card.is-compact .dc-match-average-strip__item span{
  font-size:7px;
}
body.dc-match-mode .dc-player-score-card.is-compact .dc-match-average-strip__item strong{
  font-size:12px;
}
*/


/* v2.2.38 Match mode graphics integration
   - use true-alpha mode assets on Spielmodi and Neues Match
   - keep X01 start-score art fully visible without cropping */
.dc-mode-card__image img,
.dc-game-mode-card__art img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center center;
}
.dc-x01-score-card__image{
  padding:10px;
}
.dc-x01-score-card__image img{
  width:100%;
  height:100%;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
  object-position:center center;
  transform:none;
}
@media (max-width:980px){
  .dc-x01-score-card__image img{transform:none}
}
@media (max-width:560px){
  .dc-x01-score-card__image img{transform:none}
}


/* v2.2.39 Match setup UX structure */
.dc-match-length-section{
  overflow:hidden;
}
.dc-match-length-choice-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:18px;
}
.dc-match-length-choice{
  position:relative;
  display:grid;
  gap:8px;
  padding:18px;
  min-height:136px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  cursor:pointer;
  transition:border-color .16s ease, transform .16s ease, background .16s ease, box-shadow .16s ease;
}
.dc-match-length-choice:hover{
  transform:translateY(-1px);
  border-color:rgba(53,224,127,.22);
}
.dc-match-length-choice input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.dc-match-length-choice__state{
  width:max-content;
  border-radius:999px;
  padding:6px 10px;
  background:rgba(255,255,255,.065);
  border:1px solid rgba(255,255,255,.10);
  color:var(--dc-text-soft);
  font-size:11px;
  line-height:1;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:900;
}
.dc-match-length-choice strong{
  font-size:21px;
  line-height:1.05;
  font-weight:950;
  color:var(--dc-text);
}
.dc-match-length-choice em{
  font-style:normal;
  color:var(--dc-muted);
  font-weight:700;
  line-height:1.35;
}
.dc-match-length-choice:has(input:checked){
  border-color:rgba(53,224,127,.55);
  background:linear-gradient(135deg,rgba(53,224,127,.13),rgba(255,255,255,.025) 62%);
  box-shadow:0 18px 44px rgba(53,224,127,.08), inset 0 1px 0 rgba(255,255,255,.06);
}
.dc-match-length-choice:has(input:checked) .dc-match-length-choice__state{
  background:rgba(53,224,127,.16);
  border-color:rgba(53,224,127,.35);
  color:#7dffb3;
}
.dc-match-length-config{
  margin-top:14px;
}
.dc-match-length-panel{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(220px,360px);
  gap:18px;
  align-items:center;
  padding:18px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(0,0,0,.18);
}
.dc-match-length-panel h3{
  margin:4px 0 6px;
  font-size:22px;
}
.dc-match-length-panel p{
  margin:0;
  color:var(--dc-muted);
}
.dc-match-length-set-fields{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
.dc-match-length-panel--sets{
  grid-template-columns:minmax(0,1fr) minmax(360px,560px);
}
.dc-match-length-section:has(input[name="match_format"][value="legs"]:checked) .dc-match-length-panel--sets{
  display:none;
}
.dc-match-length-section:has(input[name="match_format"][value="sets"]:checked) .dc-match-length-panel--legs{
  display:none;
}
.dc-bulloff-card{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:14px;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(255,255,255,.025);
  cursor:pointer;
}
.dc-bulloff-card input{
  width:18px;
  height:18px;
  accent-color:var(--dc-green);
  flex:0 0 auto;
}
.dc-bulloff-card span{
  display:grid;
  gap:3px;
}
.dc-bulloff-card strong{
  color:var(--dc-text);
  font-weight:900;
}
.dc-bulloff-card em{
  font-style:normal;
  color:var(--dc-muted);
  font-size:13px;
  line-height:1.35;
}

.dc-ai-activation-row{
  margin-top:22px;
}
.dc-ai-activation-card{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:16px;
  align-items:center;
  padding:18px;
  border-radius:22px;
  border:1px solid rgba(255,153,51,.30);
  background:linear-gradient(135deg,rgba(255,132,48,.12),rgba(255,255,255,.022) 60%);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
  cursor:pointer;
  transition:border-color .16s ease, background .16s ease, box-shadow .16s ease, transform .16s ease;
}
.dc-ai-activation-card:hover{
  transform:translateY(-1px);
}
.dc-ai-activation-card input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.dc-ai-activation-card__status{
  display:grid;
  place-items:center;
  min-width:98px;
}
.dc-ai-state{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:86px;
  border-radius:999px;
  padding:8px 11px;
  font-size:12px;
  line-height:1;
  font-weight:950;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.dc-ai-state--off{
  background:rgba(255,132,48,.16);
  border:1px solid rgba(255,132,48,.36);
  color:#ffb36c;
}
.dc-ai-state--on{
  display:none;
  background:rgba(53,224,127,.16);
  border:1px solid rgba(53,224,127,.36);
  color:#7dffb3;
}
.dc-ai-activation-card__copy{
  display:grid;
  gap:4px;
}
.dc-ai-activation-card__copy strong{
  font-size:20px;
  line-height:1.05;
  font-weight:950;
  color:var(--dc-text);
}
.dc-ai-activation-card__copy em{
  font-style:normal;
  color:var(--dc-muted);
  font-weight:700;
  line-height:1.35;
}
.dc-ai-activation-card__on{
  display:none;
}
.dc-ai-section:has([data-ai-toggle]:checked) .dc-ai-activation-card{
  border-color:rgba(53,224,127,.50);
  background:linear-gradient(135deg,rgba(53,224,127,.15),rgba(255,255,255,.025) 62%);
  box-shadow:0 18px 44px rgba(53,224,127,.08), inset 0 1px 0 rgba(255,255,255,.06);
}
.dc-ai-section:has([data-ai-toggle]:checked) .dc-ai-state--off,
.dc-ai-section:has([data-ai-toggle]:checked) .dc-ai-activation-card__off{
  display:none;
}
.dc-ai-section:has([data-ai-toggle]:checked) .dc-ai-state--on,
.dc-ai-section:has([data-ai-toggle]:checked) .dc-ai-activation-card__on{
  display:inline-flex;
}
.dc-ai-section:not(:has([data-ai-toggle]:checked)) .dc-ai-preset-card,
.dc-ai-section:not(:has([data-ai-toggle]:checked)) .dc-ai-config{
  opacity:.62;
}
.dc-ai-section:not(:has([data-ai-toggle]:checked)) .dc-ai-preset-card{
  filter:saturate(.82);
}
.dc-ai-section .dc-ai-setup-row{
  margin-top:16px;
}
@media (max-width:980px){
  .dc-match-length-choice-grid,
  .dc-match-length-panel,
  .dc-match-length-panel--sets,
  .dc-match-length-set-fields{
    grid-template-columns:1fr;
  }
  .dc-ai-activation-card{
    grid-template-columns:1fr;
  }
  .dc-ai-activation-card__status{
    place-items:start;
  }
}

/* v2.2.40 Dashboard Action Hub */
.dc-dashboard-hero--hub .dc-dashboard-hero__copy h1{
  max-width:760px;
}
.dc-dashboard-status-strip{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:12px;
  margin:0 0 18px;
}
.dc-dashboard-status-strip>div{
  padding:14px 16px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));
  box-shadow:var(--dc-shadow-soft);
}
.dc-dashboard-status-strip span{
  display:block;
  color:var(--dc-muted);
  font-size:11px;
  line-height:1;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.dc-dashboard-status-strip strong{
  display:block;
  margin-top:8px;
  color:var(--dc-text);
  font-size:clamp(24px,3vw,34px);
  line-height:.95;
  font-weight:950;
  letter-spacing:-.04em;
}
.dc-dashboard-action-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.dc-dashboard-action-card{
  position:relative;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:15px;
  align-items:start;
  min-height:238px;
  overflow:hidden;
  background:
    radial-gradient(circle at 95% 8%,rgba(53,224,127,.08),transparent 32%),
    linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));
}
.dc-dashboard-action-card--primary{
  grid-column:span 2;
  background:
    radial-gradient(circle at 90% 10%,rgba(53,224,127,.18),transparent 38%),
    radial-gradient(circle at 8% 92%,rgba(255,126,28,.10),transparent 34%),
    linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018));
  border-color:rgba(53,224,127,.25);
}
.dc-dashboard-action-card.is-disabled{
  border-color:rgba(255,153,51,.22);
  background:
    radial-gradient(circle at 90% 10%,rgba(255,153,51,.12),transparent 38%),
    linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.014));
}
.dc-dashboard-action-card__icon{
  width:54px;
  height:54px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:rgba(53,224,127,.10);
  border:1px solid rgba(53,224,127,.20);
  color:var(--dc-green);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.dc-dashboard-action-card__icon .dc-icon{
  width:27px;
  height:27px;
}
.dc-dashboard-action-card h2{
  margin:4px 0 8px;
  font-size:clamp(22px,2.1vw,30px);
  line-height:1.02;
  letter-spacing:-.035em;
}
.dc-dashboard-action-card p{
  margin:0 0 16px;
  color:var(--dc-muted);
  line-height:1.45;
}
.dc-button--disabled{
  opacity:.58;
  cursor:not-allowed;
  filter:saturate(.65);
}
@media (max-width:1180px){
  .dc-dashboard-status-strip{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dc-dashboard-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dc-dashboard-action-card--primary{grid-column:span 2}
}
@media (max-width:720px){
  .dc-dashboard-status-strip,
  .dc-dashboard-action-grid{grid-template-columns:1fr}
  .dc-dashboard-action-card,
  .dc-dashboard-action-card--primary{grid-column:auto;grid-template-columns:1fr;min-height:0}
  .dc-dashboard-action-card__icon{width:48px;height:48px;border-radius:16px}
}


/* v2.2.41 Match presets */
.dc-match-preset-section{
  border-color:rgba(53,224,127,.16);
  background:linear-gradient(180deg,rgba(53,224,127,.045),rgba(255,255,255,.018));
}
.dc-match-preset-toolbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:end;
  margin-top:16px;
}
.dc-match-preset-load-form{
  display:grid;
  grid-template-columns:minmax(220px,1fr) auto;
  gap:12px;
  align-items:end;
}
.dc-match-preset-actions{
  display:flex;
  gap:10px;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
}
.dc-match-preset-actions form{
  margin:0;
}
.dc-match-preset-empty{
  margin-top:14px;
  padding:18px;
  border-radius:18px;
  border:1px dashed rgba(255,255,255,.14);
  background:rgba(0,0,0,.16);
}
.dc-match-preset-empty h3{
  margin:0 0 6px;
}
.dc-match-preset-empty p{
  margin:0;
  color:var(--dc-muted);
}
.dc-match-preset-save-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(320px,520px);
  gap:18px;
  align-items:center;
  border-color:rgba(255,255,255,.09);
  background:linear-gradient(135deg,rgba(255,255,255,.045),rgba(53,224,127,.035));
}
.dc-match-preset-save-card h2{
  margin:4px 0 6px;
}
.dc-match-preset-save-card p{
  margin:0;
  color:var(--dc-muted);
}
.dc-match-preset-save-card__form{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:10px;
}
.dc-match-preset-default-check{
  padding:12px 14px;
}
.dc-button--danger{
  border-color:rgba(255,91,91,.32);
  background:rgba(255,91,91,.10);
  color:#ffb4b4;
}
.dc-button--danger:hover{
  border-color:rgba(255,91,91,.52);
  background:rgba(255,91,91,.16);
}
@media (max-width:980px){
  .dc-match-preset-toolbar,
  .dc-match-preset-load-form,
  .dc-match-preset-save-card{
    grid-template-columns:1fr;
  }
  .dc-match-preset-actions{
    justify-content:flex-start;
  }
}


/* v2.2.44 Stats Maxima / 9-Darts Challenge */
.dc-nine-dart-challenge-card{
  border-color:rgba(53,224,127,.14);
  background:linear-gradient(135deg,rgba(53,224,127,.055),rgba(255,255,255,.018));
}
.dc-maxima-combinations{
  margin-top:16px;
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,.09);
  background:rgba(0,0,0,.16);
}
.dc-maxima-combinations h4{
  margin:0 0 10px;
  font-size:15px;
  letter-spacing:.01em;
}
.dc-table--compact th,
.dc-table--compact td{
  padding:9px 10px;
}


/* v2.2.45 Audio Widget Foundation */
.dc-audio-widget{position:relative;display:inline-flex;z-index:185;isolation:isolate}
.dc-audio-toggle{position:relative;display:inline-grid;place-items:center;width:42px;height:42px;border-radius:14px;border:1px solid var(--dc-border-strong);background:var(--dc-surface-2);color:var(--dc-text);cursor:pointer}
.dc-audio-toggle:hover,.dc-audio-toggle.is-open{background:var(--dc-surface-3)}
.dc-audio-status-dot{position:absolute;right:5px;bottom:5px;width:10px;height:10px;border-radius:999px;background:#6b7280;border:2px solid #080a0c}
.dc-audio-status-dot[data-audio-state="idle"],
.dc-audio-status-dot[data-audio-state="ready"]{background:var(--dc-primary)}
.dc-audio-status-dot[data-audio-state="playing"]{background:var(--dc-primary);box-shadow:0 0 0 5px rgba(53,224,127,.16);animation:dc-audio-pulse 1.2s ease-in-out infinite}
.dc-audio-status-dot[data-audio-state="blocked"]{background:#f59e0b}
.dc-audio-status-dot[data-audio-state="error"]{background:#ef4444}
.dc-audio-status-dot[data-audio-state="disabled"]{background:#64748b}
@keyframes dc-audio-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.2)}}
.dc-audio-panel{position:absolute;right:0;top:calc(100% + 10px);width:min(430px,calc(100vw - 32px));max-height:74vh;overflow:auto;background:linear-gradient(180deg,var(--dc-surface),#0b0d10);border:1px solid var(--dc-border-strong);border-radius:20px;box-shadow:0 24px 80px rgba(0,0,0,.55);z-index:190;padding:14px;display:none}
.dc-audio-panel.is-open{display:block}
.dc-audio-panel__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;padding:4px 4px 12px;border-bottom:1px solid var(--dc-border);margin-bottom:12px}
.dc-audio-panel__head p{margin:2px 0 0;color:var(--dc-muted);font-size:12px}
.dc-audio-policy{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 12px}
.dc-audio-policy span{display:inline-flex;padding:6px 9px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:var(--dc-text-soft);font-size:11px;font-weight:800}
.dc-audio-settings-form{display:grid;gap:12px;padding:12px;border:1px solid var(--dc-border);border-radius:16px;background:rgba(255,255,255,.035);margin-bottom:12px}
.dc-audio-check{display:flex;align-items:center;gap:9px;color:var(--dc-text-soft);font-weight:800;font-size:13px}
.dc-audio-check input{accent-color:var(--dc-primary)}
.dc-audio-volume{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;color:var(--dc-text-soft);font-size:13px;font-weight:800}
.dc-audio-volume input[type="range"]{width:100%;accent-color:var(--dc-primary)}
.dc-audio-volume strong{min-width:42px;text-align:right;color:var(--dc-text)}
.dc-audio-player{display:grid;gap:12px;padding:13px;border:1px solid rgba(53,224,127,.18);border-radius:18px;background:linear-gradient(180deg,rgba(53,224,127,.065),rgba(255,255,255,.025))}
.dc-audio-player__meta{display:grid;gap:2px}
.dc-audio-player__meta span{color:var(--dc-muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}
.dc-audio-player__meta strong{color:var(--dc-text)}
.dc-audio-player__meta em{color:var(--dc-text-soft);font-style:normal;font-size:12px}
.dc-audio-waveform{width:100%;height:64px;border-radius:14px;background:rgba(0,0,0,.24);border:1px solid rgba(255,255,255,.06)}
.dc-audio-progress{height:5px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;transform:translateZ(0)}
.dc-audio-progress i{display:block;height:100%;width:100%;border-radius:inherit;background:var(--dc-primary);transform:scaleX(0);transform-origin:left center;transition:transform .12s linear}
.dc-audio-controls{display:flex;flex-wrap:wrap;gap:8px}
.dc-audio-note{margin:0;font-size:12px;line-height:1.45}
.dc-audio-widget.is-disabled .dc-audio-player{opacity:.65}
@media(max-width:900px){.dc-audio-widget{order:2}.dc-audio-panel{right:auto;left:0}.dc-notifications + .dc-audio-widget .dc-audio-panel{left:auto;right:0}}
@media(max-width:560px){.dc-audio-panel{left:50%;right:auto;transform:translateX(-50%);width:calc(100vw - 24px)}.dc-audio-volume{grid-template-columns:1fr}.dc-audio-volume strong{text-align:left}.dc-audio-controls .dc-button{flex:1}}


/* v2.2.46 Audio Widget Visibility */
.dc-topbar .dc-notifications,.dc-topbar .dc-audio-widget{align-self:center}


/* v2.2.47 Player Walk-on Audio Foundation */
.dc-profile-audio-card,.dc-profile-avatar-card{border-color:rgba(53,224,127,.14)}
.dc-player-audio-editor{display:grid;gap:13px}
.dc-player-audio-current{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 14px;border:1px solid rgba(53,224,127,.18);border-radius:16px;background:rgba(53,224,127,.055)}
.dc-player-audio-current strong{display:block;color:var(--dc-text)}
.dc-player-audio-current p{margin:3px 0 0}
.dc-player-profile-audio{border-color:rgba(53,224,127,.16)}
@media(max-width:680px){.dc-player-audio-current{display:grid}.dc-player-audio-current .dc-button{width:100%}}


/* v2.2.48 Match Walk-on Sequence Layer */
.dc-walkon-intro{position:fixed;inset:0;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.68);backdrop-filter:blur(10px);z-index:240}
.dc-walkon-intro[hidden]{display:none!important}
.dc-walkon-intro__panel{width:min(560px,calc(100vw - 32px));border:1px solid rgba(53,224,127,.32);border-radius:28px;background:linear-gradient(180deg,var(--dc-surface),#080a0c);box-shadow:0 28px 90px rgba(0,0,0,.62);padding:24px}
.dc-walkon-intro__eyebrow{display:inline-flex;margin-bottom:10px;padding:5px 10px;border-radius:999px;background:rgba(53,224,127,.12);border:1px solid rgba(53,224,127,.28);color:var(--dc-primary-strong);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.dc-walkon-intro h2{font-size:clamp(30px,5vw,48px);line-height:1;margin:0 0 10px}
.dc-walkon-intro p{color:var(--dc-text-soft);margin:0 0 14px}
.dc-walkon-intro__now{display:grid;gap:3px;padding:13px 14px;border:1px solid rgba(255,255,255,.10);border-radius:16px;background:rgba(255,255,255,.045);margin:14px 0}
.dc-walkon-intro__now span{color:var(--dc-muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:900}
.dc-walkon-intro__now strong{color:var(--dc-text);font-size:18px}
.dc-walkon-intro__now em{color:var(--dc-text-soft);font-style:normal;font-size:12px}
.dc-walkon-intro__progress{margin:12px 0 16px;height:6px}
.dc-walkon-intro__actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}
.dc-walkon-intro__actions .dc-button{flex:0 0 auto}
.dc-walkon-intro__note{font-size:12px;margin-top:14px!important}
@media(max-width:560px){.dc-walkon-intro__panel{padding:18px;border-radius:22px}.dc-walkon-intro__actions{display:grid}.dc-walkon-intro__actions .dc-button{width:100%}}


/* v2.2.49 Audio live settings */
.dc-audio-settings-form button:disabled{opacity:.65;cursor:wait}


/* v2.2.50 Finish Preparation / Setup Play */
.dc-finish-preparation-card{border-color:rgba(53,224,127,.16)}
.dc-finish-preparation-subhead{margin-top:18px}
.dc-finish-preparation-tables{margin-top:18px}
.dc-finish-preparation-tables h3{margin:0 0 10px}
.dc-finish-preparation-tables .dc-table--compact th,.dc-finish-preparation-tables .dc-table--compact td{padding:9px 10px}

/* v2.2.56 Mail Settings Foundation */
.dc-divider{border:0;border-top:1px solid var(--dc-border);margin:22px 0}.dc-check-card--compact{padding:10px 12px}.dc-badge--danger{background:var(--dc-danger-soft);border-color:rgba(255,77,94,.42);color:#ffd8dc}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.92em;color:var(--dc-text-soft)}


/* v2.2.57 Password Reset Foundation */


/* v2.2.58 Legal Privacy Foundation */
.dc-legal-shell{align-items:stretch;}
.dc-legal-panel{max-height:none;overflow:visible;}
.dc-legal-links,.dc-auth-legal-links{display:flex;gap:12px;flex-wrap:wrap;margin-top:18px;font-size:.92rem;}
.dc-legal-links a,.dc-auth-legal-links a,.dc-sidebar__note a{color:inherit;text-decoration:underline;text-underline-offset:3px;}
.dc-legal-page .dc-page-header{margin-bottom:18px;}
.dc-legal-content{font-size:.98rem;line-height:1.72;white-space:normal;}
.dc-legal-content a{color:inherit;text-decoration:underline;text-underline-offset:3px;}
.dc-textarea--legal{min-height:320px;font-family:var(--dc-font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace);line-height:1.5;}
.dc-admin-legal-grid{align-items:start;}
.dc-info-list{display:grid;gap:10px;margin-top:14px;}
.dc-info-list>div{display:grid;gap:4px;padding:12px;border:1px solid rgba(255,255,255,.1);border-radius:14px;background:rgba(255,255,255,.035);}
.dc-info-list strong{font-size:.92rem;}
.dc-info-list span{color:var(--dc-muted);font-size:.88rem;line-height:1.45;}


/* v2.2.59 Security Smoke Test */
.dc-security-summary{align-items:stretch}
.dc-security-check{border:1px solid rgba(255,255,255,.09);border-radius:18px;padding:16px;background:rgba(255,255,255,.035);margin-bottom:12px}
.dc-security-check__head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:8px}
.dc-security-check__key{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;color:var(--dc-muted)}
.dc-security-check__detail{margin:0;color:var(--dc-muted);line-height:1.45}
.dc-badge--ok{background:rgba(53,224,127,.14);color:#9ff5bd;border-color:rgba(53,224,127,.28)}
.dc-badge--warn{background:rgba(245,158,11,.14);color:#fcd28b;border-color:rgba(245,158,11,.3)}
.dc-badge--fail{background:rgba(248,113,113,.14);color:#fecaca;border-color:rgba(248,113,113,.35)}
.dc-badge--info{background:rgba(148,163,184,.14);color:#d7dee9;border-color:rgba(148,163,184,.25)}

/* v2.2.60 SMTP Test Feedback */
.dc-help-list{margin-top:14px;color:var(--dc-muted);font-size:.94rem;line-height:1.55}
.dc-help-list p{margin:0}


/* v2.2.62 Room Delete Feedback */


/* v2.2.63 Match Archive Foundation */
.dc-archive-summary { margin: 18px 0 22px; }
.dc-archive-summary .dc-card--inner { display:flex; flex-direction:column; gap:4px; min-height:92px; justify-content:center; }
.dc-archive-summary strong { font-size: clamp(1.6rem, 3vw, 2.25rem); line-height:1; }
.dc-archive-summary span { color: var(--dc-muted); font-size:.92rem; }
.dc-match-archive-section { margin-top: 24px; }
.dc-match-archive-section > .dc-section-head { margin-bottom: 12px; }
.dc-empty-state--compact { padding: 18px; }
.dc-match-archive-section--finished .dc-section-head h2::after { content: ' · Statistikbasis'; color: var(--dc-muted); font-weight: 600; font-size: .78em; }
@media (max-width: 720px) {
  .dc-archive-summary.dc-grid--3 { grid-template-columns: 1fr; }
}

/* v2.2.64 Room Archive Completion Detection */


/* v2.2.65 Player Visual Identity Polish */
.dc-player-avatar.has-avatar{background:transparent!important;border-color:transparent!important;box-shadow:none!important}
.dc-player-avatar.has-avatar::before,.dc-player-avatar.has-avatar::after{display:none!important}
.dc-player-avatar.has-avatar img{background:transparent!important;object-fit:contain}
.dc-player-avatar.is-fallback{background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.02)),var(--player-color)}
.dc-player-avatar.is-fallback img{background:rgba(255,255,255,.08)}
.dc-stats-line-chart polyline{stroke:var(--dc-player-chart-color,var(--dc-primary-strong))}
.dc-stats-line-chart circle{fill:var(--dc-player-chart-color,var(--dc-primary-strong))}

/* v2.2.73 Pressure & Leg Control Foundation */
.dc-pressure-leg-control-card{position:relative;overflow:hidden}
.dc-pressure-leg-control-card::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 18% 0%,rgba(53,224,127,.10),transparent 34%),radial-gradient(circle at 88% 22%,rgba(122,167,255,.08),transparent 28%);pointer-events:none}
.dc-pressure-leg-control-card>*{position:relative;z-index:1}
.dc-pressure-hero-grid{margin-bottom:16px}
.dc-pressure-visual-grid{align-items:stretch;margin:16px 0}
.dc-pressure-panel,.dc-pressure-trend{border:1px solid var(--dc-border);border-radius:20px;background:rgba(255,255,255,.035);padding:18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}
.dc-pressure-bars{display:grid;gap:12px}
.dc-pressure-bar{display:grid;gap:8px}
.dc-pressure-bar__label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px;color:var(--dc-muted)}
.dc-pressure-bar__label strong{color:var(--dc-text);font-size:14px}
.dc-pressure-bar__track{height:12px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;border:1px solid rgba(255,255,255,.06)}
.dc-pressure-bar__track i{display:block;height:100%;width:calc(var(--pressure-bar,0) * 1%);border-radius:inherit;background:var(--dc-primary-strong);box-shadow:0 0 18px rgba(53,224,127,.25)}
.dc-pressure-bar--warn .dc-pressure-bar__track i{background:#f6c85f;box-shadow:0 0 18px rgba(246,200,95,.22)}
.dc-pressure-bar--accent .dc-pressure-bar__track i{background:#7aa7ff;box-shadow:0 0 18px rgba(122,167,255,.22)}
.dc-pressure-bar--muted .dc-pressure-bar__track i{background:rgba(255,255,255,.32);box-shadow:none}
.dc-pressure-detail-grid{margin-top:16px}
.dc-pressure-trend{margin-top:16px}
.dc-pressure-trend-chart{margin-top:8px;background:linear-gradient(180deg,rgba(53,224,127,.075),rgba(255,255,255,.02))}
.dc-pressure-trend-chart polyline{stroke:var(--dc-player-chart-color,var(--dc-primary-strong))}
.dc-pressure-trend-chart circle{fill:var(--dc-player-chart-color,var(--dc-primary-strong))}
@media (max-width:760px){.dc-pressure-bar__label{display:grid;gap:2px}.dc-pressure-panel,.dc-pressure-trend{padding:14px}}

/* v2.2.74 Game Mode Architecture Foundation */
.dc-game-mode-contexts {
  display: grid;
  gap: .55rem;
  margin: .85rem 0;
}
.dc-game-mode-contexts__chips {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}
.dc-mode-context-chip {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .34rem .55rem;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.13);
  background: rgba(255,255,255,.045);
  font-size: .82rem;
  font-weight: 750;
}
.dc-mode-context-chip em {
  font-style: normal;
  font-size: .72rem;
  font-weight: 700;
  opacity: .7;
}
.dc-mode-context-chip--active {
  border-color: rgba(72, 255, 150, .35);
  background: rgba(72, 255, 150, .08);
}
.dc-mode-context-chip--planned {
  border-color: rgba(255, 170, 70, .28);
  background: rgba(255, 170, 70, .08);
}

/* v2.2.76 Round the Clock Mode Normalization */

/* v2.2.76 Round the Clock Mode Normalization */

/* v2.2.77 PvP Context Normalization */


/* v2.2.78 Round the Clock Game Mode Entry */
.dc-game-mode-card--manual.is-active .dc-game-mode-card__footer .dc-button--primary{white-space:normal;}

/* v2.2.81 unified setup ajax transition */
[data-page-content].is-setup-loading {
  opacity: .62;
  pointer-events: none;
  transition: opacity .16s ease;
}

/* v2.2.89 Walk-on Ready State */
.dc-walkon-intro__players{list-style:none;margin:14px 0 12px;padding:0;display:grid;gap:8px}
.dc-walkon-intro__players li{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border-radius:14px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.045)}
.dc-walkon-intro__players strong{color:var(--dc-text);font-size:13px}
.dc-walkon-intro__players span{color:var(--dc-text-soft);font-size:12px;font-weight:800;text-align:right}

/* v2.2.92 Walk-on Reference Scope Fix */
.dc-walkon-debug {
  margin-top: 14px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 14px;
  background: rgba(2,6,12,.42);
  padding: 10px 12px;
  text-align: left;
}
.dc-walkon-debug summary {
  cursor: pointer;
  font-weight: 800;
  color: #f3f7fb;
}
.dc-walkon-debug .dc-button {
  margin-top: 10px;
}
.dc-walkon-debug pre {
  max-height: 280px;
  overflow: auto;
  white-space: pre-wrap;
  word-break: break-word;
  margin: 10px 0 0;
  padding: 10px;
  border-radius: 10px;
  background: rgba(0,0,0,.42);
  color: #d7ffe6;
  font-size: 11px;
  line-height: 1.45;
}

/* v2.2.95 Room Removal Diagnostics Alignment */
.dc-dev-debug-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;border:1px solid rgba(255,170,70,.34);background:rgba(255,170,70,.14);color:#ffd59a;font:inherit;font-size:11px;font-weight:900;letter-spacing:.06em;text-decoration:none;cursor:pointer;white-space:nowrap}
.dc-dev-debug-panel{position:fixed;right:18px;bottom:68px;width:min(680px,calc(100vw - 36px));max-height:min(620px,calc(100vh - 110px));z-index:3999;border:1px solid rgba(255,170,70,.26);border-radius:20px;background:rgba(9,12,18,.96);box-shadow:0 24px 80px rgba(0,0,0,.55);padding:14px;display:none;overflow:hidden}
.dc-dev-debug-panel.is-open{display:grid;gap:10px}
.dc-dev-debug-panel__head{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:10px}
.dc-dev-debug-panel__head strong{color:#fff;font-size:15px}
.dc-dev-debug-panel__summary{color:var(--dc-muted);font-size:12px}
.dc-dev-debug-panel pre{margin:0;max-height:420px;overflow:auto;white-space:pre-wrap;word-break:break-word;border-radius:14px;border:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.42);padding:12px;color:#d7ffe6;font-size:11px;line-height:1.45}
.dc-dev-settings-card .dc-option-row{align-items:flex-start}
@media (max-width:720px){.dc-dev-debug-panel{right:10px;bottom:62px;width:calc(100vw - 20px);padding:12px}.dc-dev-debug-panel__head{display:grid}}
/* v2.2.96 Mobile Navigation Foundation */
.dc-mobile-header,
.dc-mobile-drawer,
.dc-mobile-overlay{display:none}
.dc-mobile-header{position:sticky;top:0;z-index:220;align-items:center;gap:10px;padding:10px 12px;border-bottom:1px solid var(--dc-border);background:rgba(8,10,12,.94);backdrop-filter:blur(14px)}
.dc-mobile-brand{display:flex;align-items:center;gap:10px;min-width:0;font-weight:900;color:var(--dc-text)}
.dc-mobile-brand .dc-brand__mark{width:38px;height:38px;border-radius:13px;flex:0 0 auto}.dc-mobile-brand span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dc-mobile-menu-button{margin-left:auto;display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--dc-border-strong);border-radius:13px;background:var(--dc-surface-2);color:var(--dc-text);font-weight:900;cursor:pointer}.dc-mobile-menu-button:hover,.dc-mobile-menu-button[aria-expanded="true"]{background:var(--dc-surface-3)}.dc-mobile-overlay{position:fixed;inset:0;z-index:230;background:rgba(0,0,0,.58);backdrop-filter:blur(2px)}.dc-mobile-overlay.is-open{display:block}.dc-mobile-drawer{position:fixed;top:0;right:0;bottom:0;z-index:240;width:min(88vw,380px);padding:16px;background:linear-gradient(180deg,#0b0d10,#07090b);border-left:1px solid var(--dc-border-strong);box-shadow:-24px 0 70px rgba(0,0,0,.58);transform:translateX(105%);transition:transform .24s ease;overflow:auto}.dc-mobile-drawer.is-open{display:block;transform:translateX(0)}.dc-mobile-drawer__head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;margin-bottom:12px;border-bottom:1px solid var(--dc-border)}.dc-mobile-drawer__head .dc-brand{margin:0}.dc-mobile-drawer__close{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--dc-border-strong);border-radius:14px;background:var(--dc-surface-2);color:var(--dc-text);font-size:28px;line-height:1;cursor:pointer}.dc-mobile-drawer__section{display:grid;gap:8px;padding:10px 0;border-bottom:1px solid var(--dc-border)}.dc-mobile-drawer__section:last-of-type{border-bottom:0}.dc-mobile-drawer__label{color:var(--dc-muted);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.1em;margin:3px 0}.dc-mobile-drawer .dc-nav__link{display:flex;align-items:center;gap:10px;padding:12px 13px;border:1px solid transparent;border-radius:14px;color:var(--dc-text-soft);background:rgba(255,255,255,.025)}.dc-mobile-drawer .dc-nav__link:hover{background:var(--dc-surface-2);color:var(--dc-text)}.dc-mobile-drawer .dc-nav__link.is-active{background:var(--dc-primary-soft);border-color:rgba(53,224,127,.32);color:var(--dc-primary-strong)}.dc-mobile-drawer .dc-icon{width:19px;height:19px;flex:0 0 auto}.dc-mobile-logout-form{margin:0}.dc-mobile-logout-form .dc-button{width:100%;justify-content:flex-start;padding:12px 13px}.dc-mobile-drawer__foot{padding-top:14px;color:var(--dc-muted);font-size:13px}.dc-mobile-drawer__foot a{text-decoration:underline;text-underline-offset:3px}.dc-mobile-nav-lock{overflow:hidden}
@media (max-width:900px){.dc-mobile-header{display:flex}.dc-shell{display:block;min-height:calc(100vh - 59px)}.dc-sidebar{display:none!important}.dc-main{max-width:none;margin:0;padding:14px}.dc-topbar{margin-bottom:14px}.dc-topbar>strong{display:none}.dc-topbar .dc-logout-form{display:none}.dc-topbar__account{font-size:12px}.dc-mobile-drawer{display:block}.dc-mobile-drawer:not(.is-open){pointer-events:none}.dc-mobile-header .dc-dev-debug-badge{font-size:11px;padding:4px 7px}body.dc-match-mode .dc-match-sidebar-toggle{display:none!important}body.dc-match-mode .dc-main{height:auto;overflow:visible;padding:14px}body.dc-match-mode .dc-match-live-root{height:auto;min-height:0;display:block;overflow:visible}}
@media (min-width:901px){.dc-mobile-header,.dc-mobile-drawer,.dc-mobile-overlay{display:none!important}}

/* v2.2.97 Mobile Matchscreen Layout Foundation */
.dc-mobile-match-tabs,
.dc-mobile-match-panel{display:none}
@media (max-width:900px){
  body.dc-match-mode{overflow:hidden}
  body.dc-match-mode .dc-shell{min-height:calc(100dvh - 59px)}
  body.dc-match-mode .dc-main{height:calc(100dvh - 59px);overflow:hidden;padding:8px 8px 76px;max-width:none;margin:0}
  body.dc-match-mode .dc-topbar{margin:0 0 8px;padding:7px 9px;border-radius:13px;font-size:11px;gap:8px;overflow-x:auto;white-space:nowrap}
  body.dc-match-mode .dc-topbar .dc-topbar__account,
  body.dc-match-mode .dc-topbar>span:last-child{display:none}
  body.dc-match-mode [data-page-content]{height:calc(100% - 44px);overflow:hidden}
  body.dc-match-mode .dc-match-live-root{height:100%;min-height:0;display:flex;flex-direction:column;overflow:hidden}
  body.dc-match-mode .dc-match-header{flex:0 0 auto;margin:0 0 7px;padding:8px 10px;border:1px solid var(--dc-border);border-radius:16px;background:rgba(17,20,23,.72);display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px}
  body.dc-match-mode .dc-match-header h1{font-size:18px;letter-spacing:-.03em;margin:0}
  body.dc-match-mode .dc-match-header p{margin:3px 0 0;font-size:10px;line-height:1.25;max-height:28px;overflow:hidden;color:var(--dc-muted)}
  body.dc-match-mode .dc-match-actions{display:none}
  body.dc-match-mode .dc-match-current-strip{flex:0 0 auto;margin:0 0 7px;padding:8px 10px;border-radius:15px;display:grid;grid-template-columns:1fr auto auto;gap:8px;align-items:center}
  body.dc-match-mode .dc-match-current-strip__player{min-width:0}
  body.dc-match-mode .dc-match-current-strip__player strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  body.dc-match-mode .dc-match-board{flex:1;min-height:0;display:flex;flex-direction:column;gap:7px;overflow:hidden}
  body.dc-match-mode .dc-score-panel{flex:0 0 auto;min-height:0;overflow:hidden;order:1}
  body.dc-match-mode .dc-score-panel>.dc-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(118px,1fr))!important;gap:6px;height:auto;grid-auto-rows:auto}
  body.dc-match-mode .dc-player-score-card{margin:0;padding:8px 9px;border-radius:15px;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:8px;min-height:0;overflow:hidden}
  body.dc-match-mode .dc-player-score-card:not(.is-active){opacity:.74}
  body.dc-match-mode .dc-player-score-card__badges{grid-column:1/-1;margin:0 0 3px;gap:4px;max-height:23px;overflow:hidden}
  body.dc-match-mode .dc-player-score-card .dc-badge{font-size:9px;padding:2px 6px}
  body.dc-match-mode .dc-player-score-card__identity{display:flex;align-items:center;gap:7px;min-width:0}
  body.dc-match-mode .dc-player-score-card__identity h2{font-size:13px;line-height:1.05;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  body.dc-match-mode .dc-player-score-card .dc-player-avatar{width:28px;height:28px;border-radius:10px}
  body.dc-match-mode .dc-score-display{grid-column:2;grid-row:2;font-size:34px;line-height:.9;margin:0;min-width:0;text-align:right;align-self:center}
  body.dc-match-mode .dc-match-average-strip,
  body.dc-match-mode .dc-live-stats,
  body.dc-match-mode .dc-player-score-card>p{display:none!important}
  body.dc-match-mode .dc-match-input-zone{display:block;order:2;flex:1;min-height:0;overflow:hidden}
  body.dc-match-mode .dc-input-mode-bar{display:none!important}
  body.dc-match-mode .dc-mobile-match-tabs{display:grid;position:fixed;left:8px;right:8px;bottom:8px;z-index:210;grid-template-columns:repeat(auto-fit,minmax(54px,1fr));gap:5px;padding:6px;border:1px solid var(--dc-border-strong);border-radius:22px;background:rgba(8,10,12,.94);backdrop-filter:blur(16px);box-shadow:0 18px 50px rgba(0,0,0,.48)}
  body.dc-match-mode .dc-mobile-match-tabs button{display:grid;place-items:center;gap:1px;min-width:0;border:0;border-radius:16px;background:transparent;color:var(--dc-muted);padding:7px 4px;font:inherit;font-weight:900;cursor:pointer}
  body.dc-match-mode .dc-mobile-match-tabs button strong{font-size:15px;line-height:1;color:var(--dc-text-soft)}
  body.dc-match-mode .dc-mobile-match-tabs button span{font-size:10px;line-height:1.1;white-space:nowrap}
  body.dc-match-mode .dc-mobile-match-tabs button[aria-pressed="true"]{background:var(--dc-primary-soft);color:var(--dc-primary-strong)}
  body.dc-match-mode .dc-mobile-match-tabs button[aria-pressed="true"] strong{color:var(--dc-primary-strong)}
  body.dc-match-mode .dc-match-input-grid{display:block;height:100%;min-height:0;overflow:hidden}
  body.dc-match-mode .dc-match-live-root [data-input-section],
  body.dc-match-mode .dc-mobile-match-panel{height:100%;min-height:0;overflow:auto;margin:0;padding:12px;border-radius:18px}
  body.dc-match-mode .dc-match-live-root [data-input-section]{display:none!important}
  body.dc-match-mode .dc-mobile-match-panel{display:none!important}
  body.dc-match-mode .dc-match-live-root[data-mobile-active-tab="textscore"] [data-input-section="textscore"]{display:grid!important}
  body.dc-match-mode .dc-match-live-root[data-mobile-active-tab="exact"] [data-input-section="exact"]{display:grid!important}
  body.dc-match-mode .dc-match-live-root[data-mobile-active-tab="board"] [data-input-section="board"]{display:grid!important}
  body.dc-match-mode .dc-match-live-root[data-mobile-active-tab="history"] [data-mobile-tab-panel="history"]{display:block!important;order:3;flex:1}
  body.dc-match-mode .dc-match-live-root[data-mobile-active-tab="more"] [data-mobile-tab-panel="more"]{display:block!important;order:3;flex:1}
  body.dc-match-mode .dc-textscore-card .dc-field{gap:5px}
  body.dc-match-mode .dc-input--score{font-size:46px;padding:10px 12px;border-radius:16px}
  body.dc-match-mode .dc-score-pad{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  body.dc-match-mode .dc-score-pad .dc-button{padding:11px 7px;border-radius:14px;font-size:15px}
  body.dc-match-mode .dc-smart-checkout-hint{font-size:11px;line-height:1.25;margin:0}
  body.dc-match-mode .dc-exact-quick{gap:7px}
  body.dc-match-mode .dc-exact-number{padding:8px;border-radius:14px}
  body.dc-match-mode .dc-exact-number .dc-button{padding:8px 6px}
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card .dc-board-entry-layout{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
*/
  body.dc-match-mode .dc-board-entry-topbar{gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}
  body.dc-match-mode .dc-board-entry-chip{padding:7px 8px;border-radius:12px}
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-stage{min-height:0;display:grid;place-items:center;overflow:hidden}
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-wrap{height:100%;min-height:0;display:flex;align-items:center;justify-content:center;overflow:visible}
*/
  body.dc-match-mode .dc-dartboard{width:auto;height:auto;max-width:100%;max-height:min(100%,calc(100dvh - 270px));aspect-ratio:1/1;object-fit:contain}
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-board-entry-actions{gap:6px;justify-content:center}
*/
  body.dc-match-mode .dc-board-entry-actions .dc-button{padding:8px 9px;font-size:12px}
  body.dc-match-mode .dc-match-undo-form{display:none!important}
  body.dc-match-mode .dc-mobile-turn-list{display:grid;gap:8px}
  body.dc-match-mode .dc-mobile-turn-row{padding:9px 10px;border:1px solid var(--dc-border);border-radius:14px;background:rgba(255,255,255,.04);display:grid;gap:2px}
  body.dc-match-mode .dc-mobile-turn-row strong{font-size:14px}
  body.dc-match-mode .dc-mobile-turn-row span{font-weight:900;color:var(--dc-text)}
  body.dc-match-mode .dc-mobile-turn-row em{font-style:normal;color:var(--dc-muted);font-size:12px}
  body.dc-match-mode .dc-mobile-more-actions{display:grid;gap:9px}
  body.dc-match-mode .dc-mobile-more-actions .dc-button,
  body.dc-match-mode .dc-mobile-more-actions form .dc-button{width:100%;justify-content:center}
  body.dc-match-mode .dc-mobile-more-actions .dc-inline-form{margin:0}
}
@media (max-width:520px){
  body.dc-match-mode .dc-main{padding-left:6px;padding-right:6px}
  body.dc-match-mode .dc-score-panel>.dc-grid{grid-template-columns:1fr 1fr!important}
  body.dc-match-mode .dc-player-score-card{padding:7px}
  body.dc-match-mode .dc-score-display{font-size:30px}
  body.dc-match-mode .dc-mobile-match-tabs{left:6px;right:6px;bottom:6px;border-radius:20px}
  body.dc-match-mode .dc-mobile-match-tabs button span{font-size:9px}
}
@media (max-width:900px){
  body.dc-match-mode .dc-match-live-root[data-mobile-active-tab="history"] .dc-match-input-grid,
  body.dc-match-mode .dc-match-live-root[data-mobile-active-tab="more"] .dc-match-input-grid{display:none!important;height:0;min-height:0;overflow:hidden}
  body.dc-match-mode .dc-match-live-root[data-mobile-active-tab="history"] .dc-match-input-zone,
  body.dc-match-mode .dc-match-live-root[data-mobile-active-tab="more"] .dc-match-input-zone{flex:0 0 auto;min-height:0;overflow:visible}
}

/* v2.2.98 Mobile Matchscreen Header Compression */
.dc-match-header__title-short,
.dc-match-header__meta--mobile,
.dc-match-mobile-head-actions{display:none}
@media (max-width:900px){
  body.dc-match-mode .dc-mobile-header{display:none!important}
  body.dc-match-mode .dc-shell{min-height:100dvh}
  body.dc-match-mode .dc-main{height:100dvh;padding-top:6px}
  body.dc-match-mode .dc-topbar{display:none!important}
  body.dc-match-mode [data-page-content]{height:100%;overflow:hidden}
  body.dc-match-mode .dc-match-live-root{height:100%;min-height:0}
  body.dc-match-mode .dc-match-header{position:relative;top:auto;z-index:25;margin:0 0 5px;padding:7px 8px;border-radius:14px;grid-template-columns:minmax(0,1fr) auto;background:rgba(10,13,15,.88);box-shadow:none;backdrop-filter:blur(12px)}
  body.dc-match-mode .dc-match-header__summary{min-width:0}
  body.dc-match-mode .dc-match-header h1{display:flex;align-items:center;gap:6px;font-size:15px;line-height:1;margin:0;letter-spacing:-.01em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  body.dc-match-mode .dc-match-header__title-full{display:none}
  body.dc-match-mode .dc-match-header__title-short{display:inline;min-width:0;overflow:hidden;text-overflow:ellipsis}
  body.dc-match-mode .dc-match-header__meta--desktop{display:none}
  body.dc-match-mode .dc-match-header__meta--mobile{display:block;margin:1px 0 0;font-size:10px;line-height:1.1;color:var(--dc-muted);max-height:none;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
  body.dc-match-mode .dc-match-mobile-head-actions{display:flex;align-items:center;gap:5px}
  body.dc-match-mode .dc-match-mobile-head-actions .dc-button{min-height:32px;padding:6px 8px;border-radius:11px;font-size:12px;gap:5px;background:rgba(255,255,255,.04)}
  body.dc-match-mode .dc-match-current-strip{margin-bottom:5px;padding:7px 8px;border-radius:14px;gap:7px}
  body.dc-match-mode .dc-match-current-strip .dc-player-avatar{width:26px;height:26px;border-radius:9px}
  body.dc-match-mode .dc-match-current-strip .dc-stat-label{font-size:9px;letter-spacing:.04em}
  body.dc-match-mode .dc-match-current-strip strong{font-size:18px;line-height:1}
  body.dc-match-mode .dc-match-current-strip__player strong{font-size:16px}
  body.dc-match-mode .dc-match-board{gap:5px}
  body.dc-match-mode .dc-score-panel>.dc-grid{gap:5px}
  body.dc-match-mode .dc-player-score-card{padding:6px 7px;border-radius:13px}
  body.dc-match-mode .dc-player-score-card__badges{display:none!important}
  body.dc-match-mode .dc-player-score-card__identity{gap:6px}
  body.dc-match-mode .dc-player-score-card__identity h2{font-size:12px}
  body.dc-match-mode .dc-player-score-card .dc-player-avatar{width:24px;height:24px;border-radius:8px}
  body.dc-match-mode .dc-score-display{font-size:29px}
  body.dc-match-mode .dc-last-score{margin-top:4px;padding:5px 7px;border-radius:10px}
  body.dc-match-mode .dc-last-score span{font-size:9px}
  body.dc-match-mode .dc-last-score strong{font-size:15px}
  body.dc-match-mode .dc-player-checkout-advisor{margin-top:5px;padding:7px 8px;border-radius:12px;gap:4px}
  body.dc-match-mode .dc-player-checkout-advisor__label,
  body.dc-match-mode .dc-player-checkout-advisor__message{font-size:10px;line-height:1.2}
  body.dc-match-mode .dc-player-checkout-advisor__routes{gap:4px}
  body.dc-match-mode .dc-player-checkout-route{padding:4px 6px;border-radius:9px;font-size:10px}
  body.dc-match-mode   body.dc-match-mode .dc-dev-debug-panel{max-height:62dvh}
}
@media (max-width:520px){
  body.dc-match-mode .dc-main{padding-left:5px;padding-right:5px}
  body.dc-match-mode .dc-match-header{padding:6px 7px;margin-bottom:4px}
  body.dc-match-mode .dc-match-mobile-head-actions .dc-button{padding:6px 7px}
  body.dc-match-mode .dc-match-current-strip{padding:6px 7px;margin-bottom:4px}
  body.dc-match-mode .dc-match-current-strip strong{font-size:17px}
  body.dc-match-mode .dc-match-current-strip__player strong{font-size:15px}
  body.dc-match-mode .dc-score-panel>.dc-grid{gap:4px}
  body.dc-match-mode .dc-player-score-card{padding:6px}
  body.dc-match-mode .dc-score-display{font-size:27px}
}

/* v2.2.99 Mobile AI Throw Focus View */
.dc-ai-turn-card__mobile-copy{display:none}
@media (max-width:900px){
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn{--dc-mobile-ai-bottom-gap:8px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-match-header{margin-bottom:4px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-match-current-strip{grid-template-columns:minmax(0,1fr) auto;margin-bottom:4px;padding:6px 8px;background:linear-gradient(135deg,rgba(255,170,70,.14),rgba(17,20,23,.86));border:1px solid rgba(255,170,70,.22)}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-match-current-strip>div:nth-of-type(3),
  body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-match-current-strip>.dc-badge{display:none!important}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-match-current-strip .dc-stat-label{font-size:9px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-match-current-strip strong{font-size:19px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-match-current-strip__player strong{font-size:16px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-match-board{flex:1;min-height:0;display:flex;flex-direction:column;gap:4px;overflow:hidden}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-score-panel{display:none!important}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-match-toolbar{display:none!important}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-turn-card{order:1;flex:0 0 auto;margin:0;padding:7px 9px;border-radius:14px;border-color:rgba(255,170,70,.26);background:rgba(17,20,23,.72);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-turn-card h2{margin:0;font-size:14px;line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--dc-text)}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-turn-card__desktop-copy{display:none!important}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-turn-card__mobile-copy{display:block;margin:0;font-size:10px;line-height:1.1;color:var(--dc-muted);grid-column:1;grid-row:2}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-turn-card form{display:contents}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-countdown{grid-column:2;grid-row:1/3;margin:0;padding:5px 7px;border-radius:12px;min-width:72px;text-align:center;background:rgba(255,170,70,.08);border-color:rgba(255,170,70,.2)}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-countdown span{display:block;font-size:9px;line-height:1.1;max-width:96px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--dc-muted)}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-countdown strong{display:block;font-size:19px;line-height:1;color:#ffd59a;margin-top:2px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-dart-steps{display:none!important}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-turn-card button[type="submit"]{display:none!important}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-dartboard-card--stable--ai{order:2;flex:1;min-height:0;margin:0;padding:6px;border-radius:15px;background:rgba(7,9,11,.78);border-color:rgba(255,255,255,.08);overflow:hidden}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai{height:100%;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);gap:5px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-topbar{order:2;display:grid;grid-template-columns:minmax(0,1.7fr) .8fr .8fr;gap:5px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-chip{padding:5px 6px;border-radius:10px;min-width:0;background:rgba(255,255,255,.045)}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-chip span{font-size:8px;line-height:1;text-transform:uppercase;letter-spacing:.06em;color:var(--dc-muted)}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-chip strong{font-size:13px;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-chip--status{display:none!important}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-dartboard-stage--ai{order:1;min-height:0;display:grid;place-items:center;overflow:hidden;padding:0}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-dartboard-wrap--ai{width:calc(100vw - 22px);height:auto;max-width:100%;max-height:100%;aspect-ratio:1/1;min-height:0;display:grid;place-items:center;overflow:visible;margin:0 auto}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-dartboard-wrap--ai .dc-dartboard{width:100%!important;height:100%!important;max-width:100%!important;max-height:100%!important;aspect-ratio:1/1;object-fit:contain}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-dartboard-score-overlay{font-size:14px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-mobile-match-tabs{display:none!important}
*/
}
@media (max-width:520px){
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-dartboard-card--stable--ai{padding:4px;border-radius:13px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-dartboard-wrap--ai{width:calc(100vw - 14px)}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-topbar{gap:4px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-chip{padding:5px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-chip strong{font-size:12px}
*/
}

/* v2.2.100 Mobile Matchscreen Collision Polish */
@media (max-width:900px){
  body.dc-match-mode{
    --dc-mobile-match-tabbar-height:74px;
    --dc-mobile-match-safe-bottom:calc(var(--dc-mobile-match-tabbar-height) + env(safe-area-inset-bottom,0px) + 12px);
  }
  body.dc-match-mode .dc-main{padding-bottom:var(--dc-mobile-match-safe-bottom)}
  body.dc-match-mode .dc-mobile-match-tabs{bottom:calc(6px + env(safe-area-inset-bottom,0px));z-index:230}
  body.dc-match-mode .dc-match-live-root [data-input-section],
  body.dc-match-mode .dc-mobile-match-panel{
    padding-bottom:calc(var(--dc-mobile-match-safe-bottom) + 8px)!important;
    scroll-padding-bottom:calc(var(--dc-mobile-match-safe-bottom) + 16px);
  }
  body.dc-match-mode .dc-exact-card{position:relative;gap:9px}
  body.dc-match-mode .dc-exact-card .dc-exact-actions{
    position:sticky;
    bottom:0;
    z-index:6;
    margin:4px -2px 0;
    padding:7px 2px 2px;
    border-radius:14px;
    background:linear-gradient(180deg,rgba(10,13,15,.72),rgba(10,13,15,.98));
    backdrop-filter:blur(10px);
    justify-content:center;
  }
  body.dc-match-mode .dc-exact-card .dc-exact-actions .dc-button{min-height:38px;padding:8px 10px;font-size:12px}
  body.dc-match-mode .dc-dev-debug-panel{bottom:calc(var(--dc-mobile-match-safe-bottom) + 8px);max-height:58dvh}

  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-match-current-strip{display:none!important}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-match-board{gap:5px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-turn-card{
    min-height:0;
    padding:6px 8px;
    border-radius:13px;
    grid-template-columns:minmax(0,1fr) auto;
    gap:5px 8px;
  }
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-turn-card h2{
    font-size:13px;
    line-height:1.05;
  }
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-turn-card__mobile-copy{
    font-size:9px;
    line-height:1.05;
  }
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-countdown{
    min-width:64px;
    padding:4px 6px;
    border-radius:10px;
  }
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-countdown span{font-size:8px;max-width:78px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-countdown strong{font-size:17px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-dartboard-card--stable--ai{
    padding:4px;
    border-radius:13px;
    display:flex;
    flex-direction:column;
  }
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai{
    grid-template-rows:minmax(0,1fr) auto;
    gap:4px;
  }
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-dartboard-stage--ai{min-height:0}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-topbar{
    order:2;
    display:grid!important;
    grid-template-columns:minmax(0,1.4fr) minmax(58px,.65fr) minmax(70px,.75fr);
    gap:4px;
    height:auto!important;
    min-height:0!important;
    align-items:stretch;
  }
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-chip{
    min-height:42px!important;
    height:auto!important;
    padding:5px 6px!important;
    border-radius:10px!important;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-chip span{font-size:8px!important;line-height:1!important}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-chip strong{font-size:12px!important;line-height:1.05!important}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-dartboard-wrap--ai{width:calc(100vw - 12px)}
*/
}
@media (max-width:520px){
  body.dc-match-mode{--dc-mobile-match-tabbar-height:70px}
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-turn-card{padding:5px 7px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-ai-turn-card h2{font-size:12px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-topbar{grid-template-columns:minmax(0,1.35fr) 58px 70px}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-board-entry-layout--ai .dc-board-entry-chip{min-height:38px!important;padding:4px 5px!important}
*/
  /* DEPRECATED v2.2.127 — obsolete pre-consolidation AI layout rule; disabled for verification.
body.dc-match-mode .dc-match-live-root.is-ai-turn .dc-dartboard-wrap--ai{width:calc(100vw - 10px)}
*/
}

/* v2.2.101 Tablet Orientation Layout Pass */
@media (max-width: 900px) and (min-width: 760px) and (orientation: landscape) {
  body.dc-match-mode{
    overflow:hidden;
    --dc-mobile-match-tabbar-height:0px;
    --dc-mobile-match-safe-bottom:10px;
  }
  body.dc-match-mode .dc-main{
    height:100dvh;
    overflow:hidden;
    padding:8px 10px 8px;
  }
  body.dc-match-mode [data-page-content],
  body.dc-match-mode .dc-match-live-root{
    height:100%;
    min-height:0;
    overflow:hidden;
  }
  body.dc-match-mode .dc-mobile-match-tabs,
  body.dc-match-mode .dc-mobile-match-panel{
    display:none!important;
  }
  body.dc-match-mode .dc-match-header{
    margin:0 0 6px;
    padding:6px 8px;
    border-radius:13px;
  }
  body.dc-match-mode .dc-match-header h1{font-size:14px;line-height:1}
  body.dc-match-mode .dc-match-header__meta--mobile{font-size:9px;line-height:1.05}
  body.dc-match-mode .dc-match-current-strip{display:none!important}
  body.dc-match-mode .dc-match-board{
    flex:1;
    min-height:0;
    display:grid;
    grid-template-columns:minmax(250px,38%) minmax(360px,1fr);
    grid-template-rows:auto minmax(0,1fr);
    gap:8px;
    align-items:stretch;
    overflow:hidden;
  }
  body.dc-match-mode .dc-match-input-zone,
  body.dc-match-mode .dc-match-input-grid{
    display:contents!important;
    min-height:0;
    overflow:visible;
  }
  body.dc-match-mode .dc-input-mode-bar{
    display:flex!important;
    grid-column:1;
    grid-row:1;
    margin:0;
    padding:6px;
    gap:6px;
    border-radius:13px;
    justify-content:flex-start;
  }
  body.dc-match-mode .dc-input-mode-toggle{padding:6px 9px;font-size:12px}
  body.dc-match-mode .dc-match-live-root [data-input-section]{
    height:auto;
    min-height:0;
    overflow:auto;
    margin:0;
    padding:10px!important;
    border-radius:15px;
  }
  body.dc-match-mode .dc-match-live-root [data-input-section]:not([hidden]){display:grid!important}
  body.dc-match-mode .dc-match-live-root [data-input-section="textscore"],
  body.dc-match-mode .dc-match-live-root [data-input-section="exact"]{
    grid-column:1;
    grid-row:2;
  }
  body.dc-match-mode .dc-match-live-root [data-input-section="board"]{
    grid-column:2;
    grid-row:1 / span 2;
  }
  body.dc-match-mode .dc-score-panel{
    grid-column:1;
    grid-row:2;
    min-height:0;
    overflow:hidden;
  }
  /* DEPRECATED v2.2.141 — fixed landscape-tablet player-card compression. The shared adaptive density contract now decides full versus compact from actual available height.
  body.dc-match-mode .dc-score-panel>.dc-grid{
    grid-template-columns:1fr!important;
    gap:7px;
    height:100%;
    grid-auto-rows:minmax(0,1fr);
  }
  body.dc-match-mode .dc-player-score-card{
    padding:8px 9px;
    border-radius:14px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:auto auto 1fr;
    column-gap:8px;
    min-height:0;
    overflow:hidden;
  }
  body.dc-match-mode .dc-player-score-card__badges,
  body.dc-match-mode .dc-match-average-strip,
  body.dc-match-mode .dc-live-stats,
  body.dc-match-mode .dc-player-score-card>p{display:none!important}
  body.dc-match-mode .dc-player-score-card__identity h2{font-size:12px}
  body.dc-match-mode .dc-player-score-card .dc-player-avatar{width:24px;height:24px;border-radius:8px}
  body.dc-match-mode .dc-score-display{
    grid-column:2;
    grid-row:1 / span 2;
    font-size:30px;
    line-height:.95;
    margin:0;
    min-width:64px;
    text-align:right;
  }
  body.dc-match-mode .dc-last-score{margin-top:4px;padding:5px 7px;border-radius:10px}
  */
  body.dc-match-mode .dc-textscore-card .dc-field{gap:5px}
  body.dc-match-mode .dc-input--score{font-size:34px;padding:8px 10px;border-radius:14px}
  body.dc-match-mode .dc-score-pad{grid-template-columns:repeat(5,minmax(0,1fr));gap:5px}
  body.dc-match-mode .dc-score-pad .dc-button{padding:7px 5px;font-size:12px;border-radius:11px}
  body.dc-match-mode .dc-exact-card .dc-exact-actions{
    position:static;
    margin:4px 0 0;
    padding:0;
    background:transparent;
    backdrop-filter:none;
  }
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card .dc-board-entry-layout{height:100%;grid-template-rows:auto minmax(0,1fr) auto;gap:6px}
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-stage{min-height:0;display:grid;place-items:center;overflow:hidden}
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-wrap{width:100%;height:100%;display:grid;place-items:center;overflow:visible}
*/
  body.dc-match-mode .dc-dartboard{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
  body.dc-match-mode .dc-board-entry-actions .dc-button{padding:7px 9px;font-size:12px}
  body.dc-match-mode   body.dc-match-mode .dc-dev-debug-panel{bottom:48px;max-height:60dvh}
}

/* v2.2.102 Input Visibility State Correction */
[data-input-section][hidden],
body.dc-match-mode .dc-match-live-root [data-input-section][hidden]{
  display:none!important;
}


/* v2.2.103 Tablet / Laptop Stats Priority Layout
   Scope: compact landscape matchscreen only. Shared engine/input state remains unchanged. */
@media (min-width:760px) and (max-width:1366px) and (orientation:landscape),
       (min-width:901px) and (max-width:1366px) and (max-height:820px) {
  body.dc-match-mode{
    overflow:hidden;
    --dc-mobile-match-tabbar-height:0px;
    --dc-mobile-match-safe-bottom:8px;
  }
  body.dc-match-mode .dc-main{
    height:100dvh;
    overflow:hidden;
    padding:8px 10px;
  }
  body.dc-match-mode [data-page-content],
  body.dc-match-mode .dc-match-live-root{
    height:100%;
    min-height:0;
    overflow:hidden;
  }
  body.dc-match-mode .dc-mobile-match-tabs,
  body.dc-match-mode .dc-mobile-match-panel{
    display:none!important;
  }
  body.dc-match-mode .dc-match-header{
    position:static;
    margin:0 0 6px;
    padding:6px 8px;
    border-radius:12px;
  }
  body.dc-match-mode .dc-match-header h1{font-size:clamp(18px,2vw,26px);line-height:1}
  body.dc-match-mode .dc-match-header__meta--mobile{font-size:11px;line-height:1.1}
  body.dc-match-mode .dc-match-actions .dc-button{padding:7px 10px;font-size:12px}
  body.dc-match-mode .dc-match-current-strip{display:none!important}

  body.dc-match-mode .dc-match-board{
    flex:1;
    min-height:0;
    display:grid;
    grid-template-columns:minmax(330px,39%) minmax(0,1fr);
    grid-template-rows:auto minmax(260px,1.15fr) minmax(170px,.85fr);
    gap:7px 9px;
    align-items:stretch;
    overflow:hidden;
  }
  body.dc-match-mode .dc-match-input-zone,
  body.dc-match-mode .dc-match-input-grid{
    display:contents!important;
    min-height:0;
    overflow:visible;
  }
  body.dc-match-mode .dc-input-mode-bar{
    display:flex!important;
    grid-column:1;
    grid-row:1;
    margin:0;
    padding:5px 6px;
    gap:5px;
    border-radius:12px;
    justify-content:space-between;
    min-width:0;
  }
  body.dc-match-mode .dc-input-mode-bar__modes{gap:5px;min-width:0;flex-wrap:nowrap}
  body.dc-match-mode .dc-input-mode-toggle,
  body.dc-match-mode .dc-turn-history-open{padding:6px 8px;font-size:11px;white-space:nowrap}

  body.dc-match-mode .dc-score-panel{
    grid-column:1;
    grid-row:2;
    min-height:0;
    overflow:hidden;
  }
  /* DEPRECATED v2.2.141 — static tablet/laptop active-priority card model. Superseded by measured full / active-priority / scroll states.
  body.dc-match-mode .dc-score-panel>.dc-grid{
    display:flex!important;
    flex-direction:column;
    gap:6px;
    height:100%;
    min-height:0;
  }
  body.dc-match-mode .dc-player-score-card{
    margin:0;
    border-radius:13px;
    min-width:0;
  }
  body.dc-match-mode .dc-player-score-card.is-active{
    order:1;
    flex:1 1 auto;
    min-height:0;
    overflow:auto;
    padding:7px 8px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:auto auto auto auto 1fr;
    column-gap:8px;
    align-content:start;
  }
  body.dc-match-mode .dc-player-score-card.is-compact{
    order:2;
    flex:0 0 auto;
    min-height:0;
    overflow:hidden;
    padding:6px 8px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-rows:auto auto;
    column-gap:8px;
    align-items:center;
  }
  body.dc-match-mode .dc-player-score-card__badges{
    grid-column:1/-1;
    margin:0 0 3px;
    gap:4px;
  }
  body.dc-match-mode .dc-player-score-card__badges .dc-badge{padding:3px 6px;font-size:9px}
  body.dc-match-mode .dc-player-score-card__identity{min-width:0;gap:7px}
  body.dc-match-mode .dc-player-score-card__identity h2{font-size:clamp(13px,1.35vw,18px);line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  body.dc-match-mode .dc-player-score-card .dc-player-avatar{width:28px;height:28px;border-radius:8px}
  body.dc-match-mode .dc-score-display{
    grid-column:2;
    grid-row:2 / span 2;
    margin:0;
    min-width:76px;
    align-self:start;
    text-align:right;
    font-size:clamp(38px,4vw,58px);
    line-height:.9;
  }
  body.dc-match-mode .dc-last-score{margin:3px 0 4px;padding:4px 7px;gap:6px}
  body.dc-match-mode .dc-last-score span{font-size:8px}
  body.dc-match-mode .dc-last-score strong{font-size:14px}
  body.dc-match-mode .dc-player-score-card>p{margin:1px 0 4px;font-size:11px;font-weight:800}
  body.dc-match-mode .dc-player-score-card.is-active .dc-live-stats{
    display:grid!important;
    grid-column:1/-1;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:4px;
    margin-top:2px;
    align-self:end;
  }
  body.dc-match-mode .dc-player-score-card.is-active .dc-live-stat{padding:4px 5px;border-radius:8px;min-height:0}
  body.dc-match-mode .dc-player-score-card.is-active .dc-live-stat__label{font-size:8px;line-height:1.08;letter-spacing:.025em}
  body.dc-match-mode .dc-player-score-card.is-active .dc-live-stat__value{font-size:13px;line-height:1.05;margin-top:2px}
  body.dc-match-mode .dc-player-score-card.is-active .dc-live-stat__empty{font-size:8px;line-height:1.05}
  body.dc-match-mode .dc-player-score-card.is-compact .dc-player-score-card__badges{display:none!important}
  body.dc-match-mode .dc-player-score-card.is-compact .dc-score-display{
    grid-column:2;
    grid-row:1 / span 2;
    font-size:32px;
    min-width:70px;
    align-self:center;
  }
  body.dc-match-mode .dc-player-score-card.is-compact .dc-last-score{grid-column:1;grid-row:2;margin:2px 0 0}
  body.dc-match-mode .dc-player-score-card.is-compact .dc-live-stats,
  body.dc-match-mode .dc-player-score-card.is-compact .dc-player-checkout-advisor{display:none!important}
  body.dc-match-mode .dc-player-score-card.is-compact>p{
    grid-column:1;
    grid-row:2;
    justify-self:end;
    margin:0;
    padding-right:4px;
    font-size:10px;
  }
  */

  body.dc-match-mode .dc-match-live-root [data-input-section="textscore"],
  body.dc-match-mode .dc-match-live-root [data-input-section="exact"]{
    grid-column:1;
    grid-row:3;
    min-height:0;
    height:auto;
    overflow:auto;
    margin:0;
    padding:8px!important;
    border-radius:13px;
  }
  body.dc-match-mode .dc-match-live-root [data-input-section="board"]{
    grid-column:2;
    grid-row:1 / span 3;
    min-height:0;
    height:auto;
    overflow:hidden;
    margin:0;
    padding:9px!important;
    border-radius:15px;
  }
  body.dc-match-mode .dc-match-live-root [data-input-section]:not([hidden]){display:grid!important}
  body.dc-match-mode .dc-exact-card .dc-section-head{margin-bottom:5px}
  body.dc-match-mode .dc-exact-card .dc-section-head h2{font-size:16px}
  body.dc-match-mode .dc-exact-card .dc-section-head p{font-size:11px;margin-top:2px}
  body.dc-match-mode .dc-exact-quick{gap:4px}
  body.dc-match-mode .dc-exact-number{min-height:32px;padding:3px 5px;gap:4px}
  body.dc-match-mode .dc-exact-number .dc-button{padding:4px 6px;font-size:11px}
  body.dc-match-mode .dc-exact-all{margin-top:4px}
  body.dc-match-mode .dc-exact-summary{margin-top:4px;padding:4px 6px}
  body.dc-match-mode .dc-exact-card .dc-exact-actions{position:static;margin:4px 0 0;padding:0;background:transparent;backdrop-filter:none}
  body.dc-match-mode .dc-textscore-card .dc-field{gap:4px}
  body.dc-match-mode .dc-input--score{font-size:30px;padding:7px 9px}
  body.dc-match-mode .dc-score-pad{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}
  body.dc-match-mode .dc-score-pad .dc-button{padding:6px 4px;font-size:11px}

  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card .dc-board-entry-layout{height:100%;min-height:0;grid-template-rows:auto minmax(0,1fr);gap:5px}
*/
  body.dc-match-mode .dc-board-entry-topbar{gap:5px}
  body.dc-match-mode .dc-board-entry-chip{min-height:48px;padding:6px 8px;border-radius:11px}
  body.dc-match-mode .dc-board-entry-chip span{font-size:9px}
  body.dc-match-mode .dc-board-entry-chip strong{font-size:15px}
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-stage{min-height:0;display:grid;place-items:center;overflow:hidden}
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-wrap{width:100%;height:100%;min-height:0;display:grid;place-items:center;overflow:visible}
*/
  body.dc-match-mode .dc-dartboard{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-board-entry-actions{gap:5px;margin-top:4px;justify-content:center}
*/
  body.dc-match-mode .dc-board-entry-actions .dc-button{padding:6px 8px;font-size:11px}
  body.dc-match-mode .dc-match-undo-form{display:none!important}
  body.dc-match-mode   body.dc-match-mode .dc-dev-debug-panel{bottom:46px;max-height:62dvh}
}

@media (min-width:760px) and (max-width:1050px) and (orientation:landscape) {
  body.dc-match-mode .dc-match-board{
    grid-template-columns:minmax(300px,40%) minmax(0,1fr);
    grid-template-rows:auto minmax(240px,1.1fr) minmax(160px,.9fr);
  }
  body.dc-match-mode .dc-player-score-card.is-active .dc-live-stats{grid-template-columns:repeat(6,minmax(0,1fr))}
  body.dc-match-mode .dc-player-score-card.is-active .dc-live-stat{padding:3px 4px}
  body.dc-match-mode .dc-player-score-card.is-active .dc-live-stat__label{font-size:7px}
  body.dc-match-mode .dc-player-score-card.is-active .dc-live-stat__value{font-size:12px}
}

/* v2.2.104 Matchscreen Height / Overflow Stability
   Keep the active match as an app viewport while allowing its inner work areas
   to shrink or scroll instead of clipping controls below the visible area. */
body.dc-match-mode{
  min-height:100vh;
  min-height:100dvh;
}

@media (min-width:901px){
  body.dc-match-mode .dc-shell,
  body.dc-match-mode .dc-sidebar,
  body.dc-match-mode .dc-main{
    height:100vh;
    height:100dvh;
    min-height:0;
  }
  body.dc-match-mode [data-page-content],
  body.dc-match-mode .dc-match-live-root{
    height:100%;
    min-height:0;
  }
}

body.dc-match-mode [data-page-content],
body.dc-match-mode .dc-match-live-root,
body.dc-match-mode .dc-match-board,
body.dc-match-mode .dc-match-input-zone,
body.dc-match-mode .dc-match-input-grid,
body.dc-match-mode .dc-score-panel,
body.dc-match-mode [data-input-section]{
  min-height:0;
}

/* The board form owns the available height. Its action row is always reserved;
   only the board stage is allowed to shrink. */
/* DEPRECATED v2.2.130 — actions now live inside .dc-board-entry-layout; the outer form no longer needs a second action row.
body.dc-match-mode [data-input-section="board"]{
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  align-items:stretch;
  overflow:hidden;
}
*/
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card .dc-board-entry-layout{
  min-height:0;
  height:auto;
  overflow:hidden;
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
}
*/
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-stage,
body.dc-match-mode .dc-dartboard-wrap{
  min-height:0;
  max-height:100%;
  overflow:hidden;
}
*/
body.dc-match-mode .dc-dartboard{
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  object-fit:contain;
}
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-board-entry-actions{
  flex:0 0 auto;
  min-height:0;
  margin:0;
  padding-top:6px;
  overflow:visible;
}
*/

/* Text and exact input remain reachable on short viewports without making the
   outer match page scroll. */
body.dc-match-mode [data-input-section="textscore"],
body.dc-match-mode [data-input-section="exact"]{
  min-height:0;
  overflow:auto;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}

@media (max-width:900px){
  body.dc-match-mode .dc-shell{
    min-height:calc(100vh - 59px);
    min-height:calc(100dvh - 59px);
  }
  body.dc-match-mode .dc-main{
    height:calc(100vh - 59px);
    height:calc(100dvh - 59px);
    min-height:0;
  }
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode [data-input-section="board"]{
    overflow:hidden!important;
    grid-template-rows:minmax(0,1fr) auto!important;
  }
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card .dc-board-entry-layout{
    height:auto!important;
    min-height:0;
    grid-template-rows:auto minmax(0,1fr)!important;
  }
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-board-entry-actions{
    position:relative;
    z-index:2;
    padding-top:5px;
    padding-bottom:max(2px,env(safe-area-inset-bottom));
    background:linear-gradient(180deg,rgba(17,20,23,0),rgba(17,20,23,.96) 28%);
  }
*/
}

@media (min-width:760px) and (max-width:1366px) and (orientation:landscape),
       (min-width:901px) and (max-width:1366px) and (max-height:820px){
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode [data-input-section="board"]{
    grid-template-rows:minmax(0,1fr) auto!important;
  }
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card .dc-board-entry-layout{
    height:auto!important;
    grid-template-rows:auto minmax(0,1fr)!important;
  }
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-board-entry-actions{
    padding-top:4px;
  }
*/
}


/* v2.2.106 Direct Local Friend Selection */
.dc-shared-player-fieldset{margin-top:18px}
.dc-check-card--shared span{border-color:rgba(61,165,255,.38);background:linear-gradient(180deg,rgba(61,165,255,.10),rgba(61,165,255,.035))}
.dc-check-card--shared input:checked + span{border-color:rgba(61,165,255,.9);box-shadow:0 0 0 2px rgba(61,165,255,.14)}
.dc-shared-player-empty{margin-top:18px}
details.dc-local-grant-box summary{cursor:pointer;font-weight:800;color:var(--text);list-style-position:inside}
details.dc-local-grant-box[open] summary{margin-bottom:12px}


/* v2.2.107 Legacy Local Grant Removal: no visual rules required. */


/* v2.2.108 Tablet Dynamic Space Allocation
   Compact landscape only: hidden exact input releases its grid row, player cards
   may use their natural content height, and the board topbar stays in one row. */
@media (min-width:760px) and (max-width:1366px) and (orientation:landscape),
       (min-width:901px) and (max-width:1366px) and (max-height:820px) {
  /* DEPRECATED v2.2.128 — incorrect wide-layout row collapse.
     Textscore and exact share grid row 3; collapsing the explicit grid to two rows
     creates an implicit third textscore row while the board spans only rows 1–2.
     Disabled for verification so input-mode changes cannot resize the board.
  body.dc-match-mode .dc-match-live-root[data-exact-visible="0"] .dc-match-board{
    grid-template-rows:auto minmax(0,1fr);
  }
  body.dc-match-mode .dc-match-live-root[data-exact-visible="0"] [data-input-section="board"]{
    grid-row:1 / span 2;
  }
  */

  /* DEPRECATED v2.2.141 — unconditional hidden score-panel scrolling and active-card max-content forcing. Overflow is now enabled only after measured active-priority cards still exceed the panel.
  body.dc-match-mode .dc-score-panel{
    overflow:auto;
    overscroll-behavior:contain;
    scrollbar-width:none;
  }
  body.dc-match-mode .dc-score-panel::-webkit-scrollbar{width:0;height:0}
  body.dc-match-mode .dc-score-panel>.dc-grid{
    height:100%;
    min-height:100%;
    overflow:visible;
    align-content:start;
  }
  body.dc-match-mode .dc-player-score-card.is-active{
    flex:1 0 auto;
    min-height:max-content;
    overflow:visible;
    grid-template-rows:auto auto auto auto auto;
  }
  body.dc-match-mode .dc-player-score-card.is-active .dc-live-stats{
    align-self:start;
  }
  */

  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-topbar{
    grid-template-columns:minmax(0,1.7fr) repeat(3,minmax(0,1fr));
    grid-auto-rows:44px;
    min-height:44px;
    gap:5px;
  }
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip{
    height:44px;
    min-height:44px;
    padding:5px 7px;
    border-radius:10px;
    gap:2px;
  }
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip span{
    font-size:8px;
  }
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip strong,
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip .dc-dartboard-live-status{
    font-size:14px;
  }
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-chip--selected strong{
    font-size:12px;
  }
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout{
    gap:4px;
  }
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard-wrap{
    max-width:100%!important;
    max-height:100%!important;
  }
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard{
    padding:2px;
  }
*/
}


/* v2.2.109 Tablet Matchspace UX Restoration
   UX only: restore the existing two checkout routes, compress the match header,
   and let the board consume the full stage between topbar and actions. */
@media (min-width:760px) and (max-width:1366px) and (orientation:landscape),
       (min-width:901px) and (max-width:1366px) and (max-height:820px) {
  body.dc-match-mode .dc-match-header{
    min-height:38px;
    margin-bottom:7px;
    align-items:center;
    gap:12px;
  }
  body.dc-match-mode .dc-match-header__summary{
    display:flex;
    align-items:baseline;
    gap:10px;
    min-width:0;
    white-space:nowrap;
  }
  body.dc-match-mode .dc-match-header h1{
    flex:0 0 auto;
    font-size:clamp(22px,2.25vw,31px);
    line-height:1;
  }
  body.dc-match-mode .dc-match-header__meta--desktop{
    display:block!important;
    margin:0;
    font-size:12px;
    line-height:1;
    white-space:nowrap;
  }
  body.dc-match-mode .dc-match-actions{
    flex:0 0 auto;
    gap:7px;
  }
  body.dc-match-mode .dc-match-actions .dc-button{
    padding:7px 10px;
    font-size:12px;
  }

  /* The routes already come from the existing checkout advisor. On compact
     landscape the generic label no longer consumes the single visible line. */
  body.dc-match-mode .dc-player-checkout-advisor.has-routes{
    max-height:none;
    min-height:34px;
    overflow:visible;
    padding:5px 7px;
  }
  body.dc-match-mode .dc-player-checkout-advisor.has-routes .dc-player-checkout-advisor__label{
    display:none;
  }
  body.dc-match-mode .dc-player-checkout-advisor.has-routes .dc-player-checkout-advisor__routes{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    width:100%;
    gap:5px;
  }
  body.dc-match-mode .dc-player-checkout-advisor.has-routes .dc-player-checkout-route{
    min-width:0;
    justify-content:flex-start;
    overflow:hidden;
  }
  body.dc-match-mode .dc-player-checkout-advisor.has-routes .dc-player-checkout-route strong{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }

  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout{
    height:100%!important;
    min-height:0;
    grid-template-rows:44px minmax(0,1fr)!important;
    gap:2px;
  }
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-stage{
    width:100%!important;
    height:100%!important;
    min-height:0;
    aspect-ratio:auto;
    margin:0;
    padding:0;
    overflow:hidden;
  }
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-stage .dc-dartboard-wrap{
    width:auto!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    aspect-ratio:1/1;
    padding:0!important;
    align-self:stretch;
    justify-self:center;
  }
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-stage .dc-dartboard{
    width:100%!important;
    height:100%!important;
    max-width:none!important;
    max-height:none!important;
    padding:0!important;
  }
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-board-entry-actions{
    padding-top:2px;
    margin-top:0;
  }
*/
}


/* v2.2.110 Header Debug Visibility Cleanup */
.dc-topbar .dc-dev-debug-badge{flex:0 0 auto}
.dc-mobile-header .dc-dev-debug-badge{margin-left:auto}
.dc-mobile-header .dc-dev-debug-badge + .dc-mobile-menu-button{margin-left:0}

/* v2.2.112 Focused Matchscreen Header Removal
   The active match keeps the existing slide-in navigation and audio widget,
   but removes the global application header and match-management actions. */
body.dc-match-mode .dc-main{position:relative}
body.dc-match-mode .dc-match-header{
  grid-template-columns:minmax(0,1fr) auto;
}
body.dc-match-mode .dc-match-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  margin:0;
  flex-wrap:nowrap;
}
body.dc-match-mode .dc-match-actions .dc-audio-widget{margin:0;flex:0 0 auto}
body.dc-match-mode .dc-match-actions .dc-dev-debug-badge{flex:0 0 auto}
body.dc-match-mode .dc-match-mobile-menu{display:none}
@media (max-width:900px){
  body.dc-match-mode .dc-match-mobile-menu{display:inline-flex}
  body.dc-match-mode .dc-match-header{grid-template-columns:minmax(0,1fr) auto}
  body.dc-match-mode .dc-match-actions{gap:5px}
  body.dc-match-mode .dc-match-actions .dc-audio-toggle,
  body.dc-match-mode .dc-match-mobile-menu{width:38px;height:38px;padding:0;display:inline-grid;place-items:center}
  body.dc-match-mode .dc-match-mobile-menu span:last-child{display:none}
}

/* v2.2.114 Match Builder Sidebar UX
 * Layout-only relocation of the existing live Match Builder summary.
 * Form fields, validation and submit behavior remain unchanged.
 */
.dc-match-builder-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,340px);
  grid-template-areas:"content sidebar";
  gap:20px;
  align-items:start;
}
.dc-match-builder-content{
  grid-area:content;
  display:grid;
  gap:18px;
  min-width:0;
}
.dc-match-builder-sidebar{
  grid-area:sidebar;
  position:sticky;
  top:18px;
  min-width:0;
}
.dc-match-builder-widget{
  margin:0;
}
.dc-match-builder-widget__toggle{
  display:none;
}
.dc-match-builder-sidebar .dc-match-builder-summary{
  display:flex;
  flex-direction:column;
  gap:14px;
  padding:18px;
  background:
    radial-gradient(circle at 12% 0%,rgba(53,224,127,.14),transparent 42%),
    linear-gradient(135deg,rgba(255,255,255,.045),rgba(255,255,255,.015));
  border-color:rgba(53,224,127,.22);
}
.dc-match-builder-sidebar .dc-match-builder-summary__main{
  display:block;
}
.dc-match-builder-sidebar .dc-match-builder-summary__main p{
  margin:0;
  font-size:13px;
  line-height:1.45;
}
.dc-match-builder-sidebar .dc-match-builder-summary__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
.dc-match-builder-sidebar .dc-match-builder-summary__grid div{
  min-height:0;
  display:grid;
  grid-template-columns:minmax(88px,.8fr) minmax(0,1.2fr);
  align-items:center;
  gap:10px;
  padding:10px 11px;
  border-radius:14px;
}
.dc-match-builder-sidebar .dc-match-builder-summary__grid span{
  font-size:11px;
}
.dc-match-builder-sidebar .dc-match-builder-summary__grid strong{
  text-align:right;
  overflow-wrap:anywhere;
}
.dc-match-builder-widget__start{
  display:grid;
  gap:10px;
  padding-top:14px;
  border-top:1px solid rgba(255,255,255,.09);
}
.dc-match-builder-widget__start h2{
  margin:0;
  font-size:18px;
}
.dc-match-builder-widget__start p{
  margin:0;
  font-size:13px;
  line-height:1.45;
}
.dc-match-builder-widget__start p.is-ready{
  color:var(--dc-primary-strong);
}
.dc-match-builder-sidebar .dc-match-start-button{
  width:100%;
  min-width:0;
}

@media(max-width:1100px){
  .dc-match-builder-layout{
    grid-template-columns:minmax(0,1fr) minmax(250px,300px);
    gap:16px;
  }
  .dc-match-builder-sidebar .dc-match-builder-summary{
    padding:15px;
  }
}

@media(max-width:860px){
  .dc-match-builder-layout{
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:
      "sidebar"
      "content";
  }
  .dc-match-builder-sidebar{
    position:sticky;
    top:8px;
    z-index:12;
  }
  .dc-match-builder-widget{
    border:1px solid rgba(53,224,127,.22);
    border-radius:18px;
    background:rgba(13,22,20,.96);
    box-shadow:0 14px 34px rgba(0,0,0,.24);
    overflow:hidden;
  }
  .dc-match-builder-widget__toggle{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    padding:12px 14px;
    cursor:pointer;
    list-style:none;
  }
  .dc-match-builder-widget__toggle::-webkit-details-marker{
    display:none;
  }
  .dc-match-builder-widget__toggle > span:first-child{
    display:grid;
    gap:2px;
    min-width:0;
  }
  .dc-match-builder-widget__toggle strong{
    display:block;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:15px;
  }
  .dc-match-builder-widget__toggle-label{
    flex:0 0 auto;
    color:var(--dc-primary-strong);
    font-size:12px;
    font-weight:900;
  }
  .dc-match-builder-widget__toggle-label::after{
    content:" ▾";
  }
  .dc-match-builder-widget:not([open]) .dc-match-builder-widget__toggle-label::after{
    content:" ▸";
  }
  .dc-match-builder-sidebar .dc-match-builder-summary{
    border:0;
    border-top:1px solid rgba(255,255,255,.08);
    border-radius:0;
    box-shadow:none;
  }
}

@media(max-width:560px){
  .dc-match-builder-layout,
  .dc-match-builder-content{
    gap:12px;
  }
  .dc-match-builder-sidebar .dc-match-builder-summary__grid{
    grid-template-columns:1fr 1fr;
  }
  .dc-match-builder-sidebar .dc-match-builder-summary__grid div{
    display:flex;
    min-height:62px;
    align-items:flex-start;
  }
  .dc-match-builder-sidebar .dc-match-builder-summary__grid strong{
    text-align:left;
  }
  .dc-match-builder-widget__start h2{
    display:none;
  }
}

/* v2.2.114 desktop title visibility for the relocated builder widget */
.dc-match-builder-widget__toggle{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:0 0 12px;
  cursor:default;
  list-style:none;
}
.dc-match-builder-widget__toggle::-webkit-details-marker{display:none}
.dc-match-builder-widget__toggle > span:first-child{
  display:grid;
  gap:3px;
  min-width:0;
}
.dc-match-builder-widget__toggle strong{
  display:block;
  font-size:20px;
  line-height:1.2;
  overflow-wrap:anywhere;
}
.dc-match-builder-widget__toggle-label{display:none}
@media(max-width:860px){
  .dc-match-builder-widget__toggle{
    padding:12px 14px;
    cursor:pointer;
  }
  .dc-match-builder-widget__toggle strong{
    font-size:15px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  .dc-match-builder-widget__toggle-label{display:block}
}


/* v2.2.118 Match Builder Floating Widget
 * The existing builder summary is detached from the setup grid and behaves as an overlay widget.
 * It mirrors the same form state and keeps the original submit button inside the same form.
 */
.dc-match-builder-layout{
  display:block;
  min-width:0;
}
.dc-match-builder-content{
  display:grid;
  gap:18px;
  min-width:0;
  width:100%;
}
.dc-match-builder-sidebar{
  position:fixed;
  right:18px;
  bottom:18px;
  top:auto;
  width:min(360px,calc(100vw - 36px));
  min-width:0;
  z-index:184;
  pointer-events:none;
}
.dc-match-builder-widget{
  position:relative;
  margin:0;
  border:1px solid rgba(53,224,127,.28);
  border-radius:18px;
  background:rgba(13,22,20,.97);
  box-shadow:0 20px 60px rgba(0,0,0,.48);
  overflow:hidden;
  pointer-events:auto;
}
.dc-match-builder-widget__toggle{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:58px;
  padding:11px 14px;
  cursor:pointer;
  list-style:none;
  background:
    radial-gradient(circle at 8% 0%,rgba(53,224,127,.16),transparent 48%),
    linear-gradient(135deg,rgba(255,255,255,.04),rgba(255,255,255,.015));
}
.dc-match-builder-widget__toggle::-webkit-details-marker{display:none}
.dc-match-builder-widget__toggle > span:first-child{
  display:grid;
  gap:2px;
  min-width:0;
}
.dc-match-builder-widget__toggle strong{
  display:block;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:15px;
  line-height:1.25;
}
.dc-match-builder-widget__toggle-label{
  display:block;
  flex:0 0 auto;
  color:var(--dc-primary-strong);
  font-size:12px;
  font-weight:900;
}
.dc-match-builder-widget__toggle-label::after{content:" ▸"}
.dc-match-builder-widget[open] .dc-match-builder-widget__toggle-label::after{content:" ▾"}
.dc-match-builder-sidebar .dc-match-builder-summary{
  display:flex;
  flex-direction:column;
  gap:14px;
  max-height:min(72vh,680px);
  overflow:auto;
  padding:15px;
  border:0;
  border-top:1px solid rgba(255,255,255,.08);
  border-radius:0;
  box-shadow:none;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.01));
}
.dc-match-builder-sidebar .dc-match-builder-summary__main{display:block}
.dc-match-builder-sidebar .dc-match-builder-summary__main p{
  margin:0;
  font-size:13px;
  line-height:1.45;
}
.dc-match-builder-sidebar .dc-match-builder-summary__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
}
.dc-match-builder-sidebar .dc-match-builder-summary__grid div{
  min-height:0;
  display:grid;
  grid-template-columns:minmax(88px,.8fr) minmax(0,1.2fr);
  align-items:center;
  gap:10px;
  padding:10px 11px;
  border-radius:14px;
}
.dc-match-builder-sidebar .dc-match-builder-summary__grid strong{
  text-align:right;
  overflow-wrap:anywhere;
}
.dc-match-builder-sidebar .dc-match-start-button{width:100%;min-width:0}

@media(max-width:900px){
  .dc-match-builder-sidebar{
    right:12px;
    bottom:12px;
    width:min(340px,calc(100vw - 24px));
  }
  .dc-match-builder-content{gap:16px}
}

@media(max-width:560px){
  .dc-match-builder-sidebar{
    left:12px;
    right:12px;
    bottom:12px;
    width:auto;
  }
  .dc-match-builder-content{gap:12px}
  .dc-match-builder-sidebar .dc-match-builder-summary{
    max-height:68vh;
  }
  .dc-match-builder-sidebar .dc-match-builder-summary__grid{
    grid-template-columns:1fr 1fr;
  }
  .dc-match-builder-sidebar .dc-match-builder-summary__grid div{
    display:flex;
    min-height:62px;
    align-items:flex-start;
  }
  .dc-match-builder-sidebar .dc-match-builder-summary__grid strong{text-align:left}
  .dc-match-builder-widget__start h2{display:none}
}


/* v2.2.119 Focused Matchscreen Viewport Height Correction
   The focused desktop/tablet matchscreen no longer reserves the removed global
   topbar height. Board sizing continues to follow the real flex/grid stage. */


/* v2.2.120 Optional Matchscreen Fullscreen UX
   The control is exposed only when the browser provides a fullscreen API. */
body.dc-match-mode .dc-match-fullscreen-toggle{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
}
body.dc-match-mode .dc-match-fullscreen-toggle[hidden]{display:none!important}
body.dc-match-mode .dc-match-fullscreen-icon{width:17px;height:17px;display:block}
body.dc-match-mode .dc-match-fullscreen-icon--exit{display:none}
body.dc-match-mode .dc-match-fullscreen-toggle.is-active .dc-match-fullscreen-icon--enter{display:none}
body.dc-match-mode .dc-match-fullscreen-toggle.is-active .dc-match-fullscreen-icon--exit{display:block}
body.dc-match-fullscreen-active{overscroll-behavior:none}
@media (max-width:900px){
  body.dc-match-mode .dc-match-fullscreen-toggle{width:38px;height:38px;padding:0;display:inline-grid;place-items:center}
  body.dc-match-mode .dc-match-fullscreen-toggle span{display:none}
}

/* v2.2.122 Mobile Matchscreen Height and Board Visibility Regression Fix
   Phone/portrait-tablet only. The fixed bottom tabs reserve their space once in
   the main viewport; active input panels use the remaining height without a
   second tab-bar offset. Board layout keeps a complete 100% height chain. */
@media (max-width:759px), (max-width:900px) and (orientation:portrait){
  body.dc-match-mode,
  body.dc-match-mode .dc-shell,
  body.dc-match-mode .dc-main{
    height:100vh;
    height:100dvh;
    min-height:0;
  }
  body.dc-match-mode .dc-shell{overflow:hidden}
  body.dc-match-mode .dc-main{
    box-sizing:border-box;
    overflow:hidden;
    padding-bottom:var(--dc-mobile-match-safe-bottom);
  }
  body.dc-match-mode [data-page-content],
  body.dc-match-mode .dc-match-live-root{
    height:100%;
    min-height:0;
    overflow:hidden;
  }

  /* The tab bar is already reserved by .dc-main. Do not reserve it a second
     time inside every scrollable panel. */
  body.dc-match-mode .dc-match-live-root [data-input-section],
  body.dc-match-mode .dc-mobile-match-panel{
    box-sizing:border-box;
    padding-bottom:12px!important;
    scroll-padding-bottom:16px;
  }

  /* Actions remain part of the exact-input document flow and no longer cover
     number rows while the panel scrolls. */
  body.dc-match-mode .dc-exact-card .dc-exact-actions{
    position:static!important;
    bottom:auto!important;
    z-index:auto;
    margin:4px 0 0;
    padding:0;
    background:transparent;
    backdrop-filter:none;
  }

  /* Keep the complete board form/layout/stage chain measurable after the
     mobile tab changes from exact input to board input. */
  body.dc-match-mode .dc-match-live-root[data-mobile-active-tab="board"] .dc-match-input-zone,
  body.dc-match-mode .dc-match-live-root[data-mobile-active-tab="board"] .dc-match-input-grid,
  body.dc-match-mode .dc-match-live-root[data-mobile-active-tab="board"] [data-input-section="board"]{
    height:100%;
    min-height:0;
  }
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode [data-input-section="board"]{
    overflow:hidden!important;
    grid-template-rows:minmax(0,1fr) auto!important;
  }
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card .dc-board-entry-layout,
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout{
    width:100%;
    height:100%!important;
    min-height:0;
    overflow:hidden;
    grid-template-rows:auto minmax(0,1fr)!important;
  }
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card .dc-dartboard-stage,
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-stage{
    width:100%!important;
    height:100%!important;
    min-height:0;
    overflow:hidden;
    display:grid;
    place-items:center;
  }
*/
  /* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card .dc-dartboard-wrap,
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-wrap{
    width:auto!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    min-height:0;
    aspect-ratio:1/1;
    display:grid;
    place-items:center;
    overflow:visible;
  }
*/
  body.dc-match-mode .dc-dartboard-card .dc-dartboard,
  body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard{
    width:100%!important;
    height:100%!important;
    max-width:100%!important;
    max-height:100%!important;
    object-fit:contain;
  }
}


/* v2.2.123 Container-Based Dartboard Square Scaling
   One authoritative sizing model for human and AI match boards on all devices.
   JavaScript measures the real board-stage content box and supplies the largest
   square that fits via --dc-board-square-size. Historical vh/vw wrapper formulas
   are thereby neutralized without changing board geometry or hit areas. */
/* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-board-entry-layout */
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card .dc-board-entry-layout,
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout{
  height:100%!important;
  min-height:0!important;
}
*/
/* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-dartboard-stage */
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-match-live-root .dc-dartboard-stage,
body.dc-match-mode .dc-dartboard-card .dc-dartboard-stage,
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-stage{
  box-sizing:border-box;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  display:grid!important;
  place-items:center!important;
  overflow:hidden!important;
}
*/
/* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-match-live-root .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-board-entry-layout .dc-dartboard-stage > .dc-dartboard-wrap */
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-match-live-root .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard-stage > .dc-dartboard-wrap,
body.dc-match-mode .dc-match-live-root .dc-dartboard-card .dc-board-entry-layout .dc-dartboard-stage > .dc-dartboard-wrap{
  box-sizing:border-box;
  width:var(--dc-board-square-size,100%)!important;
  height:var(--dc-board-square-size,100%)!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:100%!important;
  aspect-ratio:1 / 1!important;
  align-self:center!important;
  justify-self:center!important;
  margin:auto!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
}
*/
/* DEPRECATED v2.2.127 — selector no longer emitted by consolidated matchscreen: body.dc-match-mode .dc-match-live-root .dc-dartboard-card.dc-dartboard-card--stable--ai .dc-board-entry-layout .dc-dartboard-stage > .dc-dartboard-wrap > .dc-dartboard */
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-match-live-root .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard-stage > .dc-dartboard-wrap > .dc-dartboard,
body.dc-match-mode .dc-match-live-root .dc-dartboard-card .dc-board-entry-layout .dc-dartboard-stage > .dc-dartboard-wrap > .dc-dartboard{
  box-sizing:border-box;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  aspect-ratio:1 / 1!important;
  object-fit:contain!important;
}
*/

/* v2.2.130 Board Action Row Integration
   Canonical board-card structure: topbar, largest possible board stage, compact action row.
   The outer form contributes no vertical form gap and no separate action grid row. */
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode [data-input-section="board"]{
  display:grid!important;
  grid-template-rows:minmax(0,1fr)!important;
  align-items:stretch!important;
  gap:0!important;
  overflow:hidden!important;
}
*/
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card .dc-board-entry-layout,
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout{
  width:100%;
  height:100%!important;
  min-height:0!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  gap:6px!important;
  overflow:hidden!important;
}
*/
/* DEPRECATED v2.2.140 — legacy device-specific matchscreen board interior rule; superseded by the single v2.2.140 canonical board contract.
body.dc-match-mode .dc-dartboard-card .dc-board-entry-actions,
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-actions{
  align-self:end;
  justify-self:stretch;
  justify-content:center;
  flex:0 0 auto;
  min-height:0;
  margin:0!important;
  padding:0!important;
  gap:8px;
  background:transparent!important;
  overflow:visible;
}
*/

/* v2.2.140 Unified Matchscreen Board Interior Contract
   One board interior architecture is now authoritative on desktop, laptops,
   landscape tablets, portrait tablets and phones. Breakpoints may position the
   outer board card, but they must not redefine layout rows, stage geometry,
   square sizing or the action-row flow inside the card. */
body.dc-match-mode [data-input-section="board"]{
  box-sizing:border-box!important;
  display:grid!important;
  grid-template-rows:minmax(0,1fr)!important;
  align-items:stretch!important;
  justify-items:stretch!important;
  min-width:0!important;
  min-height:0!important;
  gap:0!important;
  overflow:hidden!important;
}
body.dc-match-mode .dc-dartboard-card,
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable{
  min-width:0!important;
  min-height:0!important;
}
body.dc-match-mode .dc-dartboard-card .dc-board-entry-layout,
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout{
  box-sizing:border-box!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  align-items:stretch!important;
  justify-items:stretch!important;
  align-self:stretch!important;
  justify-self:stretch!important;
  gap:6px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}
body.dc-match-mode .dc-match-live-root .dc-dartboard-stage,
body.dc-match-mode .dc-dartboard-card .dc-dartboard-stage,
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-dartboard-stage{
  box-sizing:border-box!important;
  position:relative!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  align-self:stretch!important;
  justify-self:stretch!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  contain:none!important;
  overflow:hidden!important;
}
body.dc-match-mode .dc-match-live-root .dc-dartboard-card .dc-board-entry-layout .dc-dartboard-stage > .dc-dartboard-wrap,
body.dc-match-mode .dc-match-live-root .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard-stage > .dc-dartboard-wrap{
  box-sizing:border-box!important;
  position:relative!important;
  width:var(--dc-board-square-size,100%)!important;
  height:var(--dc-board-square-size,100%)!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  max-height:100%!important;
  aspect-ratio:1 / 1!important;
  align-self:center!important;
  justify-self:center!important;
  flex:none!important;
  margin:auto!important;
  padding:0!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
}
body.dc-match-mode .dc-match-live-root .dc-dartboard-card .dc-board-entry-layout .dc-dartboard-stage > .dc-dartboard-wrap > .dc-dartboard,
body.dc-match-mode .dc-match-live-root .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-layout .dc-dartboard-stage > .dc-dartboard-wrap > .dc-dartboard{
  box-sizing:border-box!important;
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  aspect-ratio:1 / 1!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  overflow:visible!important;
}
body.dc-match-mode .dc-dartboard-card .dc-board-entry-actions,
body.dc-match-mode .dc-dartboard-card.dc-dartboard-card--stable .dc-board-entry-actions{
  box-sizing:border-box!important;
  position:static!important;
  z-index:auto!important;
  display:flex!important;
  flex:0 0 auto!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  align-self:end!important;
  justify-self:stretch!important;
  justify-content:center!important;
  width:100%!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  gap:8px!important;
  background:transparent!important;
  backdrop-filter:none!important;
  overflow:visible!important;
}

/* v2.2.124 Last Turn Undo UX
   The existing one-step turn correction is exposed in the compact match header
   without adding a layout row. Very narrow screens keep the same action inside
   a small overflow menu. The confirmation dialog is a fixed overlay. */
body.dc-match-mode .dc-match-undo-toggle{flex:0 0 auto}
body.dc-match-mode .dc-match-undo-toggle svg{width:18px;height:18px;display:block}
body.dc-match-mode .dc-match-header-overflow{position:relative;display:none;flex:0 0 auto;margin:0}
body.dc-match-mode .dc-match-header-overflow > summary{
  list-style:none;
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border:1px solid var(--dc-border-strong);
  border-radius:12px;
  background:transparent;
  color:var(--dc-muted);
  cursor:pointer;
  font-size:24px;
  font-weight:900;
  line-height:1;
}
body.dc-match-mode .dc-match-header-overflow > summary::-webkit-details-marker{display:none}
body.dc-match-mode .dc-match-header-overflow[open] > summary,
body.dc-match-mode .dc-match-header-overflow > summary:hover{background:var(--dc-surface-3);color:var(--dc-text)}
body.dc-match-mode .dc-match-header-overflow__menu{
  position:absolute;
  top:calc(100% + 8px);
  right:0;
  width:240px;
  padding:8px;
  border:1px solid var(--dc-border-strong);
  border-radius:14px;
  background:linear-gradient(180deg,var(--dc-surface),#0b0d10);
  box-shadow:0 20px 60px rgba(0,0,0,.55);
  z-index:210;
}
body.dc-match-mode .dc-match-header-overflow__menu .dc-button{width:100%;justify-content:flex-start;text-align:left}
.dc-match-undo-modal{z-index:240}
.dc-match-undo-dialog{max-width:500px}
.dc-match-undo-preview{
  display:grid;
  gap:4px;
  padding:16px;
  margin:4px 0 14px;
  border:1px solid rgba(255,77,94,.28);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(255,77,94,.09),rgba(255,255,255,.025));
}
.dc-match-undo-preview span{color:var(--dc-text-soft);font-size:14px;font-weight:800}
.dc-match-undo-preview strong{font-size:clamp(28px,5vw,42px);line-height:1;color:var(--dc-text)}
.dc-match-undo-preview em{font-style:normal;color:var(--dc-muted);font-size:13px}
.dc-match-undo-dialog__actions{justify-content:flex-end;margin-top:18px}
.dc-match-undo-confirm-form.is-submitting{opacity:.72;pointer-events:none}
@media (max-width:900px){
  body.dc-match-mode .dc-match-undo-toggle--direct{width:38px;height:38px;padding:0;display:inline-grid;place-items:center}
  body.dc-match-mode .dc-match-undo-toggle--direct span{display:none}
}
@media (max-width:560px){
  body.dc-match-mode .dc-match-undo-toggle--direct{display:none!important}
  body.dc-match-mode .dc-match-header-overflow{display:block}
  .dc-match-undo-modal{padding:12px;align-items:flex-end}
  .dc-match-undo-dialog{border-radius:22px 22px 14px 14px;padding:18px}
  .dc-match-undo-dialog__actions{display:grid;grid-template-columns:1fr 1fr;width:100%}
  .dc-match-undo-dialog__actions .dc-button{width:100%}
}


/* v2.2.125 Player-bound turn correction
   Correction state is an overlay hint only and never consumes match layout space. */
body.dc-match-mode .dc-match-correction-banner{
  position:fixed;
  top:68px;
  left:50%;
  transform:translateX(-50%);
  z-index:185;
  width:min(720px,calc(100vw - 32px));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:12px 14px;
  border:1px solid rgba(255,184,77,.42);
  border-radius:16px;
  background:rgba(24,20,14,.96);
  box-shadow:0 18px 50px rgba(0,0,0,.42);
  backdrop-filter:blur(16px);
}
body.dc-match-mode .dc-match-correction-banner>div{display:grid;gap:3px;min-width:0}
body.dc-match-mode .dc-match-correction-banner strong{font-size:15px;line-height:1.25}
body.dc-match-mode .dc-match-correction-banner p{margin:0;color:var(--dc-muted);font-size:12px;line-height:1.35}
body.dc-match-mode .dc-match-correction-banner .dc-button{flex:0 0 auto}
body.dc-match-mode .dc-match-input-zone.is-correction-mode [data-smart-checkout-panel]{display:none!important}

@media (max-width:700px){
  body.dc-match-mode .dc-match-correction-banner{
    top:56px;
    width:calc(100vw - 20px);
    padding:10px 11px;
    gap:10px;
    align-items:flex-start;
  }
  body.dc-match-mode .dc-match-correction-banner strong{font-size:13px}
  body.dc-match-mode .dc-match-correction-banner p{font-size:10px}
  body.dc-match-mode .dc-match-correction-banner .dc-button{padding:7px 9px;font-size:11px}
}
/* v2.2.132 Notification AJAX Error Recovery */
.dc-notification-status{margin:0 4px 10px;padding:8px 10px;border-radius:10px;border:1px solid rgba(53,224,127,.24);background:rgba(53,224,127,.08);color:var(--dc-text-soft);font-size:12px;line-height:1.4}.dc-notification-status.is-error{border-color:rgba(255,99,99,.34);background:rgba(255,99,99,.1);color:#ffd0d0}.dc-notification-status[hidden]{display:none!important}


/* v2.2.134 Sidebar Navigation Overflow Stability
   Keep the normal desktop/tablet sidebar, but let only its navigation list scroll
   when the available viewport height is too small. */
@media (min-width:901px){
  .dc-sidebar{
    display:flex;
    flex-direction:column;
    min-height:0;
    overflow:hidden;
  }
  .dc-sidebar>.dc-brand{
    flex:0 0 auto;
  }
  .dc-sidebar>.dc-nav{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    overscroll-behavior:contain;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
    scrollbar-color:rgba(255,255,255,.18) transparent;
    padding-right:4px;
  }
  .dc-sidebar>.dc-nav::-webkit-scrollbar{
    width:6px;
  }
  .dc-sidebar>.dc-nav::-webkit-scrollbar-track{
    background:transparent;
  }
  .dc-sidebar>.dc-nav::-webkit-scrollbar-thumb{
    background:rgba(255,255,255,.16);
    border-radius:999px;
  }
  .dc-sidebar>.dc-nav::-webkit-scrollbar-thumb:hover{
    background:rgba(255,255,255,.28);
  }
  .dc-sidebar>.dc-sidebar__note{
    flex:0 0 auto;
    margin-top:16px;
  }
}


/* v2.2.142 Player Card Role / Density Separation Contract
   Active and inactive are visual roles only. Card geometry is identical in full
   density and becomes compact only through the measured active-priority state.
   A disabled left input continues to release its unused row to the score panel. */
@media (min-width:901px),
       (min-width:760px) and (max-width:900px) and (orientation:landscape) {
  body.dc-match-mode .dc-match-live-root[data-left-input-visible="0"] .dc-score-panel{
    grid-row:2 / 4!important;
  }

  body.dc-match-mode .dc-score-panel[data-player-density-panel]{
    min-height:0!important;
    overflow:hidden!important;
    overscroll-behavior:contain;
    scrollbar-gutter:auto;
  }
  body.dc-match-mode .dc-score-panel[data-player-density-panel]>.dc-grid{
    display:flex!important;
    flex-direction:column!important;
    gap:6px!important;
    width:100%!important;
    height:auto!important;
    min-height:100%!important;
    overflow:visible!important;
    align-content:start!important;
  }
  body.dc-match-mode .dc-score-panel[data-player-density-panel] .dc-player-score-card{
    margin:0!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-player-score-card,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-active,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-score-flashing{
    order:1;
    flex:0 0 auto!important;
    min-height:max-content!important;
    height:auto!important;
    overflow:visible!important;
    padding:7px 8px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:auto auto auto minmax(38px,auto) auto auto!important;
    column-gap:8px!important;
    align-content:start!important;
    opacity:1;
  }
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-player-score-card.is-active{order:1}
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-player-score-card.is-inactive{
    order:2;
    border-color:rgba(255,255,255,.12);
    box-shadow:0 10px 28px rgba(0,0,0,.22);
  }
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-player-score-card__badges,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-active .dc-player-score-card__badges,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-score-flashing .dc-player-score-card__badges{
    display:flex!important;
    grid-column:1/-1!important;
    margin:0 0 3px!important;
    gap:4px!important;
  }
  body.dc-match-mode .dc-score-panel[data-player-density-panel] .dc-player-score-card__badges .dc-badge{padding:3px 6px;font-size:9px}
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-player-score-card__badges,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-active .dc-player-score-card__badges,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-score-flashing .dc-player-score-card__badges{grid-row:1!important}
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-player-score-card__identity,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-active .dc-player-score-card__identity,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-score-flashing .dc-player-score-card__identity{min-width:0;gap:7px}
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-player-score-card__identity,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-active .dc-player-score-card__identity,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-score-flashing .dc-player-score-card__identity{grid-column:1!important;grid-row:2!important}
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-player-score-card__identity h2,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-active .dc-player-score-card__identity h2,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-score-flashing .dc-player-score-card__identity h2{
    font-size:clamp(13px,1.35vw,18px);line-height:1.05;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
  }
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-player-score-card .dc-player-avatar,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-active .dc-player-avatar,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-score-flashing .dc-player-avatar{
    width:28px!important;height:28px!important;border-radius:8px!important;
  }
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-score-display,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-active .dc-score-display,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-score-flashing .dc-score-display{
    grid-column:2!important;grid-row:2 / span 2!important;margin:0!important;min-width:76px!important;align-self:start!important;
    text-align:right!important;font-size:clamp(38px,4vw,58px)!important;line-height:.9!important;
  }
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-last-score,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-active .dc-last-score,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-score-flashing .dc-last-score{
    grid-column:1!important;grid-row:3!important;width:max-content!important;max-width:100%!important;
    margin:3px 0 4px!important;padding:4px 7px!important;gap:6px!important;border-radius:10px!important;
  }
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-player-score-card .dc-player-checkout-advisor,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-active .dc-player-checkout-advisor,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-score-flashing .dc-player-checkout-advisor{
    grid-column:1/-1!important;grid-row:4!important;min-height:38px!important;margin:0 0 3px!important;
  }
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-player-score-card>p,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-active>p,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-score-flashing>p{
    display:block!important;grid-column:1/-1!important;grid-row:5!important;margin:1px 0 4px!important;font-size:11px!important;font-weight:800!important;
  }
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-live-stats,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-active .dc-live-stats,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-score-flashing .dc-live-stats{
    display:grid!important;grid-column:1/-1!important;grid-row:6!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:4px!important;margin-top:2px!important;align-self:start!important;
  }
  body.dc-match-mode .dc-score-panel[data-player-card-density="full"] .dc-live-stat,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-active .dc-live-stat,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-score-flashing .dc-live-stat{
    padding:4px 5px!important;border-radius:8px!important;min-height:0!important;
  }
  body.dc-match-mode .dc-score-panel[data-player-density-panel] .dc-live-stat__label{font-size:8px;line-height:1.08;letter-spacing:.025em}
  body.dc-match-mode .dc-score-panel[data-player-density-panel] .dc-live-stat__value{font-size:13px;line-height:1.05;margin-top:2px}
  body.dc-match-mode .dc-score-panel[data-player-density-panel] .dc-live-stat__empty{font-size:8px;line-height:1.05}

  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing){
    order:2;flex:0 0 auto!important;min-height:0!important;height:auto!important;overflow:hidden!important;padding:6px 8px!important;
    display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;
    column-gap:8px!important;align-items:center!important;opacity:.92;
  }
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing) .dc-player-score-card__badges,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing) .dc-live-stats,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing) .dc-player-checkout-advisor,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing)>p{display:none!important}
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing) .dc-score-display{
    grid-column:2!important;grid-row:1 / span 2!important;font-size:32px!important;min-width:70px!important;align-self:center!important;margin:0!important;
  }
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing) .dc-last-score{
    grid-column:1!important;grid-row:2!important;margin:2px 0 0!important;padding:4px 7px!important;
  }

  body.dc-match-mode .dc-score-panel[data-player-density-panel][data-player-card-overflow="scroll"]{
    overflow-y:auto!important;overflow-x:hidden!important;scrollbar-width:thin;
    scrollbar-color:rgba(255,255,255,.24) transparent;scrollbar-gutter:stable;
  }
  body.dc-match-mode .dc-score-panel[data-player-density-panel][data-player-card-overflow="scroll"]::-webkit-scrollbar{width:5px}
  body.dc-match-mode .dc-score-panel[data-player-density-panel][data-player-card-overflow="scroll"]::-webkit-scrollbar-track{background:transparent}
  body.dc-match-mode .dc-score-panel[data-player-density-panel][data-player-card-overflow="scroll"]::-webkit-scrollbar-thumb{background:rgba(255,255,255,.24);border-radius:999px}
}


/* v2.2.142 Compact player cards on the mobile/portrait layout are also density-driven. */
@media (max-width:759px),
       (max-width:900px) and (orientation:portrait) {
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing){
    overflow:hidden!important;padding:7px 9px!important;display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;column-gap:8px!important;align-items:center!important;opacity:.92;
  }
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing) .dc-player-score-card__badges,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing) .dc-live-stats,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing) .dc-player-checkout-advisor,
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing)>p{display:none!important}
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing) .dc-score-display{
    grid-column:2!important;grid-row:1 / span 2!important;font-size:32px!important;min-width:70px!important;align-self:center!important;margin:0!important;
  }
  body.dc-match-mode .dc-score-panel[data-player-card-density="active-priority"] .dc-player-score-card.is-inactive:not(.is-score-flashing) .dc-last-score{
    grid-column:1!important;grid-row:2!important;margin:2px 0 0!important;padding:4px 7px!important;
  }
}

/* v2.2.145 Overall Match + Leg Winrate Parity */
.dc-overall-winrate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;align-items:stretch;margin-bottom:18px}
.dc-overall-winrate-grid>.dc-winrate-hero{min-width:0;margin:0;display:flex;flex-direction:column}
.dc-overall-winrate-grid .dc-winrate-hero__body{grid-template-columns:1fr;align-content:start;flex:1}
.dc-overall-winrate-grid .dc-winrate-donut{width:100%;max-width:320px;justify-self:center}
.dc-overall-winrate-grid .dc-winrate-hero__meta{align-content:start}
@media (max-width:1180px){.dc-overall-winrate-grid{grid-template-columns:1fr}.dc-overall-winrate-grid .dc-winrate-hero__body{grid-template-columns:minmax(240px,280px) minmax(0,1fr)}.dc-overall-winrate-grid .dc-winrate-donut{max-width:none}}
@media (max-width:1000px){.dc-overall-winrate-grid .dc-winrate-hero__body{grid-template-columns:1fr}.dc-overall-winrate-grid .dc-winrate-donut{max-width:360px}}

