/* ════════════════════════════════════════════════════════════════════
   VANTRA — bet-success.css
   ────────────────────────────────────────────────────────────────────
   Bet placement confirmation modal — premium dark UI
   ════════════════════════════════════════════════════════════════════ */

@keyframes bs-backdrop-in{from{opacity:0}to{opacity:1}}
@keyframes bs-modal-in{from{opacity:0;transform:translateY(28px) scale(.97)}to{opacity:1;transform:none}}
@keyframes bs-check-pop{0%{transform:scale(0) rotate(-25deg);opacity:0}65%{transform:scale(1.12) rotate(5deg);opacity:1}100%{transform:scale(1) rotate(0);opacity:1}}
@keyframes bs-pulse-ring{0%{transform:scale(1);opacity:.55}100%{transform:scale(1.7);opacity:0}}
@keyframes bs-slide-in{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes bs-zoom-in{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}
@keyframes bs-shine{0%{background-position:-600px 0}100%{background-position:600px 0}}
@keyframes bs-confetti-fall{0%{transform:translateY(-20px) rotate(0deg);opacity:1}100%{transform:translateY(180px) rotate(720deg);opacity:0}}

/* OVERLAY */
.bet-success-overlay{
  position:fixed;inset:0;z-index:10000;
  display:flex;align-items:flex-end;justify-content:center;
  background:rgba(5,6,14,.88);
  backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);
  animation:bs-backdrop-in .22s ease;
  padding:0;
  font-family:'Inter',system-ui,sans-serif;
}
@media(min-width:520px){
  .bet-success-overlay{align-items:center;padding:20px}
}

/* MODAL */
.bet-success-modal{
  width:100%;max-width:480px;
  max-height:96dvh;overflow-y:auto;overscroll-behavior:contain;
  background:#0f1424;
  color:#ede5d3;
  border-radius:18px 18px 0 0;
  position:relative;
  scrollbar-width:none;
  animation:bs-modal-in .38s cubic-bezier(.22,.68,0,1.2);
  box-shadow:0 -30px 80px -10px rgba(0,0,0,.7);
  border:1px solid rgba(255,255,255,.08);
  border-bottom:none;
}
.bet-success-modal::-webkit-scrollbar{display:none}
@media(min-width:520px){
  .bet-success-modal{border-radius:18px;border:1px solid rgba(255,255,255,.08)}
}
.bet-success-modal::before{
  content:"";position:absolute;top:0;left:0;right:0;height:3px;
  background:linear-gradient(90deg,transparent,rgba(139,92,246,.5),transparent);
  border-radius:18px 18px 0 0;
}

/* CONFETTI */
.bs-confetti-wrap{
  position:absolute;top:0;left:0;right:0;
  height:200px;
  pointer-events:none;overflow:hidden;
  z-index:2;
}
.bs-confetti-piece{
  position:absolute;top:-20px;border-radius:2px;
  animation:bs-confetti-fall 1.8s ease forwards;
}

/* HEADER */
.bs-header{
  padding:36px 26px 24px;
  text-align:center;position:relative;
  border-bottom:1px solid rgba(255,255,255,.06);
  background:
    radial-gradient(ellipse 60% 60% at 50% 0%,rgba(139,92,246,.18),transparent 70%),
    radial-gradient(ellipse 40% 40% at 70% 100%,rgba(139,92,246,.12),transparent 70%);
}
.bs-header-mesh{display:none}

