
/* D Money Sports - NFL Fantasy subfolder stylesheet bridge
   Keeps the shared site header visually consistent while NFL Fantasy
   lives under /Fantasy/NFL/. */
:root{
  --navy:#0b2545;
  --navy-2:#12345b;
  --orange:#fb4f14;
  --page:#f4f7fb;
  --ink:#17202a;
  --muted:#5b6675;
  --border:#d9e1ea;
  --white:#fff;
}
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  background:var(--page);
  color:var(--ink);
  font-family:Arial,Helvetica,sans-serif;
  line-height:1.5;
}
.topbar{
  background:var(--navy);
  border-bottom:4px solid var(--orange);
  color:#fff;
  width:100%;
}
.topbar .wrap{
  width:calc(100vw - 32px);
  max-width:none;
  margin:0 16px;
}
.navwrap{
  min-height:64px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
}
.topbar .brand{
  color:#fff!important;
  text-decoration:none!important;
  font-weight:900;
  font-size:15px;
  letter-spacing:.5px;
  white-space:nowrap;
}
.topbar .brand span{color:var(--orange)!important}
.topbar nav{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:18px;
  flex-wrap:wrap;
}
.topbar nav a{
  color:#fff!important;
  text-decoration:none!important;
  font-weight:700;
}
.topbar nav a:hover{text-decoration:underline!important}
.topbar nav .btn.small{
  padding:8px 12px;
  border-radius:7px;
  background:var(--orange);
  color:#fff!important;
}
main.wrap{
  width:min(1380px,calc(100vw - 32px));
  margin:0 auto;
  padding:26px 0 44px;
}
a{color:#0b5ed7}
.btn{
  display:inline-block;
  border:0;
  border-radius:8px;
  padding:10px 16px;
  background:var(--orange);
  color:#fff!important;
  text-decoration:none!important;
  font-weight:800;
  cursor:pointer;
}
.btn.secondary{
  background:#fff;
  color:var(--navy)!important;
  border:1px solid #c8d2df;
}
.card,.panel{
  background:#fff;
  border:1px solid var(--border);
  border-radius:14px;
  box-shadow:0 2px 8px rgba(11,37,69,.06);
}
.muted{color:var(--muted)}
.eyebrow{
  color:#4e6074;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
}
h1,h2,h3{color:var(--ink)}
footer{
  border-top:1px solid var(--border);
  background:#fff;
  color:#5b6675;
  padding:22px 0;
}
@media(max-width:700px){
  .topbar .wrap{width:calc(100vw - 20px);margin:0 10px}
  .navwrap{min-height:58px}
  .topbar .brand{font-size:15px}
  .topbar nav{gap:10px;font-size:13px}
  main.wrap{width:calc(100vw - 20px)}
}

/* NFL Fantasy league/commissioner hero titles stay white on navy. */
.hero h1{color:#fff!important}

/* Team identity avatars */
.team-avatar{
  width:50px;height:50px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  color:#fff;font-weight:900;flex:0 0 50px;
}
.team-avatar svg{width:31px;height:31px;display:block}
.manage-avatar{
  display:inline-flex;width:34px;height:34px;border-radius:50%;
  align-items:center;justify-content:center;color:#fff;
  font-weight:900;margin-right:7px;vertical-align:middle;
}
.manage-avatar svg{width:22px;height:22px;display:block}


.logo-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(108px,1fr));gap:9px;margin-top:9px}
.logo-option{position:relative}.logo-option input{position:absolute;opacity:0;pointer-events:none}
.logo-option label{min-height:92px;border:1px solid #d7e0ea;border-radius:10px;background:#f8fafc;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;padding:8px;cursor:pointer;text-align:center;font-size:.76rem;font-weight:700}
.logo-option input:checked+label{border:2px solid #f58220;background:#fff7f1;box-shadow:0 0 0 2px rgba(245,130,32,.12)}
.logo-option img{width:48px;height:48px;object-fit:contain}
.team-avatar-logo{width:34px;height:34px;object-fit:contain;display:block}
.team-avatar-generic{font-size:25px;line-height:1}
.manage-avatar-logo{width:24px;height:24px;object-fit:contain;display:block}
.manage-avatar-generic{font-size:19px;line-height:1}
@media(max-width:700px){.logo-picker{grid-template-columns:repeat(3,1fr)}}
