/* Picknation88 polish (Claude 2026-10-23): design audit items 3-8, 10.
   Loaded after pn-night.css. Roll back: remove its <link> in layouts/app.blade.php. */

/* ---------- 8. One font family: Inter everywhere (already loaded by main.css), tabular numbers ---------- */
:root{--body-font:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--heading-font:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
body{font-family:var(--body-font)}
h1,h2,h3,h4,h5,h6{font-family:var(--heading-font);letter-spacing:-.01em}
.pn-page-h1{font-family:var(--heading-font);font-style:normal;font-weight:700;letter-spacing:-.01em}
.option-odd-lists .btn,.option-odd-list__item .point,.sports-card__info-text,
.betslip-item-market__score,.betslip-item-market__line,.pn-box__odds{
  font-family:var(--body-font)!important;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}
.sports-card__info-text{font-weight:600;color:var(--pn-muted)}

/* ---------- 5. Line on each odds button (+7.5 / -7.5, O 216 / U 216) ---------- */
.option-odd-lists .oddBtn{display:inline-flex!important;align-items:center;justify-content:center;gap:8px;width:100%}
.oddBtn .pn-btn-line{color:var(--pn-muted);font-weight:500;font-size:.8125rem}
.oddBtn .pn-btn-odds{font-weight:700}
.oddBtn.active .pn-btn-line{color:var(--pn-void)}
.oddBtn:hover .pn-btn-line{color:inherit}
.pn-market .option-odd-lists{display:flex;gap:6px}
.pn-market .option-odd-lists>.option-odd-list__item{flex:1 1 0;min-width:0}
.pn-market .pn-empty-mid{display:none!important}

/* ---------- 4. Locked / suspended odds: no broken icon on top of the price ---------- */
.locked::before,.oddBtn.locked::before{content:none!important;display:none!important}
.oddBtn.locked,.option-odd-lists .btn.locked,.pn-box.locked{
  opacity:1!important;cursor:not-allowed;position:relative;
  background:repeating-linear-gradient(135deg,var(--pn-surface-2) 0 6px,#1a1a24 6px 12px)!important;
  border-color:var(--pn-line)!important;color:#6b6b78!important}
.oddBtn.locked .pn-btn-line,.oddBtn.locked .pn-btn-odds,.pn-box.locked *{color:#6b6b78!important}
.oddBtn.locked::after,.pn-box.locked::after{
  content:"\f023";font-family:"Font Awesome 6 Free";font-weight:900;font-size:9px;line-height:1;
  position:absolute;top:4px;right:5px;color:#6b6b78}
.pn-suspended{display:flex;align-items:center;gap:12px;background:var(--pn-surface);border:1px solid var(--pn-line);
  border-left:3px solid #facc15;border-radius:10px;padding:12px 16px;color:var(--pn-text);font-size:.9375rem;line-height:1.45}
.pn-suspended i{color:#facc15;font-size:1.25rem;flex-shrink:0}
.pn-suspended small{display:block;color:var(--pn-muted);font-size:.8125rem}

/* ---------- 6. League badges: consistent round chips ---------- */
.sub-category-drawer__flag-img{border-radius:50%;object-fit:contain;background:var(--pn-surface-2)}
.sports-card__team-flag-img{border-radius:50%}

/* ---------- 11. Policy pages incl. Betting Rules ---------- */
.row>.t-pt-50.t-pb-50{max-width:80ch;line-height:1.65;margin-inline:auto}
.row>.t-pt-50.t-pb-50 h3{font-size:1.125rem;margin:1.75rem 0 .5rem;color:#fff}
.row>.t-pt-50.t-pb-50 table{width:100%;border-collapse:collapse;margin:.5rem 0 1rem;font-size:.9375rem}
.row>.t-pt-50.t-pb-50 th,.row>.t-pt-50.t-pb-50 td{border:1px solid var(--pn-line);padding:8px 10px;text-align:left;vertical-align:top}
.row>.t-pt-50.t-pb-50 th{background:var(--pn-surface-2);color:#fff}
.row>.t-pt-50.t-pb-50 ul{padding-left:1.25rem}
.row>.t-pt-50.t-pb-50 li{margin-bottom:.35rem}

/* ---------- v3 (2026-10-23): Sign up, guest strip, status badges, results, mobile bottom-sheet slip ---------- */
.btn.pn-signup-btn{padding:6px 16px;font-size:14px;white-space:nowrap}
@media (max-width:575px){
  .header-primary .select-lang--container{display:none}   /* odds type stays in the menu drawer */
  .btn.pn-signup-btn{padding:6px 12px;font-size:13px}
}
.pn-join{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:-4px 0 12px;
  background:linear-gradient(90deg,var(--pn-surface) 0%,var(--pn-surface) 60%,rgba(124,58,237,.35) 100%);
  border:1px solid var(--pn-line);border-radius:12px;padding:12px 16px}
.pn-join strong{color:#fff;display:block;font-size:1rem}
.pn-join span{color:var(--pn-muted);font-size:.875rem}
.pn-join__btns{display:flex;gap:8px;flex-shrink:0}
.pn-join__btns .btn{padding:7px 18px;font-weight:700}

/* status badges: readable pills on the dark theme */
.badge.badge--success,.badge.badge--warning,.badge.badge--danger,.badge.badge--primary{
  display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:3px 10px;font-size:12px;font-weight:700;letter-spacing:.01em}
.badge.badge--success{background:rgba(34,197,94,.14)!important;color:#4ade80!important;border:1px solid rgba(74,222,128,.4)!important}
.badge.badge--warning{background:rgba(250,204,21,.12)!important;color:#facc15!important;border:1px solid rgba(250,204,21,.4)!important}
.badge.badge--danger{background:rgba(248,113,113,.12)!important;color:#f87171!important;border:1px solid rgba(248,113,113,.4)!important}
.badge.badge--primary{background:rgba(124,58,237,.18)!important;color:#c4b5fd!important;border:1px solid rgba(167,139,250,.45)!important}
.badge.badge--success::before,.badge.badge--warning::before,.badge.badge--danger::before,.badge.badge--primary::before{
  content:"";width:6px;height:6px;border-radius:50%;background:currentColor}

/* My Bets result column */
.pn-res{font-weight:700;color:#fff;white-space:nowrap}
.pn-res--win{color:#4ade80}
.pn-res--loss{color:#f87171}
.pn-res--refund{color:#c4b5fd}
.pn-res-note{display:block;font-size:12px;color:var(--pn-muted);white-space:nowrap}

/* Mobile bet slip as a bottom sheet (opens from the Bet Slip button, closes on the dim backdrop or the button) */
.pn-sheet-backdrop{display:none}
@media (max-width:991px){
  .betslip{
    left:0!important;right:0!important;width:100%!important;max-width:none!important;
    top:auto!important;bottom:var(--pn-nav-real,76px)!important;
    height:auto!important;max-height:calc(88vh - var(--pn-nav-real,76px));max-height:calc(88dvh - var(--pn-nav-real,76px));
    transform:translateY(105%)!important;opacity:1!important;visibility:hidden;
    border-radius:18px 18px 0 0;border:1px solid var(--pn-line)!important;border-bottom:0!important;
    box-shadow:0 -12px 32px rgba(0,0,0,.65)!important;padding:18px 12px 8px!important;
    transition:transform .28s ease,visibility 0s linear .28s!important;z-index:10001!important}
  .betslip::before{content:"";position:absolute;top:7px;left:50%;width:42px;height:4px;margin-left:-21px;border-radius:2px;background:#3f3f4e}
  body.open-betslip .betslip{transform:translateY(0)!important;visibility:visible;transition:transform .28s ease,visibility 0s!important}
  .betslip .betslip-inner{min-height:0}
  .betslip .betslip__body{min-height:72px;max-height:calc(88dvh - 330px);overflow-y:auto}
  .betslip .mybet-container{max-height:calc(88dvh - 160px);overflow-y:auto}
  .pn-sheet-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.55);z-index:10000}
  body.open-betslip .pn-sheet-backdrop{display:block}
}

/* ---------- v5 (2026-10-23): bigger type, brighter odds chips, Team Total full width, contact, dashboard ---------- */
/* lobby game cards */
.sports-card__team-name{font-size:15px!important;font-weight:500;color:#fff!important;line-height:1.35}
.sports-card__team{gap:8px;margin-bottom:4px}
.sports-card__team-flag-img{width:22px;height:22px}
.sports-card__info-text{font-size:12.5px!important}
.sports-card-heading{font-size:13px!important}
.sports-card-left-bottom a{font-size:13.5px!important;font-weight:600}
.sub-category-drawer__text{font-size:14px!important}
.sports-category__text{font-size:13px!important}
.app-nav__menu-text{font-size:12px!important}
/* odds chips: lighter chip, white line, lime price, bigger */
.option-odd-lists .oddBtn{font-size:15px!important;min-height:46px;background:#24243a!important;border-color:#3a3a52!important}
.option-odd-lists .oddBtn .pn-btn-odds{font-size:16px;color:var(--pn-volt)}
.option-odd-lists .oddBtn .pn-btn-line{font-size:14px;color:#e4e4e7}
.option-odd-lists .oddBtn:hover{background:#2c2c46!important}
.option-odd-lists .oddBtn.active,.option-odd-lists .oddBtn.active .pn-btn-odds,.option-odd-lists .oddBtn.active .pn-btn-line{color:var(--pn-void)!important}
.option-odd-lists .oddBtn.active{background:var(--pn-volt)!important}
/* suspended chips stay readable */
.oddBtn.locked,.option-odd-lists .btn.locked,.pn-box.locked{background:repeating-linear-gradient(135deg,#20202e 0 6px,#1b1b27 6px 12px)!important;color:#9a9aa8!important}
.oddBtn.locked .pn-btn-line,.oddBtn.locked .pn-btn-odds,.pn-box.locked *{color:#9a9aa8!important}
.oddBtn.locked::after,.pn-box.locked::after{color:#9a9aa8}
/* game page */
.pn-box,.btn.pn-box{font-size:15px!important;min-height:46px;background:#24243a!important;border-color:#3a3a52!important}
.pn-box__odds{font-size:15px;font-weight:700}
.pn-box__line{color:#d4d4d8!important}
.pn-panel__head{font-size:15px}
.pn-cols--labels{font-size:13px}
/* Team Total panels hold one team each: let it use the full width instead of leaving an empty half */
.pn-tt:has(> .pn-tt__team:only-child){grid-template-columns:1fr!important}
.pn-tt:has(> .pn-tt__team:only-child) .pn-tt__team{border-left:0!important}

/* Contact page */
.contact-section .row{align-items:flex-start!important}
.pn-contact-info{background:var(--pn-surface);border:1px solid var(--pn-line);border-radius:14px;padding:24px}
.pn-contact-info h2{font-size:1.375rem;margin:0 0 6px;color:#fff}
.pn-contact-info>p{color:var(--pn-muted);margin:0 0 18px;line-height:1.55}
.pn-contact-info .list{display:flex;flex-direction:column;gap:12px;margin:0;padding:0}
.pn-contact-info .contact-card{display:flex!important;align-items:center;gap:14px;margin:0!important;padding:14px!important;
  background:var(--pn-surface-2)!important;border:1px solid var(--pn-line)!important;border-radius:12px;position:static!important}
.pn-contact-info .contact-card__icon{position:static!important;transform:none!important;margin:0!important;flex:0 0 44px;width:44px;height:44px;
  border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(198,255,61,.12)!important;color:var(--pn-volt)!important;font-size:18px}
.pn-contact-info .contact-card__content{padding:0!important;margin:0!important;min-width:0}
.pn-contact-info .contact-card__title{font-size:15px;margin:0 0 2px;color:#fff}
.pn-contact-info .contact-card__text{margin:0;color:var(--pn-muted);overflow-wrap:anywhere}
.pn-contact-info button.contact-card{width:100%;text-align:left;cursor:pointer}
.pn-contact-info button.contact-card:hover{border-color:var(--pn-volt)!important}

/* Player dashboard: Latest Transactions + chart on the dark theme */
.list-group-flush .list-group-item,.card .list-group-item{background:transparent!important;color:var(--pn-text)!important;border-color:var(--pn-line)!important}
.card .list-group-item .text--base{color:var(--pn-muted)!important}
.card .list-group-item .fw-semibold{color:#fff}
input.form-control.bg-white{background:var(--pn-surface-2)!important;color:#fff!important}
.pn-empty-chart{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:24px}
.pn-empty-chart i{font-size:44px;color:var(--pn-volt);opacity:.85}
.pn-empty-chart strong{font-size:1.125rem;color:#fff}
.pn-empty-chart span{color:var(--pn-muted);max-width:320px}
.apexcharts-text,.apexcharts-legend-text{fill:var(--pn-muted)!important;color:var(--pn-muted)!important}
.apexcharts-tooltip{background:var(--pn-surface-2)!important;color:#fff!important;border-color:var(--pn-line)!important}
.sports-card__team-flag{flex:0 0 22px;width:22px!important;height:22px!important;overflow:visible}
.pn-contact-info .contact-card__title{font-weight:700}