.gad-shell{
  --gad-surface:#111827;
  --gad-surface-2:#1f2937;
  --gad-text:#fff;
  --gad-muted:#cbd5e1;
  --gad-border:rgba(255,255,255,.08);
  color:var(--gad-text);
  display:grid;
  gap:24px;
}
.gad-shell *{box-sizing:border-box}
.gad-hero,.gad-card{
  background:linear-gradient(135deg,var(--gad-surface),var(--gad-surface-2));
  border:1px solid var(--gad-border);
  border-radius:22px;
  box-shadow:0 12px 30px rgba(0,0,0,.24);
}
.gad-hero{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding:28px;
  gap:24px;
}
.gad-kicker{
  margin:0 0 6px;
  color:var(--gad-accent);
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.gad-hero-copy{
  min-width:0;
  flex:1 1 auto;
}
.gad-hero h2{
  margin:0 0 10px;
  font-size:clamp(2rem,4vw,3.15rem);
  line-height:1.04;
  color:#fff;
  max-width:100%;
}
.gad-subtext{
  margin:0;
  color:var(--gad-muted);
  max-width:640px;
  font-size:clamp(1rem,1.4vw,1.25rem);
  line-height:1.45;
}
.gad-level-badge{
  flex:0 0 auto;
  width:140px;
  height:140px;
  border-radius:999px;
  display:grid;
  place-items:center;
  text-align:center;
  background:radial-gradient(circle at top,rgba(255,255,255,.18),rgba(255,255,255,.05));
  border:2px solid rgba(255,255,255,.12);
  font-size:clamp(1.1rem,1.4vw,1.5rem);
  font-weight:800;
  padding:18px;
}
.gad-grid{display:grid;gap:20px}
.gad-stats-grid{
  grid-template-columns:repeat(4,minmax(170px,1fr));
}
.gad-main-grid{
  grid-template-columns:minmax(320px,1.2fr) minmax(320px,.95fr);
  align-items:start;
}
.gad-column{
  min-width:0;
  display:grid;
  gap:20px;
}
.gad-card{
  padding:22px;
  min-width:0;
  overflow:hidden;
}
.gad-stat{
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:150px;
  gap:10px;
}
.gad-stat-label{
  display:block;
  color:var(--gad-muted);
  font-size:.98rem;
  line-height:1.25;
  overflow-wrap:anywhere;
}
.gad-stat strong{
  display:block;
  font-size:clamp(2rem,3vw,2.6rem);
  line-height:1.02;
  color:#fff;
  overflow-wrap:anywhere;
}
.gad-progress-meta,.gad-event p,.gad-empty,.gad-activity-row p,.gad-activity-row span{
  color:var(--gad-muted);
}
.gad-card-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:16px;
}
.gad-card-head h3{
  margin:0;
  color:#fff;
  font-size:clamp(1.35rem,2vw,1.8rem);
  line-height:1.1;
}
.gad-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(0,255,159,.12);
  color:var(--gad-accent);
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
}
.gad-pill.alt{background:rgba(255,255,255,.08);color:#fff}
.gad-pill.glow{box-shadow:0 0 0 1px rgba(0,255,159,.18),0 0 20px rgba(0,255,159,.12)}
.gad-progress-wrap{display:grid;gap:12px}
.gad-progress-meta{
  display:flex;
  justify-content:space-between;
  gap:12px;
  font-size:13px;
  flex-wrap:wrap;
}
.gad-progress{
  height:12px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(255,255,255,.08);
}
.gad-progress.small{height:10px}
.gad-progress-bar{height:100%;background:linear-gradient(90deg,var(--gad-accent),#7cffa8)}
.gad-mini-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-top:16px;
}
.gad-mini-card{
  padding:16px;
  border-radius:16px;
  background:rgba(255,255,255,.05);
  min-width:0;
}
.gad-mini-card span{
  display:block;
  color:var(--gad-muted);
  margin-bottom:8px;
}
.gad-mini-card strong{
  font-size:clamp(1.25rem,1.8vw,1.6rem);
  line-height:1.15;
  overflow-wrap:anywhere;
}
.gad-missions,.gad-events,.gad-leaderboard,.gad-activity{display:grid;gap:12px}
.gad-mission,.gad-event,.gad-leader-row,.gad-activity-row{
  padding:16px;
  border-radius:16px;
  background:rgba(255,255,255,.05);
  min-width:0;
}
.gad-mission-top,.gad-leader-row{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
}
.gad-mission-top{align-items:flex-start}
.gad-mission-top strong,.gad-event strong,.gad-activity-row strong{
  display:block;
  margin-bottom:4px;
  overflow-wrap:anywhere;
}
.gad-mission-top span{
  color:var(--gad-accent);
  font-weight:700;
  font-size:13px;
  text-align:right;
}
.gad-event p{
  margin:.2rem 0 0;
  line-height:1.45;
}
.gad-event-time{
  display:inline-flex;
  margin-top:12px;
  color:#fbbf24;
  font-size:12px;
  font-weight:700;
}
.gad-leader-row{
  grid-template-columns:auto 1fr auto;
}
.gad-leader-row.current{
  border:1px solid rgba(0,255,159,.35);
  box-shadow:0 0 0 1px rgba(0,255,159,.1) inset;
}
.gad-leader-row strong,
.gad-leader-row em{
  overflow-wrap:anywhere;
}
.gad-login-required{
  padding:20px;
  border-radius:16px;
  background:#1f2937;
  color:#fff;
}
.gad-empty{margin:0}

@media (max-width:1180px){
  .gad-stats-grid{
    grid-template-columns:repeat(2,minmax(220px,1fr));
  }
  .gad-main-grid{
    grid-template-columns:1fr;
  }
}
@media (max-width:900px){
  .gad-hero{
    flex-direction:column;
    align-items:flex-start;
  }
  .gad-level-badge{
    width:110px;
    height:110px;
    font-size:1.15rem;
  }
}
@media (max-width:640px){
  .gad-shell{gap:18px}
  .gad-hero,.gad-card{border-radius:18px}
  .gad-hero,.gad-card{padding:18px}
  .gad-stats-grid,.gad-mini-grid{
    grid-template-columns:1fr;
  }
  .gad-card-head{
    flex-direction:column;
    align-items:flex-start;
  }
}
.gad-data-note{margin-top:-4px;color:#cbd5e1;font-size:13px}

.gad-events{display:grid;gap:14px}
.gad-event-card{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at top right, rgba(255,255,255,.05), transparent 25%),
    linear-gradient(135deg,#0d1b31,#162844);
  border:1px solid rgba(255,255,255,.07);
  border-radius:20px;
  padding:16px;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.gad-event-card:hover{
  transform:translateY(-3px);
  box-shadow:0 16px 32px rgba(0,0,0,.28);
  border-color:rgba(255,255,255,.12);
}
.gad-event-top{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
}
.gad-event-top strong{
  display:block;
  margin-bottom:6px;
  font-size:1.1rem;
  line-height:1.2;
}
.gad-event-top p{
  margin:0;
  line-height:1.45;
}
.gad-event-badges{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.gad-event-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:800;
  line-height:1;
  white-space:nowrap;
}
.gad-event-type{
  background:rgba(255,255,255,.08);
  color:#e5edf9;
}
.gad-event-rarity{
  background:rgba(0,255,159,.12);
  color:var(--gad-accent);
}
.gad-event-reward-line{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-top:14px;
}
.gad-event-reward{
  color:var(--gad-accent);
  font-weight:800;
}
.gad-event-live-badge{
  background:rgba(0,255,159,.12);
  color:var(--gad-accent);
}
.gad-event-ending-badge{
  background:rgba(251,191,36,.14);
  color:#fbbf24;
}
.gad-rarity-common{
  box-shadow:0 10px 24px rgba(0,0,0,.18);
}
.gad-rarity-uncommon{
  box-shadow:0 10px 24px rgba(0,0,0,.18), 0 0 0 1px rgba(34,197,94,.10) inset;
}
.gad-rarity-rare{
  box-shadow:0 10px 24px rgba(0,0,0,.18), 0 0 0 1px rgba(59,130,246,.12) inset;
}
.gad-rarity-epic{
  box-shadow:0 10px 24px rgba(0,0,0,.18), 0 0 0 1px rgba(168,85,247,.15) inset, 0 0 22px rgba(168,85,247,.10);
}
.gad-rarity-legendary{
  box-shadow:0 12px 28px rgba(0,0,0,.22), 0 0 0 1px rgba(251,191,36,.18) inset, 0 0 26px rgba(251,191,36,.10);
}
.gad-event-ending{
  animation:gadEventPulse 1.7s ease-in-out infinite;
}
@keyframes gadEventPulse{
  0%{ box-shadow:0 10px 24px rgba(0,0,0,.18), 0 0 0 1px rgba(251,191,36,.12) inset; }
  50%{ box-shadow:0 12px 28px rgba(0,0,0,.24), 0 0 0 1px rgba(251,191,36,.24) inset, 0 0 18px rgba(251,191,36,.10); }
  100%{ box-shadow:0 10px 24px rgba(0,0,0,.18), 0 0 0 1px rgba(251,191,36,.12) inset; }
}


.gad-live-boost{
  position:relative;
  overflow:hidden;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:20px;
  padding:22px 24px;
  border-radius:22px;
  background:
    radial-gradient(circle at top right, rgba(255,255,255,.08), transparent 24%),
    linear-gradient(135deg, rgba(0,255,159,.12), rgba(0,255,159,.05) 42%, #10213d 100%);
  border:1px solid rgba(0,255,159,.18);
  box-shadow:0 18px 36px rgba(0,0,0,.24), 0 0 0 1px rgba(0,255,159,.08) inset;
}
.gad-live-boost::before{
  content:"";
  position:absolute;
  inset:0;
  background:radial-gradient(circle at top center, rgba(0,255,159,.10), transparent 34%);
  pointer-events:none;
}
.gad-live-boost > *{position:relative;z-index:1}
.gad-live-boost-kicker{
  margin:0 0 6px;
  color:var(--gad-accent);
  font-size:12px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.gad-live-boost h3{
  margin:0 0 8px;
  color:#fff;
  font-size:clamp(1.4rem,2vw,1.85rem);
  line-height:1.06;
}
.gad-live-boost p{
  margin:0;
  color:#d8e5f5;
  line-height:1.55;
}
.gad-live-boost-side{
  display:grid;
  gap:10px;
  justify-items:end;
}
.gad-live-boost-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(0,255,159,.16);
  color:var(--gad-accent);
  font-size:12px;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
  box-shadow:0 0 0 1px rgba(0,255,159,.12);
}
.gad-live-boost-time{
  color:#f8fbff;
  font-size:13px;
  font-weight:800;
}
.gad-live-boost-ending{
  animation:gadBoostPulse 1.8s ease-in-out infinite;
}
@keyframes gadBoostPulse{
  0%{ box-shadow:0 18px 36px rgba(0,0,0,.24), 0 0 0 1px rgba(251,191,36,.10) inset; }
  50%{ box-shadow:0 20px 40px rgba(0,0,0,.28), 0 0 0 1px rgba(251,191,36,.20) inset, 0 0 22px rgba(251,191,36,.10); }
  100%{ box-shadow:0 18px 36px rgba(0,0,0,.24), 0 0 0 1px rgba(251,191,36,.10) inset; }
}
@media (max-width:900px){
  .gad-live-boost{
    flex-direction:column;
    align-items:flex-start;
  }
  .gad-live-boost-side{
    justify-items:start;
  }
}



/* Layout correction patch */
.gad-shell{
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding-left:0 !important;
  padding-right:0 !important;
  overflow-x:clip;
}
.gad-hero,
.gad-live-boost,
.gad-stats-grid,
.gad-main-grid,
.gad-card{
  width:100% !important;
  max-width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
}
.gad-hero{
  display:flex !important;
  justify-content:space-between !important;
  align-items:center !important;
  gap:24px !important;
  flex-wrap:nowrap !important;
}
.gad-hero-copy{
  flex:1 1 auto !important;
  min-width:0 !important;
  max-width:none !important;
}
.gad-hero h1,
.gad-hero h2{
  max-width:100% !important;
  width:auto !important;
  white-space:normal !important;
  word-break:normal !important;
  overflow-wrap:normal !important;
  line-height:1.04 !important;
}
.gad-level-badge{
  flex:0 0 auto !important;
}
.gad-grid{
  width:100% !important;
  max-width:100% !important;
}
.gad-stats-grid{
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
.gad-main-grid{
  grid-template-columns:minmax(0,1.6fr) minmax(320px,.9fr) !important;
}
@media (max-width: 980px){
  .gad-hero{
    flex-wrap:wrap !important;
  }
  .gad-stats-grid,
  .gad-main-grid{
    grid-template-columns:1fr !important;
  }
}

