
/* ============================================================
   LES AMIGOS — AUTH + ADMIN WORLDCLASS
   ============================================================ */
.world-auth-login,
.world-auth-signup,
.world-admin-page{
  min-height:100vh!important;
  background:
    linear-gradient(180deg,rgba(1,6,18,.10),rgba(1,6,18,.52)),
    url("assets/football-stadium-bg.png") center/cover fixed no-repeat!important;
}

.world-auth-login::before,
.world-auth-signup::before,
.world-admin-page::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:
    radial-gradient(circle at 12% 16%,rgba(53,125,255,.24),transparent 27%),
    radial-gradient(circle at 88% 20%,rgba(166,65,255,.24),transparent 27%),
    linear-gradient(180deg,rgba(1,7,22,.14),rgba(1,7,22,.50));
}

.world-auth-login .ap-page-hero,
.world-auth-signup .ap-page-hero,
.world-admin-page .ap-page-hero{
  display:none!important;
}

.world-auth-brandline,
.world-admin-brandline{
  width:min(1240px,calc(100% - 28px));
  min-height:70px;
  margin:18px auto 0;
  padding:8px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border:1px solid rgba(98,161,255,.22);
  border-radius:19px;
  background:rgba(3,13,34,.78);
  backdrop-filter:blur(22px) saturate(1.15);
  box-shadow:0 18px 60px rgba(0,0,0,.25);
}
.world-auth-brandline img,
.world-admin-brandline img{
  width:230px;
  height:58px;
  object-fit:cover;
  object-position:left center;
  mix-blend-mode:screen;
}
.world-auth-brandline>span{
  color:#83a3cf;
  font-size:.57rem;
  font-weight:950;
  letter-spacing:.16em;
}
.world-admin-brandline>div{
  display:grid;
  justify-items:end;
  gap:3px;
}
.world-admin-brandline span{
  color:#ffd146;
  font-size:.63rem;
  font-weight:950;
  letter-spacing:.13em;
}
.world-admin-brandline small{
  color:#8fa3c0;
  font-size:.55rem;
}

/* ========================= LOGIN ========================= */
.world-auth-login .mp-login-shell{
  width:min(1240px,calc(100% - 28px))!important;
  min-height:calc(100vh - 116px)!important;
  margin:0 auto!important;
  padding:28px 0 38px!important;
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(430px,.92fr)!important;
  gap:26px!important;
  align-items:center!important;
}

