.sw-bottom-nav { display: none; }

@media (max-width: 1199px) {
  .sw-sportsbook-shell { grid-template-columns: 236px minmax(0, 1fr); }
  .sw-betslip-panel {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 120;
    width: min(380px, 100vw);
    height: 100dvh;
    transform: translateX(105%);
    transition: transform .2s ease;
  }
  body.open-betslip .sw-betslip-panel { transform: translateX(0); }
  .sw-betslip-backdrop {
    position: fixed;
    inset: 0;
    z-index: 115;
    background: rgba(0, 0, 0, .58);
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
  body.open-betslip .sw-betslip-backdrop { opacity: 1; visibility: visible; pointer-events: auto; }
  .sw-float-slip {
    display: none;
  }
  .sw-float-slip span { position: absolute; top: -4px; right: -4px; background: var(--sw-green); color: #04170d; border-radius: 50%; min-width: 20px; height: 20px; font-size: 11px; display: grid; place-items: center; font-weight: 950; }
}

@media (min-width: 1200px) {
  .sw-float-slip, .sw-betslip-backdrop { display: none; }
}

@media (max-width: 991px) {
  .sw-header__top { padding: 6px 10px; }
  .sw-logo { min-width: 132px; }
  .sw-logo img { width: 126px; max-height: 42px; object-fit: contain; }
  .sw-icon-btn { width: 42px; height: 36px; }
  .sw-icon-btn span { display: none; }
  .sw-product-nav { padding: 0 10px; gap: 18px; }
  .sw-sportsbook-shell { display: block; min-height: calc(100vh - 91px); }
  .sw-sidebar {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 125;
    width: min(330px, 88vw);
    height: 100dvh;
    top: 0;
    transform: translateX(-105%);
    transition: transform .2s ease;
  }
  body.open-sidebar .sw-sidebar { transform: translateX(0); }
  body.open-sidebar .sw-betslip-backdrop { opacity: 1; visibility: visible; pointer-events: auto; }
  .sw-sportsbook-main { padding: 6px 4px 82px; }
  .sw-promo { min-height: 78px; padding: 12px; }
  .sw-promo strong { font-size: 18px; }
  .sw-promo a { padding: 8px 12px; }
  .sw-featured-card { flex-basis: 286px; }
  .sw-filters { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sw-event-board__head { grid-template-columns: minmax(170px, 1fr) repeat(3, 78px); }
  .sw-event { grid-template-columns: minmax(170px, 1fr) 238px; overflow-x: auto; }
  .sw-event__info { grid-template-columns: 44px 1fr; }
  .sw-event__markets, .sw-event__score { display: none; }
  .sw-odd { min-height: 58px; }
  .sw-market-section__odds { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sw-match-hero { grid-template-columns: 1fr; gap: 10px; min-height: 170px; }
  .sw-team { font-size: 16px; }
  .sw-market-search { grid-template-columns: 1fr 132px; }
  .sw-account-shell { display: block; min-height: calc(100vh - 91px); }
  .sw-account-rail {
    position: fixed;
    inset: 0 auto 0 0;
    z-index: 126;
    width: min(320px, 88vw);
    height: 100dvh;
    top: 0;
    transform: translateX(-105%);
    transition: transform .2s ease;
  }
  body.open-account-menu .sw-account-rail { transform: translateX(0); }
  .sw-account-close, .sw-account-menu { display: inline-grid; place-items: center; }
  .sw-account-backdrop { position: fixed; inset: 0; background: rgba(0,0,0,.58); z-index: 121; opacity: 0; visibility: hidden; pointer-events: none; }
  body.open-account-menu .sw-account-backdrop { opacity: 1; visibility: visible; pointer-events: auto; }
  .sw-account-main { padding: 10px 10px calc(92px + env(safe-area-inset-bottom)); }
  .sw-account-grid, .sw-account-columns { grid-template-columns: 1fr; }
  .sw-stats-grid, .sw-action-strip { grid-template-columns: repeat(2, 1fr); }
  .sw-account-notice { grid-template-columns: 28px 1fr; }
  .sw-account-notice a { grid-column: 2; width: fit-content; }
  .sw-definition-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sw-form-grid, .sw-2fa-grid, .ticket-details__stats, .my-bet-card__numbers { grid-template-columns: 1fr; }
  .my-bets-toolbar { grid-template-columns: 1fr; }
  .sw-history-card { grid-template-columns: 1fr; }
  .sw-history-card__amount { text-align: left; }
}

@media (max-width: 575px) {
  .sw-header__top {
    grid-template-columns: auto minmax(98px, 1fr) auto;
    gap: 5px;
    padding: 6px 7px;
  }
  .sw-header__left, .sw-header__actions { gap: 4px; }
  .sw-header__actions { min-width: 0; }
  .sw-logo { min-width: 0; justify-self: center; }
  .sw-logo img { width: 118px; max-width: 100%; max-height: 40px; object-fit: contain; }
  .sw-balance-pill {
    min-height: 30px;
    padding: 5px 6px;
    font-size: 11px;
    white-space: nowrap;
  }
  .sw-btn { padding: 6px 7px; min-height: 30px; font-size: 11px; white-space: nowrap; }
  .sw-icon-btn { width: 34px; height: 32px; font-size: 18px; }
  .sw-product-nav a { font-size: 12px; }
  .sw-shortcuts { overflow-x: auto; scrollbar-width: none; }
  .sw-shortcuts a { flex: 0 0 118px; min-height: 58px; font-size: 12px; }
  .sw-event-board__head { display: none; }
  .sw-event {
    display: grid;
    grid-template-columns: 1fr;
    overflow: visible;
    padding: 8px;
    gap: 8px;
  }
  .sw-event__info { grid-template-columns: 1fr; gap: 6px; }
  .sw-event__meta { display: flex; gap: 6px; }
  .sw-event__teams { font-size: 13px; }
  .sw-event__odds { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sw-odd strong { font-size: 16px; }
  .sw-market-section__odds { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .sw-market-section__odds .sw-odd:nth-child(n+4) { grid-column: span 1; }
  .sw-auth-page { padding: 18px 16px 88px; place-items: start stretch; }
  .sw-auth-card { width: 100%; padding: 16px; }
  .sw-bottom-nav {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 118;
    min-height: calc(62px + env(safe-area-inset-bottom));
    padding-bottom: env(safe-area-inset-bottom);
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    background: var(--sw-bg-deep);
    border-top: 1px solid var(--sw-border);
    pointer-events: auto;
  }
  .sw-bottom-nav a, .sw-bottom-nav button {
    position: relative;
    min-width: 0;
    min-height: 62px;
    border: 0;
    background: transparent;
    color: var(--sw-muted);
    display: grid;
    place-items: center;
    align-content: center;
    gap: 1px;
    font-size: 11px;
    font-weight: 900;
    text-align: center;
    pointer-events: auto;
    touch-action: manipulation;
  }
  .sw-bottom-nav i { font-size: 22px; }
  .sw-bottom-nav .active, .sw-bottom-nav a.active, .sw-bottom-nav button.active {
    background: var(--sw-yellow);
    color: #111;
  }
  .sw-bottom-nav b {
    position: absolute;
    top: 7px;
    right: 22%;
    min-width: 18px;
    height: 18px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: var(--sw-green);
    color: #04170d;
    font-size: 10px;
  }
  .sw-money-form { max-width: none; padding: 12px; }
  .sw-account-topbar h1 { font-size: 20px; }
  .sw-account-topbar .sw-btn { display: none; }
  .sw-definition-grid { grid-template-columns: 1fr; }
  .ticket-pick, .my-bet-card { grid-template-columns: 1fr; }
  .ticket-details__meta, .ticket-details__title-row, .ticket-details__actions, .ticket-pick__head, .ticket-pick__selection { display: grid; }
}
