:root {
  color-scheme: dark;
  --cd-ink-0: #05080f;
  --cd-ink-1: #080d17;
  --cd-ink-2: #0d1421;
  --cd-ink-3: #121d2d;
  --cd-ink-4: #19263a;
  --cd-line: rgba(157, 185, 220, .16);
  --cd-line-strong: rgba(157, 185, 220, .28);
  --cd-text: #eef5ff;
  --cd-text-2: #b7c6d9;
  --cd-text-3: #8294ac;
  --cd-text-4: #596a80;
  --cd-blue: #42aaf5;
  --cd-blue-2: #9bd7ff;
  --cd-gold: #f3c64d;
  --cd-green: #45d18b;
  --cd-red: #ff6b6b;
  --cd-purple: #b98cff;
  --cd-orange: #f5a33c;
  --cd-radius-sm: 6px;
  --cd-radius-md: 10px;
  --cd-radius-lg: 14px;
  --cd-radius-xl: 20px;
  --cd-shadow-sm: 0 2px 8px rgba(0,0,0,.28);
  --cd-shadow-card: 0 14px 40px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.025);
  --cd-shadow-float: 0 24px 72px rgba(0,0,0,.5), inset 0 1px 0 rgba(255,255,255,.04);
  --cd-ease: cubic-bezier(.2,.8,.2,1);
  --cd-font: 'Barlow','Segoe UI',system-ui,sans-serif;
  --cd-display: 'Oswald','Barlow Condensed',sans-serif;
}

* { box-sizing: border-box; }
button, input, select, textarea { font: inherit; }
button { -webkit-tap-highlight-color: transparent; }
button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, [tabindex]:focus-visible {
  outline: 2px solid var(--cd-blue-2);
  outline-offset: 3px;
}
::selection { background: rgba(66,170,245,.32); color: white; }

.cd-screen {
  --screen-accent: var(--cd-blue);
  min-height: 100dvh;
  height: 100%;
  overflow: auto;
  color: var(--cd-text);
  background:
    radial-gradient(1000px 480px at 50% -80px, color-mix(in srgb, var(--screen-accent) 17%, transparent), transparent 68%),
    linear-gradient(180deg, var(--cd-ink-1), var(--cd-ink-0));
  position: relative;
  isolation: isolate;
  font-family: var(--cd-font);
  scrollbar-gutter: stable;
}
.cd-screen__ambient { position: fixed; inset: 0; pointer-events: none; z-index: -1; opacity: .55; background-image: linear-gradient(rgba(255,255,255,.012) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.012) 1px, transparent 1px); background-size: 42px 42px; mask-image: linear-gradient(to bottom, black, transparent 72%); }
.cd-topbar { position: sticky; top: 0; z-index: 100; background: rgba(5,8,15,.78); backdrop-filter: blur(20px) saturate(130%); border-bottom: 1px solid var(--cd-line); }
.cd-topbar::after { content:""; position:absolute; left:0; right:0; bottom:-1px; height:1px; background: linear-gradient(90deg, transparent, color-mix(in srgb, var(--screen-accent) 72%, transparent), transparent); opacity:.65; }
.cd-topbar__inner { max-width: 1440px; margin: 0 auto; height: 64px; padding: 0 clamp(14px, 3vw, 32px); display:grid; grid-template-columns: minmax(110px,1fr) auto minmax(110px,1fr); align-items:center; gap:16px; }
.cd-topbar__brand { display:flex; align-items:baseline; justify-content:center; gap:8px; font-family:var(--cd-display); letter-spacing:.12em; }
.cd-topbar__brand span { color:var(--cd-blue); font-size:10px; font-weight:600; }
.cd-topbar__brand strong { color:var(--cd-text); font-size:16px; font-weight:800; letter-spacing:.08em; }
.cd-topbar__actions { display:flex; justify-content:flex-end; gap:8px; }
.cd-topbar__spacer { min-width:1px; }
.cd-page { width:min(100% - 32px, 980px); margin:0 auto; padding:42px 0 110px; }
.cd-page--wide { width:min(100% - 32px, 1320px); }
.cd-page--dense { padding-top:24px; }
.cd-pagehero { display:flex; align-items:flex-start; gap:18px; padding: 0 2px 28px; animation:cd-enter .55s var(--cd-ease) both; }
.cd-pagehero__icon { width:52px; height:52px; border-radius:15px; display:grid; place-items:center; color:var(--screen-accent); background:linear-gradient(145deg, color-mix(in srgb, var(--screen-accent) 19%, var(--cd-ink-3)), var(--cd-ink-2)); border:1px solid color-mix(in srgb, var(--screen-accent) 38%, var(--cd-line)); box-shadow:0 12px 32px color-mix(in srgb, var(--screen-accent) 10%, transparent); flex:0 0 auto; }
.cd-pagehero__copy h1 { font-family:var(--cd-display); font-size:clamp(32px,5vw,52px); line-height:.98; letter-spacing:-.025em; margin:5px 0 8px; text-transform:uppercase; font-weight:800; }
.cd-pagehero__copy p { color:var(--cd-text-2); font-size:15px; line-height:1.55; max-width:720px; margin:0; }
.cd-eyebrow { color:var(--screen-accent); font-family:var(--cd-display); font-size:10px; line-height:1; letter-spacing:.22em; font-weight:700; text-transform:uppercase; }

.cd-panel { appearance:none; width:100%; text-align:left; color:inherit; border:1px solid var(--cd-line); background:linear-gradient(145deg, rgba(20,31,48,.94), rgba(10,17,29,.94)); border-radius:var(--cd-radius-lg); padding:18px; box-shadow:var(--cd-shadow-card); position:relative; overflow:hidden; }
.cd-panel::before { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(120deg, color-mix(in srgb, var(--panel-accent, var(--screen-accent)) 6%, transparent), transparent 42%); }
.cd-panel--interactive { cursor:pointer; transition:transform .2s var(--cd-ease), border-color .2s, background .2s, box-shadow .2s; }
.cd-panel--interactive:hover { transform:translateY(-2px); border-color:color-mix(in srgb, var(--panel-accent, var(--screen-accent)) 48%, var(--cd-line)); box-shadow:0 18px 52px rgba(0,0,0,.38); }
.cd-panel--interactive:active { transform:translateY(0) scale(.995); }
.cd-panel.is-selected { border-color:color-mix(in srgb, var(--panel-accent, var(--screen-accent)) 78%, white 8%); box-shadow:0 0 0 1px color-mix(in srgb, var(--panel-accent, var(--screen-accent)) 32%, transparent), 0 20px 54px rgba(0,0,0,.38); }