.world-auth-login .mp-login-visual{
  min-height:610px!important;
  padding:42px!important;
  border:1px solid rgba(94,159,255,.27)!important;
  border-radius:30px!important;
  background:
    linear-gradient(180deg,rgba(2,10,29,.12),rgba(2,10,29,.82)),
    url("assets/football-stadium-bg.png") center 52%/cover no-repeat!important;
  box-shadow:0 34px 110px rgba(0,0,0,.40)!important;
  overflow:hidden!important;
  position:relative!important;
}
.world-auth-login .mp-login-visual::after{
  content:"";
  position:absolute;
  inset:-10%;
  background:
    radial-gradient(circle at 12% 25%,rgba(55,130,255,.20),transparent 25%),
    radial-gradient(circle at 88% 28%,rgba(171,65,255,.22),transparent 27%);
  pointer-events:none;
  animation:worldAuthGlow 15s ease-in-out infinite alternate;
}
.world-auth-login .mp-login-visual>*{position:relative;z-index:2}
.world-auth-login .mp-login-visual h1{
  margin-top:18px!important;
  font-size:clamp(3.5rem,6vw,6rem)!important;
  line-height:.90!important;
  letter-spacing:-.065em!important;
  text-shadow:0 15px 45px rgba(0,0,0,.40)!important;
}
.world-auth-login .mp-login-visual h1 span{
  background:linear-gradient(90deg,#77ddff,#fff 50%,#c47aff)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
}
.world-auth-login .mp-kicker{
  color:#60d6ff!important;
  font-size:.62rem!important;
  font-weight:950!important;
  letter-spacing:.16em!important;
}
.world-auth-login .mp-login-visual>p{
  max-width:560px!important;
  color:#b8c6da!important;
  font-size:.92rem!important;
  line-height:1.72!important;
}
.world-auth-login .mp-stadium{
  filter:drop-shadow(0 0 32px rgba(75,160,255,.30))!important;
}
.world-auth-login .mp-login-benefits{
  margin-top:auto!important;
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:9px!important;
}
.world-auth-login .mp-login-benefits article{
  min-height:74px!important;
  border:1px solid rgba(95,161,255,.17)!important;
  border-radius:15px!important;
  background:rgba(4,17,42,.63)!important;
  backdrop-filter:blur(12px)!important;
}

.world-auth-login .mp-auth-card{
  padding:32px!important;
  border:1px solid rgba(92,157,255,.28)!important;
  border-radius:28px!important;
  background:
    radial-gradient(circle at 100% 0%,rgba(142,63,255,.10),transparent 28%),
    linear-gradient(180deg,rgba(7,24,57,.96),rgba(3,13,34,.98))!important;
  box-shadow:0 32px 100px rgba(0,0,0,.38)!important;
  backdrop-filter:blur(24px) saturate(1.16)!important;
}
.world-auth-login .mp-card-top h2{
  font-size:2.25rem!important;
  letter-spacing:-.045em!important;
}
.world-auth-login .mp-player-grid{
  grid-template-columns:repeat(5,1fr)!important;
  gap:7px!important;
}
.world-auth-login .mp-player-grid button{
  min-height:68px!important;
  border-radius:13px!important;
  border:1px solid rgba(82,149,255,.20)!important;
  background:#061730!important;
}
.world-auth-login .mp-player-grid button.active{
  border-color:#59d8ff!important;
  background:linear-gradient(145deg,rgba(25,117,255,.30),rgba(126,56,255,.26))!important;
  box-shadow:0 0 22px rgba(56,165,255,.14)!important;
}
.world-auth-login .mp-field>div{
  min-height:52px!important;
  border-radius:13px!important;
  border:1px solid rgba(82,149,255,.22)!important;
  background:#04142f!important;
}
.world-auth-login .mp-submit{
  min-height:54px!important;
  border-radius:14px!important;
  border:0!important;
  color:#06111f!important;
  background:linear-gradient(135deg,#dafbff,#70e7ff 46%,#997dff)!important;
  box-shadow:0 16px 42px rgba(68,204,255,.25)!important;
}

/* ========================= SIGNUP ========================= */
.world-auth-signup .sc-signup-shell{
  width:min(1240px,calc(100% - 28px))!important;
  margin:0 auto!important;
  padding:28px 0 42px!important;
}

.world-auth-signup .sc-hero{
  min-height:380px!important;
  margin-bottom:18px!important;
  padding:45px!important;
  border:1px solid rgba(91,156,255,.27)!important;
  border-radius:30px!important;
  background:
    linear-gradient(90deg,rgba(2,10,30,.26),rgba(2,10,30,.66)),
    url("assets/football-stadium-bg.png") center 48%/cover no-repeat!important;
  box-shadow:0 32px 100px rgba(0,0,0,.36)!important;
}
.world-auth-signup .sc-hero h1{
  font-size:clamp(3.4rem,6vw,6rem)!important;
  line-height:.90!important;
  letter-spacing:-.065em!important;
}
.world-auth-signup .sc-hero h1 span{
  background:linear-gradient(90deg,#7de0ff,#fff 46%,#c677ff)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
}
.world-auth-signup .sc-hero p{
  max-width:650px!important;
  color:#b6c6da!important;
  line-height:1.65!important;
}
.world-auth-signup .sc-hero-stats article{
  border:1px solid rgba(95,159,255,.18)!important;
  border-radius:15px!important;
  background:rgba(4,17,42,.65)!important;
  backdrop-filter:blur(12px)!important;
}

.world-auth-signup .sc-signup-portal{
  overflow:hidden!important;
  border:1px solid rgba(92,158,255,.26)!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,rgba(6,23,54,.97),rgba(3,13,34,.98))!important;
  box-shadow:0 30px 90px rgba(0,0,0,.34)!important;
}
.world-auth-signup .sc-progress-side{
  background:
    radial-gradient(circle at 30% 0%,rgba(92,80,255,.17),transparent 30%),
    linear-gradient(180deg,#071a3a,#041129)!important;
  border-right:1px solid rgba(92,158,255,.18)!important;
}
.world-auth-signup .sc-side-progress article{
  border-radius:13px!important;
}
.world-auth-signup .sc-side-progress article.active{
  border-color:#56d8ff!important;
  background:linear-gradient(135deg,rgba(31,121,255,.20),rgba(131,58,255,.18))!important;
  box-shadow:0 0 22px rgba(65,169,255,.10)!important;
}
.world-auth-signup .sc-form-stage{
  background:
    radial-gradient(circle at 100% 0%,rgba(142,60,255,.07),transparent 24%),
    rgba(3,13,34,.54)!important;
}
.world-auth-signup .sc-step-head h2{
  font-size:2.1rem!important;
  letter-spacing:-.04em!important;
}
.world-auth-signup .sc-player-grid button{
  border-radius:14px!important;
  border:1px solid rgba(91,154,255,.20)!important;
  background:#061730!important;
}
.world-auth-signup .sc-player-grid button.active{
  border-color:#58d8ff!important;
  background:linear-gradient(145deg,rgba(27,119,255,.30),rgba(134,57,255,.25))!important;
}
.world-auth-signup .mp-avatar-studio,
.world-auth-signup .mp-info-box,
.world-auth-signup .mp-review-card{
  border-radius:18px!important;
  border-color:rgba(88,153,255,.22)!important;
  background:rgba(4,18,43,.70)!important;
}

/* ========================= ADMIN ========================= */
.world-admin-page .admin-pro-shell{
  width:min(1240px,calc(100% - 28px))!important;
  margin:0 auto!important;
  padding:28px 0 42px!important;
}

.world-admin-page .admin-login-card{
  min-height:620px!important;
  overflow:hidden!important;
  border:1px solid rgba(255,194,48,.30)!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 100% 0%,rgba(255,190,37,.08),transparent 27%),
    linear-gradient(180deg,rgba(7,24,57,.98),rgba(3,13,34,.99))!important;
  box-shadow:0 34px 110px rgba(0,0,0,.40)!important;
}

.world-admin-page .admin-login-visual{
  padding:44px!important;
  background:
    linear-gradient(180deg,rgba(2,9,28,.10),rgba(2,9,28,.76)),
    url("assets/football-stadium-bg.png") center 50%/cover no-repeat!important;
  position:relative!important;
}
.world-admin-page .admin-login-visual::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(circle at 18% 20%,rgba(47,130,255,.20),transparent 28%),
    radial-gradient(circle at 84% 18%,rgba(255,185,35,.10),transparent 24%);
}
.world-admin-page .admin-login-visual>*{position:relative;z-index:2}
.world-admin-page .admin-login-visual h1{
  font-size:clamp(3.4rem,5.5vw,5.7rem)!important;
  line-height:.90!important;
  letter-spacing:-.06em!important;
  text-shadow:0 15px 40px rgba(0,0,0,.38)!important;
}
.world-admin-page .admin-overline{
  color:#ffd147!important;
  letter-spacing:.15em!important;
}
.world-admin-page .admin-visual-kpis article{
  border:1px solid rgba(255,197,50,.18)!important;
  border-radius:14px!important;
  background:rgba(4,17,42,.64)!important;
  backdrop-filter:blur(12px)!important;
}

.world-admin-page .admin-login-form{
  padding:38px!important;
  background:
    radial-gradient(circle at 100% 0%,rgba(255,194,35,.05),transparent 23%),
    linear-gradient(180deg,#071a39,#04122a)!important;
}
.world-admin-page .admin-login-head h2{
  font-size:2.35rem!important;
  letter-spacing:-.045em!important;
}
.world-admin-page .admin-input{
  min-height:52px!important;
  border:1px solid rgba(255,198,52,.18)!important;
  border-radius:13px!important;
  background:#05152f!important;
}
.world-admin-page #adminUsername,
.world-admin-page #adminPassword{
  min-height:48px!important;
  border-radius:12px!important;
  border:1px solid rgba(255,198,52,.18)!important;
  background:#04142d!important;
}
.world-admin-page .admin-primary{
  min-height:54px!important;
  border:1px solid #ffd045!important;
  border-radius:14px!important;
  color:#181003!important;
  background:linear-gradient(135deg,#fff0a6,#ffc73b 50%,#ff9f2e)!important;
  box-shadow:0 17px 42px rgba(255,181,39,.22)!important;
}

/* Dashboard after admin login */
.world-admin-page #adminDashboard .admin-hero,
.world-admin-page #adminDashboard .admin-panel,
.world-admin-page .champions-api-panel,
.world-admin-page .ultimate-admin-panel{
  border:1px solid rgba(255,198,48,.20)!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 100% 0%,rgba(255,194,39,.055),transparent 24%),
    linear-gradient(180deg,rgba(7,24,57,.96),rgba(3,13,34,.98))!important;
  box-shadow:0 20px 65px rgba(0,0,0,.25)!important;
}
.world-admin-page #adminDashboard .admin-kpi{
  border-radius:16px!important;
  border:1px solid rgba(85,150,255,.18)!important;
  background:linear-gradient(180deg,#081c40,#05142f)!important;
}
.world-admin-page #adminDashboard .admin-kpi-glow{
  border-color:rgba(255,199,53,.30)!important;
  box-shadow:0 0 28px rgba(255,192,37,.07)!important;
}

