:root{color-scheme:dark;--bg:#0b0e1a;--panel:#131932;--well:#0b0e1a;--line:#232b4d;--ink:#eef2ff;--mute:#8b93b8;--dim:#525b83;--hot:#ffb02e;--hot2:#ff6a2b;--treble:#ffb02e;--double:#5fd68f;--single:#a5b4ff;--bull:#ff6a2b}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;overflow-x:hidden}
a{color:var(--hot)}img{max-width:100%;height:auto;display:block}
.wrap{max-width:1040px;margin:0 auto;padding:0 16px}.wrap.prose{max-width:760px}
.top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 18px;padding:14px 0}
.brand{display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;font-weight:900;letter-spacing:1px;white-space:nowrap}
.brand img{width:32px;height:32px;border-radius:8px}
.top nav{display:flex;flex-wrap:wrap;gap:4px 16px}
.top nav a{color:var(--mute);text-decoration:none;font-weight:700;font-size:15px}.top nav a[aria-current]{color:var(--ink)}
main{padding:12px 0 0}
h1{font-size:clamp(34px,8vw,54px);letter-spacing:-1.5px;line-height:1.05;margin:0 0 10px}
h2{font-size:clamp(24px,5.5vw,32px);letter-spacing:-.5px;line-height:1.15;margin:40px 0 12px}
h3{font-size:19px;margin:24px 0 6px}
p{margin:0 0 14px}
.tag,.kicker{color:var(--mute);letter-spacing:3px;text-transform:uppercase;font-size:12px;font-weight:800;margin:0 0 6px}
.sub{color:var(--mute);max-width:36em}
.price{font-weight:800;color:var(--hot);letter-spacing:.5px}
code{background:#1a2138;padding:2px 6px;border-radius:6px}
.btn{display:inline-block;background:linear-gradient(180deg,var(--hot),var(--hot2));color:#fff;font:inherit;font-weight:800;padding:12px 22px;border-radius:12px;text-decoration:none;border:0;cursor:pointer}
.btn:focus-visible,.rem:focus-visible{outline:3px solid var(--hot);outline-offset:3px}
.store{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin:6px 0 18px}.badge{display:inline-block;line-height:0}.badge img{width:150px;height:50px}
.store.soon .badge img{opacity:.5;filter:grayscale(1)}.soon-tag{color:var(--hot);font-weight:800;font-size:14px;letter-spacing:.5px}
.faq h3{margin:22px 0 4px}.faq p{max-width:44em}.updated{color:var(--dim);font-size:13px}
.chart tr:target td{background:rgba(255,176,46,.16)}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.foot{color:var(--dim);font-size:13px;padding:30px 0 50px;border-top:1px solid var(--line);margin-top:48px}.foot a{color:var(--mute)}.small{font-size:11px}
.feats{display:grid;gap:12px;grid-template-columns:1fr;margin:20px 0}
.feat{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:16px 18px}
.feat h3{margin:0 0 4px;font-size:18px}.feat p{margin:0;color:var(--mute);font-size:15px}
.deal{background:linear-gradient(160deg,#1b1530,#131932);border:1px solid #4a2d2a;border-radius:22px;padding:24px 20px;margin:28px 0}
.deal p.big{font-size:clamp(22px,6vw,30px);font-weight:900;line-height:1.15;margin:0 0 10px}
.deal ul{padding-left:20px;margin:0;color:var(--mute)}.deal li{margin:4px 0}
/* finder */
.finder{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:20px 16px 18px;margin:18px 0 28px}
.finder .lbl{display:block;color:var(--mute);letter-spacing:3px;text-transform:uppercase;font-size:12px;font-weight:800;margin:0 0 8px}
.rem{width:100%;max-width:240px;font:900 56px/1.1 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;letter-spacing:-1px;background:var(--well);color:var(--ink);border:2px solid var(--line);border-radius:16px;padding:8px 14px;text-align:center;-moz-appearance:textfield;appearance:textfield}
.rem::-webkit-outer-spin-button,.rem::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.rem:focus{outline:none;border-color:var(--hot);box-shadow:0 0 0 4px rgba(255,176,46,.22)}
.modes{display:flex;gap:6px;border:0;padding:0;margin:14px 0 0;min-width:0}
.modes label{position:relative;flex:1;text-align:center;background:var(--well);border:1px solid var(--line);border-radius:12px;padding:10px 4px;font-weight:800;font-size:14px;cursor:pointer;color:var(--mute);white-space:nowrap}
.modes input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.modes label:has(input:checked){background:var(--hot);color:#1a1200;border-color:var(--hot)}
.modes label:has(input:focus-visible){outline:3px solid var(--hot);outline-offset:2px}
.answer{margin-top:20px}
.route{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 6px;font-size:clamp(30px,9vw,46px);font-weight:900;letter-spacing:-.5px;line-height:1.15}
.dart{display:inline-block;padding:0 12px;border-radius:12px;background:var(--well);border:2px solid var(--line)}
.dart.t{color:var(--treble)}.dart.d{color:var(--double)}.dart.s{color:var(--single)}.dart.b{color:var(--bull)}
.none{color:var(--mute);font-weight:800}
.note{color:var(--mute);font-size:15px;margin:0 0 16px}
.answer .kicker{margin-top:14px}
.alts,.miss{list-style:none;padding:0;margin:0}
.alts li,.miss li{padding:7px 0;border-top:1px solid var(--line);font-size:16px;line-height:1.7}
.alts .dart,.miss .dart{font-size:17px;font-weight:800;padding:0 8px;border-width:1px;border-radius:8px;line-height:1.4}
.miss .lead{color:var(--mute)}
.explain p{max-width:44em}
/* scorer */
[hidden]{display:none!important}
.sc-app{margin:14px 0 28px}
.sc-panel{background:var(--panel);border:1px solid var(--line);border-radius:22px;padding:18px 16px}
.sc-setup fieldset{border:0;padding:0;margin:0 0 16px;min-width:0}
.sc-setup legend,.sc-lbl{display:block;color:var(--mute);letter-spacing:3px;text-transform:uppercase;font-size:12px;font-weight:800;margin:0 0 8px;padding:0}
.sc-setup .modes{margin:0}
.sc-names{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}
.sc-name input{width:100%;font:inherit;font-weight:700;background:var(--well);color:var(--ink);border:1px solid var(--line);border-radius:12px;padding:10px 12px}
.sc-name input:focus{outline:none;border-color:var(--hot)}
.sc-start{width:100%;font-size:20px;padding:14px 22px}
.sc-bar{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:0 0 12px}
.sc-line{color:var(--mute);font-weight:800;font-size:14px;letter-spacing:.5px;margin:0}
.btn.ghost{background:var(--well);border:1px solid var(--line);color:var(--ink);padding:8px 14px;font-size:15px}
.sc-players{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}
.sc-player{background:var(--well);border:2px solid var(--line);border-radius:18px;padding:10px 12px;min-width:0}
.sc-player.on{border-color:var(--hot);box-shadow:0 0 0 3px rgba(255,176,46,.18)}
.sc-player.won{border-color:var(--double)}
.sc-ptop{display:flex;justify-content:space-between;gap:6px;font-weight:800;font-size:15px}
.sc-pname{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sc-legs{color:var(--mute);white-space:nowrap}
.sc-rem{font-weight:900;font-size:clamp(44px,13vw,76px);line-height:1.05;letter-spacing:-2px;font-variant-numeric:tabular-nums}
.sc-player.on .sc-rem{color:var(--hot)}
.sc-meta{display:flex;flex-wrap:wrap;gap:0 10px;color:var(--mute);font-size:13px;font-weight:700}
.sc-meta .bust{color:var(--bull)}
.sc-suggest{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:10px 14px;margin:10px 0 0}
.sc-suggest .kicker{margin:0 0 4px}.sc-suggest .route{font-size:clamp(24px,7vw,36px);margin:0}
.sc-entrybox{display:flex;align-items:center;justify-content:space-between;gap:10px;background:var(--well);border:2px solid var(--hot);border-radius:16px;padding:4px 14px;margin:0 0 8px}
.sc-who{color:var(--mute);font-weight:800;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sc-entry{font-weight:900;font-size:46px;line-height:1.15;font-variant-numeric:tabular-nums}.sc-entry.empty{color:var(--dim)}
.sc-msg{min-height:1.6em;font-weight:700;font-size:15px;color:var(--mute);margin:0 0 8px}
.sc-msg.bust{color:var(--bull)}.sc-msg.win{color:var(--double)}.sc-msg.err{color:var(--hot)}
.sc-quick{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin:0 0 8px}
.sc-keypad{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.sc-keypad button,.sc-quick button,.sc-pick button{font:inherit;font-weight:900;border-radius:14px;border:1px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;user-select:none;-webkit-user-select:none}
.sc-quick button{font-size:16px;min-height:42px;color:var(--mute)}
.sc-keypad button{font-size:28px;min-height:62px}
.sc-keypad .k-bust{color:var(--bull);font-size:18px;letter-spacing:1px}.sc-keypad .k-undo,.sc-keypad .k-del{font-size:18px;color:var(--mute)}
.sc-keypad .k-enter{grid-column:span 2;background:linear-gradient(180deg,var(--hot),var(--hot2));color:#fff;border:0;font-size:22px;letter-spacing:1px}
.sc-keypad.locked button:not(.k-undo){opacity:.3;pointer-events:none}
.sc-keypad button:disabled{opacity:.35}
.sc-keypad button:active,.sc-quick button:active,.sc-pick button:active{transform:translateY(1px);filter:brightness(1.2)}
.sc-keypad button:focus-visible,.sc-quick button:focus-visible,.sc-pick button:focus-visible{outline:3px solid var(--hot);outline-offset:2px}
.sc-pick{background:var(--panel);border:1px solid var(--double);border-radius:16px;padding:10px 12px;margin:0 0 8px}
.sc-pick .row{display:flex;gap:8px}.sc-pick button{flex:1;min-height:54px;font-size:20px;color:var(--double)}
.sc-log{list-style:none;padding:0;margin:0;font-size:15px}
.sc-log li{display:grid;grid-template-columns:minmax(0,1fr) 5em 3.5em;gap:8px;padding:5px 0;border-top:1px solid var(--line);font-variant-numeric:tabular-nums}
.sc-log .who{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--mute)}.sc-log .pts{font-weight:800;text-align:right}.sc-log .left{text-align:right;color:var(--mute)}
.sc-log li.bust .pts{color:var(--bull)}.sc-log li.out .pts{color:var(--double)}
.sc-result{margin:14px 0 0;border-color:var(--double)}
.sc-result h2{margin:0 0 6px}
.sc-tablewrap{overflow-x:auto;margin:10px 0 14px}
.sc-table{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums}
.sc-table th,.sc-table td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:right;white-space:nowrap}
.sc-table thead th{color:var(--ink);font-weight:800}.sc-table tbody th{text-align:left;color:var(--mute);font-weight:700}
.sc-table .win{color:var(--double);font-weight:900}
.sc-actions{display:flex;flex-wrap:wrap;gap:8px}
.sc-side .kicker{margin-top:14px}
@media(min-width:900px){.sc-match{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:22px;align-items:start}.sc-side{grid-column:2;grid-row:1/span 2}}
.getapp{background:linear-gradient(160deg,#1b1530,#131932);border:1px solid #4a2d2a;border-radius:22px;padding:24px 20px;margin:28px 0}
.getapp h2{margin:0 0 8px}.getapp ul{padding-left:20px;color:var(--mute);margin:0 0 14px}.getapp li{margin:4px 0}
/* chart */
.chartbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:0 0 14px}
.chartbar h2{margin:0}
.chartgrid{display:grid;gap:18px;grid-template-columns:1fr}
@media(min-width:720px){.chartgrid{grid-template-columns:repeat(3,1fr);align-items:start}}
table.chart{width:100%;border-collapse:collapse;font-size:15px}
.chart th{text-align:left;color:var(--mute);font-size:11px;letter-spacing:2px;text-transform:uppercase;padding:6px 8px;border-bottom:1px solid var(--line);font-weight:800}
.chart td{padding:5px 8px;border-bottom:1px solid var(--line);white-space:nowrap;font-variant-numeric:tabular-nums}
.chart td.n{font-weight:900;color:var(--hot);width:3.4em}.chart td.pref{font-weight:700}.chart td.alt{color:var(--mute)}
.chart tr.bogey td{color:var(--dim);font-style:italic}
.printhead{display:none}
@media print{
 :root{color-scheme:light}
 body{background:#fff;color:#000;font-size:9pt;line-height:1.2}
 .top,.finder,.explain,.faq,.store,.updated,.foot,.noprint,.sc-app,.getapp,.hero,main>.kicker,main>h1,main>.sub{display:none!important}
 .wrap{max-width:none;padding:0}main{padding:0}
 .printhead{display:block;font-size:9pt;color:#000;margin:0 0 5pt}
 .chartbar{margin:0 0 3pt}.chartbar h2{font-size:14pt;letter-spacing:0;margin:0}
 .chartgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 7mm}
 table.chart{font-size:8.5pt;line-height:1.15}
 .chart th{color:#000;border-bottom:1px solid #000;padding:1pt 3pt;letter-spacing:1px;font-size:7pt}
 .chart td{padding:.8pt 3pt;border-bottom:1px solid #ccc;color:#000}
 .chart td.n{color:#000}.chart td.pref{font-weight:700}.chart td.alt{color:#444}.chart tr.bogey td{color:#666}
 .chart tr{break-inside:avoid}
 a{color:#000;text-decoration:none}
 @page{margin:12mm}
}
/* press kit */
.presshead{display:flex;gap:16px;align-items:center;margin:6px 0 10px}.presshead img{width:96px;height:96px;border-radius:22px;flex:none}.presshead .sub{margin:0}
table.facts{width:100%;border-collapse:collapse;font-size:15px}
.facts th,.facts td{text-align:left;vertical-align:top;padding:8px 10px 8px 0;border-bottom:1px solid var(--line)}
.facts th{color:var(--mute);font-weight:800;width:9.5em}
.shots{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}
@media(min-width:620px){.shots{grid-template-columns:repeat(3,minmax(0,1fr))}}
.shots a{display:block;border-radius:14px;overflow:hidden;border:1px solid var(--line)}
.pressicon{width:160px;height:160px;border-radius:36px}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
