/* Throwline Darts – 2026 brand look (v11.0). Scoped to the brand theme
   (html[data-theme="elite"]); dark is the default, [data-mode="light"] the
   ivory alternative. Markup it relies on comes from brand.js. */

@font-face { font-family: 'Montserrat'; src: url('fonts/montserrat-latin.woff2') format('woff2'); font-weight: 100 900; font-style: normal; font-display: swap; }

/* the new pieces stay out of the other themes */
html:not([data-theme="elite"]) .br-lockup, html:not([data-theme="elite"]) .br-more, html:not([data-theme="elite"]) .br-quick,
html:not([data-theme="elite"]) .br-foot, html:not([data-theme="elite"]) .br-hero-art, html:not([data-theme="elite"]) .br-eyebrow { display: none !important; }
html:not([data-theme="elite"]) .br-ic { width: 1.1em; height: 1.1em; vertical-align: -0.18em; }
html:not([data-theme="elite"]) .br-navi .br-ic { display: none; }
.br-o-wrap { display: inline-block; width: .78em; height: .78em; vertical-align: -0.04em; margin: 0 .02em; color: currentColor; }
.br-o-wrap .br-o { width: 100%; height: 100%; display: block; overflow: visible; }

/* ---- tokens ------------------------------------------------------------------------- */
html[data-theme="elite"] {
  --tl-bg: #07080a; --tl-bg2: #0e0f12;
  --tl-panel: rgba(17, 18, 22, .82); --tl-panel-2: rgba(24, 25, 30, .9);
  --tl-line: rgba(227, 176, 75, .32); --tl-line-soft: rgba(255, 255, 255, .09);
  --tl-gold: #e3b04b; --tl-gold-hi: #f8e3a6; --tl-gold-lo: #9c6c25;
  --tl-green: #22b363; --tl-red: #e3342f;
  --tl-ink: #f3eee2; --tl-mute: #a49e91;
  --tl-goldtext: linear-gradient(180deg, #fbe7ad 0%, #e8bd66 38%, #a87426 64%, #e6bf6c 100%);
  --tl-goldfill: linear-gradient(180deg, #f6dc95 0%, #e2b358 45%, #b07a2a 100%);
  --tl-rule: linear-gradient(90deg, transparent, var(--tl-green) 18%, var(--tl-gold) 50%, var(--tl-red) 82%, transparent);
  --tl-glow-g: 0 0 0 1px rgba(34, 179, 99, .55), 0 0 22px rgba(34, 179, 99, .28), inset 0 0 26px rgba(34, 179, 99, .08);
  --tl-glow-r: 0 0 0 1px rgba(227, 52, 47, .6), 0 0 22px rgba(227, 52, 47, .3), inset 0 0 26px rgba(227, 52, 47, .08);
  --tl-glow-y: 0 0 0 1px rgba(227, 176, 75, .7), 0 0 20px rgba(227, 176, 75, .28);
  --tl-font: 'Montserrat', 'Segoe UI', system-ui, -apple-system, Roboto, sans-serif;
}
html[data-theme="elite"][data-mode="light"] {
  --tl-bg: #f6f2ea; --tl-bg2: #fbf8f2;
  --tl-panel: rgba(255, 253, 248, .86); --tl-panel-2: rgba(255, 255, 255, .95);
  --tl-line: rgba(184, 134, 47, .38); --tl-line-soft: rgba(60, 40, 10, .1);
  --tl-gold: #b8862f; --tl-gold-hi: #e9c77a; --tl-gold-lo: #7a5113;
  --tl-green: #178a4a; --tl-red: #d12a24;
  --tl-ink: #1d1b17; --tl-mute: #6d665a;
  --tl-goldtext: linear-gradient(180deg, #d9a94a 0%, #b58028 45%, #7a5113 70%, #c79437 100%);
  --tl-goldfill: linear-gradient(180deg, #f1d38b 0%, #d6a64c 50%, #b07a2a 100%);
  --tl-glow-g: 0 0 0 1px rgba(23, 138, 74, .45), 0 10px 26px rgba(23, 138, 74, .12);
  --tl-glow-r: 0 0 0 1px rgba(209, 42, 36, .42), 0 10px 26px rgba(209, 42, 36, .12);
  --tl-glow-y: 0 0 0 1px rgba(184, 134, 47, .55), 0 10px 24px rgba(184, 134, 47, .16);
}

/* ---- page ----------------------------------------------------------------------------- */
html[data-theme="elite"] body {
  background:
    radial-gradient(900px 520px at 92% -6%, rgba(227, 52, 47, .16), transparent 62%),
    radial-gradient(800px 560px at -8% 18%, rgba(34, 179, 99, .13), transparent 60%),
    radial-gradient(1200px 800px at 50% 120%, rgba(227, 176, 75, .08), transparent 60%),
    var(--tl-bg) !important;
  color: var(--tl-ink);
}
html[data-theme="elite"][data-mode="light"] body {
  background:
    radial-gradient(900px 520px at 88% -8%, rgba(255, 244, 214, .95), transparent 60%),
    radial-gradient(700px 500px at -6% 20%, rgba(34, 179, 99, .08), transparent 60%),
    radial-gradient(700px 500px at 106% 40%, rgba(227, 52, 47, .06), transparent 60%),
    linear-gradient(180deg, #fbf8f1, var(--tl-bg)) !important;
}
html[data-theme="elite"] .marquee-grid { opacity: .045 !important; }
html[data-theme="elite"] .stage-lights { background: linear-gradient(115deg, transparent 40%, rgba(227, 52, 47, .07) 48%, transparent 56%), linear-gradient(65deg, transparent 52%, rgba(34, 179, 99, .06) 58%, transparent 64%) !important; }
html[data-theme="elite"] h1, html[data-theme="elite"] h2, html[data-theme="elite"] h3, html[data-theme="elite"] h4,
html[data-theme="elite"] .btn, html[data-theme="elite"] .nav-btn, html[data-theme="elite"] .zone-name,
html[data-theme="elite"] .fun-tile-title, html[data-theme="elite"] .game-title, html[data-theme="elite"] .pc-name, html[data-theme="elite"] .tag { font-family: var(--tl-font) !important; }

/* ---- header ------------------------------------------------------------------------------ */
html[data-theme="elite"] header {
  background: rgba(7, 8, 10, .82) !important; border-bottom: 1px solid var(--tl-line-soft) !important;
  backdrop-filter: blur(18px); -webkit-backdrop-filter: blur(18px); position: sticky;
}
html[data-theme="elite"] header::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 1px; background: var(--tl-rule); opacity: .7; pointer-events: none; }
html[data-theme="elite"][data-mode="light"] header { background: rgba(255, 253, 248, .86) !important; }
html[data-theme="elite"] header .logo-mark-img, html[data-theme="elite"] header .logo-type { display: none !important; }
html[data-theme="elite"] .br-lockup { display: inline-flex; align-items: center; gap: 12px; }
html[data-theme="elite"] .br-emblem { width: 44px; height: 44px; filter: drop-shadow(0 0 8px rgba(227, 176, 75, .3)); }
html[data-theme="elite"] .br-word { height: 23px; width: auto; }
html[data-theme="elite"] .br-lt { display: none; }
html[data-theme="elite"][data-mode="light"] .br-dk { display: none; }
html[data-theme="elite"][data-mode="light"] .br-lt { display: block; }
html[data-theme="elite"] .br-sep { width: 1px; height: 26px; background: var(--tl-line); }
html[data-theme="elite"] .br-darts { font: 600 13px/1 var(--tl-font); letter-spacing: .55em; text-transform: uppercase; color: var(--tl-gold); padding-left: .2em; }
@media (max-width: 760px) {
  html[data-theme="elite"] .br-emblem { width: 38px; height: 38px; }
  html[data-theme="elite"] .br-word { height: 17px; }
  html[data-theme="elite"] .br-darts { font-size: 10px; letter-spacing: .45em; }
  html[data-theme="elite"] .br-lockup { gap: 9px; }
}
@media (max-width: 560px) { html[data-theme="elite"] .br-sep, html[data-theme="elite"] .br-darts { display: none; } html[data-theme="elite"] .br-word { height: 16px; } }
html[data-theme="elite"] .nav-btn {
  background: rgba(255, 255, 255, .03) !important; border: 1px solid var(--tl-line-soft) !important; color: var(--tl-ink) !important;
  border-radius: 12px !important; font-weight: 600 !important; letter-spacing: .01em; transition: border-color .15s, box-shadow .15s, background .15s;
  display: inline-flex; align-items: center; gap: 7px;
}
html[data-theme="elite"][data-mode="light"] .nav-btn { background: rgba(255, 255, 255, .7) !important; }
html[data-theme="elite"] .nav-btn:hover { border-color: var(--tl-line) !important; }
html[data-theme="elite"] .nav-btn.is-active { border-color: var(--tl-gold) !important; box-shadow: var(--tl-glow-y); }
html[data-theme="elite"] .nav-btn .br-ic { width: 17px; height: 17px; color: var(--tl-gold); flex: 0 0 auto; }
html[data-theme="elite"] .theme-select { background: rgba(255, 255, 255, .03) !important; border: 1px solid var(--tl-line-soft) !important; color: var(--tl-ink) !important; border-radius: 12px !important; font-family: var(--tl-font); }
html[data-theme="elite"][data-mode="light"] .theme-select { background: #fff !important; }
html[data-theme="elite"] .mode-toggle { border-color: var(--tl-gold) !important; color: var(--tl-gold) !important; box-shadow: 0 0 14px rgba(227, 176, 75, .22); }

/* ---- shared bits ------------------------------------------------------------------------------ */
html[data-theme="elite"] .br-eyebrow { display: flex; align-items: center; justify-content: center; gap: 14px; margin: 0 0 6px; font: 500 13px/1 var(--tl-font); letter-spacing: .55em; text-transform: uppercase; color: var(--tl-gold); }
html[data-theme="elite"] .br-eyebrow::before, html[data-theme="elite"] .br-eyebrow::after { content: ""; width: 56px; height: 2px; border-radius: 2px; background: linear-gradient(90deg, transparent, var(--tl-green)); }
html[data-theme="elite"] .br-eyebrow::after { background: linear-gradient(90deg, var(--tl-green), transparent); }
html[data-theme="elite"] .br-eyebrow span { padding-left: .55em; }
html[data-theme="elite"] .br-title {
  font: 800 clamp(34px, 7.4vw, 64px)/1.04 var(--tl-font) !important; letter-spacing: .01em; margin: 4px 0 8px !important; text-transform: none;
  background: var(--tl-goldtext); -webkit-background-clip: text; background-clip: text; color: transparent !important;
  filter: drop-shadow(0 2px 10px rgba(0, 0, 0, .35));
}
html[data-theme="elite"][data-mode="light"] .br-title { filter: none; }
html[data-theme="elite"] .br-title .br-o-wrap { color: var(--tl-gold); -webkit-text-fill-color: initial; }
html[data-theme="elite"] .br-rule { display: block; height: 2px; border-radius: 2px; background: var(--tl-rule); }
html[data-theme="elite"] .br-ic { width: 1em; height: 1em; display: block; }
/* icon tiles */
html[data-theme="elite"] .zone-icon, html[data-theme="elite"] .fun-tile-icon, html[data-theme="elite"] #homeScreen .game-card .icon {
  width: 64px !important; height: 64px !important; border-radius: 16px !important; display: inline-flex !important; align-items: center; justify-content: center;
  font-size: 34px !important; color: var(--tl-gold) !important; margin: 0 !important;
  background: linear-gradient(160deg, rgba(255, 255, 255, .06), rgba(255, 255, 255, .01)) !important;
  border: 1px solid var(--tl-line) !important; box-shadow: inset 0 0 18px rgba(227, 176, 75, .08);
}
html[data-theme="elite"][data-mode="light"] .zone-icon, html[data-theme="elite"][data-mode="light"] .fun-tile-icon, html[data-theme="elite"][data-mode="light"] #homeScreen .game-card .icon { background: linear-gradient(160deg, #fff, #f6efe1) !important; }

/* ---- start screen -------------------------------------------------------------------------------- */
html[data-theme="elite"] #zoneScreen { max-width: 1040px; margin: 0 auto; padding: 26px 16px 24px; }
html[data-theme="elite"] .zone-intro { text-align: center; margin-bottom: 26px !important; }
html[data-theme="elite"] .zone-intro p:not(.br-eyebrow) { font: 400 clamp(17px, 2.6vw, 24px)/1.3 var(--tl-font); letter-spacing: .08em; color: var(--tl-ink); opacity: .82; margin: 0; }
html[data-theme="elite"] .zone-grid { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(280px, 1fr)) !important; gap: 18px !important; }
html[data-theme="elite"] .zone-card {
  text-align: left; display: flex !important; flex-direction: column; align-items: flex-start; gap: 10px; padding: 24px 22px 20px !important;
  border-radius: 20px !important; border: 0 !important; color: var(--tl-ink) !important; position: relative; overflow: hidden;
  background: linear-gradient(165deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, .0) 40%), var(--tl-panel) !important;
}
html[data-theme="elite"] .zone-card-pro { box-shadow: var(--tl-glow-g) !important; }
html[data-theme="elite"] .zone-card-fun { box-shadow: var(--tl-glow-r) !important; background: linear-gradient(165deg, rgba(227, 52, 47, .14), rgba(227, 52, 47, 0) 55%), var(--tl-panel) !important; }
html[data-theme="elite"] .zone-card-pro { background: linear-gradient(165deg, rgba(34, 179, 99, .12), rgba(34, 179, 99, 0) 55%), var(--tl-panel) !important; }
html[data-theme="elite"] .zone-card::before { content: ""; position: absolute; right: -60px; top: -60px; width: 220px; height: 220px; border-radius: 50%; border: 18px solid rgba(255, 255, 255, .025); box-shadow: 0 0 0 26px rgba(255, 255, 255, .015); pointer-events: none; }
html[data-theme="elite"] .zone-card:hover, html[data-theme="elite"] .zone-card:focus-visible { transform: translateY(-3px); }
html[data-theme="elite"] .zone-name { font-size: clamp(24px, 3.4vw, 32px) !important; font-weight: 800 !important; line-height: 1.1; color: var(--tl-ink) !important; margin-top: 6px; }
html[data-theme="elite"] .zone-desc { color: var(--tl-mute) !important; font-size: 15px !important; line-height: 1.5; }
html[data-theme="elite"] .zone-go {
  margin-top: 8px; font: 700 13px/1 var(--tl-font) !important; letter-spacing: .2em; text-transform: uppercase; color: var(--tl-gold) !important;
  padding-bottom: 10px; position: relative;
}
html[data-theme="elite"] .zone-go::after { content: ""; position: absolute; left: 0; bottom: 0; width: 100%; height: 2px; border-radius: 2px; background: linear-gradient(90deg, var(--tl-green), var(--tl-gold) 60%, transparent); }
html[data-theme="elite"] .zone-card-fun .zone-go::after { background: linear-gradient(90deg, var(--tl-red), var(--tl-gold) 60%, transparent); }
html[data-theme="elite"][data-mode="light"] .zone-card-pro .zone-go, html[data-theme="elite"][data-mode="light"] .zone-card-fun .zone-go { color: var(--tl-green) !important; }
html[data-theme="elite"] .br-more { position: relative; margin: 26px 0 10px; min-height: 230px; display: flex; flex-direction: column; justify-content: center; padding-left: 6px; }
html[data-theme="elite"] .br-more-line { font: 500 clamp(18px, 3vw, 26px)/1.5 var(--tl-font); letter-spacing: .5em; text-transform: uppercase; color: var(--tl-gold); margin: 0; position: relative; z-index: 1; }
html[data-theme="elite"] .br-more-line span { display: block; }
html[data-theme="elite"] .br-more .br-rule { width: 190px; margin-top: 12px; position: relative; z-index: 1; background: linear-gradient(90deg, var(--tl-green), var(--tl-gold), var(--tl-red), transparent); }
html[data-theme="elite"] .br-darts-art { position: absolute; right: -16px; top: 0; bottom: 0; width: min(72%, 640px); background: url('brand/art/darts-dk.webp') right center / contain no-repeat; }
html[data-theme="elite"][data-mode="light"] .br-darts-art { background-image: url('brand/art/darts-lt.webp'); }
html[data-theme="elite"] .br-quick { display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; padding: 10px; border-radius: 18px; background: var(--tl-panel); border: 1px solid var(--tl-line-soft); }
html[data-theme="elite"] .br-quick-btn { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 14px 4px; border-radius: 12px; border: 1px solid var(--tl-line-soft); background: rgba(255, 255, 255, .02); color: var(--tl-ink); font: 500 13px/1.2 var(--tl-font); cursor: pointer; transition: border-color .15s, box-shadow .15s; }
html[data-theme="elite"][data-mode="light"] .br-quick-btn { background: #fff; }
html[data-theme="elite"] .br-quick-btn .br-ic { width: 28px; height: 28px; color: var(--tl-gold); }
html[data-theme="elite"] .br-quick-btn:hover { border-color: var(--tl-line); box-shadow: var(--tl-glow-y); }
@media (max-width: 520px) { html[data-theme="elite"] .br-quick { gap: 6px; padding: 8px; } html[data-theme="elite"] .br-quick-btn { font-size: 11px; padding: 11px 2px; } html[data-theme="elite"] .br-quick-btn .br-ic { width: 24px; height: 24px; } }
html[data-theme="elite"] .br-foot { display: flex; align-items: center; justify-content: center; gap: 16px; margin: 22px 0 6px; font: 500 12px/1 var(--tl-font); letter-spacing: .6em; text-transform: uppercase; color: var(--tl-gold); }
html[data-theme="elite"] .br-foot i { width: 90px; height: 2px; border-radius: 2px; background: linear-gradient(90deg, transparent, var(--tl-green)); }
html[data-theme="elite"] .br-foot i:last-child { background: linear-gradient(90deg, var(--tl-red), transparent); }

/* ---- games screen (pro + fun) ------------------------------------------------------------------------ */
html[data-theme="elite"] #homeScreen .stage-scene { display: none !important; }
html[data-theme="elite"] #homeScreen .hero { position: relative; text-align: left !important; padding: 30px 18px 14px !important; max-width: 1040px; margin: 0 auto; }
html[data-theme="elite"] #homeScreen .hero > *:not(.br-hero-art) { position: relative; z-index: 1; }
html[data-theme="elite"] #homeScreen .hero .br-eyebrow { justify-content: flex-start; }
html[data-theme="elite"] #homeScreen .hero .br-eyebrow::before { display: none; }
html[data-theme="elite"] #homeScreen .hero .br-eyebrow span { padding-left: 0; }
html[data-theme="elite"] #homeScreen .hero h1 { max-width: 12ch; }
html[data-theme="elite"] #homeScreen .hero > p { color: var(--tl-mute) !important; font: 400 17px/1.5 var(--tl-font) !important; max-width: 30ch; margin: 0 0 18px !important; position: relative; padding-bottom: 14px; }
html[data-theme="elite"] #homeScreen .hero > p::after { content: ""; position: absolute; left: 0; bottom: 0; width: 170px; height: 2px; border-radius: 2px; background: linear-gradient(90deg, var(--tl-green), var(--tl-gold), var(--tl-red), transparent); }
html[data-theme="elite"] .br-hero-art { position: absolute; right: -10px; top: 0; width: min(56%, 520px); height: 300px; background: url('brand/art/hero-fun-dk.webp') right top / contain no-repeat; z-index: 0; pointer-events: none; }
html[data-theme="elite"][data-mode="light"] .br-hero-art { background-image: url('brand/art/hero-fun-lt.webp'); }
@media (max-width: 560px) { html[data-theme="elite"] .br-hero-art { width: 58%; height: 200px; opacity: .38; } }
html[data-theme="elite"] .fun-actions { display: grid !important; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important; gap: 14px !important; margin: 6px 0 14px !important; }
html[data-theme="elite"] .fun-tile {
  display: flex !important; align-items: center; gap: 16px; padding: 16px 18px !important; border-radius: 18px !important; border: 0 !important; text-align: left;
  color: var(--tl-ink) !important; background: linear-gradient(110deg, rgba(227, 52, 47, .16), rgba(227, 52, 47, 0) 60%), var(--tl-panel) !important; box-shadow: var(--tl-glow-r) !important;
}
html[data-theme="elite"] #mpOpenBtn.fun-tile { background: linear-gradient(110deg, rgba(34, 179, 99, .16), rgba(34, 179, 99, 0) 60%), var(--tl-panel) !important; box-shadow: var(--tl-glow-g) !important; }
html[data-theme="elite"] .fun-tile .fun-tile-icon { width: 56px !important; height: 56px !important; font-size: 30px !important; }
html[data-theme="elite"] .fun-tile-title { font-weight: 800 !important; font-size: 20px !important; color: var(--tl-ink) !important; }
html[data-theme="elite"] .fun-tile-sub { color: var(--tl-mute) !important; font-size: 14px !important; }
html[data-theme="elite"] .fun-tile-go { color: var(--tl-ink) !important; font-size: 26px !important; margin-left: auto; }
html[data-theme="elite"] .hp-fun { display: flex !important; align-items: center; justify-content: center; gap: 12px; margin: 6px 0 10px; }
html[data-theme="elite"] .hp-fun::before, html[data-theme="elite"] .hp-fun::after { content: ""; flex: 1; height: 1px; background: linear-gradient(90deg, transparent, var(--tl-line)); }
html[data-theme="elite"] .hp-fun::after { background: linear-gradient(90deg, var(--tl-line), transparent); }
html[data-theme="elite"] #helpBtnFun { width: auto !important; border-radius: 999px !important; padding: 10px 22px !important; border: 1px solid var(--tl-line) !important; background: var(--tl-panel) !important; color: var(--tl-ink) !important; font-weight: 700 !important; }
html[data-theme="elite"] .br-q { color: var(--tl-red); font-weight: 800; margin-right: 6px; }
html[data-theme="elite"] .br-q2 { color: var(--tl-green); margin: 0 0 0 6px; }
html[data-theme="elite"] #homeScreen .hero-btn:not(#helpBtnFun) { width: auto !important; border-radius: 999px !important; border: 1px solid var(--tl-line) !important; background: var(--tl-panel) !important; color: var(--tl-ink) !important; font-weight: 600 !important; margin: 4px 6px 4px 0 !important; }
html[data-theme="elite"] .games-grid { max-width: 1040px; margin: 0 auto !important; padding: 0 16px 24px !important; display: grid !important; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)) !important; gap: 16px !important; }
html[data-theme="elite"] #homeScreen .game-card {
  position: relative; overflow: hidden; text-align: left !important; padding: 20px 18px 18px !important; border-radius: 18px !important; border: 0 !important; min-height: 230px;
  background: var(--tl-panel) !important; color: var(--tl-ink) !important;
  display: flex; flex-direction: column; align-items: flex-start; gap: 8px;
}
html[data-theme="elite"][data-mode="light"] #homeScreen .game-card { background: var(--tl-panel-2) !important; }
/* v11.2 – the picture fills the right of the card and fades out at its centre */
html[data-theme="elite"] #homeScreen .game-card::after { content: ''; position: absolute; top: 0; right: 0; bottom: 0; width: 64%; background: var(--br-art-dk) right center / cover no-repeat; pointer-events: none; z-index: 0; }
html[data-theme="elite"][data-mode="light"] #homeScreen .game-card::after { background-image: var(--br-art-lt); }
html[data-theme="elite"] #homeScreen .game-card > * { position: relative; z-index: 1; }
html[data-theme="elite"] #homeScreen .game-card.br-glow-r { box-shadow: var(--tl-glow-r) !important; }
html[data-theme="elite"] #homeScreen .game-card.br-glow-g { box-shadow: var(--tl-glow-g) !important; }
html[data-theme="elite"] #homeScreen .game-card:hover { transform: translateY(-3px); }
html[data-theme="elite"] #homeScreen .game-card h3 { font-weight: 800 !important; font-size: 26px !important; color: var(--tl-ink) !important; margin: 10px 0 0 !important; max-width: 70%; text-shadow: 0 2px 10px rgba(0, 0, 0, .6); }
html[data-theme="elite"][data-mode="light"] #homeScreen .game-card h3 { text-shadow: 0 1px 8px rgba(255, 255, 255, .9); }
html[data-theme="elite"] #homeScreen .game-card p { color: var(--tl-mute) !important; font-size: 14px !important; line-height: 1.45; max-width: 64%; margin: 0 !important; text-shadow: 0 1px 6px rgba(0, 0, 0, .7); }
html[data-theme="elite"][data-mode="light"] #homeScreen .game-card p { color: #4f493f !important; text-shadow: 0 1px 6px rgba(255, 255, 255, .95); }
html[data-theme="elite"] #homeScreen .game-card .tag {
  margin-top: auto !important; display: inline-flex !important; align-items: center; gap: 10px; padding: 8px 14px !important; border-radius: 999px !important;
  background: rgba(0, 0, 0, .25) !important; border: 1px solid var(--tl-line) !important; color: var(--tl-gold) !important; font: 700 11px/1 var(--tl-font) !important; letter-spacing: .2em !important;
}
html[data-theme="elite"][data-mode="light"] #homeScreen .game-card .tag { background: rgba(255, 255, 255, .85) !important; color: var(--tl-green) !important; border-color: rgba(23, 138, 74, .45) !important; }
html[data-theme="elite"] #homeScreen .game-card .tag i { font-style: normal; font-size: 15px; line-height: 0; }

