/* Q130j - statistiche mobile più compatte, senza colonna infinita */
@media (max-width:820px){
  .insights-page{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
    padding-left:12px!important;
    padding-right:12px!important;
  }

  .insight-tabs{
    width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;
    overflow:visible!important;
  }
  .insight-tabs button{
    min-width:0!important;
    padding:10px 6px!important;
    font-size:12px!important;
    white-space:normal!important;
    line-height:1.05!important;
  }

  .stats-grid,
  .performance-grid,
  .advanced-stats-grid,
  .target-performance-grid,
  .level-trophy-grid,
  .rivals-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
    scroll-snap-type:none!important;
  }

  .stats-grid>article,
  .performance-grid>div,
  .advanced-stats-grid>article,
  .target-performance-grid>article,
  .level-trophy-grid>div,
  .rivals-grid>article{
    min-width:0!important;
    width:auto!important;
    min-height:104px!important;
    padding:12px 11px!important;
    border-radius:16px!important;
  }

  .stats-grid>article span,
  .performance-grid>div span,
  .advanced-stats-grid>article span,
  .target-performance-grid>article span,
  .rivals-grid>article span{
    font-size:11px!important;
    line-height:1.15!important;
  }

  .stats-grid>article b,
  .performance-grid>div b,
  .advanced-stats-grid>article b,
  .target-performance-grid>article b,
  .level-trophy-grid>div b,
  .rivals-grid>article b{
    font-size:clamp(24px,8vw,34px)!important;
    line-height:1!important;
    margin:5px 0!important;
  }

  .stats-grid>article small,
  .performance-grid>div small,
  .advanced-stats-grid>article small,
  .target-performance-grid>article small,
  .level-trophy-grid>div small,
  .rivals-grid>article small{
    font-size:10px!important;
    line-height:1.15!important;
  }

  .history-card.performance-card{
    padding:15px 12px!important;
    margin-top:12px!important;
    border-radius:18px!important;
  }
  .history-card .section-title-row{
    gap:8px!important;
    align-items:flex-start!important;
  }
  .history-card .section-title-row h2{
    font-size:20px!important;
    line-height:1.05!important;
  }
  .mini-badge{
    font-size:10px!important;
    padding:6px 8px!important;
  }

  .format-section-label{
    margin:12px 0 7px!important;
  }

  /* I tab dei tornei restano sopra la barra, ma non devono coprire la partita. */
  .q130-tournament-tabs{
    max-height:46px!important;
  }
}

/* Il badge della partita deve avere spazio quando il browser ci naviga. */
.tournament-page .human-match,
.tournament-page .bracket-match,
.tournament-page .tournament-match,
.tournament-page .match-card{
  scroll-margin-top:120px!important;
  scroll-margin-bottom:140px!important;
}

