/* Turnir 2026 refined layer
   Scoped, calm, and safe. Keep Additional CSS minimal. */

:root{
  --tm-bg-0:#08070d;
  --tm-bg-1:#100d1b;
  --tm-bg-2:#171226;
  --tm-card:rgba(255,255,255,.035);
  --tm-stroke:rgba(255,255,255,.08);
  --tm-text:#f4f2ff;
  --tm-text-2:rgba(244,242,255,.74);
  --tm-text-3:rgba(244,242,255,.56);
  --tm-violet:#8f6bff;
  --tm-cyan:#7df5ff;
  --tm-green:#8ff8bf;
}

body.home{
  background:
    radial-gradient(1200px 540px at 50% -10%, rgba(102,64,255,.16), transparent 58%),
    linear-gradient(180deg, #06060b 0%, #08070d 100%) !important;
}

.home .tm_hero_wrap{
  border-radius:28px !important;
  overflow:hidden !important;
  box-shadow:0 28px 80px rgba(0,0,0,.34) !important;
}
.home .tm_hero_overlay{
  background:
    radial-gradient(1100px 480px at 18% 28%, rgba(98,60,255,.18), transparent 42%),
    linear-gradient(180deg, rgba(8,8,14,.50), rgba(8,8,14,.82)) !important;
}
.home .tm_hero_title{
  letter-spacing:-.03em !important;
  font-weight:900 !important;
}
.home .tm_hero_stats .tm_stat_item,
.home .tm_winner_card,
.home .tm_track_map_wrap,
.home .tm_server_chip,
.home .tm_status_row{
  background:rgba(255,255,255,.04) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  box-shadow:none !important;
  backdrop-filter:blur(10px) !important;
}
.home .tm_track_map_wrap img{display:block;width:100%;height:auto}

.home #tm-filters-panel,
.home .tm_leaderboard_card,
.home #tm-live-feed,
.home #tm-live-now,
.home #tm-my-driver-hub,
.home #tm-driver-focus{
  backdrop-filter:blur(14px);
}

.home .tm_leaderboard_card{
  background:linear-gradient(180deg, rgba(20,14,34,.90), rgba(10,9,18,.94)) !important;
  border:1px solid rgba(255,255,255,.08) !important;
  border-radius:24px !important;
  box-shadow:0 24px 60px rgba(0,0,0,.22) !important;
}

.home .tm_leaderboard_table tbody tr{
  background:rgba(255,255,255,.035) !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.05) inset !important;
}
.home .tm_leaderboard_table tbody tr:hover{
  background:rgba(255,255,255,.055) !important;
}

.home .tm-mobile-sticky-nav{
  position:fixed;
  left:10px;
  right:10px;
  bottom:max(10px, env(safe-area-inset-bottom));
  z-index:9999;
  display:none;
  grid-template-columns:repeat(4,1fr);
  gap:8px;
  padding:8px;
  background:rgba(12,10,20,.86);
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  backdrop-filter:blur(16px);
  box-shadow:0 16px 40px rgba(0,0,0,.35);
}
.home .tm-mobile-sticky-nav a{
  min-height:48px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  color:#fff;
  text-decoration:none;
  font-size:11px;
}

.home .tm-mobile-leaderboard-cards{display:none}
.home .tm-lb-card{
  background:linear-gradient(180deg, rgba(26,20,44,.82), rgba(14,11,24,.92));
  border:1px solid rgba(255,255,255,.08);
  border-radius:16px;
  padding:12px;
  margin-bottom:10px;
}
.home .tm-lb-top,
.home .tm-lb-grid{display:grid;gap:8px}
.home .tm-lb-top{grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;margin-bottom:8px}
.home .tm-lb-grid{grid-template-columns:1fr 1fr}
.home .tm-lb-rank{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--tm-text-3);margin-bottom:4px}
.home .tm-lb-driver{font-size:16px;font-weight:800;line-height:1.18}
.home .tm-lb-chip{padding:10px 11px;border-radius:13px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.07)}
.home .tm-lb-chip span{display:block;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--tm-text-3);margin-bottom:4px}
.home .tm-lb-chip strong{font-size:13px}