/* ---- match screen ---------------------------------------------------------------------------------------- */
html[data-theme="elite"] .game-title { font-weight: 800 !important; background: var(--tl-goldtext); -webkit-background-clip: text; background-clip: text; color: transparent !important; }
html[data-theme="elite"] .player-card {
  border-radius: 18px !important; border: 0 !important; background: linear-gradient(165deg, rgba(255, 255, 255, .05), rgba(255, 255, 255, 0) 45%), var(--tl-panel) !important;
  box-shadow: 0 0 0 1px var(--tl-line-soft) !important; color: var(--tl-ink);
}
html[data-theme="elite"] .player-card.active {
  box-shadow: 0 0 0 1.5px var(--tl-gold), 0 0 26px rgba(227, 176, 75, .3), -10px 0 30px -12px rgba(227, 52, 47, .55), 10px 0 30px -12px rgba(34, 179, 99, .55) !important;
}
html[data-theme="elite"] .pc-score { font-family: var(--tl-font) !important; font-weight: 800 !important; background: var(--tl-goldtext); -webkit-background-clip: text; background-clip: text; color: transparent !important; }
html[data-theme="elite"] .player-card:not(.active) .pc-score { opacity: .85; }
html[data-theme="elite"] .pc-label { letter-spacing: .35em !important; color: var(--tl-mute) !important; }
html[data-theme="elite"] .pc-stats { border-top: 1px solid var(--tl-line-soft) !important; }
html[data-theme="elite"] .pc-name .dot { background: var(--tl-mute); }
html[data-theme="elite"] .player-card.active .pc-name .dot { background: var(--tl-gold) !important; box-shadow: 0 0 10px var(--tl-gold); }
html[data-theme="elite"] .br-section { display: flex !important; align-items: center; justify-content: center; gap: 14px; font: 600 13px/1 var(--tl-font) !important; letter-spacing: .45em !important; color: var(--tl-gold) !important; text-transform: uppercase; }
html[data-theme="elite"] .br-section::before, html[data-theme="elite"] .br-section::after { content: ""; flex: 0 1 70px; height: 2px; border-radius: 2px; background: linear-gradient(90deg, transparent, var(--tl-red)); }
html[data-theme="elite"] .br-section::after { background: linear-gradient(90deg, var(--tl-red), transparent); }
html[data-theme="elite"] .history-section h4.br-section { justify-content: flex-start; }
html[data-theme="elite"] .history-section h4.br-section::before { display: none; }
html[data-theme="elite"] .history-section h4.br-section::after { flex: 1; background: linear-gradient(90deg, var(--tl-gold), transparent); opacity: .5; }
html[data-theme="elite"] .score-input-section, html[data-theme="elite"] .history-section { background: var(--tl-panel) !important; border: 1px solid var(--tl-line-soft) !important; border-radius: 20px !important; }
html[data-theme="elite"] .throw-slot { border-radius: 12px !important; border: 1px solid var(--tl-line-soft) !important; background: rgba(255, 255, 255, .03) !important; color: var(--tl-ink) !important; font-family: var(--tl-font) !important; font-weight: 700 !important; }
html[data-theme="elite"] .throw-slot:not(.empty) { border-color: var(--tl-gold) !important; color: var(--tl-gold) !important; }
html[data-theme="elite"] .throw-slot.empty:first-child, html[data-theme="elite"] .throw-slot:not(.empty) + .throw-slot.empty { border-color: var(--tl-green) !important; box-shadow: 0 0 14px rgba(34, 179, 99, .3); }
html[data-theme="elite"] .mult-btn { border-radius: 12px !important; font-family: var(--tl-font) !important; letter-spacing: .14em !important; }
html[data-theme="elite"] .mult-btn.active { background: var(--tl-goldfill) !important; color: #1a1306 !important; border-color: transparent !important; }
html[data-theme="elite"] #dartboard { position: relative; }
html[data-theme="elite"] #dartboard > svg.db-svg .db-surround { filter: drop-shadow(-9px 0 12px rgba(227, 52, 47, .55)) drop-shadow(9px 0 12px rgba(34, 179, 99, .55)); }
html[data-theme="elite"][data-mode="light"] #dartboard > svg.db-svg .db-surround { filter: drop-shadow(-7px 0 10px rgba(227, 52, 47, .3)) drop-shadow(7px 0 10px rgba(34, 179, 99, .3)); }
html[data-theme="elite"] .action-btn.submit, html[data-theme="elite"] .player-card.active .card-submit { background: var(--tl-goldfill) !important; color: #1a1306 !important; border: 0 !important; box-shadow: 0 6px 20px rgba(227, 176, 75, .28) !important; font-family: var(--tl-font) !important; font-weight: 800 !important; }
html[data-theme="elite"] .action-btn.undo { border: 1px solid var(--tl-line) !important; background: transparent !important; color: var(--tl-ink) !important; }
html[data-theme="elite"] .history-item { border-radius: 12px !important; background: rgba(255, 255, 255, .025) !important; border: 1px solid var(--tl-line-soft) !important; margin-bottom: 6px; }
html[data-theme="elite"][data-mode="light"] .history-item { background: #fff !important; }
html[data-theme="elite"] .history-item .score:not(.bust) { color: var(--tl-green) !important; font-weight: 700; }

/* ---- buttons, settings, modals ------------------------------------------------------------------------------ */
html[data-theme="elite"] .btn-primary { background: var(--tl-goldfill) !important; color: #1a1306 !important; border: 0 !important; border-radius: 999px !important; font-weight: 800 !important; box-shadow: 0 6px 18px rgba(227, 176, 75, .25); }
html[data-theme="elite"] .btn-secondary { border-radius: 12px !important; border: 1px solid var(--tl-line-soft) !important; }
html[data-theme="elite"] .btn-secondary:hover { border-color: var(--tl-line) !important; }
html[data-theme="elite"] .setup-screen, html[data-theme="elite"] .modal { background: var(--tl-panel-2) !important; border: 1px solid var(--tl-line-soft) !important; border-radius: 20px !important; box-shadow: 0 20px 60px rgba(0, 0, 0, .45), 0 0 0 1px rgba(227, 176, 75, .08); }
html[data-theme="elite"] .setup-screen h2, html[data-theme="elite"] .modal h2 { font-weight: 800 !important; }
html[data-theme="elite"] .form-row > label { font-family: var(--tl-font); letter-spacing: .3em !important; color: var(--tl-gold) !important; }
html[data-theme="elite"] .st-pill.on { background: var(--tl-goldfill) !important; color: #1a1306 !important; }

/* ---- the splash: new lockup, light rays (Classic edition) ---------------------------------------------------------- */
.br-splash { display: none; }
body.ed-classic .br-splash { display: block; position: absolute; inset: 0; z-index: 0; overflow: hidden;
  background: radial-gradient(ellipse 70% 50% at 50% 42%, #17181d 0%, #07080a 70%); }
body.ed-classic .tl-splash-bg, body.ed-classic .tl-splash .tl-brand, body.ed-classic .tl-splash .tl-tag, body.ed-classic .tl-splash .tl-pill { display: none !important; }
body.ed-classic .tl-splash::after { background: linear-gradient(180deg, rgba(7, 8, 10, .2), rgba(7, 8, 10, 0) 30%, rgba(7, 8, 10, 0) 70%, rgba(7, 8, 10, .6)); }
.br-rays i { position: absolute; left: -20%; right: -20%; height: 2px; filter: blur(1px); opacity: .55; transform-origin: center; }
.br-rays i:nth-child(1) { top: 30%; background: linear-gradient(90deg, transparent, #e3342f 30%, transparent 60%); transform: rotate(-14deg); animation: brRay 9s ease-in-out infinite alternate; }
.br-rays i:nth-child(2) { top: 62%; background: linear-gradient(90deg, transparent 40%, #22b363 70%, transparent); transform: rotate(12deg); animation: brRay 11s ease-in-out infinite alternate-reverse; }
.br-rays i:nth-child(3) { top: 46%; height: 140px; filter: blur(60px); opacity: .25; background: radial-gradient(closest-side, #e3b04b, transparent); }
@keyframes brRay { from { translate: -6% 0; } to { translate: 6% 0; } }
.br-splash-lock { position: absolute; left: 50%; top: 44%; transform: translate(-50%, -50%); width: min(86vw, 760px); display: flex; flex-direction: column; align-items: center; gap: 2.4vh; }
.br-splash-emblem { width: min(30vh, 46vw); filter: drop-shadow(0 0 24px rgba(227, 176, 75, .35)); animation: brFloat 6s ease-in-out infinite alternate; }
.br-splash-word { width: 100%; filter: drop-shadow(0 4px 18px rgba(0, 0, 0, .6)); }
.br-splash-lock .br-rule { width: 70%; height: 2px; border-radius: 2px; background: linear-gradient(90deg, transparent, #22b363 20%, #e3b04b 50%, #e3342f 80%, transparent); }
.br-splash-tag { margin: 0; font: 500 clamp(13px, 2.6vw, 22px)/1 'Montserrat', 'Segoe UI', sans-serif; letter-spacing: .6em; padding-left: .6em; text-transform: uppercase; color: #e3b04b; }
.br-splash-art { position: absolute; right: 0; bottom: 0; width: min(70vw, 760px); height: 40vh; background: url('brand/art/darts-dk.webp') right bottom / contain no-repeat; opacity: .55; }
@keyframes brFloat { from { translate: 0 -0.6vh; } to { translate: 0 0.6vh; } }
@media (prefers-reduced-motion: reduce) { .br-rays i, .br-splash-emblem { animation: none; } }
/* zone switching wins over the brand's display rules */
html[data-theme] body.zone-pro .fun-only, html[data-theme] body.zone-fun .pro-only { display: none !important; }
html[data-theme="elite"] #homeScreen .game-card::before { display: none !important; }
html[data-theme="elite"] #homeScreen .game-card.br-glow-r:hover { box-shadow: var(--tl-glow-r), 0 16px 40px rgba(0, 0, 0, .35) !important; }
html[data-theme="elite"] #homeScreen .game-card.br-glow-g:hover { box-shadow: var(--tl-glow-g), 0 16px 40px rgba(0, 0, 0, .35) !important; }
/* v11.5 – the poster and Aotearoa splashes, with the new logo */
.tl-splash .br-logo { display: none; }
body:not(.ed-classic) .tl-splash .tl-brand { display: none !important; }
body:not(.ed-classic) .tl-splash .br-logo { display: flex; flex-direction: column; align-items: center; gap: 1.2vh; }
.br-logo-emblem { height: min(16vh, 30vw); filter: drop-shadow(0 0 18px rgba(227, 176, 75, .35)) drop-shadow(0 .6vh 1.4vh rgba(0, 0, 0, .7)); }
.br-logo-word { width: min(78vw, 560px); filter: drop-shadow(0 .4vh 1.2vh rgba(0, 0, 0, .8)); }
body.ed-aotearoa .tl-splash .br-logo-emblem { display: none; }
body.ed-aotearoa .tl-splash .br-logo-word { width: min(70vw, 480px); }
/* v11.6 – 'Venue – the TV screen': the poster scene as the TV shows it. On a
   phone that means the board in the middle AND the one on the wall to the side
   (the poster edition zooms in on the middle board instead) */
body.ed-venue .tl-splash .tl-brand { display: none !important; }
@media (max-aspect-ratio: 1/1) {
  body.ed-venue .tl-splash-bg { background-size: 150vw auto !important; background-position: 100% 54% !important;
    -webkit-mask-image: linear-gradient(180deg, transparent 32%, #000 42%, #000 64%, transparent 74%); mask-image: linear-gradient(180deg, transparent 32%, #000 42%, #000 64%, transparent 74%); }
}
/* …and the TV green room carries the new logo */
#mpTvWait .tvp-brand { display: none !important; }
#mpTvWait .br-logo-tv { display: flex; flex-direction: row; align-items: center; justify-content: center; gap: 2vh; }
#mpTvWait .br-logo-tv .br-logo-emblem { height: 11vh; width: auto; }
#mpTvWait .br-logo-tv .br-logo-word { height: 7vh; width: auto; }

/* ==========================================================================
   v11.7 – THE PICTURE SPLASHES (from the Throwline artwork), one at a time or on
   rotation. #tlSplash[data-slide] picks one; the touch button and clock
   (.tl-splash-bot) stay on top of all of them.
   ========================================================================== */
.br-slides { display: none; }
.tl-splash[data-slide] .br-slides { display: block; position: absolute; inset: 0; z-index: 0; overflow: hidden; background: #050607; }
.tl-splash[data-slide] .tl-splash-bg, .tl-splash[data-slide] .tl-splash-top, .tl-splash[data-slide] .br-splash, .tl-splash[data-slide] .ed-board { display: none !important; }
.tl-splash[data-slide]::after { background: none; }
.br-sl { display: none; position: absolute; inset: 0; }
.tl-splash[data-slide="accuracy"] .br-sl-accuracy, .tl-splash[data-slide="improve"] .br-sl-improve, .tl-splash[data-slide="focus"] .br-sl-focus,
.tl-splash[data-slide="darts"] .br-sl-darts, .tl-splash[data-slide="tile"] .br-sl-tile, .tl-splash[data-slide="light"] .br-sl-light { display: block; animation: brSlIn .9s ease-out both; }
@keyframes brSlIn { from { opacity: 0; transform: scale(1.03); } to { opacity: 1; transform: none; } }
.br-sl-art { position: absolute; display: block; background-repeat: no-repeat; }
.br-sl-txt { position: absolute; display: flex; flex-direction: column; align-items: flex-start; text-align: left; gap: 2.2vh; z-index: 1; }
.br-sl-big { margin: 0; font: 500 clamp(22px, 6.4vw, 54px)/1.45 'Montserrat', 'Segoe UI', sans-serif; letter-spacing: .32em; text-transform: uppercase; color: #e8c27a;
  text-shadow: 0 0 18px rgba(227, 176, 75, .25), 0 2px 10px rgba(0, 0, 0, .8); }
.br-sl-tag { margin: 0; font: 500 clamp(12px, 3.4vw, 22px)/1 'Montserrat', 'Segoe UI', sans-serif; letter-spacing: .5em; padding-left: .5em; text-transform: uppercase; color: #e3b04b; }
.br-sl-word { width: min(62vw, 420px); height: auto; filter: drop-shadow(0 4px 14px rgba(0, 0, 0, .7)); }
.br-sl .br-rule { display: block; width: min(46vw, 260px); height: 2px; border-radius: 2px; background: linear-gradient(90deg, #22b363, #e3b04b 50%, #e3342f); box-shadow: 0 0 10px rgba(227, 176, 75, .4); }
.br-sl-glow { position: absolute; inset: 0; display: block;
  background: radial-gradient(ellipse 60% 40% at 15% 75%, rgba(227, 52, 47, .22), transparent 70%), radial-gradient(ellipse 60% 40% at 85% 25%, rgba(34, 179, 99, .18), transparent 70%); }

/* Accuracy builds progress – the dart in the bull, words below */
.br-sl-accuracy .br-sl-art { inset: 0; background-image: url('brand/splash/sp-accuracy.webp'); background-size: cover; background-position: 22% 30%; }
.br-sl-accuracy::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 38%, rgba(5, 6, 7, .85) 62%, #050607 80%); }
.br-sl-accuracy .br-sl-txt { left: 8vw; bottom: 22vh; }
/* Improve your game – the board's edge and a flying dart */
.br-sl-improve .br-sl-art { inset: 0; background-image: url('brand/splash/sp-improve.webp'); background-size: cover; background-position: 0% 40%; }
.br-sl-improve .br-sl-txt { right: 8vw; bottom: 22vh; align-items: flex-end; text-align: right; }
.br-sl-improve::after { content: ''; position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, rgba(5, 6, 7, .7) 75%, #050607 92%); }
/* Sharper focus. Better results. */
.br-sl-focus .br-sl-art { left: -20vw; right: -40vw; top: 34vh; height: 56vh; background-image: url('brand/splash/sp-focus.webp'); background-size: cover; background-position: 100% 50%;
  -webkit-mask-image: radial-gradient(ellipse 60% 55% at 62% 50%, #000 55%, transparent 100%); mask-image: radial-gradient(ellipse 60% 55% at 62% 50%, #000 55%, transparent 100%); }
.br-sl-focus .br-sl-txt { left: 8vw; top: 12vh; }
/* More than a game – the darts in the board, from the home-screen mock-up */
.br-sl-darts .br-sl-art { right: 0; bottom: 0; width: 120vw; height: 65vw; background-image: url('brand/splash/sp-darts.webp'); background-size: cover; background-position: 100% 100%;
  -webkit-mask-image: linear-gradient(0deg, #000 70%, transparent), linear-gradient(90deg, transparent, #000 30%); -webkit-mask-composite: source-in; mask-image: linear-gradient(0deg, #000 70%, transparent); }
.br-sl-darts .br-sl-txt { left: 0; right: 0; top: 22vh; align-items: center; text-align: center; }
/* The Throwline tile (dark) */
.br-sl-tile .br-sl-art { left: 50%; top: 9vh; width: min(70vw, 46vh); aspect-ratio: 680 / 880; transform: translateX(-50%); background-image: url('brand/splash/sp-tile.webp'); background-size: contain;
  -webkit-mask-image: radial-gradient(closest-side, #000 72%, transparent); mask-image: radial-gradient(closest-side, #000 72%, transparent); }
.br-sl-tile .br-sl-txt { left: 0; right: 0; top: calc(9vh + min(70vw, 46vh) * 1.3 - 2vh); align-items: center; text-align: center; }
/* Ivory and gold (the light one) */
.br-sl-light { background: radial-gradient(ellipse 80% 60% at 50% 38%, #ffffff 0%, #f6f1e7 55%, #e9e1d1 100%); }
.br-sl-rays { position: absolute; inset: 0; display: block; opacity: .7;
  background: repeating-conic-gradient(from 200deg at 30% 0%, rgba(255, 255, 255, 0) 0deg 9deg, rgba(255, 244, 214, .55) 10deg 12deg, rgba(255, 255, 255, 0) 13deg 22deg); }
.br-sl-light .br-sl-art { left: 50%; top: 10vh; width: min(72vw, 44vh); aspect-ratio: 800 / 848; transform: translateX(-50%); background-image: url('brand/splash/sp-light-tile.webp'); background-size: contain;
  -webkit-mask-image: radial-gradient(closest-side, #000 74%, transparent); mask-image: radial-gradient(closest-side, #000 74%, transparent); }
.br-sl-light .br-sl-txt { left: 0; right: 0; top: calc(10vh + min(72vw, 44vh) * 1.06 + 3vh); align-items: center; text-align: center; }
.br-sl-light .br-sl-word { filter: drop-shadow(0 3px 8px rgba(120, 90, 30, .25)); }
.br-sl-light .br-sl-tag { color: #9a7330; }
.tl-splash[data-slide="light"] .tl-touch { color: #3a2a0c; background: rgba(255, 255, 255, .7); }
.tl-splash[data-slide="light"] .tl-clock { color: #6b5428; }

/* landscape screens (tablets, laptops, a TV): pictures to one side, words to the other */
@media (min-aspect-ratio: 1/1) {
  .br-sl-big { font-size: clamp(22px, 4.2vh, 48px); }
  .br-sl-word { width: min(36vw, 420px); }
  .br-sl-accuracy .br-sl-art { right: 30vw; background-position: 30% 40%; }
  .br-sl-accuracy::after { background: linear-gradient(90deg, transparent 45%, rgba(5, 6, 7, .9) 68%, #050607 75%); }
  .br-sl-accuracy .br-sl-txt { left: auto; right: 8vw; bottom: auto; top: 50%; transform: translateY(-50%); }
  .br-sl-improve .br-sl-art { right: 30vw; }
  .br-sl-improve::after { background: linear-gradient(90deg, transparent 50%, rgba(5, 6, 7, .85) 72%, #050607 78%); }
  .br-sl-improve .br-sl-txt { right: 8vw; bottom: auto; top: 50%; transform: translateY(-50%); align-items: flex-start; text-align: left; }
  .br-sl-focus .br-sl-art { left: 30vw; right: 0; top: 0; height: 100vh; }
  .br-sl-focus .br-sl-txt { top: 50%; transform: translateY(-50%); }
  .br-sl-darts .br-sl-art { width: 62vw; height: 100vh; background-position: 100% 100%; -webkit-mask-image: linear-gradient(90deg, transparent, #000 35%); mask-image: linear-gradient(90deg, transparent, #000 35%); }
  .br-sl-darts .br-sl-txt { left: 7vw; right: auto; top: 30vh; align-items: flex-start; text-align: left; }
  .br-sl-tile .br-sl-art, .br-sl-light .br-sl-art { left: 28vw; top: 50%; width: 40vh; transform: translate(-50%, -50%); }
  .br-sl-tile .br-sl-txt, .br-sl-light .br-sl-txt { left: 50vw; right: auto; top: 50%; transform: translateY(-50%); align-items: flex-start; text-align: left; }
}
@media (prefers-reduced-motion: reduce) { .br-sl { animation: none !important; } }
/* v11.11 – the 20-second rotation fades from one screen to the next */
.tl-splash.br-swap { animation: brSwap .9s ease-out; }
@keyframes brSwap { from { opacity: .25; } to { opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .tl-splash.br-swap { animation: none; } }