/* Q131b - header responsive robusto: telefono, tablet e piccoli desktop */
@media (max-width:820px){
  /* In modalità app la navigazione originale è ridondante e crea righe/overlay.
     Tutte queste azioni restano disponibili nella bottom bar e nel foglio Menu. */
  html.q130-app-preview .royal-main-nav,
  html.q130-app-preview .royal-user-menu{
    display:none!important;
  }

  html.q130-app-preview .royal-home-nav{
    display:block!important;
    min-height:0!important;
    height:auto!important;
    padding:11px 14px!important;
    overflow:hidden!important;
  }

  html.q130-app-preview .royal-brand-with-avatar{
    display:flex!important;
    grid-template-columns:none!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    gap:7px!important;
  }

  html.q130-app-preview .royal-brand{
    order:1!important;
    flex:1 1 auto!important;
    min-width:0!important;
    width:auto!important;
    margin:0!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    font-size:clamp(21px,6.9vw,28px)!important;
    line-height:1!important;
  }

  html.q130-app-preview .home-player-id{
    order:2!important;
    flex:0 0 auto!important;
    position:static!important;
    transform:none!important;
    margin:0!important;
    align-self:center!important;
  }

  html.q130-app-preview .home-player-id-desktop{
    display:none!important;
  }

  html.q130-app-preview .home-player-id-mobile{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:31px!important;
    padding:5px 7px!important;
    font-size:10.5px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  html.q130-app-preview .home-brand-avatar{
    order:3!important;
    width:34px!important;
    height:34px!important;
    flex:0 0 34px!important;
    margin:0!important;
    align-self:center!important;
  }
}

@media (max-width:390px){
  html.q130-app-preview .royal-home-nav{
    padding-left:11px!important;
    padding-right:11px!important;
  }
  html.q130-app-preview .royal-brand-with-avatar{
    gap:5px!important;
  }
  html.q130-app-preview .royal-brand{
    font-size:clamp(19px,6.25vw,24px)!important;
  }
  html.q130-app-preview .home-player-id-mobile{
    min-height:29px!important;
    padding:5px 6px!important;
    font-size:9.5px!important;
  }
  html.q130-app-preview .home-brand-avatar{
    width:32px!important;
    height:32px!important;
    flex-basis:32px!important;
  }
}

/* 821–1280 px: niente layout desktop compresso.
   Header su due fasce: identità/utente sopra, navigazione orizzontale sotto. */
@media (min-width:821px) and (max-width:1280px){
  .royal-home-nav{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-areas:
      "brand user"
      "nav nav"!important;
    align-items:center!important;
    gap:9px 14px!important;
    min-height:0!important;
    height:auto!important;
    padding:11px 16px 10px!important;
    overflow:hidden!important;
  }

  .royal-brand-with-avatar{
    grid-area:brand!important;
    display:flex!important;
    align-items:center!important;
    min-width:0!important;
    gap:8px!important;
  }

  .royal-brand{
    min-width:0!important;
    white-space:nowrap!important;
    font-size:clamp(20px,3.1vw,30px)!important;
  }

  .home-player-id{
    flex:0 0 auto!important;
    white-space:nowrap!important;
  }
  .home-player-id-desktop{
    display:inline-flex!important;
    align-items:center!important;
  }
  .home-player-id-mobile{
    display:none!important;
  }

  .home-brand-avatar{
    flex:0 0 32px!important;
    width:32px!important;
    height:32px!important;
  }

  .royal-user-menu{
    grid-area:user!important;
    display:flex!important;
    align-items:center!important;
    justify-self:end!important;
    gap:7px!important;
    min-width:0!important;
  }

  .royal-user-chip{
    max-width:132px!important;
    min-width:0!important;
  }
  .royal-user-chip b,
  .royal-user-chip small{
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .royal-main-nav{
    grid-area:nav!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:nowrap!important;
    gap:8px!important;
    width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    padding:8px 0 1px!important;
    border-top:1px solid rgba(231,187,67,.16)!important;
    scrollbar-width:none!important;
    -webkit-overflow-scrolling:touch!important;
  }
  .royal-main-nav::-webkit-scrollbar{
    display:none!important;
  }
  .royal-main-nav > *{
    flex:0 0 auto!important;
    white-space:nowrap!important;
  }
  .royal-main-nav > a,
  .royal-main-nav > details > summary{
    font-size:12px!important;
  }
}

/* Q131e - modalità APP anche su tablet e display compatti fino a 1280px */
@media (min-width:821px) and (max-width:1280px){
  html.q130-app-preview{
    --q130-bar-h:68px;
    --q130-safe-bottom:env(safe-area-inset-bottom,0px);
    background:#07150f;
    scroll-padding-bottom:calc(var(--q130-bar-h) + var(--q130-safe-bottom) + 12px);
  }

  html.q130-app-preview body{
    padding-bottom:calc(var(--q130-bar-h) + var(--q130-safe-bottom) + 10px)!important;
    overscroll-behavior-y:contain;
  }
  html.q130-app-preview body.q130-sheet-open{overflow:hidden!important}

  /* Su tablet usiamo la stessa navigazione APP del telefono. */
  html.q130-app-preview .royal-main-nav,
  html.q130-app-preview .royal-user-menu,
  html.q130-app-preview .mobile-menu-toggle{
    display:none!important;
  }

  html.q130-app-preview .royal-home-nav{
    display:block!important;
    min-height:0!important;
    height:auto!important;
    padding:13px 18px!important;
    overflow:hidden!important;
  }

  html.q130-app-preview .royal-brand-with-avatar{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    min-width:0!important;
    gap:9px!important;
  }

  html.q130-app-preview .royal-brand{
    order:1!important;
    flex:1 1 auto!important;
    min-width:0!important;
    width:auto!important;
    margin:0!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    font-size:clamp(26px,4.1vw,34px)!important;
    line-height:1!important;
  }

  html.q130-app-preview .home-player-id{
    order:2!important;
    flex:0 0 auto!important;
    position:static!important;
    transform:none!important;
    margin-left:auto!important;
    white-space:nowrap!important;
  }

  html.q130-app-preview .home-player-id-desktop{display:none!important}
  html.q130-app-preview .home-player-id-mobile{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:34px!important;
    padding:7px 9px!important;
    font-size:11px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  html.q130-app-preview .home-brand-avatar{
    order:3!important;
    width:38px!important;
    height:38px!important;
    flex:0 0 38px!important;
    margin:0!important;
  }

  html.q130-app-preview .q130-app-shell{
    position:fixed!important;
    z-index:9000!important;
    left:0!important;right:0!important;bottom:0!important;
    display:grid!important;
    grid-template-columns:repeat(5,1fr)!important;
    min-height:var(--q130-bar-h)!important;
    padding:6px 8px calc(6px + var(--q130-safe-bottom))!important;
    background:rgba(5,28,19,.97)!important;
    border-top:1px solid rgba(255,215,96,.28)!important;
    box-shadow:0 -10px 30px rgba(0,0,0,.28)!important;
    backdrop-filter:blur(16px)!important;
    -webkit-backdrop-filter:blur(16px)!important;
  }

  html.q130-app-preview .q130-app-shell a,
  html.q130-app-preview .q130-app-shell button{
    min-width:0!important;
    min-height:56px!important;
    border:0!important;
    background:transparent;
    color:#dfeee7;
    text-decoration:none!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:2px!important;
    font:700 11px/1.1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    padding:4px 2px!important;
    border-radius:14px!important;
    cursor:pointer!important;
  }

  html.q130-app-preview .q130-app-shell .q130-icon{
    font-size:22px!important;
    line-height:1!important;
  }

  html.q130-app-preview .q130-app-shell .q130-primary{
    color:#07150f!important;
    background:#f4c744!important;
    margin:0 4px!important;
    box-shadow:0 7px 18px rgba(0,0,0,.24)!important;
  }

  html.q130-app-preview .q130-app-shell a[aria-current="page"],
  html.q130-app-preview .q130-app-shell button[aria-current="page"]{
    color:#ffd65a!important;
    background:rgba(255,214,90,.10)!important;
    box-shadow:inset 0 0 0 1px rgba(255,214,90,.18)!important;
  }

  html.q130-app-preview .q130-app-shell .q130-primary[aria-current="page"]{
    color:#07150f!important;
    background:#f4c744!important;
  }

  html.q130-app-preview .q130-app-backdrop{
    display:block!important;
    position:fixed!important;
    z-index:9010!important;
    inset:0!important;
    background:rgba(0,0,0,.58)!important;
    opacity:0;
    pointer-events:none;
    transition:opacity .16s ease;
  }
  html.q130-app-preview .q130-app-backdrop.show{
    opacity:1!important;
    pointer-events:auto!important;
  }

  html.q130-app-preview .q130-app-sheet{
    display:block!important;
    position:fixed!important;
    z-index:9020!important;
    left:max(14px,calc((100vw - 720px)/2))!important;
    right:max(14px,calc((100vw - 720px)/2))!important;
    bottom:calc(var(--q130-bar-h) + var(--q130-safe-bottom) + 8px)!important;
    max-height:min(72vh,620px)!important;
    overflow:auto!important;
    background:#0b261b!important;
    border:1px solid rgba(255,214,90,.28)!important;
    border-radius:24px!important;
    box-shadow:0 18px 60px rgba(0,0,0,.48)!important;
    padding:14px!important;
    transform:translateY(24px)!important;
    opacity:0;
    pointer-events:none;
    transition:transform .18s ease,opacity .18s ease;
  }
  html.q130-app-preview .q130-app-sheet.show{
    transform:translateY(0)!important;
    opacity:1!important;
    pointer-events:auto!important;
  }

  html.q130-app-preview .q130-sheet-handle{
    width:42px;height:4px;border-radius:999px;
    background:rgba(255,255,255,.28);margin:0 auto 12px;
  }
  html.q130-app-preview .q130-sheet-title{
    font:800 18px/1.2 system-ui!important;color:#fff!important;margin:0 0 12px!important;
  }
  html.q130-app-preview .q130-sheet-grid{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:9px!important;
  }
  html.q130-app-preview .q130-sheet-link{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    min-height:52px!important;
    padding:10px 12px!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:16px!important;
    background:rgba(255,255,255,.045)!important;
    color:#f2f7f4!important;
    text-decoration:none!important;
    font:700 13px/1.25 system-ui!important;
  }
  html.q130-app-preview .q130-sheet-link span:first-child{font-size:20px!important}
  html.q130-app-preview .q130-sheet-group{margin-top:14px!important}
  html.q130-app-preview .q130-sheet-group h3{
    font:800 11px/1.2 system-ui!important;
    text-transform:uppercase!important;
    letter-spacing:.08em!important;
    color:#f2c952!important;
    margin:0 0 7px!important;
  }
  html.q130-app-preview .q130-sheet-close{
    position:absolute!important;
    right:12px!important;top:12px!important;
    width:34px!important;height:34px!important;
    border:0!important;border-radius:50%!important;
    background:rgba(255,255,255,.08)!important;
    color:#fff!important;font-size:20px!important;
  }
}

/* Le schermate di gioco non devono avere la bottom bar nemmeno su tablet. */
@media (min-width:821px) and (max-width:1280px){
  html.q130-game-screen body{padding-bottom:0!important}
  html.q130-game-screen .q130-app-shell,
  html.q130-game-screen .q130-app-backdrop,
  html.q130-game-screen .q130-app-sheet{
    display:none!important;
  }
}