@media (max-width: 991px){
  body.home{padding-bottom:calc(82px + env(safe-area-inset-bottom)) !important;}
  .home .tm_hero_wrap{min-height:auto !important;padding:16px !important;gap:14px !important}
  .home .tm_hero_title{font-size:34px !important}
  .home .tm_hero_stats{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .home .tm-mobile-sticky-nav{display:grid}
}

@media (max-width: 640px){
  .home .tm-mobile-leaderboard-cards{display:block}
  .home .table-responsive{display:none !important}
}

/* =========================================
   CRITICAL MOBILE FIX
   Native responsive header + real mobile hero
   ========================================= */
@media (max-width: 1199px){
  html, body{
    overflow-x:hidden !important;
    width:100% !important;
    max-width:100% !important;
  }

  html.tm-mobile-menu-open,
  body.tm-mobile-menu-open{
    overflow:hidden !important;
  }

  #tm-site-header{
    position:sticky !important;
    top:0 !important;
    z-index:9999 !important;
    backdrop-filter:blur(10px);
  }

  #tm-site-header .container{
    max-width:100% !important;
    padding-left:14px !important;
    padding-right:14px !important;
  }

  #tm-site-header .cs_main_header,
  #tm-site-header .cs_main_header_in{
    min-height:56px !important;
  }

  #tm-site-header .cs_main_header_in{
    display:grid !important;
    grid-template-columns:auto 1fr auto !important;
    align-items:center !important;
    gap:12px !important;
  }

  #tm-site-header .cs_main_header_left,
  #tm-site-header .cs_main_header_right{
    display:flex !important;
    align-items:center !important;
  }

  #tm-site-header .cs_main_header_right{
    justify-content:flex-end !important;
    gap:10px !important;
    margin-left:auto !important;
  }

  #tm-site-header .cs_site_branding img{
    width:auto !important;
    height:auto !important;
    max-width:118px !important;
    max-height:46px !important;
    border-radius:12px !important;
    box-shadow:none !important;
    opacity:1 !important;
    mix-blend-mode:normal !important;
  }

  #tm-site-header .cs_site_branding::after{
    display:none !important;
  }

  #tm-site-header .cs_nav{
    width:100% !important;
  }

  #tm-site-header .cs_nav .cs_nav_list{
    position:fixed !important;
    left:-100vw !important;
    top:0 !important;
    width:100vw !important;
    min-height:100dvh !important;
    padding:84px 18px 24px !important;
    display:block !important;
    background:linear-gradient(180deg, rgba(12,10,20,.98), rgba(8,8,14,.98)) !important;
    overflow:auto !important;
    z-index:9998 !important;
    box-shadow:none !important;
  }

  #tm-site-header .cs_nav .cs_nav_list.cs_active{
    left:0 !important;
  }

  #tm-site-header .cs_nav .cs_nav_list > li{
    display:block !important;
    margin:0 0 8px 0 !important;
    height:auto !important;
  }

  #tm-site-header .cs_nav .cs_nav_list > li > a{
    display:block !important;
    padding:14px 16px !important;
    border-radius:14px !important;
    background:rgba(255,255,255,.05) !important;
    border:1px solid rgba(255,255,255,.08) !important;
    font-size:14px !important;
    line-height:1.25 !important;
  }

  #tm-site-header .cs_main_header_center{
    position:static !important;
    width:0 !important;
    max-width:0 !important;
    height:0 !important;
    overflow:hidden !important;
  }

  #tm-site-header .cs_btn,
  #tm-site-header .tm-btn{
    min-height:36px !important;
    padding:8px 12px !important;
    font-size:12px !important;
    white-space:nowrap !important;
  }

  #tm-site-header .cs_menu_toggle{
    position:static !important;
    top:auto !important;
    right:auto !important;
    margin:0 !important;
    width:42px !important;
    height:42px !important;
    border-radius:12px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    background:rgba(255,255,255,.06) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    color:#fff !important;
    z-index:10000 !important;
  }

  #tm-site-header .cs_menu_toggle span,
  #tm-site-header .cs_menu_toggle span::before,
  #tm-site-header .cs_menu_toggle span::after{
    width:18px !important;
    height:2px !important;
    background:#fff !important;
  }

  #tm-site-header .cs_menu_toggle span{
    top:0 !important;
  }

  #tm-site-header .cs_menu_toggle span::before{
    margin-top:-6px !important;
  }

  #tm-site-header .cs_menu_toggle span::after{
    margin-top:6px !important;
  }
}

@media (max-width: 991px){
  body.home{
    padding-bottom:0 !important;
  }

  .home .tm_hero_wrap{
    display:grid !important;
    grid-template-columns:1fr !important;
    min-height:auto !important;
    padding:18px !important;
    gap:14px !important;
    border-radius:20px !important;
  }

  .home .tm_hero_main,
  .home .tm_hero_side{
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }

  .home .tm_hero_side{
    display:none !important;
  }

  .home .tm_hero_title{
    font-size:30px !important;
    line-height:1.04 !important;
    margin:0 0 10px !important;
  }

  .home .tm_hero_sub{
    font-size:13px !important;
    line-height:1.5 !important;
    margin:0 0 12px !important;
  }

  .home .tm_hero_stats{
    display:grid !important;
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
    gap:10px !important;
    margin:10px 0 0 !important;
  }

  .home .tm_stat_item{
    min-height:62px !important;
    padding:12px !important;
    border-radius:14px !important;
  }

  .home .tm_stat_label{
    font-size:10px !important;
    letter-spacing:.12em !important;
  }

  .home .tm_stat_value{
    font-size:20px !important;
  }

  .home .tm_status_row,
  .home .tm_server_row,
  .home .tm_hero_actions{
    display:none !important;
  }

  .home .tm_my_driver_shell,
  .home .tm_leaderboard_card,
  .home #tm-live-feed,
  .home #tm-live-now,
  .home #tm-driver-focus{
    border-radius:18px !important;
    padding:14px !important;
  }

  .home .table-responsive{
    overflow-x:auto !important;
    -webkit-overflow-scrolling:touch !important;
  }

  .home #tm-leaderboard-table{
    min-width:820px !important;
  }
}

@media (max-width: 640px){
  #tm-site-header .container{
    padding-left:12px !important;
    padding-right:12px !important;
  }

  #tm-site-header .cs_site_branding img{
    max-width:100px !important;
    max-height:40px !important;
  }

  #tm-site-header .cs_btn,
  #tm-site-header .tm-btn{
    padding:7px 10px !important;
    font-size:11px !important;
  }

  .home .tm_hero_title{
    font-size:26px !important;
  }
}