@keyframes worldAuthGlow{
  from{transform:translate3d(-2%,0,0) scale(1)}
  to{transform:translate3d(2%,-2%,0) scale(1.05)}
}

/* ========================= MOBILE ========================= */
@media(max-width:980px){
  .world-auth-brandline,
  .world-admin-brandline{
    width:calc(100% - 16px);
    min-height:62px;
    margin-top:8px;
  }
  .world-auth-brandline img,
  .world-admin-brandline img{
    width:195px;
    height:52px;
  }
  .world-auth-login .mp-login-shell{
    width:calc(100% - 16px)!important;
    grid-template-columns:1fr!important;
    padding-top:12px!important;
  }
  .world-auth-login .mp-login-visual{
    min-height:360px!important;
    padding:28px!important;
  }
  .world-auth-login .mp-stadium{
    display:none!important;
  }
  .world-auth-signup .sc-signup-shell,
  .world-admin-page .admin-pro-shell{
    width:calc(100% - 16px)!important;
    padding-top:12px!important;
  }
}

@media(max-width:700px){
  .world-auth-brandline>span,
  .world-admin-brandline>div{
    display:none;
  }
  .world-auth-brandline,
  .world-admin-brandline{
    justify-content:center;
  }

  .world-auth-login .mp-login-visual{
    min-height:300px!important;
    padding:22px!important;
    border-radius:22px!important;
  }
  .world-auth-login .mp-login-visual h1{
    font-size:3rem!important;
  }
  .world-auth-login .mp-login-benefits{
    display:none!important;
  }
  .world-auth-login .mp-auth-card{
    padding:20px!important;
    border-radius:22px!important;
  }
  .world-auth-login .mp-player-grid{
    grid-template-columns:repeat(3,1fr)!important;
  }

  .world-auth-signup .sc-hero{
    min-height:310px!important;
    padding:24px!important;
    border-radius:22px!important;
  }
  .world-auth-signup .sc-hero h1{
    font-size:3rem!important;
  }
  .world-auth-signup .sc-hero-stats{
    grid-template-columns:1fr 1fr!important;
  }
  .world-auth-signup .sc-signup-portal{
    border-radius:22px!important;
  }
  .world-auth-signup .sc-progress-side{
    display:none!important;
  }

  .world-admin-page .admin-login-card{
    min-height:auto!important;
    border-radius:22px!important;
  }
  .world-admin-page .admin-login-visual{
    min-height:300px!important;
    padding:24px!important;
  }
  .world-admin-page .admin-login-visual h1{
    font-size:3rem!important;
  }
  .world-admin-page .admin-login-form{
    padding:22px!important;
  }
}


/* ADMIN COMPLETEMENT PRIVE AVANT AUTHENTIFICATION */
.world-admin-page:not(.admin-authenticated) .admin-sensitive-prelogin,
.world-admin-page:not(.admin-authenticated) #adminDashboard{
  display:none!important;
}
.world-admin-page.admin-authenticated .admin-sensitive-prelogin{
  display:block!important;
}
.world-admin-page.admin-authenticated #adminLoginView{
  display:none!important;
}

.admin-api-auto-panel .api-auto-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:15px;
}
.admin-api-auto-panel .api-auto-grid article{
  padding:15px;
  border:1px solid rgba(87,151,255,.20);
  border-radius:14px;
  background:rgba(4,18,43,.66);
}
.admin-api-auto-panel .api-auto-grid strong{display:block;font-size:1.4rem;margin-bottom:7px}
.admin-api-auto-panel .api-auto-grid span{display:block;color:#fff;font-size:.72rem;font-weight:900}
.admin-api-auto-panel .api-auto-grid small{display:block;margin-top:4px;color:#8fa4c3;font-size:.58rem}
@media(max-width:780px){.admin-api-auto-panel .api-auto-grid{grid-template-columns:1fr 1fr}}
