:root{
  --ja-bg:#020b15;
  --ja-surface:#071b2d;
  --ja-surface2:#0a233a;
  --ja-gold:#f6b51b;
  --ja-gold2:#ffd45a;
  --ja-text:#f5f7fa;
  --ja-muted:#9fb0bf;
  --ja-line:rgba(246,181,27,.28);
  --ja-danger:#ef6161;
  --ja-success:#39bd7a;
}

body:has(.admin-nav){
  background:var(--ja-bg)!important;
  color:var(--ja-text)!important;
  min-height:100vh;
}
body:has(.admin-nav) .top-accent{display:none!important}
body:has(.admin-nav) .site-header{
  background:#03111f!important;
  border-bottom:1px solid var(--ja-line)!important;
  position:sticky!important;
  top:0;
  z-index:100;
}
body:has(.admin-nav) .site-header .brand-copy b,
body:has(.admin-nav) .site-header nav a{color:#fff!important}
body:has(.admin-nav) .site-header .brand-copy small{color:var(--ja-muted)!important}
body:has(.admin-nav) main{
  background:
    radial-gradient(circle at 85% -10%,rgba(246,181,27,.10),transparent 30%),
    linear-gradient(180deg,#06192a 0,#020b15 320px)!important;
  min-height:calc(100vh - 70px);
}
body:has(.admin-nav) main>.section{
  padding:28px 0 50px!important;
}
body:has(.admin-nav) .container{
  width:min(1180px,calc(100% - 28px))!important;
  max-width:1180px!important;
}

body:has(.admin-nav) h1{
  color:#fff!important;
  font-size:clamp(25px,3vw,38px)!important;
  margin:20px 0 8px!important;
}
body:has(.admin-nav) h2,
body:has(.admin-nav) h3{color:#fff!important}
body:has(.admin-nav) p{color:var(--ja-muted)!important}

/* Main admin navigation */
body:has(.admin-nav) .admin-nav{
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  margin:0 0 24px!important;
  padding:10px!important;
  background:rgba(6,26,44,.92)!important;
  border:1px solid var(--ja-line)!important;
  border-radius:16px!important;
  box-shadow:0 16px 40px rgba(0,0,0,.20)!important;
}
body:has(.admin-nav) .admin-nav a{
  color:#dce6ef!important;
  background:#081d31!important;
  border:1px solid rgba(255,255,255,.07)!important;
  border-radius:10px!important;
  padding:9px 12px!important;
  font-size:12px!important;
  font-weight:700!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
body:has(.admin-nav) .admin-nav a:hover{
  color:#08111c!important;
  background:linear-gradient(180deg,var(--ja-gold2),var(--ja-gold))!important;
  border-color:var(--ja-gold)!important;
}

/* Dashboard stats */
body:has(.admin-nav) .stats{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
  margin:22px 0 30px!important;
}
body:has(.admin-nav) .stats>div{
  min-width:0!important;
  padding:20px 15px!important;
  border-radius:15px!important;
  border:1px solid var(--ja-line)!important;
  background:linear-gradient(180deg,var(--ja-surface2),var(--ja-surface))!important;
  box-shadow:0 14px 34px rgba(0,0,0,.18)!important;
}
body:has(.admin-nav) .stats b{
  display:block!important;
  color:var(--ja-gold2)!important;
  font-size:clamp(21px,3vw,31px)!important;
  margin-bottom:7px!important;
}
body:has(.admin-nav) .stats span{
  color:#d7e0e8!important;
  font-size:12px!important;
}

/* Forms */
body:has(.admin-nav) .form-card,
body:has(.admin-nav) .admin-detail>div{
  background:linear-gradient(180deg,var(--ja-surface2),var(--ja-surface))!important;
  color:var(--ja-text)!important;
  border:1px solid var(--ja-line)!important;
  border-radius:16px!important;
  box-shadow:0 14px 34px rgba(0,0,0,.17)!important;
}
body:has(.admin-nav) .form-card{
  padding:18px!important;
  margin:14px 0!important;
}
body:has(.admin-nav) label{
  color:#e8eef4!important;
  font-weight:700!important;
  font-size:12px!important;
}
body:has(.admin-nav) input,
body:has(.admin-nav) textarea,
body:has(.admin-nav) select{
  width:100%!important;
  background:#031321!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:10px!important;
  padding:11px 12px!important;
  outline:none!important;
}
body:has(.admin-nav) input:focus,
body:has(.admin-nav) textarea:focus,
body:has(.admin-nav) select:focus{
  border-color:var(--ja-gold)!important;
  box-shadow:0 0 0 3px rgba(246,181,27,.10)!important;
}
body:has(.admin-nav) .field-grid,
body:has(.admin-nav) .check-grid{
  gap:12px!important;
}
body:has(.admin-nav) .radio{color:#dce6ef!important}

/* Buttons */
body:has(.admin-nav) .btn,
body:has(.admin-nav) button{
  border-radius:10px!important;
}
body:has(.admin-nav) .btn.primary,
body:has(.admin-nav) button.btn.primary{
  background:linear-gradient(180deg,var(--ja-gold2),var(--ja-gold))!important;
  color:#10151b!important;
  border-color:var(--ja-gold)!important;
  font-weight:800!important;
}
body:has(.admin-nav) .btn.ghost{
  background:#0a2136!important;
  color:#fff!important;
  border:1px solid var(--ja-line)!important;
}
body:has(.admin-nav) .btn.danger{
  background:rgba(239,97,97,.13)!important;
  color:#ffc9c9!important;
  border:1px solid rgba(239,97,97,.45)!important;
}

/* Tables */
body:has(.admin-nav) .table-wrap{
  width:100%!important;
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch;
  border:1px solid var(--ja-line)!important;
  border-radius:15px!important;
  background:var(--ja-surface)!important;
  box-shadow:0 14px 34px rgba(0,0,0,.15)!important;
}
body:has(.admin-nav) table{
  width:100%!important;
  min-width:760px!important;
  border-collapse:collapse!important;
  background:transparent!important;
  color:#e8eef4!important;
}
body:has(.admin-nav) th{
  background:#0b253c!important;
  color:var(--ja-gold2)!important;
  font-size:12px!important;
  white-space:nowrap!important;
}
body:has(.admin-nav) td,
body:has(.admin-nav) th{
  padding:12px 11px!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
  text-align:right!important;
}
body:has(.admin-nav) td{
  color:#d7e1e9!important;
  font-size:12px!important;
}
body:has(.admin-nav) td a{
  color:var(--ja-gold2)!important;
  font-weight:700!important;
}

/* Admin detail */
body:has(.admin-nav) .admin-detail{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:13px!important;
}
body:has(.admin-nav) .admin-detail>div{
  padding:16px!important;
}
body:has(.admin-nav) .admin-detail p{
  margin:8px 0!important;
  line-height:1.8!important;
}

/* Public footer is unnecessary in admin */
body:has(.admin-nav)>footer{display:none!important}

@media(max-width:900px){
  body:has(.admin-nav) .container{
    width:100%!important;
    padding-inline:12px!important;
  }
  body:has(.admin-nav) .admin-nav{
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    scrollbar-width:none!important;
    position:sticky!important;
    top:58px!important;
    z-index:90!important;
    border-radius:12px!important;
    margin-inline:0!important;
  }
  body:has(.admin-nav) .admin-nav::-webkit-scrollbar{display:none}
  body:has(.admin-nav) .admin-nav a{flex:0 0 auto!important}
  body:has(.admin-nav) .stats{
    grid-template-columns:1fr 1fr!important;
  }
  body:has(.admin-nav) .admin-detail{
    grid-template-columns:1fr!important;
  }
  body:has(.admin-nav) .field-grid,
  body:has(.admin-nav) .two-col{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:520px){
  body:has(.admin-nav) main>.section{padding-top:14px!important}
  body:has(.admin-nav) h1{font-size:25px!important}
  body:has(.admin-nav) .stats{
    grid-template-columns:1fr!important;
    gap:9px!important;
  }
  body:has(.admin-nav) .stats>div{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    padding:14px!important;
  }
  body:has(.admin-nav) .stats b{margin:0!important;font-size:22px!important}
  body:has(.admin-nav) .form-card{padding:13px!important}
}