.cd-button { min-height:42px; border:0; border-radius:var(--cd-radius-md); padding:0 17px; display:inline-flex; align-items:center; justify-content:center; gap:9px; color:white; font-weight:750; letter-spacing:.015em; cursor:pointer; transition:transform .16s var(--cd-ease), filter .16s, box-shadow .16s, border-color .16s; position:relative; overflow:hidden; }
.cd-button::after { content:""; position:absolute; inset:-1px; background:linear-gradient(105deg, transparent 25%, rgba(255,255,255,.12) 48%, transparent 70%); transform:translateX(-130%); transition:transform .5s var(--cd-ease); }
.cd-button:hover:not(:disabled) { transform:translateY(-1px); filter:brightness(1.08); }
.cd-button:hover:not(:disabled)::after { transform:translateX(130%); }
.cd-button:active:not(:disabled) { transform:translateY(0) scale(.985); }
.cd-button:disabled { opacity:.42; cursor:not-allowed; }
.cd-button--primary { background:linear-gradient(135deg, #198ad7, var(--cd-blue)); box-shadow:0 10px 28px rgba(42,157,244,.22), inset 0 1px rgba(255,255,255,.2); }
.cd-button--success { background:linear-gradient(135deg, #15935b, var(--cd-green)); color:#06120d; box-shadow:0 10px 28px rgba(69,209,139,.18); }
.cd-button--gold { background:linear-gradient(135deg, #d79b1d, var(--cd-gold)); color:#171006; box-shadow:0 10px 28px rgba(243,198,77,.2); }
.cd-button--danger { color:#ffd9d9; background:rgba(255,107,107,.12); border:1px solid rgba(255,107,107,.3); }
.cd-button--secondary { background:linear-gradient(145deg, var(--cd-ink-4), var(--cd-ink-3)); border:1px solid var(--cd-line-strong); }
.cd-button--ghost { color:var(--cd-text-2); background:rgba(255,255,255,.025); border:1px solid var(--cd-line); }
.cd-button--ghost:hover:not(:disabled) { color:white; border-color:var(--cd-line-strong); background:rgba(255,255,255,.055); }
.cd-button--sm { min-height:34px; padding:0 12px; font-size:12px; border-radius:8px; }
.cd-button--lg { min-height:52px; padding:0 24px; font-size:16px; border-radius:12px; }
.cd-button--full { width:100%; }

.cd-section-head { display:flex; justify-content:space-between; gap:20px; align-items:flex-end; margin:32px 2px 14px; }
.cd-section-head h2 { font-family:var(--cd-display); font-size:22px; text-transform:uppercase; letter-spacing:.01em; margin:5px 0 0; }
.cd-section-head p { color:var(--cd-text-3); font-size:13px; line-height:1.45; margin:5px 0 0; max-width:660px; }

.cd-field { display:grid; gap:7px; min-width:0; }
.cd-field__label { color:var(--cd-text-2); font-size:11px; font-weight:750; letter-spacing:.06em; text-transform:uppercase; }
.cd-field__hint { color:var(--cd-text-4); font-size:11px; line-height:1.4; }
.cd-input { width:100%; min-height:46px; color:var(--cd-text); background:rgba(4,8,14,.55); border:1px solid var(--cd-line-strong); border-radius:10px; padding:0 13px; transition:border-color .16s, box-shadow .16s; }
.cd-input:hover { border-color:rgba(157,185,220,.38); }
.cd-input:focus { border-color:var(--cd-blue); box-shadow:0 0 0 3px rgba(66,170,245,.12); outline:none; }
.cd-segmented { display:grid; grid-template-columns:repeat(auto-fit,minmax(92px,1fr)); gap:7px; }
.cd-segmented__item { min-height:44px; padding:8px 10px; border-radius:9px; color:var(--cd-text-3); background:rgba(255,255,255,.025); border:1px solid var(--cd-line); cursor:pointer; display:grid; place-items:center; gap:2px; transition:.16s var(--cd-ease); }
.cd-segmented__item strong { font-size:12px; }
.cd-segmented__item small { font-size:9px; color:var(--cd-text-4); }
.cd-segmented__item:hover { color:var(--cd-text); border-color:var(--cd-line-strong); }
.cd-segmented__item.is-selected { color:white; background:color-mix(in srgb, var(--screen-accent) 17%, var(--cd-ink-3)); border-color:color-mix(in srgb, var(--screen-accent) 70%, white 4%); box-shadow:inset 0 0 20px color-mix(in srgb, var(--screen-accent) 8%, transparent); }

.cd-range { display:grid; gap:9px; padding:12px 0; border-bottom:1px solid rgba(157,185,220,.08); }
.cd-range:last-child { border-bottom:0; }
.cd-range__head { display:flex; justify-content:space-between; gap:16px; align-items:center; }
.cd-range__head div { display:grid; gap:2px; }
.cd-range__head strong { font-size:13px; text-transform:capitalize; }
.cd-range__head small { color:var(--cd-text-4); font-size:10px; }
.cd-range__head > span { min-width:34px; font-family:var(--cd-display); font-weight:700; font-size:17px; text-align:right; }
.cd-range input[type=range] { appearance:none; width:100%; height:5px; border-radius:999px; background:linear-gradient(90deg, var(--range-color) var(--range-pct), var(--cd-ink-4) var(--range-pct)); }
.cd-range input[type=range]::-webkit-slider-thumb { appearance:none; width:17px; height:17px; border-radius:50%; background:white; border:4px solid var(--range-color); box-shadow:0 2px 10px rgba(0,0,0,.45); cursor:pointer; }
.cd-range input[type=range]::-moz-range-thumb { width:11px; height:11px; border-radius:50%; background:white; border:4px solid var(--range-color); box-shadow:0 2px 10px rgba(0,0,0,.45); cursor:pointer; }

.cd-chip { min-height:27px; display:inline-flex; align-items:center; justify-content:center; padding:3px 9px; border-radius:999px; border:1px solid var(--cd-line); color:var(--cd-text-3); background:rgba(255,255,255,.025); font-size:10px; font-weight:750; text-transform:capitalize; }
button.cd-chip { cursor:pointer; transition:.15s; }
button.cd-chip:hover { color:white; border-color:var(--cd-line-strong); }
.cd-chip--blue { --chip:#42aaf5; } .cd-chip--gold { --chip:#f3c64d; } .cd-chip--green { --chip:#45d18b; } .cd-chip--red { --chip:#ff6b6b; } .cd-chip--purple { --chip:#b98cff; }
.cd-chip:not(.cd-chip--neutral) { color:var(--chip); border-color:color-mix(in srgb, var(--chip) 28%, transparent); background:color-mix(in srgb, var(--chip) 8%, transparent); }
.cd-chip.is-selected { color:#fff; border-color:color-mix(in srgb, var(--chip, var(--cd-blue)) 75%, white 5%); background:color-mix(in srgb, var(--chip, var(--cd-blue)) 22%, var(--cd-ink-3)); }

.cd-metric-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(140px,1fr)); gap:10px; }
.cd-metric { --metric:var(--cd-blue); min-width:0; padding:15px; border-radius:12px; background:rgba(255,255,255,.025); border:1px solid var(--cd-line); display:grid; gap:3px; position:relative; overflow:hidden; }
.cd-metric::before { content:""; position:absolute; top:0; left:12px; right:12px; height:2px; background:var(--metric); opacity:.75; }
.cd-metric > span { color:var(--cd-text-3); font-size:9px; font-weight:750; letter-spacing:.1em; text-transform:uppercase; }
.cd-metric > strong { font-family:var(--cd-display); font-size:25px; line-height:1.1; }
.cd-metric > small { color:var(--cd-text-4); font-size:10px; }
.cd-metric--gold { --metric:var(--cd-gold); } .cd-metric--green { --metric:var(--cd-green); } .cd-metric--red { --metric:var(--cd-red); } .cd-metric--neutral { --metric:var(--cd-text-3); }
.cd-progress { display:grid; gap:6px; }
.cd-progress__label { display:flex; justify-content:space-between; color:var(--cd-text-3); font-size:10px; }
.cd-progress__track { height:6px; background:var(--cd-ink-4); border-radius:999px; overflow:hidden; }
.cd-progress__fill { display:block; height:100%; border-radius:inherit; background:var(--cd-blue); box-shadow:0 0 14px currentColor; }
.cd-progress__fill--gold { background:var(--cd-gold); } .cd-progress__fill--green { background:var(--cd-green); } .cd-progress__fill--red { background:var(--cd-red); }

.cd-team-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(160px,1fr)); gap:11px; }
.cd-team-grid--sm { grid-template-columns:repeat(auto-fill,minmax(138px,1fr)); }
.cd-team-grid--lg { grid-template-columns:repeat(auto-fill,minmax(205px,1fr)); gap:14px; }
.cd-team-tile { --team-color:var(--cd-blue); --team-accent:white; min-height:142px; color:white; background:linear-gradient(155deg, color-mix(in srgb, var(--team-color) 58%, #101a29), color-mix(in srgb, var(--team-color) 18%, #07101d)); border:1px solid color-mix(in srgb, var(--team-accent) 20%, transparent); border-radius:14px; padding:16px 13px 14px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:8px; position:relative; overflow:hidden; cursor:pointer; box-shadow:0 10px 25px rgba(0,0,0,.24); transition:.2s var(--cd-ease); }
.cd-team-tile::after { content:""; position:absolute; inset:0; background:linear-gradient(125deg, rgba(255,255,255,.09), transparent 36%); pointer-events:none; }
.cd-team-tile__glow { position:absolute; width:120px; height:120px; border-radius:50%; top:-60px; background:var(--team-accent); filter:blur(42px); opacity:.12; }
.cd-team-tile img, .cd-team-tile > span { position:relative; filter:drop-shadow(0 7px 12px rgba(0,0,0,.34)); transition:transform .2s var(--cd-ease); }
.cd-team-tile__copy { display:grid; text-align:center; position:relative; z-index:1; }
.cd-team-tile__copy span { color:rgba(255,255,255,.72); font-size:10px; letter-spacing:.06em; text-transform:uppercase; }
.cd-team-tile__copy strong { color:white; font-size:14px; line-height:1.1; }
.cd-team-tile__copy small { margin-top:4px; color:rgba(255,255,255,.58); font-size:9px; }
.cd-team-tile:hover:not(:disabled) { transform:translateY(-4px); border-color:color-mix(in srgb, var(--team-accent) 50%, white 7%); box-shadow:0 18px 34px rgba(0,0,0,.38); filter:saturate(1.08); }
.cd-team-tile:hover:not(:disabled) img, .cd-team-tile:hover:not(:disabled) > span { transform:scale(1.06); }
.cd-team-tile:disabled { opacity:.28; cursor:not-allowed; filter:grayscale(.5); }
.cd-team-tile.is-selected { box-shadow:0 0 0 2px var(--team-accent), 0 20px 40px rgba(0,0,0,.4); }
.cd-team-tile__check { position:absolute; right:9px; top:9px; width:25px; height:25px; border-radius:50%; background:var(--team-accent); color:var(--team-color); display:grid; place-items:center; z-index:2; }
.cd-team-tile--sm { min-height:116px; padding:12px 9px; }
.cd-team-tile--lg { min-height:184px; gap:12px; }
.cd-team-tile--lg .cd-team-tile__copy strong { font-size:17px; }

.cd-choice-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:12px; }
.cd-choice { display:flex; align-items:flex-start; gap:14px; min-height:112px; }
.cd-choice__icon { width:43px; height:43px; border-radius:12px; display:grid; place-items:center; color:var(--panel-accent, var(--screen-accent)); background:color-mix(in srgb, var(--panel-accent, var(--screen-accent)) 11%, var(--cd-ink-2)); border:1px solid color-mix(in srgb, var(--panel-accent, var(--screen-accent)) 24%, transparent); flex:0 0 auto; }
.cd-choice__copy { flex:1; min-width:0; display:grid; gap:4px; position:relative; }
.cd-choice__copy > strong { font-size:15px; }
.cd-choice__copy p { color:var(--cd-text-3); font-size:11px; line-height:1.45; margin:0; }
.cd-choice__meta { color:var(--cd-text-2); font-size:10px; margin-top:4px; }
.cd-choice__radio { width:20px; height:20px; border-radius:50%; border:1px solid var(--cd-line-strong); display:grid; place-items:center; flex:0 0 auto; }
.cd-choice__radio span { width:10px; height:10px; border-radius:50%; background:transparent; }
.cd-choice.is-selected .cd-choice__radio { border-color:var(--panel-accent, var(--screen-accent)); }
.cd-choice.is-selected .cd-choice__radio span { background:var(--panel-accent, var(--screen-accent)); box-shadow:0 0 12px var(--panel-accent, var(--screen-accent)); }

.cd-grid-2 { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.cd-grid-3 { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.cd-stack { display:grid; gap:14px; }
.cd-toolbar { display:flex; flex-wrap:wrap; gap:8px; align-items:center; justify-content:space-between; }
.cd-empty { min-height:280px; display:grid; place-items:center; align-content:center; text-align:center; gap:9px; padding:32px; color:var(--cd-text-3); }
.cd-empty__icon { width:58px; height:58px; border-radius:18px; background:var(--cd-ink-3); border:1px solid var(--cd-line); display:grid; place-items:center; color:var(--screen-accent); }
.cd-empty h3 { color:var(--cd-text); margin:3px 0 0; font-size:18px; }
.cd-empty p { max-width:460px; margin:0 0 8px; font-size:12px; line-height:1.5; }

.cd-sticky-footer { position:fixed; z-index:90; left:0; right:0; bottom:0; padding:12px 16px max(12px, env(safe-area-inset-bottom)); background:linear-gradient(180deg, transparent, rgba(5,8,15,.82) 28%, rgba(5,8,15,.96)); pointer-events:none; }
.cd-sticky-footer__inner { width:min(100%,980px); margin:0 auto; display:flex; justify-content:flex-end; gap:10px; pointer-events:auto; }
.cd-sticky-footer__inner--wide { width:min(100%,1320px); }

.cd-table-shell { overflow:auto; border:1px solid var(--cd-line); border-radius:14px; background:rgba(9,15,25,.7); box-shadow:var(--cd-shadow-card); }
.cd-table-shell table { width:100%; border-collapse:collapse; }
.cd-table-shell th { position:sticky; top:0; z-index:1; padding:11px 13px; text-align:left; background:#111b2a; color:var(--cd-text-3); font-size:9px; letter-spacing:.1em; text-transform:uppercase; border-bottom:1px solid var(--cd-line-strong); }
.cd-table-shell td { padding:11px 13px; border-bottom:1px solid rgba(157,185,220,.08); }
.cd-table-shell tr:last-child td { border-bottom:0; }
.cd-table-shell tbody tr { transition:background .12s; }
.cd-table-shell tbody tr:hover { background:rgba(66,170,245,.045); }

@keyframes cd-enter { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:translateY(0); } }
@media (max-width: 760px) {
  .cd-topbar__inner { height:56px; grid-template-columns:1fr auto; }
  .cd-topbar__brand { display:none; }
  .cd-topbar__actions { min-width:0; }
  .cd-page { width:min(100% - 20px, 680px); padding:26px 0 98px; }
  .cd-page--wide { width:min(100% - 20px, 680px); }
  .cd-pagehero { gap:12px; padding-bottom:20px; }
  .cd-pagehero__icon { width:44px; height:44px; border-radius:12px; }
  .cd-pagehero__copy h1 { font-size:32px; }
  .cd-pagehero__copy p { font-size:13px; }
  .cd-grid-2, .cd-grid-3 { grid-template-columns:1fr; }
  .cd-team-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
  .cd-team-tile { min-height:130px; padding:12px 8px; }
  .cd-team-grid--lg { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .cd-team-tile--lg { min-height:145px; }
  .cd-choice-grid { grid-template-columns:1fr; }
  .cd-section-head { align-items:flex-start; }
  .cd-sticky-footer__inner { display:grid; grid-template-columns:1fr; }
  .cd-sticky-footer .cd-button { width:100%; }
}
@media (max-width: 390px) {
  .cd-team-grid { grid-template-columns:1fr 1fr; }
  .cd-team-tile { min-height:118px; }
  .cd-team-tile__copy strong { font-size:12px; }
  .cd-panel { padding:14px; }
  .cd-segmented { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration:.01ms !important; animation-iteration-count:1 !important; scroll-behavior:auto !important; transition-duration:.01ms !important; }
}
@media (forced-colors: active) {
  .cd-button, .cd-panel, .cd-team-tile, .cd-segmented__item { border:1px solid CanvasText; }
}
.cd-create-layout { display:grid; grid-template-columns:minmax(280px, .72fr) minmax(460px, 1.4fr); gap:22px; align-items:start; }
.cd-create-preview { display:grid; gap:13px; position:sticky; top:86px; }
.cd-player-hero { min-height:410px; display:flex; flex-direction:column; align-items:center; justify-content:flex-end; text-align:center; padding:26px; background:radial-gradient(circle at 50% 22%, rgba(185,140,255,.18), transparent 38%), linear-gradient(160deg,#152238,#080d17); }
.cd-player-hero__spotlight { position:absolute; width:260px; height:260px; border-radius:50%; top:20px; background:radial-gradient(circle,rgba(185,140,255,.22),transparent 70%); filter:blur(3px); }
.cd-player-hero__portrait { position:relative; z-index:1; width:174px; height:174px; border-radius:50%; display:grid; place-items:center; background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.015)); border:1px solid rgba(185,140,255,.28); box-shadow:0 24px 55px rgba(0,0,0,.42); overflow:hidden; }
.cd-player-hero__portrait img { width:100% !important; height:100% !important; object-fit:cover; }
.cd-player-hero__identity { position:relative; z-index:1; margin-top:18px; }
.cd-player-hero__identity > span { color:var(--cd-text-3); font-size:10px; letter-spacing:.1em; text-transform:uppercase; }
.cd-player-hero__identity h2 { font-family:var(--cd-display); text-transform:uppercase; font-size:31px; line-height:.9; margin:8px 0 13px; font-weight:500; }
.cd-player-hero__identity h2 strong { color:#d8c1ff; font-size:42px; }
.cd-player-hero__chips, .cd-chip-row { display:flex; flex-wrap:wrap; justify-content:center; gap:6px; }
.cd-player-hero__ovr { position:absolute; top:16px; right:16px; width:58px; height:64px; border-radius:12px; display:grid; place-items:center; align-content:center; background:linear-gradient(145deg,rgba(185,140,255,.22),rgba(185,140,255,.07)); border:1px solid rgba(185,140,255,.35); }
.cd-player-hero__ovr span { color:#d8c1ff; font-size:8px; font-weight:800; letter-spacing:.16em; }
.cd-player-hero__ovr strong { font-family:var(--cd-display); font-size:28px; line-height:1; }
.cd-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.cd-panel-title { margin:5px 0 0; font-family:var(--cd-display); text-transform:uppercase; font-size:21px; }
.cd-scout-card h3 { margin:7px 0 5px; font-size:17px; }
.cd-scout-card p { color:var(--cd-text-3); font-size:11px; line-height:1.5; margin:0; }
.cd-scout-card__grade { display:flex; justify-content:space-between; align-items:center; border-top:1px solid var(--cd-line); margin-top:14px; padding-top:12px; font-size:11px; color:var(--cd-text-3); }
.cd-scout-card__grade strong { color:var(--cd-gold); }
@media (max-width:900px) { .cd-create-layout { grid-template-columns:1fr; } .cd-create-preview { position:static; grid-template-columns:1fr 1fr; } .cd-player-hero { grid-row:span 2; min-height:360px; } }
@media (max-width:620px) { .cd-create-preview { grid-template-columns:1fr; } .cd-player-hero { grid-row:auto; min-height:350px; } .cd-form-grid { grid-template-columns:1fr; } }
.cd-training-overview { padding:20px; }
.cd-drill-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(250px,1fr)); gap:13px; }
.cd-drill-card { min-height:300px; display:flex; flex-direction:column; gap:13px; }
.cd-drill-card__top { display:flex; justify-content:space-between; align-items:center; }
.cd-drill-card__icon, .cd-mini-game__icon { width:48px; height:48px; display:grid; place-items:center; border-radius:14px; font-size:23px; background:rgba(255,255,255,.045); border:1px solid var(--cd-line); }
.cd-drill-card__number { font-family:var(--cd-display); color:var(--cd-text-4); font-size:23px; }
.cd-drill-card__copy { flex:1; }
.cd-drill-card h3, .cd-mini-game h3, .cd-scenario-card h3 { margin:0 0 5px; font-size:17px; }
.cd-drill-card p, .cd-mini-game p, .cd-scenario-card p { margin:0; color:var(--cd-text-3); font-size:11px; line-height:1.5; }
.cd-drill-card__meta, .cd-scenario-card__head { display:flex; flex-wrap:wrap; gap:6px; justify-content:space-between; }
.cd-star-row { display:flex; gap:4px; color:var(--cd-ink-4); font-size:16px; letter-spacing:.05em; }
.cd-star-row .is-earned { color:var(--cd-gold); text-shadow:0 0 12px rgba(243,198,77,.4); }
.cd-mini-game { display:flex; gap:14px; align-items:flex-start; }
.cd-mini-game__footer { display:flex; justify-content:space-between; align-items:center; gap:10px; margin-top:12px; }
.cd-scenario-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(290px,1fr)); gap:13px; }
.cd-scenario-card { display:flex; flex-direction:column; gap:12px; min-height:310px; }
.cd-scenario-card > p { flex:1; }
.cd-scenario-state { display:grid; grid-template-columns:repeat(2,1fr); gap:7px; }
.cd-scenario-state > div { display:grid; gap:2px; padding:9px 10px; border-radius:9px; background:rgba(255,255,255,.025); border:1px solid rgba(157,185,220,.09); }
.cd-scenario-state span { color:var(--cd-text-4); font-size:8px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.cd-scenario-state strong { font-size:12px; }
.cd-format-note { margin-top:24px; }
.cd-format-note strong { color:var(--cd-gold); }
.cd-format-note p { color:var(--cd-text-3); font-size:12px; margin:5px 0 0; }
@media (max-width:760px) { .cd-section-head > div:last-child[style] { min-width:0 !important; width:100%; } .cd-section-head { flex-direction:column; } }
.cd-recovery-wrap { width:min(100%,680px); margin:20px auto 0; }
.cd-recovery-card { padding:28px; display:grid; gap:18px; }
.cd-recovery-card__mark { width:66px; height:66px; border-radius:20px; display:grid; place-items:center; color:var(--cd-gold); background:rgba(243,198,77,.1); border:1px solid rgba(243,198,77,.26); }
.cd-recovery-card__copy > span, .cd-recovery-key > span { color:var(--cd-text-4); font-size:9px; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
.cd-recovery-card__copy h2 { margin:5px 0 7px; font-size:24px; }
.cd-recovery-card__copy p { margin:0; color:var(--cd-text-3); font-size:12px; line-height:1.55; }
.cd-recovery-message { display:flex; align-items:flex-start; gap:10px; padding:13px; color:#ffd7a1; background:rgba(245,163,60,.08); border:1px solid rgba(245,163,60,.22); border-radius:10px; font-size:12px; line-height:1.5; }
.cd-recovery-message svg { flex:0 0 auto; margin-top:1px; }
.cd-recovery-key { display:grid; gap:6px; }
.cd-recovery-key code { overflow-wrap:anywhere; color:var(--cd-text-2); background:rgba(0,0,0,.28); border:1px solid var(--cd-line); border-radius:8px; padding:10px; font-size:10px; }
.cd-crash { min-height:100dvh; display:grid; place-items:center; padding:24px; background:var(--cd-ink-0); color:var(--cd-text); font-family:var(--cd-font); position:relative; overflow:hidden; }
.cd-crash__ambient { position:absolute; inset:0; background:radial-gradient(circle at 50% 22%,rgba(255,107,107,.12),transparent 38%),linear-gradient(180deg,#080d17,#05080f); }
.cd-crash__card { width:min(100%,620px); position:relative; padding:32px; border-radius:20px; border:1px solid var(--cd-line); background:linear-gradient(145deg,rgba(20,31,48,.96),rgba(7,12,21,.96)); box-shadow:var(--cd-shadow-float); text-align:center; }
.cd-crash__icon { width:72px; height:72px; border-radius:22px; display:grid; place-items:center; margin:0 auto 16px; font-size:34px; background:rgba(255,107,107,.08); border:1px solid rgba(255,107,107,.2); }
.cd-crash h1 { margin:8px 0 10px; font-family:var(--cd-display); text-transform:uppercase; font-size:28px; }
.cd-crash p { margin:0 auto; color:var(--cd-text-3); line-height:1.55; font-size:13px; max-width:480px; }
.cd-crash__details { margin:20px 0; text-align:left; color:var(--cd-text-4); font-size:11px; }
.cd-crash__details summary { cursor:pointer; text-align:center; }
.cd-crash__details pre { white-space:pre-wrap; overflow-wrap:anywhere; margin-top:10px; padding:12px; border-radius:9px; background:rgba(0,0,0,.28); border:1px solid var(--cd-line); max-height:150px; overflow:auto; }
.cd-crash__actions { display:flex; justify-content:center; gap:10px; }
@media(max-width:560px){.cd-crash__actions{display:grid}.cd-crash__actions .cd-button{width:100%}.cd-crash__card{padding:24px 18px}}
.cd-matchup-banner { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:20px; padding:20px 26px; }
.cd-matchup-banner__team, .cd-matchup-banner__open { display:flex; align-items:center; gap:15px; }
.cd-matchup-banner__team span, .cd-matchup-banner__open span { display:block; color:var(--cd-text-4); font-size:9px; letter-spacing:.1em; text-transform:uppercase; }
.cd-matchup-banner__team strong, .cd-matchup-banner__open strong { font-size:17px; }
.cd-matchup-banner__versus { font-family:var(--cd-display); color:var(--cd-text-4); font-size:22px; }
.cd-matchup-banner__open { justify-content:flex-end; text-align:right; }
.cd-versus-card { display:grid; grid-template-columns:1fr auto 1fr; gap:28px; align-items:center; padding:28px; }
.cd-versus-card__side { text-align:center; display:grid; justify-items:center; gap:5px; }
.cd-versus-card__side > span { color:var(--cd-text-4); font-size:9px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.cd-versus-card__side > strong { font-family:var(--cd-display); text-transform:uppercase; font-size:24px; line-height:.95; }
.cd-versus-card__center { text-align:center; display:grid; gap:2px; }
.cd-versus-card__center span, .cd-versus-card__center small { color:var(--cd-text-4); font-size:9px; letter-spacing:.1em; text-transform:uppercase; }
.cd-versus-card__center b { font-family:var(--cd-display); font-size:40px; color:var(--cd-gold); }
.cd-panel-copy { color:var(--cd-text-3); font-size:11px; line-height:1.5; margin:7px 0 0; }
.cd-venue-list { display:grid; grid-template-columns:repeat(2,1fr); gap:7px; max-height:220px; overflow:auto; padding-right:3px; }
.cd-venue-list button { min-height:50px; padding:8px 10px; text-align:left; color:var(--cd-text-3); background:rgba(255,255,255,.025); border:1px solid var(--cd-line); border-radius:9px; cursor:pointer; display:grid; gap:2px; }
.cd-venue-list button span { font-size:11px; font-weight:750; }
.cd-venue-list button small { color:var(--cd-text-4); font-size:9px; }
.cd-venue-list button.is-selected { color:white; border-color:var(--cd-gold); background:rgba(243,198,77,.1); }
.cd-match-summary { margin-top:16px; }
.cd-season-roadmap { display:flex; align-items:center; justify-content:center; gap:12px; padding:24px; }
.cd-season-roadmap__step { display:grid; text-align:center; gap:3px; min-width:130px; }
.cd-season-roadmap__step > span { color:var(--cd-green); font-family:var(--cd-display); font-size:13px; }
.cd-season-roadmap__step strong { font-size:16px; }
.cd-season-roadmap__step small { color:var(--cd-text-4); font-size:10px; }
.cd-season-roadmap__line { width:min(12vw,120px); height:1px; background:linear-gradient(90deg,var(--cd-green),rgba(69,209,139,.15)); }
.cd-draft-stage { display:grid; gap:16px; }
.cd-draft-card { min-height:460px; display:grid; grid-template-columns:1fr 1.2fr 1fr; align-items:center; gap:20px; padding:38px; background:radial-gradient(circle at 50% 30%,color-mix(in srgb,var(--panel-accent) 18%,transparent),transparent 40%),linear-gradient(150deg,#142137,#070c14); }
.cd-draft-card__lights { position:absolute; inset:0; background:linear-gradient(110deg,transparent 22%,rgba(255,255,255,.035) 23%,transparent 24%,transparent 70%,rgba(255,255,255,.03) 71%,transparent 72%); }
.cd-draft-card__pick { align-self:start; position:relative; display:grid; gap:4px; }
.cd-draft-card__pick span, .cd-draft-card__selection > span { color:var(--cd-text-4); font-size:9px; letter-spacing:.15em; font-weight:800; }
.cd-draft-card__pick strong { font-family:var(--cd-display); font-size:25px; color:var(--cd-gold); }
.cd-draft-card__portrait { width:190px; height:190px; border-radius:50%; overflow:hidden; display:grid; place-items:center; justify-self:center; border:1px solid color-mix(in srgb,var(--panel-accent) 40%,transparent); background:rgba(255,255,255,.04); box-shadow:0 25px 60px rgba(0,0,0,.45); position:relative; }
.cd-draft-card__portrait img { width:100%!important; height:100%!important; object-fit:cover; }
.cd-draft-card__player { text-align:center; grid-column:2; position:relative; }
.cd-draft-card__player > span { color:var(--cd-text-3); font-size:10px; text-transform:uppercase; letter-spacing:.12em; }
.cd-draft-card__player h2 { font-family:var(--cd-display); text-transform:uppercase; line-height:.88; font-size:32px; margin:8px 0 0; font-weight:500; }
.cd-draft-card__player h2 strong { font-size:48px; color:color-mix(in srgb,var(--panel-accent) 60%,white); }
.cd-draft-card__rating { position:absolute; left:calc(100% + 16px); top:2px; width:58px; height:62px; border:1px solid var(--cd-line); border-radius:11px; display:grid; place-items:center; align-content:center; background:rgba(255,255,255,.035); }
.cd-draft-card__rating span { color:var(--cd-text-4); font-size:8px; }
.cd-draft-card__rating b { font-family:var(--cd-display); font-size:27px; }
.cd-draft-card__selection { grid-column:3; grid-row:1/3; display:grid; justify-items:center; gap:12px; text-align:center; position:relative; }
.cd-draft-card__selection > div { display:grid; justify-items:center; gap:8px; }
.cd-draft-card__selection strong { font-family:var(--cd-display); text-transform:uppercase; font-size:22px; max-width:190px; line-height:1; }
@media(max-width:760px){.cd-matchup-banner,.cd-versus-card{grid-template-columns:1fr auto 1fr;gap:8px;padding:16px 10px}.cd-matchup-banner__team{display:grid;text-align:center;justify-items:center}.cd-matchup-banner__open{display:grid;text-align:center;justify-items:center}.cd-versus-card__side>strong{font-size:17px}.cd-versus-card__side img{width:58px;height:58px}.cd-season-roadmap{gap:5px;padding:17px 8px}.cd-season-roadmap__step{min-width:0;flex:1}.cd-season-roadmap__line{width:24px}.cd-draft-card{grid-template-columns:1fr;padding:25px 14px;min-height:600px}.cd-draft-card__pick{justify-self:center;text-align:center}.cd-draft-card__portrait{grid-column:1}.cd-draft-card__player{grid-column:1}.cd-draft-card__selection{grid-column:1;grid-row:auto}.cd-draft-card__rating{left:auto;right:-4px}.cd-venue-list{grid-template-columns:1fr}}
.cd-franchise-header { --team-color:var(--cd-blue); --team-accent:#fff; position:relative; z-index:110; background:linear-gradient(135deg,rgba(5,8,15,.97),color-mix(in srgb,var(--team-color) 12%,rgba(12,20,33,.97))); border-bottom:1px solid color-mix(in srgb,var(--team-color) 30%,var(--cd-line)); box-shadow:0 14px 38px rgba(0,0,0,.3); }
.cd-franchise-header::after { content:""; position:absolute; left:0; right:0; bottom:-1px; height:2px; background:linear-gradient(90deg,transparent,var(--team-color),var(--team-accent),transparent); opacity:.55; }
.cd-franchise-header__inner { max-width:1440px; margin:0 auto; min-height:72px; padding:9px clamp(12px,2.4vw,30px); display:grid; grid-template-columns:minmax(220px,1fr) auto minmax(220px,1fr); align-items:center; gap:18px; }
.cd-franchise-identity { justify-self:start; display:flex; align-items:center; gap:11px; padding:0; color:white; background:transparent; border:0; cursor:pointer; text-align:left; }
.cd-franchise-identity img { filter:drop-shadow(0 5px 9px rgba(0,0,0,.35)); }
.cd-franchise-identity span { display:grid; line-height:1; }
.cd-franchise-identity small { color:var(--team-accent); opacity:.75; font-size:9px; font-weight:750; letter-spacing:.13em; text-transform:uppercase; }
.cd-franchise-identity strong { font-family:var(--cd-display); text-transform:uppercase; letter-spacing:.02em; font-size:20px; margin-top:3px; }
.cd-franchise-status { display:flex; align-items:center; padding:7px; border-radius:12px; background:rgba(0,0,0,.17); border:1px solid var(--cd-line); }
.cd-franchise-status > div { min-width:63px; padding:1px 14px; display:grid; text-align:center; gap:2px; border-right:1px solid var(--cd-line); }
.cd-franchise-status > div:last-child { border-right:0; }
.cd-franchise-status span { color:var(--cd-text-4); font-size:8px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.cd-franchise-status strong { font-family:var(--cd-display); font-size:18px; line-height:1; }
.cd-franchise-status .is-record b { color:var(--cd-green); font-weight:inherit; }
.cd-franchise-status .is-budget strong { color:var(--cd-gold); }
.cd-franchise-actions { justify-self:end; display:flex; align-items:center; gap:6px; }
.cd-franchise-actions button { min-width:39px; height:38px; display:flex; align-items:center; justify-content:center; gap:7px; padding:0 11px; border-radius:9px; color:var(--cd-text-3); background:rgba(255,255,255,.025); border:1px solid var(--cd-line); cursor:pointer; }
.cd-franchise-actions button:hover { color:white; border-color:var(--cd-line-strong); background:rgba(255,255,255,.06); }
.cd-franchise-actions button > span { font-size:10px; font-weight:700; }
.cd-franchise-actions button > b { width:17px; height:17px; border-radius:50%; border:1px solid currentColor; display:grid; place-items:center; font-size:10px; }
.cd-franchise-actions button > i { display:block; width:3px; height:3px; border-radius:50%; background:currentColor; }
.cd-franchise-nav { position:relative; z-index:100; background:rgba(7,12,21,.94); border-bottom:1px solid var(--cd-line); backdrop-filter:blur(16px); }
.cd-franchise-nav__inner { max-width:1440px; margin:0 auto; padding:6px clamp(8px,2vw,24px); display:flex; gap:3px; overflow-x:auto; scrollbar-width:none; }
.cd-franchise-nav__inner::-webkit-scrollbar { display:none; }
.cd-franchise-nav button { min-height:41px; flex:0 0 auto; padding:0 12px; border-radius:9px; display:flex; align-items:center; gap:7px; color:var(--cd-text-4); background:transparent; border:1px solid transparent; cursor:pointer; font-size:11px; font-weight:700; transition:.16s var(--cd-ease); }
.cd-franchise-nav button:hover { color:var(--cd-text); background:rgba(255,255,255,.035); }
.cd-franchise-nav button.is-active { color:white; background:color-mix(in srgb,var(--team-color) 20%,var(--cd-ink-3)); border-color:color-mix(in srgb,var(--team-color) 42%,var(--cd-line)); box-shadow:inset 0 -2px var(--team-color); }
@media(max-width:900px){.cd-franchise-header__inner{grid-template-columns:1fr auto}.cd-franchise-status{display:none}.cd-franchise-actions button>span{display:none}}
@media(max-width:560px){.cd-franchise-header__inner{min-height:62px}.cd-franchise-identity strong{font-size:16px}.cd-franchise-identity small{font-size:8px}.cd-franchise-actions button{width:34px;min-width:34px;height:34px;padding:0}.cd-franchise-nav__inner{padding:5px 7px}.cd-franchise-nav button{min-height:38px;padding:0 10px}.cd-franchise-nav button span{font-size:10px}}
.cd-franchise-hero { --team-color:var(--cd-blue); --team-accent:white; position:relative; min-height:116px; overflow:hidden; border-radius:16px; margin:2px 0 16px; border:1px solid color-mix(in srgb,var(--team-color) 30%,var(--cd-line)); background:linear-gradient(125deg,color-mix(in srgb,var(--team-color) 23%,var(--cd-ink-2)),rgba(8,13,23,.96) 62%); box-shadow:var(--cd-shadow-card); }
.cd-franchise-hero.is-intense { min-height:134px; }
.cd-franchise-hero__image { position:absolute; inset:0; background-image:linear-gradient(90deg,rgba(5,8,15,.3),rgba(5,8,15,.82)),var(--arena-image); background-size:cover; background-position:center 42%; opacity:.34; filter:saturate(.8) contrast(1.08); }
.cd-franchise-hero::after { content:""; position:absolute; left:0; right:0; bottom:0; height:3px; background:linear-gradient(90deg,var(--team-color),var(--team-accent),transparent 68%); opacity:.8; }
.cd-franchise-hero__content { position:relative; z-index:2; min-height:inherit; display:flex; align-items:center; justify-content:space-between; gap:18px; padding:20px 24px; }
.cd-franchise-hero__identity { display:flex; align-items:center; gap:15px; min-width:0; }
.cd-franchise-hero__identity img { filter:drop-shadow(0 8px 16px rgba(0,0,0,.4)); flex:0 0 auto; }
.cd-franchise-hero__identity > div { min-width:0; }
.cd-franchise-hero__identity span { color:color-mix(in srgb,var(--team-accent) 65%,var(--cd-text-3)); font-size:9px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.cd-franchise-hero__identity h1 { font-family:var(--cd-display); font-size:clamp(24px,3.4vw,36px); line-height:.95; text-transform:uppercase; margin:5px 0 4px; letter-spacing:-.01em; }
.cd-franchise-hero__identity p { margin:0; color:var(--cd-text-2); font-size:11px; }
.cd-franchise-hero__right { display:flex; align-items:center; gap:10px; }
.cd-franchise-hero__right > button { min-height:35px; padding:0 12px; border-radius:8px; display:flex; align-items:center; gap:7px; color:var(--cd-text-2); background:rgba(0,0,0,.22); border:1px solid var(--cd-line); cursor:pointer; font-size:10px; font-weight:700; }
.cd-franchise-hero__right > button:hover { color:white; border-color:color-mix(in srgb,var(--team-color) 42%,var(--cd-line)); }
.cd-franchise-module { --module-accent:var(--cd-blue); position:relative; background:linear-gradient(145deg,rgba(16,26,41,.96),rgba(7,12,21,.96)); border:1px solid var(--cd-line); border-radius:14px; box-shadow:var(--cd-shadow-card); overflow:hidden; margin-bottom:11px; }
.cd-franchise-module::before { content:""; position:absolute; top:0; bottom:0; left:0; width:3px; background:var(--module-accent); }
.cd-franchise-module > header { min-height:39px; padding:0 14px 0 16px; display:flex; align-items:center; gap:7px; color:var(--module-accent); border-bottom:1px solid rgba(157,185,220,.08); font-family:var(--cd-display); font-size:11px; letter-spacing:.11em; text-transform:uppercase; }
.cd-franchise-module__body { padding:13px 15px; }
.cd-team-action { --team-color:var(--cd-blue); min-height:36px; padding:0 15px; border-radius:9px; border:1px solid color-mix(in srgb,var(--team-color) 48%,transparent); color:white; background:linear-gradient(135deg,color-mix(in srgb,var(--team-color) 80%,#16304b),var(--team-color)); cursor:pointer; font-family:var(--cd-display); font-size:11px; font-weight:700; letter-spacing:.05em; text-transform:uppercase; box-shadow:0 8px 20px color-mix(in srgb,var(--team-color) 14%,transparent); }
.cd-team-action--ghost { color:var(--team-color); background:rgba(255,255,255,.02); }
.cd-team-action--danger { color:var(--cd-red); border-color:rgba(255,107,107,.28); background:rgba(255,107,107,.08); }
@media(max-width:620px){.cd-franchise-hero__content{padding:16px}.cd-franchise-hero__identity{gap:10px}.cd-franchise-hero__right>*:not(button){display:none}.cd-franchise-hero__right>button span{display:none}.cd-franchise-hero__right>button{width:35px;padding:0;justify-content:center}.cd-franchise-hero__identity h1{font-size:24px}.cd-franchise-hero__identity span{font-size:7px}.cd-franchise-hero__identity p{font-size:10px}}
.cd-modal-backdrop { position:fixed; inset:0; z-index:240; padding:18px; display:grid; place-items:center; background:rgba(2,5,10,.82); backdrop-filter:blur(14px) saturate(110%); animation:cd-modal-fade .18s ease both; }
.cd-settings-modal { width:min(100%,760px); max-height:min(90dvh,860px); display:grid; grid-template-rows:auto auto minmax(0,1fr) auto; overflow:hidden; color:var(--cd-text); border-radius:20px; border:1px solid rgba(66,170,245,.3); background:linear-gradient(145deg,rgba(17,28,44,.98),rgba(6,11,19,.99)); box-shadow:var(--cd-shadow-float); }
.cd-modal-header { min-height:74px; display:flex; justify-content:space-between; align-items:center; padding:15px 20px; border-bottom:1px solid var(--cd-line); background:linear-gradient(90deg,rgba(66,170,245,.07),transparent); }
.cd-modal-header > div { display:grid; gap:2px; }
.cd-modal-header span { color:var(--cd-blue); font-size:9px; font-weight:800; letter-spacing:.16em; text-transform:uppercase; }
.cd-modal-header h2 { margin:0; font-family:var(--cd-display); font-size:27px; text-transform:uppercase; }
.cd-modal-header > button { width:36px; height:36px; border-radius:10px; color:var(--cd-text-3); background:rgba(255,255,255,.025); border:1px solid var(--cd-line); cursor:pointer; font-size:23px; line-height:1; }
.cd-settings-tabs { display:flex; gap:4px; padding:8px 10px; overflow:auto; border-bottom:1px solid var(--cd-line); background:rgba(0,0,0,.14); scrollbar-width:none; }
.cd-settings-tabs::-webkit-scrollbar { display:none; }
.cd-settings-tabs button { min-height:43px; min-width:92px; padding:5px 10px; display:flex; align-items:center; justify-content:center; gap:7px; color:var(--cd-text-4); background:transparent; border:1px solid transparent; border-radius:9px; cursor:pointer; }
.cd-settings-tabs button span { font-size:15px; }
.cd-settings-tabs button strong { font-size:10px; }
.cd-settings-tabs button.is-active { color:white; background:rgba(66,170,245,.12); border-color:rgba(66,170,245,.35); box-shadow:inset 0 -2px var(--cd-blue); }
.cd-settings-content { min-height:0; overflow:auto; padding:12px 20px 20px; }
.cd-settings-content details { border:1px solid var(--cd-line); border-radius:11px; overflow:hidden; background:rgba(255,255,255,.015); margin-top:9px!important; }
.cd-settings-content details > summary { min-height:44px; display:flex; align-items:center; padding:0 13px!important; list-style:none; border-bottom:1px solid transparent; }
.cd-settings-content details[open] > summary { border-bottom-color:var(--cd-line); background:rgba(255,255,255,.025); }
.cd-settings-content details > summary::-webkit-details-marker { display:none; }
.cd-settings-content details > div { padding:0 12px!important; }
.cd-setting-row { min-height:63px; display:flex; justify-content:space-between; align-items:center; gap:18px; padding:10px 0; border-bottom:1px solid rgba(157,185,220,.09); }
.cd-setting-row:last-child { border-bottom:0; }
.cd-setting-row__copy { display:grid; gap:3px; min-width:180px; flex:1; }
.cd-setting-row__copy strong { color:var(--cd-text); font-size:12px; }
.cd-setting-row__copy small { color:var(--cd-text-4); font-size:9px; line-height:1.4; max-width:400px; }
.cd-setting-options { max-width:52%; display:flex; justify-content:flex-end; flex-wrap:wrap; gap:4px; }
.cd-setting-options button { min-height:30px; padding:3px 9px; color:var(--cd-text-4); background:rgba(255,255,255,.025); border:1px solid var(--cd-line); border-radius:7px; font-size:9px; font-weight:750; cursor:pointer; }
.cd-setting-options button:hover { color:white; border-color:var(--cd-line-strong); }
.cd-setting-options button.is-selected { color:white; background:rgba(66,170,245,.18); border-color:var(--cd-blue); box-shadow:0 0 16px rgba(66,170,245,.08); }
.cd-switch { width:44px; height:25px; border-radius:999px; padding:2px; flex:0 0 auto; border:1px solid var(--cd-line-strong); background:var(--cd-ink-4); cursor:pointer; transition:.18s; }
.cd-switch span { display:block; width:19px; height:19px; border-radius:50%; background:var(--cd-text-2); box-shadow:0 2px 8px rgba(0,0,0,.4); transition:transform .18s var(--cd-ease),background .18s; }
.cd-switch.is-on { background:rgba(69,209,139,.22); border-color:var(--cd-green); }
.cd-switch.is-on span { transform:translateX(19px); background:white; }
.cd-setting-slider { width:min(46%,220px); display:flex; align-items:center; gap:10px; }
.cd-setting-slider input { appearance:none; flex:1; height:5px; border-radius:999px; background:linear-gradient(90deg,var(--cd-blue) var(--setting-pct),var(--cd-ink-4) var(--setting-pct)); }
.cd-setting-slider input::-webkit-slider-thumb { appearance:none; width:16px; height:16px; border-radius:50%; background:white; border:4px solid var(--cd-blue); cursor:pointer; }
.cd-setting-slider b { min-width:28px; color:var(--cd-blue-2); font-family:var(--cd-display); font-size:16px; text-align:right; }
.cd-modal-footer { padding:12px 18px max(12px,env(safe-area-inset-bottom)); border-top:1px solid var(--cd-line); background:rgba(0,0,0,.18); }
@keyframes cd-modal-fade { from { opacity:0; } to { opacity:1; } }
@media(max-width:620px){.cd-modal-backdrop{padding:0;align-items:end}.cd-settings-modal{border-radius:18px 18px 0 0;max-height:94dvh;width:100%}.cd-modal-header{min-height:64px}.cd-settings-tabs{padding:6px}.cd-settings-tabs button{min-width:70px}.cd-settings-tabs button strong{display:none}.cd-settings-content{padding:8px 14px 15px}.cd-setting-row{align-items:flex-start;flex-direction:column;gap:9px}.cd-setting-options{max-width:100%;justify-content:flex-start}.cd-setting-slider{width:100%;max-width:none}.cd-switch{align-self:flex-end;margin-top:-40px}}
.cd-help-modal { width:min(100%,760px); max-height:min(90dvh,850px); display:grid; grid-template-rows:auto auto minmax(0,1fr) auto; overflow:hidden; border-radius:20px; border:1px solid rgba(243,198,77,.28); background:linear-gradient(145deg,rgba(17,28,44,.98),rgba(6,11,19,.99)); box-shadow:var(--cd-shadow-float); color:var(--cd-text); }
.cd-modal-header--gold { background:linear-gradient(90deg,rgba(243,198,77,.08),transparent); }
.cd-modal-header--gold span { color:var(--cd-gold); }
.cd-help-tabs { display:flex; gap:5px; padding:8px 10px; border-bottom:1px solid var(--cd-line); overflow:auto; }
.cd-help-tabs button { min-height:36px; padding:0 13px; color:var(--cd-text-4); background:transparent; border:1px solid transparent; border-radius:8px; cursor:pointer; font-size:10px; font-weight:750; }
.cd-help-tabs button.is-active { color:var(--cd-gold); background:rgba(243,198,77,.09); border-color:rgba(243,198,77,.28); }
.cd-help-content { min-height:0; overflow:auto; padding:18px 22px; }
.cd-help-content > div { color:var(--cd-text-2)!important; line-height:1.75!important; }
.cd-help-content [style*="border-bottom"] { border-bottom-color:rgba(157,185,220,.09)!important; padding:7px 0!important; }
.cd-pause-card { width:min(100%,390px); padding:30px; border-radius:20px; text-align:center; color:var(--cd-text); border:1px solid rgba(66,170,245,.28); background:radial-gradient(circle at 50% 0,rgba(66,170,245,.12),transparent 42%),linear-gradient(145deg,rgba(17,28,44,.98),rgba(6,11,19,.99)); box-shadow:var(--cd-shadow-float); }
.cd-pause-card__stone { width:68px; height:68px; border-radius:20px; display:grid; place-items:center; margin:0 auto 16px; font-size:34px; background:rgba(66,170,245,.08); border:1px solid rgba(66,170,245,.22); }
.cd-pause-card h2 { font-family:var(--cd-display); text-transform:uppercase; font-size:28px; margin:7px 0 6px; }
.cd-pause-card p { color:var(--cd-text-3); font-size:11px; margin:0 0 22px; }
@media(max-width:620px){.cd-help-modal{width:100%;max-height:94dvh;border-radius:18px 18px 0 0}.cd-help-content{padding:15px}.cd-help-tabs{scrollbar-width:none}}

/* Phase 4 universal franchise treatment. Legacy feature modules inherit a single interaction grammar
   while they are progressively migrated to the shared component library. */
.cd-franchise-shell {
  color:var(--cd-text);
  background:radial-gradient(1100px 520px at 50% -110px,rgba(66,170,245,.08),transparent 66%),linear-gradient(180deg,var(--cd-ink-1),var(--cd-ink-0));
  font-family:var(--cd-font);
}
.cd-franchise-shell button,
.cd-franchise-shell input,
.cd-franchise-shell select,
.cd-franchise-shell textarea { font-family:var(--cd-font); }
.cd-franchise-shell button { transition:transform .16s var(--cd-ease),filter .16s,border-color .16s,background .16s,box-shadow .16s; }
.cd-franchise-shell button:hover:not(:disabled) { filter:brightness(1.08); }
.cd-franchise-shell button:active:not(:disabled) { transform:scale(.985); }
.cd-franchise-shell input:not([type="range"]),
.cd-franchise-shell select,
.cd-franchise-shell textarea {
  color:var(--cd-text); background:rgba(4,8,14,.62); border:1px solid var(--cd-line-strong); border-radius:9px;
}
.cd-franchise-shell input:not([type="range"]):focus,
.cd-franchise-shell select:focus,
.cd-franchise-shell textarea:focus { border-color:var(--cd-blue); box-shadow:0 0 0 3px rgba(66,170,245,.12); outline:none; }
.cd-franchise-shell table { border-collapse:separate; border-spacing:0; }
.cd-franchise-shell th { color:var(--cd-text-4); font-family:var(--cd-display); font-size:9px; font-weight:700; letter-spacing:.11em; text-transform:uppercase; }
.cd-franchise-shell tbody tr { transition:background .14s,border-color .14s; }
.cd-franchise-shell tbody tr:hover { background:rgba(66,170,245,.035); }
.cd-franchise-shell ::-webkit-scrollbar-thumb { background:#304158; }
.cd-franchise-shell ::-webkit-scrollbar-thumb:hover { background:#405875; }

/* Motion and touch consistency */
@media (hover:none) {
  .cd-panel--interactive:hover,.cd-button:hover:not(:disabled),.cd-team-tile:hover:not(:disabled) { transform:none; filter:none; }
}
@media (prefers-reduced-motion:reduce) {
  .cd-screen *, .cd-modal-backdrop *, .cd-franchise-shell * { animation-duration:.001ms!important; animation-iteration-count:1!important; scroll-behavior:auto!important; transition-duration:.001ms!important; }
}

/* Hall of Fame */
.cd-hof-hero { min-height:260px; display:grid; grid-template-columns:auto minmax(280px,1fr) minmax(420px,1.3fr); gap:24px; align-items:center; padding:28px; background:radial-gradient(circle at 12% 20%,rgba(243,198,77,.16),transparent 32%),linear-gradient(135deg,rgba(26,32,45,.98),rgba(8,13,22,.98)); }
.cd-hof-hero__mark { width:94px; height:94px; border-radius:27px; display:grid; place-items:center; color:var(--cd-gold); background:linear-gradient(145deg,rgba(243,198,77,.19),rgba(243,198,77,.04)); border:1px solid rgba(243,198,77,.34); box-shadow:0 24px 55px rgba(243,198,77,.09); }
.cd-hof-hero__copy > span { color:var(--cd-gold); font-family:var(--cd-display); font-size:10px; font-weight:700; letter-spacing:.2em; }
.cd-hof-hero__copy h2 { margin:7px 0 8px; font-family:var(--cd-display); font-size:32px; line-height:1; text-transform:uppercase; }
.cd-hof-hero__copy p { margin:0; max-width:520px; color:var(--cd-text-3); font-size:12px; line-height:1.6; }
.cd-hof-hero__metrics { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.cd-hof-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:13px; }
.cd-hof-card { min-height:300px; display:flex; flex-direction:column; gap:16px; }
.cd-hof-card__top { display:flex; justify-content:space-between; align-items:flex-start; }
.cd-hof-card__number { color:var(--cd-text-4); font-family:var(--cd-display); font-size:34px; }
.cd-hof-card__initials { width:56px; height:56px; display:grid; place-items:center; border-radius:50%; color:var(--cd-gold); background:rgba(243,198,77,.08); border:1px solid rgba(243,198,77,.28); font-family:var(--cd-display); font-size:21px; }
.cd-hof-card__copy { flex:1; }
.cd-hof-card__copy span { color:var(--cd-text-4); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.cd-hof-card__copy h3 { margin:6px 0 4px; font-family:var(--cd-display); font-size:25px; text-transform:uppercase; }
.cd-hof-card__copy p { margin:0; color:var(--cd-text-3); font-size:11px; }
.cd-hof-card__stats { display:grid; grid-template-columns:repeat(3,1fr); gap:7px; }
.cd-hof-card__stats > div { padding:10px; border-radius:9px; background:rgba(255,255,255,.025); border:1px solid var(--cd-line); display:grid; gap:3px; }
.cd-hof-card__stats span { color:var(--cd-text-4); font-size:8px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.cd-hof-card__stats strong { color:var(--cd-text); font-family:var(--cd-display); font-size:19px; }
.cd-record-book { padding:22px; }
.cd-record-book__grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(230px,1fr)); gap:9px; }
.cd-record-entry { min-height:100px; padding:14px; display:grid; align-content:center; gap:4px; border:1px solid var(--cd-line); border-radius:10px; background:rgba(255,255,255,.018); }
.cd-record-entry span { color:var(--cd-text-4); font-size:9px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.cd-record-entry strong { color:var(--cd-gold); font-family:var(--cd-display); font-size:24px; }
.cd-record-entry small { color:var(--cd-text-3); font-size:10px; }
@media(max-width:980px){.cd-hof-hero{grid-template-columns:auto 1fr}.cd-hof-hero__metrics{grid-column:1/-1}.cd-hof-hero__mark{width:76px;height:76px;border-radius:22px}}
@media(max-width:620px){.cd-hof-hero{grid-template-columns:1fr;text-align:center;padding:22px}.cd-hof-hero__mark{margin:auto}.cd-hof-hero__metrics{grid-template-columns:1fr 1fr}.cd-hof-card__stats{grid-template-columns:1fr}.cd-hof-card__stats>div{display:flex;justify-content:space-between;align-items:center}.cd-hof-card__stats strong{font-size:16px}}

/* Route-level Suspense presentation */
.cd-route-loader { min-height:100dvh; display:grid; place-items:center; align-content:center; gap:7px; text-align:center; color:var(--cd-text); background:radial-gradient(700px 320px at 50% 30%,rgba(66,170,245,.13),transparent 68%),linear-gradient(180deg,var(--cd-ink-1),var(--cd-ink-0)); }
.cd-route-loader__stone { width:68px; height:68px; margin-bottom:10px; display:grid; place-items:center; border-radius:20px; font-size:34px; background:rgba(66,170,245,.08); border:1px solid rgba(66,170,245,.25); box-shadow:0 20px 55px rgba(42,157,244,.12); animation:loading-float 1.8s ease-in-out infinite; }
.cd-route-loader span { color:var(--cd-blue); font-family:var(--cd-display); font-size:9px; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.cd-route-loader strong { font-family:var(--cd-display); font-size:22px; text-transform:uppercase; }