/* CHECK MARK */
.bs-check-wrap{
  position:relative;
  width:76px;height:76px;
  margin:6px auto 18px;
}
.bs-check-ring{
  position:absolute;inset:-6px;
  border-radius:50%;
  border:1.5px solid rgba(139,92,246,.4);
  animation:bs-pulse-ring 2s ease-out infinite;
}
.bs-check-circle{
  width:76px;height:76px;border-radius:50%;
  background:linear-gradient(135deg,#8b5cf6 0%,#a855f7 50%,#ec4899 100%);
  display:flex;align-items:center;justify-content:center;
  position:relative;
  box-shadow:
    0 0 0 1px rgba(139,92,246,.5),
    0 18px 44px -10px rgba(139,92,246,.55),
    inset 0 2px 1px rgba(255,255,255,.3);
  animation:bs-check-pop .55s cubic-bezier(.22,.68,0,1.2) .1s both;
}
.bs-check-icon{
  font-size:34px;line-height:1;color:#ede5d3;
  font-weight:700;position:relative;z-index:1;
  filter:drop-shadow(0 2px 4px rgba(0,0,0,.3));
}

.bs-placed-lbl{
  font-family:'Outfit','Inter',sans-serif;
  font-weight:800;font-size:20px;
  color:#ede5d3;margin-bottom:6px;letter-spacing:-.01em;
}
.bs-placed-title{
  font-family:'JetBrains Mono',monospace;
  font-size:10.5px;font-weight:700;
  letter-spacing:.18em;
  color:#7a786e;
  margin-bottom:18px;text-transform:uppercase;
}

/* Booking code badge */
.bs-booking-badge{
  display:inline-flex;align-items:center;gap:10px;
  background:rgba(5,6,14,.6);
  border:1px solid rgba(139,92,246,.32);
  border-radius:8px;
  padding:8px 14px 8px 16px;
  backdrop-filter:blur(8px);
}
.bs-booking-lbl{
  font-family:'JetBrains Mono',monospace;
  font-size:9.5px;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;
  color:#7a786e;
}
.bs-booking-code{
  font-family:'JetBrains Mono',monospace;
  font-size:15px;font-weight:800;
  color:#a78bfa;letter-spacing:.18em;
}
.bs-copy-btn{
  background:#161b2e;
  border:1px solid rgba(255,255,255,.08);
  border-radius:6px;padding:6px 11px;
  font-family:'JetBrains Mono',monospace;
  font-size:9.5px;font-weight:800;
  color:#ede5d3;cursor:pointer;
  transition:.15s;letter-spacing:.1em;text-transform:uppercase;
}
.bs-copy-btn:hover{background:linear-gradient(135deg,#8b5cf6 0%,#a855f7 50%,#ec4899 100%);color:#ede5d3;border-color:transparent}
.bs-copy-btn.copied{background:linear-gradient(135deg,#65a30d,#a3e635);color:#ede5d3;border-color:transparent}

/* SHIMMER BAR */
.bs-shimmer-bar{
  height:2px;
  background:linear-gradient(90deg,transparent 0%,rgba(139,92,246,.6) 30%,rgba(139,92,246,.5) 50%,rgba(139,92,246,.5) 70%,transparent 100%);
  background-size:600px 2px;
  animation:bs-shine 2.6s linear infinite;
}

/* STATS */
.bs-stats{
  display:grid;grid-template-columns:repeat(3,1fr);gap:0;
  border-bottom:1px solid rgba(255,255,255,.06);
  background:#0f1424;
}
.bs-stat{
  padding:18px 12px;text-align:center;
  border-right:1px solid rgba(255,255,255,.06);
}
.bs-stat:last-child{border-right:none}
.bs-stat-lbl{
  font-family:'JetBrains Mono',monospace;
  font-size:9.5px;font-weight:700;
  letter-spacing:.2em;text-transform:uppercase;
  color:#5a5852;margin-bottom:7px;
}
.bs-stat-val{
  font-family:'JetBrains Mono',monospace;
  font-size:15px;font-weight:800;
  color:#ede5d3;letter-spacing:.02em;
}
.bs-stat-val.win{color:#a3e635;font-size:16px;text-shadow:0 0 12px rgba(101,163,13,.4)}
.bs-stat-val.odds{color:#fbbf24}

/* TYPE ROW */
.bs-type-row{
  padding:14px 22px;
  display:flex;align-items:center;gap:10px;
  border-bottom:1px solid rgba(255,255,255,.06);
  background:rgba(0,0,0,.2);
}
.bs-type-chip{
  font-family:'JetBrains Mono',monospace;
  font-size:9.5px;font-weight:800;
  letter-spacing:.14em;text-transform:uppercase;
  padding:4px 11px;border-radius:5px;
}
.bs-type-chip.single{background:rgba(139,92,246,.14);color:#a78bfa;border:1px solid rgba(139,92,246,.32)}
.bs-type-chip.accumulator{background:rgba(139,92,246,.14);color:#a78bfa;border:1px solid rgba(139,92,246,.32)}
.bs-type-chip.system{background:rgba(139,92,246,.14);color:#8b5cf6;border:1px solid rgba(139,92,246,.32)}
.bs-sel-count{
  font-family:'JetBrains Mono',monospace;
  font-size:11px;color:#7a786e;letter-spacing:.04em;
}

/* SELECTIONS */
.bs-selections{padding:6px 22px}
.bs-sel-item{
  display:flex;align-items:flex-start;justify-content:space-between;gap:12px;
  padding:13px 0;
  border-bottom:1px solid rgba(255,255,255,.06);
  animation:bs-slide-in .25s ease both;
}
.bs-sel-item:last-child{border-bottom:none}
.bs-sel-left{flex:1;min-width:0}
.bs-sel-index{
  display:inline-flex;align-items:center;justify-content:center;
  width:24px;height:24px;border-radius:50%;
  background:linear-gradient(135deg,#8b5cf6 0%,#a855f7 50%,#ec4899 100%);color:#ede5d3;
  font-family:'JetBrains Mono',monospace;
  font-size:10px;font-weight:800;
  margin-right:10px;vertical-align:middle;flex-shrink:0;
  box-shadow:0 4px 10px rgba(139,92,246,.32);
}
.bs-sel-match{
  font-family:'JetBrains Mono',monospace;font-size:10px;
  color:#5a5852;margin-bottom:3px;
  overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  letter-spacing:.04em;margin-top:5px;
}
.bs-sel-pick{
  font-family:'Inter',sans-serif;font-size:14px;font-weight:700;
  color:#ede5d3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  letter-spacing:-.005em;
}
.bs-sel-market{
  font-family:'JetBrains Mono',monospace;font-size:9.5px;
  color:#5a5852;margin-top:3px;letter-spacing:.04em;
}
.bs-sel-odd{
  font-family:'JetBrains Mono',monospace;
  font-size:14px;font-weight:800;color:#fbbf24;
  flex-shrink:0;
  background:rgba(251,191,36,.12);
  border:1px solid rgba(251,191,36,.32);
  border-radius:6px;
  padding:5px 11px;margin-top:4px;letter-spacing:.02em;
}

/* TICKET PREVIEW */
.bs-ticket-section{
  padding:18px 22px;
  border-top:1px solid rgba(255,255,255,.06);
}
.bs-ticket-header{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:12px;
}
.bs-ticket-title{
  font-family:'Outfit','Inter',sans-serif;font-weight:800;
  font-size:13.5px;color:#ede5d3;letter-spacing:-.005em;
}
.bs-zoom-hint{
  font-family:'Inter',sans-serif;font-size:11px;
  color:#a78bfa;cursor:pointer;font-weight:700;
}
.bs-zoom-hint:hover{color:#a78bfa}
.bs-ticket-preview{
  border-radius:10px;overflow:hidden;
  border:1px solid rgba(255,255,255,.08);
  cursor:zoom-in;transition:.2s;
  background:#0a0c14;
  box-shadow:0 6px 16px rgba(0,0,0,.4);
}
.bs-ticket-preview:hover{
  border-color:rgba(139,92,246,.4);
  box-shadow:0 8px 24px rgba(139,92,246,.2);
}
.bs-ticket-preview svg{display:block;width:100%}

/* QR ROW */
.bs-qr-row{
  display:flex;align-items:center;gap:16px;
  padding:18px 22px;
  border-top:1px solid rgba(255,255,255,.06);
  background:#0a0c14;
}
.bs-qr-canvas{
  flex-shrink:0;
  width:80px;height:80px;border-radius:8px;
  overflow:hidden;background:#fff;padding:6px;
}
.bs-qr-canvas canvas{width:100%;height:100%}
.bs-qr-info{flex:1;min-width:0}
.bs-qr-info-title{
  font-family:'Outfit','Inter',sans-serif;font-weight:700;
  font-size:13.5px;color:#ede5d3;
  margin-bottom:4px;letter-spacing:-.005em;
}
.bs-qr-info-sub{
  font-family:'Inter',sans-serif;font-size:11.5px;
  color:#7a786e;line-height:1.55;
}

/* ACTIONS */
.bs-actions{
  display:grid;grid-template-columns:1fr 1fr;gap:8px;
  padding:18px 22px 22px;
  border-top:1px solid rgba(255,255,255,.06);
}
.bs-action-btn{
  height:46px;border-radius:10px;
  font-family:'Inter',sans-serif;font-size:11.5px;font-weight:800;
  cursor:pointer;transition:.18s;
  display:flex;align-items:center;justify-content:center;gap:7px;
  letter-spacing:.06em;text-transform:uppercase;
}
.bs-action-btn.download{
  background:linear-gradient(135deg,#8b5cf6 0%,#a855f7 50%,#ec4899 100%);color:#ede5d3;border:none;
  box-shadow:0 6px 22px rgba(139,92,246,.28),inset 0 1px 0 rgba(167,139,250,.32);
}
.bs-action-btn.download:hover{transform:translateY(-1px);box-shadow:0 12px 30px rgba(139,92,246,.4),inset 0 1px 0 rgba(167,139,250,.4);filter:brightness(1.05)}
.bs-action-btn.share{
  background:#161b2e;
  border:1px solid rgba(139,92,246,.4);
  color:#a78bfa;
}
.bs-action-btn.share:hover{background:rgba(139,92,246,.1);border-color:#8b5cf6}
.bs-action-btn.close{
  background:transparent;
  border:1px solid rgba(255,255,255,.12);
  color:#7a786e;
  grid-column:1/-1;height:40px;
}
.bs-action-btn.close:hover{background:#161b2e;color:#ede5d3;border-color:rgba(255,255,255,.2)}

/* ZOOM OVERLAY */
.slip-zoom{
  position:fixed;inset:0;z-index:11000;
  background:rgba(5,6,14,.96);
  backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);
  display:flex;align-items:center;justify-content:center;
  padding:20px;cursor:zoom-out;
  animation:bs-zoom-in .22s ease;
}
.slip-zoom-inner{
  width:100%;max-width:580px;
  border-radius:12px;overflow:hidden;
  box-shadow:0 30px 80px rgba(0,0,0,.7);
  border:1px solid rgba(255,255,255,.08);
}
.slip-zoom-inner svg{display:block;width:100%}