/* IPTV Belgique Commerce v2.7.18.13 — Mobile Client Sidebar Drawer
   Mobile UX authority layer for the private client portal. Desktop keeps the left sidebar;
   mobile opens the same client menu as a premium off-canvas sidebar. */

.iptvbc-client-mobile-menu-button-v271813,
.iptvbc-client-sidebar-close-v271813,
.iptvbc-client-menu-overlay-v271813{
  display:none!important;
  visibility:hidden;
  pointer-events:none;
}

@media (max-width:920px){
  body.iptvbc-client-menu-open-v271813{
    overflow:hidden!important;
    touch-action:none;
  }

  .iptvbc-client-unified-v271813.iptvbc-account{
    position:relative!important;
    overflow:visible!important;
  }

  .iptvbc-client-unified-v271813 .iptvbc-client-light-topbar-v271813,
  body.iptvb-client-portal-page .iptvbc-client-unified-v271813 .iptvbc-client-light-topbar-v271813,
  body.iptvb-theme.iptvb-client-portal-page .iptvbc-client-unified-v271813 .iptvbc-client-light-topbar-v271813{
    position:sticky!important;
    top:8px!important;
    z-index:40!important;
    display:grid!important;
    grid-template-columns:auto minmax(0,1fr)!important;
    align-items:center!important;
    gap:10px!important;
    padding:12px!important;
    margin:0!important;
    border-radius:24px 24px 18px 18px!important;
    background:rgba(255,255,255,.92)!important;
    border-bottom:1px solid rgba(226,232,240,.92)!important;
    box-shadow:0 18px 45px rgba(15,23,42,.08)!important;
    backdrop-filter:blur(18px)!important;
  }

  .iptvbc-client-mobile-menu-button-v271813{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:9px!important;
    min-width:96px!important;
    min-height:46px!important;
    padding:0 13px!important;
    border:1px solid rgba(226,232,240,.95)!important;
    border-radius:16px!important;
    background:linear-gradient(180deg,#ffffff,#f8fafc)!important;
    color:#0f172a!important;
    cursor:pointer!important;
    box-shadow:0 12px 30px rgba(15,23,42,.07)!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  .iptvbc-client-mobile-menu-button-v271813 > span{
    width:27px!important;
    height:27px!important;
    display:grid!important;
    place-items:center!important;
    gap:4px!important;
    border-radius:10px!important;
    background:#0f172a!important;
    padding:6px!important;
  }
  .iptvbc-client-mobile-menu-button-v271813 i{
    display:block!important;
    width:14px!important;
    height:2px!important;
    border-radius:999px!important;
    background:#fff!important;
  }
  .iptvbc-client-mobile-menu-button-v271813 strong{
    color:#0f172a!important;
    font-size:13px!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:-.02em!important;
  }

  .iptvbc-client-unified-v271813 .iptvbc-client-light-title-v2693,
  body.iptvb-client-portal-page .iptvbc-client-unified-v271813 .iptvbc-client-light-title-v2693{
    min-width:0!important;
    flex:unset!important;
  }
  .iptvbc-client-unified-v271813 .iptvbc-client-light-title-v2693 strong{
    font-size:20px!important;
    line-height:1.05!important;
  }
  .iptvbc-client-unified-v271813 .iptvbc-client-light-title-v2693 span{
    display:block!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:12px!important;
  }
  .iptvbc-client-unified-v271813 .iptvbc-client-light-user-v2693{
    grid-column:1 / -1!important;
    width:100%!important;
    justify-content:space-between!important;
    gap:8px!important;
  }

  .iptvbc-client-menu-overlay-v271813{
    position:fixed!important;
    inset:0!important;
    z-index:99998!important;
    display:block!important;
    width:100vw!important;
    height:100dvh!important;
    padding:0!important;
    border:0!important;
    background:rgba(15,23,42,.46)!important;
    opacity:0!important;
    pointer-events:none!important;
    backdrop-filter:blur(8px)!important;
    transition:opacity .28s ease!important;
    cursor:pointer!important;
  }
  .iptvbc-client-unified-v271813.is-client-menu-open .iptvbc-client-menu-overlay-v271813{
    opacity:1!important;
    pointer-events:auto!important;
  }

  .iptvbc-client-unified-v271813 > nav.iptvbc-client-nav-v279,
  body.iptvb-client-portal-page .iptvbc-client-unified-v271813 > nav.iptvbc-client-nav-v279,
  body.iptvb-theme.iptvb-client-portal-page .iptvbc-client-unified-v271813 > nav.iptvbc-client-nav-v279{
    position:fixed!important;
    top:0!important;
    left:0!important;
    z-index:99999!important;
    width:min(88vw,370px)!important;
    max-width:370px!important;
    height:100dvh!important;
    min-height:100dvh!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:16px!important;
    padding:20px 17px calc(22px + env(safe-area-inset-bottom))!important;
    border-right:1px solid rgba(226,232,240,.96)!important;
    border-bottom:0!important;
    border-radius:0 32px 32px 0!important;
    background:
      radial-gradient(circle at 20% 0%,rgba(16,185,129,.12),transparent 32%),
      radial-gradient(circle at 100% 18%,rgba(245,196,81,.18),transparent 30%),
      linear-gradient(180deg,#ffffff 0%,#fbfdff 62%,#fffaf0 100%)!important;
    box-shadow:32px 0 80px rgba(15,23,42,.18)!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    scrollbar-width:none!important;
    transform:translate3d(-106%,0,0)!important;
    opacity:.98!important;
    visibility:hidden!important;
    transition:transform .34s cubic-bezier(.22,1,.36,1),visibility .34s ease!important;
    isolation:isolate!important;
  }
  .iptvbc-client-unified-v271813 > nav.iptvbc-client-nav-v279::-webkit-scrollbar{display:none!important;}
  .iptvbc-client-unified-v271813.is-client-menu-open > nav.iptvbc-client-nav-v279,
  body.iptvb-client-portal-page .iptvbc-client-unified-v271813.is-client-menu-open > nav.iptvbc-client-nav-v279,
  body.iptvb-theme.iptvb-client-portal-page .iptvbc-client-unified-v271813.is-client-menu-open > nav.iptvbc-client-nav-v279{
    transform:translate3d(0,0,0)!important;
    visibility:visible!important;
  }

  .iptvbc-client-unified-v271813 > nav.iptvbc-client-nav-v279:before{
    content:""!important;
    display:block!important;
    position:absolute!important;
    inset:-80px -60px auto auto!important;
    width:170px!important;
    height:170px!important;
    border-radius:999px!important;
    background:radial-gradient(circle,rgba(255,176,0,.22),transparent 68%)!important;
    z-index:-1!important;
  }

  .iptvbc-client-unified-v271813 .iptvbc-client-sidebar-brand-v279,
  .iptvbc-client-unified-v271813 .iptvbc-client-sidebar-brand-v271813{
    display:grid!important;
    grid-template-columns:44px minmax(0,1fr) 42px!important;
    grid-template-areas:"logo title close" "logo subtitle close"!important;
    column-gap:12px!important;
    align-items:center!important;
    padding:4px 2px 18px!important;
    margin:0 0 4px!important;
    border-bottom:1px solid rgba(226,232,240,.88)!important;
  }
  .iptvbc-client-sidebar-brand-v271813 .iptvbc-client-sidebar-logo-v279{grid-area:logo!important;}
  .iptvbc-client-sidebar-brand-v271813 strong{grid-area:title!important;}
  .iptvbc-client-sidebar-brand-v271813 em{grid-area:subtitle!important;}
  .iptvbc-client-sidebar-close-v271813{
    grid-area:close!important;
    display:grid!important;
    place-items:center!important;
    width:40px!important;
    height:40px!important;
    border-radius:15px!important;
    border:1px solid rgba(226,232,240,.94)!important;
    background:#fff!important;
    color:#0f172a!important;
    font-size:25px!important;
    line-height:1!important;
    font-weight:800!important;
    cursor:pointer!important;
    box-shadow:0 10px 24px rgba(15,23,42,.06)!important;
  }

  .iptvbc-client-unified-v271813 .iptvbc-client-sidebar-links-v279{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:10px!important;
    flex:unset!important;
    width:100%!important;
    min-width:0!important;
  }
  .iptvbc-client-unified-v271813 .iptvbc-client-sidebar-links-v279 a{
    width:100%!important;
    min-height:54px!important;
    padding:0 14px!important;
    border-radius:18px!important;
    font-size:15px!important;
    white-space:normal!important;
    color:#1264d8!important;
    background:rgba(255,255,255,.68)!important;
    border:1px solid rgba(226,232,240,.72)!important;
    box-shadow:0 10px 28px rgba(15,23,42,.04)!important;
  }
  .iptvbc-client-unified-v271813 .iptvbc-client-sidebar-links-v279 a.is-active{
    color:#fff!important;
    background:linear-gradient(135deg,#ff304f 0%,#df0b35 58%,#c90e22 100%)!important;
    border-color:rgba(239,51,64,.34)!important;
    box-shadow:0 18px 42px rgba(239,51,64,.24)!important;
  }
  .iptvbc-client-unified-v271813 .iptvbc-client-sidebar-links-v279 a span[aria-hidden="true"]{
    width:34px!important;
    height:34px!important;
    flex:0 0 34px!important;
    border-radius:13px!important;
  }

  .iptvbc-client-unified-v271813 .iptvbc-client-sidebar-vip-v279{
    display:grid!important;
    margin-top:auto!important;
    min-height:132px!important;
    padding:18px!important;
    border-radius:24px!important;
  }

  .iptvbc-client-unified-v271813 > .iptvbc-client-content-stack-v2713{
    padding:12px 10px 16px!important;
  }
}

@media (max-width:480px){
  .iptvbc-client-unified-v271813 > nav.iptvbc-client-nav-v279,
  body.iptvb-client-portal-page .iptvbc-client-unified-v271813 > nav.iptvbc-client-nav-v279,
  body.iptvb-theme.iptvb-client-portal-page .iptvbc-client-unified-v271813 > nav.iptvbc-client-nav-v279{
    width:min(91vw,350px)!important;
    border-radius:0 28px 28px 0!important;
    padding:18px 14px calc(20px + env(safe-area-inset-bottom))!important;
  }
  .iptvbc-client-mobile-menu-button-v271813{
    min-width:88px!important;
    min-height:44px!important;
    padding-inline:10px!important;
  }
  .iptvbc-client-mobile-menu-button-v271813 strong{font-size:12px!important;}
  .iptvbc-client-unified-v271813 .iptvbc-client-light-title-v2693 strong{font-size:18px!important;}
}

/* IPTVBC v2.7.18.20 — Drawer ownership guard.
   This file is the only drawer owner. Desktop sidebar remains visible; mobile drawer stays hidden until menu open. */
@media (min-width:921px){
  .iptvbc-client-mobile-menu-button-v271813,
  .iptvbc-client-sidebar-close-v271813,
  .iptvbc-client-menu-overlay-v271813{
    display:none!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  .iptvbc-account[data-iptvbc-private-portal="1"] > nav[data-iptvbc-client-menu-panel]{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
  }
}
@media (max-width:920px){
  .iptvbc-account[data-iptvbc-private-portal="1"] > nav[data-iptvbc-client-menu-panel]{
    position:fixed!important;
    top:0!important;
    left:0!important;
    grid-column:auto!important;
    grid-row:auto!important;
    align-self:auto!important;
  }
}
