:root{font-family:Arial,sans-serif;color:#e7efdc;background:#091f18;color-scheme:dark}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at top left,#315b3e66,transparent 65%)}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.45;cursor:default}header{padding:20px 4%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #647e5144;background:#0b271d}.brand{font-size:21px;font-weight:800;letter-spacing:1px}.brand small{font-size:8px;margin-left:10px;color:#cbd18e;letter-spacing:2px}nav{display:flex;gap:20px;font-size:12px;color:#b4c7a2}main{max-width:1400px;margin:auto;padding:36px 4%}.intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px}.eyebrow{font-size:8px;letter-spacing:2px;color:#c6ca8b;font-weight:700;margin:0 0 9px}h1{font-size:38px;letter-spacing:-1.5px;margin:0 0 10px}.intro p:not(.eyebrow){font-size:12px;color:#a5bb96}.balance{text-align:right;min-width:160px}.balance small,.balance span{display:block;font-size:8px;letter-spacing:1px;color:#b1c49c}.balance strong{display:block;font-size:31px;color:#ecd58a;margin:5px 0}.race-banner{padding:20px 24px;border:1px solid #b2bd6c66;border-radius:9px;background:linear-gradient(100deg,#335e3d77,#173e2d88);display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.race-banner h2{font-size:25px;margin:7px 0}.race-banner p{font-size:12px;color:#c3d2af;margin:0}.race-banner #raceType{font-size:8px;letter-spacing:1.5px;color:#b8c793}.race-status{text-align:right}.race-status b{display:block;color:#e0c08c;font-size:11px}.race-status b[data-open=true]{color:#dce895}.race-status span{display:block;color:#aac09a;font-size:11px;margin-top:9px}.bet-layout{display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:20px;align-items:start}.field-card,.ticket-card,.tickets-card{padding:22px;background:linear-gradient(120deg,#27513a55,#153528bb);border:1px solid #8ba66b44;border-radius:9px}.section-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:18px}h2{font-size:21px;margin:0}.section-title>span{font-size:8px;letter-spacing:1px;color:#c7c994}.field-head,.field-card li{display:grid;grid-template-columns:minmax(0,1fr) 86px 86px;gap:8px;align-items:center}.field-head{font-size:8px;color:#a7bc93;letter-spacing:1px;border-bottom:1px solid #b3c78b44;padding-bottom:12px}.field-head>span:not(:first-child){text-align:center}.field-card ol{list-style:none;margin:0;padding:0}.field-card li{padding:10px 0;border-bottom:1px solid #a0b38022}.field-card li>div{display:flex;align-items:center;gap:12px;min-width:0}.field-card li span{font-size:12px;font-weight:600}.runner-number{display:grid;place-items:center;width:32px;height:32px;border-radius:5px;color:white;font-size:17px;flex-shrink:0}.field-card li>strong{background:#d9c678;color:#1b3827;font-size:12px;padding:7px;text-align:center;border-radius:3px}.ticket-card h2{margin-bottom:18px}.market-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:5px}.market-tabs button{padding:9px 5px;background:#103324;border:1px solid #8aa36255;border-radius:4px;color:#bcd0a5;font-size:10px}.market-tabs button[aria-pressed=true]{background:#deca78;color:#1d3725;font-weight:700}#betRule{font-size:11px;color:#c3d2ac;line-height:1.5;margin:15px 0}.picks{display:grid;grid-template-columns:1fr 1fr;gap:10px}.picks label,.stake-label{display:flex;flex-direction:column;gap:7px;font-size:8px;letter-spacing:1px;color:#a8be95}.picks select,.stake-label input{width:100%;min-width:0;padding:10px 8px;background:#0c2d20;border:1px solid #6c895255;border-radius:5px;color:#e5edd5;font-size:11px}.stake-label{margin:17px 0}.stake-label input{font-size:18px;padding:12px}.box-label{display:flex;align-items:center;gap:7px;font-size:11px;margin-top:14px;color:#c0d0a9}.box-label[hidden]{display:none}.return-box{padding:16px;background:#d1bc6814;border:1px solid #d1bc6855;border-radius:6px}.return-box small{display:block;font-size:8px;letter-spacing:1px;color:#c9c48c}.return-box strong{display:block;font-size:26px;color:#ecd58a;margin:8px 0}.return-box span{font-size:9px;color:#afc29a}#placeDemoBet{width:100%;margin-top:16px;padding:14px;background:#ddcb7f;color:#183724;font-size:13px;font-weight:700;border:0;border-radius:5px}#betMessage{font-size:11px;line-height:1.6;color:#e3d9a2;min-height:16px}.ticket-note{font-size:9px;color:#8fa985;line-height:1.7}.tickets-card{margin-top:22px}#refillDemo{background:#274e36;color:#d8dfb9;border:1px solid #83995d;padding:9px 12px;border-radius:5px}.saved-ticket{padding:16px 0;border-top:1px solid #9ab37733}.saved-ticket>div{display:flex;justify-content:space-between;gap:12px;align-items:center}.saved-ticket>div>b{font-size:12px}.ticket-status{font-size:8px;letter-spacing:1px;color:#c9c38f;background:#94834a22;padding:6px 9px;border-radius:4px}.status-won{color:#d6e78e;background:#6e934233}.status-lost{color:#e5bca9;background:#ae725222}.status-void{color:#b9cece;background:#507d8022}.saved-ticket>p{display:flex;flex-wrap:wrap;gap:12px}.ticket-runner{display:inline-flex;align-items:center;gap:6px;font-size:11px;color:#c2d2af}.ticket-runner>b{padding:4px 7px;color:white;border-radius:3px}.saved-ticket footer{display:flex;justify-content:space-between;font-size:10px;color:#a1b690;gap:12px;line-height:1.6}.saved-ticket footer b{color:#e4d18b}.saved-ticket footer small{font-size:9px}.empty{font-size:12px;color:#98b08a;padding:15px 0}main>footer{font-size:9px;text-align:center;color:#7b9873;margin-top:22px;line-height:1.6}@media(max-width:900px){.bet-layout{grid-template-columns:1fr}.ticket-card{order:-1}.intro{align-items:flex-start}h1{font-size:30px}.balance strong{font-size:24px}.balance{min-width:120px}.race-banner{padding:17px}.field-card,.ticket-card,.tickets-card{padding:18px}}@media(max-width:500px){header{padding:17px 4%}.brand{font-size:17px}.brand small{display:none}nav{gap:12px;font-size:10px}.intro{flex-direction:column}.balance{text-align:left}.field-head,.field-card li{grid-template-columns:minmax(0,1fr) 65px 65px}.field-card li span{font-size:10px}.field-card li>strong{font-size:10px;padding:7px 3px}.section-title>span{font-size:6px}.race-status b{font-size:9px}.race-status span{font-size:8px}.race-banner h2{font-size:22px}}

.picks{display:block}.picks input{width:100%;padding:14px;background:#0c2d20;border:1px solid #8b9f65;border-radius:5px;color:#fff;font-size:19px;letter-spacing:2px}.number-pad{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin:16px 0}.number-pad button{padding:12px 0;border:1px solid #7d926655;border-radius:5px;background:#112f22;color:#dde8d0;font-weight:bold}.number-pad button[aria-pressed=true]{background:var(--runner-color);color:white;border-color:#f4df96;box-shadow:0 0 0 1px #f4df96}.cost-box{display:flex;justify-content:space-between;gap:10px;padding:17px 0;border-top:1px solid #a7bc7544;margin-top:16px}.cost-box span{font-size:9px;color:#b5c89e}.cost-box b,.cost-box strong{display:block;font-size:24px;color:#f0d989;margin-top:7px}.return-box strong{font-size:22px}

.stake-options{border:0;padding:0;margin:20px 0;min-width:0}.stake-options legend{padding:0;margin-bottom:9px;font-size:9px;letter-spacing:1px;color:#a8be95}.stake-buttons{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.stake-buttons button{padding:13px 0;min-width:0;border:1px solid #81986477;border-radius:5px;background:#102f22;color:#dce7cf;font-size:16px;font-weight:700}.stake-buttons button:hover{border-color:#e0cd81}.stake-buttons button[aria-pressed=true]{background:#ddcb7f;color:#173623;border-color:#f6e9ac;box-shadow:0 0 0 1px #f6e9ac}

.receipt-card{margin-top:22px;padding:25px;border:1px solid #d9c78188;border-radius:9px;background:linear-gradient(120deg,#244d35,#102d21)}.receipt-card[hidden]{display:none}.receipt-heading{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:18px}.receipt-heading span{font-size:10px;letter-spacing:1px;color:#d8e5a5}.receipt-heading b{font-size:18px;color:#f0d989}.receipt-card p{color:#afc39d;font-size:12px}.receipt-numbers{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.receipt-numbers b{padding:10px 15px;border-radius:4px;color:white;font-size:22px}.receipt-totals{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;border-block:1px dashed #91a96b66;padding:18px 0;margin-bottom:18px}.receipt-totals span{font-size:9px;color:#abc398}.receipt-totals b{display:block;font-size:18px;color:#ead68c;margin-top:9px}.receipt-card button,.save-slip{background:#daca84;color:#183825;border:0;border-radius:4px;padding:10px 16px;cursor:pointer}.receipt-card>small{display:block;font-size:10px;color:#a6bb96;margin-top:12px}.slip-number{display:block;font-size:10px;color:#dccc8b;letter-spacing:1px;margin-bottom:8px}.save-slip{margin-top:10px;font-size:11px}@media(max-width:600px){.receipt-totals{grid-template-columns:repeat(2,1fr)}}

.auth-notice{padding:12px;border:1px solid #c4b76e55;border-radius:5px;background:#b7a35b15;color:#c4d1ac;font-size:11px;line-height:1.7}.auth-notice a{color:#eddb93;text-decoration:underline}nav{flex-wrap:wrap}.auth-notice[hidden]{display:none}

body>header{gap:18px;flex-wrap:wrap}body>header nav{flex-wrap:wrap;justify-content:flex-end;gap:12px 18px}

.direct-stake-label{display:block;font-size:9px;letter-spacing:1px;color:#c9d3ae}.direct-stake-label input{display:block;width:100%;padding:14px;margin-top:8px;font-size:19px;border:1px solid #9aaa6966;background:#0b2b1d;color:#f1e4b0;border-radius:6px}#eachWayStakeHint{color:#e3d18c;font-size:11px;line-height:1.7}#directStakeLabel[hidden],#stakeButtons[hidden],#eachWayStakeHint[hidden]{display:none}

#stakeCountLabel{font-style:normal}

.retention-note {
  margin: 0 0 16px;
  color: #a9be97;
  font-size: 11px;
  line-height: 1.6;
}

.bet-layout {
  grid-template-columns: minmax(0, 1fr);
  gap: 16px;
}

.bet-layout .ticket-card {
  order: 0;
  min-width: 0;
}

.live-race {
  min-width: 0;
  overflow: hidden;
  border: 1px solid #8b9b6266;
  border-radius: 9px;
  background: #102e25;
  scroll-margin-top: 12px;
}

.live-race-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  min-height: 36px;
  padding: 8px 12px;
  color: #ebd493;
  background: #123627;
  font-size: 11px;
}

.live-race-bar > span {
  font-weight: 700;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.live-race-bar > a {
  color: #f4e3ab;
  text-decoration: underline;
  text-underline-offset: 3px;
}

#liveRacePlayer {
  display: block;
  width: 100%;
  height: var(--broadcast-height, 560px);
  border: 0;
}

@media (min-width: 1120px) {
  body:has(.live-race) main {
    max-width: 1680px;
    padding: 24px 3%;
  }

  .bet-layout {
    grid-template-columns: minmax(0, 1fr) 330px;
  }

  .bet-layout .ticket-card {
    position: sticky;
    top: 16px;
    max-height: calc(100dvh - 32px);
    overflow-y: auto;
    scrollbar-width: thin;
  }

  .live-race-bar > a {
    display: none;
  }
}

@media (max-width: 600px) {
  body:has(.live-race) main {
    padding: 16px 10px;
  }

  body:has(.live-race) .intro {
    flex-direction: row;
    align-items: center;
    margin-bottom: 14px;
  }

  body:has(.live-race) h1 {
    font-size: 23px;
  }

  body:has(.live-race) .balance {
    min-width: 80px;
    text-align: right;
  }

  body:has(.live-race) .intro p:not(.eyebrow) {
    display: none;
  }

  .bet-layout {
    --player-limit: min(380px, 48dvh);
    display: block;
  }

  .live-race {
    position: sticky;
    top: 0;
    z-index: 2;
    margin-bottom: 12px;
  }

  #liveRacePlayer {
    height: min(var(--broadcast-height, 330px), var(--player-limit));
  }

  #bet-slip {
    scroll-margin-top: calc(var(--player-limit) + 48px);
  }
}
