/* ==========================================================
   VYRAL PVP v7.0.94 — PHONE / TABLET RESPONSIVE LAYER
   Shared by /play/, leaderboard and every competitive page.
   ========================================================== */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{max-width:100%;overflow-x:hidden}
img,svg,canvas,video{max-width:100%}
button,a,input{touch-action:manipulation}

/* ---------- Landing + leaderboard shared topbar ---------- */
@media (max-width:760px){
  .shell{width:calc(100% - 24px)!important}
  .topbar,.leaderboard-topbar{
    width:calc(100% - 16px)!important;
    margin:8px auto 0!important;
    padding:9px 9px 8px!important;
    border-radius:17px!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto!important;
    grid-template-rows:auto auto!important;
    gap:8px 7px!important;
    top:6px!important;
  }
  .topbar .logo,.leaderboard-topbar .logo{grid-column:1;grid-row:1;min-width:0}
  .topbar .logo-text,.leaderboard-topbar .logo-text{font-size:12px!important;white-space:nowrap}
  .topbar .logo-mark,.leaderboard-topbar .logo-mark{width:32px;height:32px;border-radius:10px}
  .topbar .server-pill,.leaderboard-topbar .server-pill{
    grid-column:2;grid-row:1;justify-self:end;min-height:38px;max-width:160px;padding:7px 9px!important;border-radius:12px;
  }
  .topbar .server-pill-copy small,.leaderboard-topbar .server-pill-copy small{display:none!important}
  .topbar .server-pill-copy strong,.leaderboard-topbar .server-pill-copy strong{font-size:9px!important;max-width:116px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .topbar .copy-mini{display:none!important}
  .topbar .copy-icon,.leaderboard-topbar .copy-icon{width:14px;height:14px;flex:0 0 auto}
  .topbar .nav-links,.leaderboard-topbar .nav-links{
    grid-column:1/-1;grid-row:2;display:flex!important;align-items:center;gap:4px!important;margin:0!important;width:100%;overflow-x:auto;overflow-y:hidden;
    padding:2px 0 1px;scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;
  }
  .topbar .nav-links::-webkit-scrollbar,.leaderboard-topbar .nav-links::-webkit-scrollbar{display:none}
  .topbar .nav-links a,.leaderboard-topbar .nav-links a{
    flex:0 0 auto;min-height:38px;padding:8px 10px!important;border-radius:10px;display:flex;align-items:center;gap:6px;font-size:10px!important;scroll-snap-align:start;
  }
  .topbar .nav-links a span,.leaderboard-topbar .nav-links a span{display:inline!important}
  .topbar .nav-links a svg,.leaderboard-topbar .nav-links a svg{width:15px!important;height:15px!important}

  .hero{grid-template-columns:1fr!important;gap:32px!important;padding:46px 0 44px!important;min-height:auto!important}
  .hero h1{font-size:clamp(54px,18vw,78px)!important;line-height:.82!important;margin:20px 0 22px!important}
  .lead{font-size:14px!important;line-height:1.58!important}
  .hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  .hero-actions .primary,.hero-actions .secondary{width:100%;min-height:48px}
  .hero-panel{width:100%;max-width:none!important}
  .versus{padding:0 14px!important;gap:4px!important}.vs{width:42px;height:42px}.fighter span{font-size:46px!important}
  .live-stats{grid-template-columns:repeat(3,minmax(0,1fr))!important}.live-stats>div{min-width:0!important;padding:11px 8px!important}
  .section{padding:72px 0!important}.section-heading{gap:12px!important;margin-bottom:20px!important}.section-heading h2{font-size:clamp(38px,12vw,55px)!important}
  .mode-grid{grid-template-columns:1fr!important}.mode-card{min-height:230px!important}
  .season{padding:25px 17px!important;border-radius:22px!important}.season h2{font-size:clamp(38px,12vw,52px)!important}
  .join{grid-template-columns:1fr!important}.footer{grid-template-columns:1fr!important;gap:10px!important;padding-bottom:calc(24px + env(safe-area-inset-bottom))!important}
}

@media (max-width:430px){
  .shell{width:calc(100% - 18px)!important}
  .topbar .server-pill-copy strong,.leaderboard-topbar .server-pill-copy strong{display:none!important}
  .topbar .server-pill,.leaderboard-topbar .server-pill{width:40px;min-width:40px;justify-content:center;padding:0!important}
  .topbar .live-dot,.leaderboard-topbar .live-dot{margin:0}.topbar .copy-icon,.leaderboard-topbar .copy-icon{display:none}
  .hero h1{font-size:clamp(49px,18vw,68px)!important}.quick-meta{font-size:9px!important}.combat-card{min-height:285px!important}
  .live-stats{gap:6px!important}.live-stats small{letter-spacing:.04em!important}.live-stats strong{font-size:11px!important}
}

/* ---------- Competitive hub pages ---------- */
@media (max-width:760px){
  body.hub-page{padding-bottom:env(safe-area-inset-bottom)}
  .hub-shell{width:calc(100% - 20px)!important}
  .hub-topbar{
    height:auto!important;min-height:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;
    gap:8px!important;padding:8px 10px 7px!important;top:0!important;
  }
  .hub-brand{grid-column:1;grid-row:1;min-width:0}.hub-brand-mark{width:34px;height:34px;border-radius:11px}.hub-brand>span:last-child{display:inline!important;font-size:12px}
  .hub-ip{grid-column:2;grid-row:1;justify-self:end;min-height:38px;padding:7px 9px!important;border-radius:12px!important}.hub-ip .hub-ip-copy{display:none!important}.hub-ip svg{width:14px}
  .hub-nav{
    grid-column:1/-1;grid-row:2;margin:0!important;display:flex!important;gap:4px!important;width:100%;overflow-x:auto;overflow-y:hidden;padding:2px 0 1px;
    scrollbar-width:none;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scroll-snap-type:x proximity;
  }
  .hub-nav::-webkit-scrollbar{display:none}.hub-nav a{flex:0 0 auto;min-height:38px;padding:8px 10px!important;font-size:10px!important;gap:6px!important;scroll-snap-align:start}.hub-nav a span{display:inline!important}.hub-nav a svg{width:15px;height:15px}

  .hub-main{padding:24px 0 58px!important}.hub-hero{grid-template-columns:1fr!important;gap:12px!important;margin-bottom:18px!important}
  .hub-hero-copy,.hub-hero-side{border-radius:22px!important}.hub-hero-copy{padding:25px 18px!important}.hub-hero-copy:after{width:190px;height:190px;right:-80px;top:-80px}
  .hub-hero h1{font-size:clamp(38px,13vw,54px)!important;line-height:.94!important;margin:13px 0 13px!important}.hub-hero p{font-size:13px!important;line-height:1.55!important}
  .hub-hero-actions{display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin-top:20px!important}.hub-btn{width:100%;min-height:46px!important}
  .hub-hero-side{padding:19px!important;min-height:205px!important}.hub-side-number{font-size:48px!important;margin-top:20px!important}.hub-side-grid{gap:7px!important}.hub-mini-stat{padding:12px!important}
  .hub-section{margin-top:20px!important}.hub-section-head{align-items:flex-start!important;flex-direction:column!important;gap:6px!important;margin-bottom:12px!important}.hub-section-head h2{font-size:24px!important}.hub-section-head p{font-size:12px!important}
  .hub-panel{border-radius:20px!important}.hub-panel-pad{padding:15px!important}.hub-grid,.hub-grid.two,.hub-grid.four{grid-template-columns:1fr!important;gap:9px!important}.hub-card{padding:16px!important;border-radius:18px!important}

  .hub-searchbar{min-height:54px;padding:6px 7px 6px 12px!important;border-radius:16px!important}.hub-searchbar input{font-size:16px!important}.hub-searchbar button{min-height:42px!important;padding:0 13px!important}
  .hub-toolbar{align-items:stretch!important;gap:8px!important}.hub-segment{max-width:100%;overflow-x:auto;scrollbar-width:none}.hub-segment::-webkit-scrollbar{display:none}.hub-segment button{flex:0 0 auto;min-height:38px}
  .hub-count{align-self:center}.player-card{gap:12px!important}.mc-head{width:52px!important;height:52px!important;border-radius:15px!important}.player-stats{grid-template-columns:1fr 1fr!important;gap:6px!important}.player-stats div{padding:9px!important}

  .hub-table-wrap,.profile-mode-table-wrap{width:100%;max-width:100%;overflow-x:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;border-radius:0 0 18px 18px}
  .hub-table{min-width:700px!important}.hub-table th,.hub-table td{padding-left:11px!important;padding-right:11px!important}.profile-mode-table{min-width:900px!important}
  .table-player{min-width:160px!important}.service-row{padding:12px!important;gap:9px!important}.service-row small{overflow-wrap:anywhere}
  .update-head{padding:18px 16px 13px!important;flex-direction:column!important}.update-list{padding:14px 16px 17px!important}.bracket{grid-template-columns:1fr!important;gap:12px!important}
  .rank-road{grid-template-columns:1fr!important}.podium-mini{grid-template-columns:1fr!important}.profile-stat-grid{grid-template-columns:1fr 1fr!important;gap:8px!important}

  .profile-v2-layout{grid-template-columns:1fr!important;gap:10px!important}.profile-skin-card{position:relative!important;top:auto!important;padding:14px!important}.profile-skin-stage{height:min(65vh,410px)!important;min-height:330px!important;border-radius:18px!important}
  .profile-skin-controls{grid-template-columns:1fr 1fr!important}.profile-skin-controls button{min-height:46px!important}.profile-skin-hint{font-size:8px!important;text-align:center;line-height:1.45}
  .profile-overview-card{padding:16px!important}.profile-overview-top{flex-direction:column!important;gap:13px!important}.profile-overview-identity{width:100%;align-items:flex-start!important}.mc-head.profile-head{width:60px!important;height:60px!important;border-radius:17px!important}
  .profile-overview-identity h1{font-size:clamp(29px,10vw,42px)!important;line-height:.98!important;margin-top:4px!important}.profile-overview-badges{justify-content:flex-start!important}
  .profile-rating-strip{grid-template-columns:1fr 1fr!important;gap:7px!important;margin-top:15px!important;padding-top:14px!important}.profile-rating-strip>div{padding:11px!important;border-radius:14px!important}.profile-rating-main strong{font-size:28px!important}
  .profile-detail-grid{grid-template-columns:1fr 1fr!important;gap:7px!important}.profile-detail{padding:13px 11px!important;border-radius:16px!important}.profile-detail strong{font-size:20px!important}
  .chart-shell{height:215px!important;padding:14px 12px 20px!important;border-radius:18px!important}.chart-shell:before{inset:14px 12px 20px!important}
  .hub-footer{padding:20px 0 calc(28px + env(safe-area-inset-bottom))!important}.hub-footer-inner{align-items:flex-start!important;gap:9px 14px!important}.hub-footer-inner>span:last-child{width:100%;line-height:1.45}
  .hub-toast{bottom:calc(14px + env(safe-area-inset-bottom));max-width:calc(100% - 24px);text-align:center}
}

@media (max-width:430px){
  .hub-shell{width:calc(100% - 16px)!important}.hub-topbar{padding-inline:8px!important}.hub-brand>span:last-child{font-size:11px!important}.hub-nav a{padding:8px!important;font-size:9px!important}
  .hub-hero-copy{padding:22px 15px!important}.hub-hero h1{font-size:clamp(35px,13vw,47px)!important}.hub-side-grid{grid-template-columns:1fr 1fr!important}
  .hub-searchbar{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:8px!important}.hub-searchbar button{width:42px;padding:0!important;font-size:0}.hub-searchbar button:after{content:'›';font-size:22px;line-height:1}
  .profile-skin-stage{height:min(60vh,370px)!important;min-height:300px!important}.profile-skin-controls{gap:6px!important}.profile-rating-strip,.profile-detail-grid,.profile-stat-grid{grid-template-columns:1fr 1fr!important}
  .profile-rating-strip strong{font-size:17px!important}.profile-rating-main strong{font-size:26px!important}.profile-detail strong{font-size:18px!important}
  .record-card .record-value{font-size:26px!important}.mode-top-row{grid-template-columns:24px minmax(0,auto) 1fr auto!important;gap:5px!important}
}

/* ---------- Leaderboard page ---------- */
@media (max-width:760px){
  .leaderboard-page .rank-main{padding-top:16px!important;padding-bottom:54px!important}.rank-hero{padding:23px 15px!important;border-radius:21px!important;gap:18px!important}.rank-hero h1{font-size:clamp(48px,15vw,66px)!important;line-height:.84!important}.rank-hero p{font-size:12px!important;line-height:1.55!important}.back-link{font-size:10px!important}
  .hero-actions-row{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}.rank-status-card,.season-chip{width:100%!important;min-width:0!important}.queue-card{min-height:0!important;border-radius:20px!important}.queue-card-top{padding:15px 15px 8px!important}.ranked-lock{margin:8px 12px 0!important}.queue-visual{grid-template-columns:1fr!important;text-align:center!important;justify-items:center!important;min-height:220px!important;padding:18px 15px 22px!important}.queue-symbol{width:84px!important;height:84px!important}.queue-copy{justify-items:center!important}.queue-copy small{max-width:280px!important}
  .player-search-panel{grid-template-columns:1fr!important;gap:13px!important;padding:17px 13px!important;border-radius:19px!important}.search-copy h2{font-size:27px!important}.search-copy p{font-size:11px!important}.player-search{height:52px!important;padding-left:12px!important}.search-feedback{grid-column:1!important;margin:0!important}
  .mode-picker-section{margin-top:42px!important}.compact-heading h2,.section-heading h2{font-size:clamp(34px,11vw,47px)!important}.mode-scroll-shell{grid-template-columns:1fr!important}.mode-scroll-arrow{display:none!important}.mode-filters{width:100%;overflow-x:auto!important;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity}.mode-card-filter{flex-basis:138px!important;height:165px!important;scroll-snap-align:start}.mode-item-frame{height:88px!important}
  .rank-dashboard{border-radius:20px!important}.rank-dashboard-head{padding:19px 14px!important;align-items:flex-start!important;gap:10px!important}.rank-dashboard-head h2{font-size:28px!important}.metric-filter-wrap{grid-template-columns:1fr!important;padding:13px 14px!important;gap:9px!important}.metric-filters{width:100%;padding-bottom:4px!important}.metric-btn{min-height:40px!important}
  .ranking-stage{padding:13px!important}.ranking-disabled{padding:28px 12px!important}.disabled-grid{grid-template-columns:1fr!important}.podium{grid-template-columns:1fr!important;gap:8px!important}.podium-card,.podium-1{min-height:150px!important;padding:15px!important;border-radius:17px!important}.podium-player{gap:10px!important}.podium-head{width:52px!important;height:52px!important;border-radius:14px!important}.podium-score b{font-size:25px!important}
  .ranking-table-title{padding:16px 13px!important;align-items:flex-start!important;flex-direction:column!important;gap:8px!important}.ranking-table-title h3{font-size:19px!important}.ranking-table-wrap{overflow-x:auto!important;-webkit-overflow-scrolling:touch;overscroll-behavior-inline:contain;scrollbar-width:thin}.ranking-table-head.full,.ranking-row.full{min-width:700px!important;grid-template-columns:58px minmax(190px,1.45fr) 110px 90px 110px 38px!important;padding-inline:12px!important;gap:8px!important}.ranking-row.full{min-height:70px!important}.ranking-head{width:36px!important;height:36px!important}.pagination{min-height:56px!important;overflow-x:auto!important;justify-content:flex-start!important;padding:0 10px!important}
  .live-matches-panel,.stat-explorer{padding:18px 13px!important;border-radius:19px!important}.live-matches-grid{grid-template-columns:1fr!important}.live-match-card{min-height:145px!important;padding:14px!important}.category-grid{grid-template-columns:1fr 1fr!important;gap:7px!important}.category-card{min-height:102px!important;padding:11px!important}
  .player-sheet{width:100%!important}.player-sheet-head{height:58px!important;padding:0 14px!important}.profile-inner{padding:14px!important}.profile-identity{padding:15px!important;gap:11px!important}.profile-head{width:60px!important;height:60px!important}.profile-name h2{font-size:21px!important}.profile-stats{grid-template-columns:1fr 1fr!important}.profile-mode-row{grid-template-columns:minmax(0,1fr) auto auto!important;gap:7px!important;padding:10px!important}
  .leaderboard-footer{gap:8px!important;padding-bottom:calc(25px + env(safe-area-inset-bottom))!important}
}

@media (max-width:430px){
  .leaderboard-page .shell{width:calc(100% - 16px)!important}.rank-hero{padding:20px 12px!important}.rank-hero h1{font-size:clamp(43px,15vw,58px)!important}.ranked-lock{grid-template-columns:42px minmax(0,1fr) 20px!important;padding:9px!important}.ranked-lock-icon{width:42px!important;height:42px!important}.ranked-lock-copy em{display:none}
  .player-search button{width:42px!important;padding:0!important}.player-search button span{display:none!important}.category-grid{grid-template-columns:1fr 1fr!important}.category-card strong{font-size:10px!important}.category-card span{font-size:8px!important}
  .profile-stats{grid-template-columns:1fr 1fr!important}.profile-stat{min-height:82px!important;padding:11px!important}.profile-mode-row small{display:none!important}
}

@media (prefers-reduced-motion:reduce){
  *,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
}
