/* HUB V157 — STLBEAST-caliber premium admin upgrade */
:root{
  --hub157-bg:#020814;
  --hub157-panel:rgba(5,18,34,.94);
  --hub157-panel2:rgba(8,13,31,.96);
  --hub157-line:rgba(56,197,255,.28);
  --hub157-cyan:#35d9ff;
  --hub157-purple:#8b5cff;
  --hub157-pink:#ff39d7;
  --hub157-green:#5cffb4;
  --hub157-text:#f3f8ff;
  --hub157-muted:#9fb6d4;
}
body.stlb-admin-v104{
  background:
    radial-gradient(circle at 8% 0%,rgba(35,217,255,.17),transparent 30%),
    radial-gradient(circle at 92% 6%,rgba(255,57,215,.14),transparent 34%),
    linear-gradient(180deg,#020814,#01040b)!important;
  color:var(--hub157-text)!important;
}
.v104-shell{
  width:min(100% - 18px, 1840px)!important;
  margin:10px auto!important;
  display:grid!important;
  grid-template-columns:minmax(260px,320px) minmax(0,1fr)!important;
  gap:14px!important;
}
.v104-side{
  position:sticky!important;
  top:10px!important;
  align-self:start!important;
  max-height:calc(100vh - 20px)!important;
  overflow:auto!important;
  border:1px solid var(--hub157-line)!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,rgba(5,18,34,.97),rgba(2,8,18,.98))!important;
  box-shadow:0 24px 80px rgba(0,0,0,.34), inset 0 0 0 1px rgba(255,255,255,.035)!important;
  padding:14px!important;
}
.v104-brand{
  display:grid!important;
  grid-template-columns:52px 1fr!important;
  gap:12px!important;
  align-items:center!important;
  padding:12px!important;
  border:1px solid rgba(56,197,255,.24)!important;
  border-radius:18px!important;
  background:radial-gradient(circle at 50% 0%,rgba(56,197,255,.16),transparent 55%),rgba(2,10,22,.8)!important;
  text-decoration:none!important;
}
.v104-brand span{
  width:52px!important;height:52px!important;border-radius:15px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  background:linear-gradient(135deg,var(--hub157-cyan),var(--hub157-purple))!important;
  box-shadow:0 0 26px rgba(56,197,255,.22)!important;
}
.v104-brand b{color:#fff!important;font-size:18px!important;letter-spacing:-.03em!important}
.v104-brand small{color:var(--hub157-muted)!important;text-transform:uppercase!important;font-size:10px!important;letter-spacing:.08em!important}
.v104-search{
  margin:14px 0!important;
  border:1px solid rgba(255,255,255,.08)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.035)!important;
  padding:12px!important;
}
.v104-search label{color:#d9ecff!important;font-weight:900!important;text-transform:uppercase!important;font-size:11px!important;letter-spacing:.08em!important}
.v104-search input{
  width:100%!important;box-sizing:border-box!important;margin-top:8px!important;
  background:#020917!important;border:1px solid rgba(56,197,255,.28)!important;
  border-radius:14px!important;color:#fff!important;padding:12px!important;
}
.v117-tool-count{color:#7892b2!important;display:block!important;margin-top:8px!important}
.v104-group{
  border:1px solid rgba(56,197,255,.12)!important;
  border-radius:16px!important;
  background:rgba(255,255,255,.025)!important;
  margin-bottom:8px!important;
  overflow:hidden!important;
}
.v104-group summary{
  cursor:pointer!important;
  color:#fff!important;
  padding:12px!important;
  font-weight:1000!important;
  text-transform:uppercase!important;
  letter-spacing:.07em!important;
  font-size:11px!important;
  background:rgba(56,197,255,.045)!important;
}
.v104-navlink{
  display:grid!important;
  grid-template-columns:34px 1fr!important;
  gap:9px!important;
  align-items:center!important;
  padding:10px 12px!important;
  color:#c9def8!important;
  text-decoration:none!important;
  border-top:1px solid rgba(255,255,255,.045)!important;
}
.v104-navlink:hover,.v104-navlink.active{
  background:linear-gradient(90deg,rgba(56,197,255,.13),rgba(139,92,255,.10))!important;
  color:#fff!important;
}
.v104-icon{
  width:34px!important;height:34px!important;border-radius:11px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  background:rgba(56,197,255,.1)!important;
  color:#75eaff!important;
  font-size:10px!important;
  font-weight:1000!important;
}
.v104-navlink b{display:block!important;font-size:13px!important}
.v104-navlink small{display:block!important;color:#7892b2!important;font-size:11px!important;line-height:1.25!important;margin-top:2px!important}
.v104-logout{
  display:flex!important;align-items:center!important;justify-content:center!important;
  min-height:42px!important;margin-top:12px!important;border-radius:999px!important;
  border:1px solid rgba(255,90,120,.34)!important;color:#ffc8d1!important;
  background:rgba(255,90,120,.08)!important;text-decoration:none!important;font-weight:1000!important;
}
.v104-main{
  min-width:0!important;
  border:1px solid rgba(56,197,255,.18)!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,rgba(3,12,26,.8),rgba(1,5,12,.82))!important;
  overflow:hidden!important;
}
.v104-top{
  display:flex!important;justify-content:space-between!important;align-items:center!important;gap:16px!important;
  padding:18px!important;
  border-bottom:1px solid rgba(56,197,255,.14)!important;
  background:linear-gradient(90deg,rgba(56,197,255,.10),rgba(139,92,255,.08),rgba(255,57,215,.08))!important;
}
.v104-kicker{
  display:inline-flex!important;color:#76eaff!important;font-size:11px!important;font-weight:1000!important;
  text-transform:uppercase!important;letter-spacing:.1em!important;
}
.v104-top h1{
  margin:5px 0 0!important;color:#fff!important;
  font-size:clamp(28px,4vw,54px)!important;line-height:.92!important;letter-spacing:-.06em!important;
  text-transform:uppercase!important;
}
.v104-toplinks{
  display:flex!important;flex-wrap:wrap!important;gap:8px!important;justify-content:flex-end!important;
}
.v104-toplinks a,.v104-sticky a{
  min-height:34px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  padding:7px 10px!important;border-radius:999px!important;
  border:1px solid rgba(56,197,255,.18)!important;background:rgba(2,9,20,.65)!important;
  color:#cfe5ff!important;text-decoration:none!important;font-size:11px!important;font-weight:900!important;text-transform:uppercase!important;
}
.v104-toplinks a:hover,.v104-sticky a:hover{
  color:#02101e!important;background:linear-gradient(90deg,var(--hub157-cyan),var(--hub157-purple))!important;
}
.v104-sticky{
  display:flex!important;flex-wrap:wrap!important;gap:8px!important;
  padding:12px 18px!important;background:rgba(2,8,18,.8)!important;
  border-bottom:1px solid rgba(56,197,255,.12)!important;
}
.v104-content{
  display:block!important;
  padding:18px!important;
}
.admin-v157-command{
  border:1px solid rgba(56,197,255,.22)!important;
  border-radius:26px!important;
  background:
    radial-gradient(circle at 8% 0%,rgba(56,197,255,.16),transparent 34%),
    radial-gradient(circle at 94% 6%,rgba(255,57,215,.12),transparent 36%),
    linear-gradient(180deg,rgba(5,18,34,.96),rgba(2,7,16,.98))!important;
  padding:clamp(16px,2.4vw,28px)!important;
  margin-bottom:16px!important;
  box-shadow:0 20px 70px rgba(0,0,0,.25)!important;
}
.admin-v157-command-grid{
  display:grid!important;grid-template-columns:minmax(0,1fr) minmax(260px,.7fr)!important;
  gap:18px!important;align-items:center!important;
}
.admin-v157-command h2{
  margin:8px 0!important;color:#fff!important;font-size:clamp(34px,5vw,66px)!important;
  line-height:.88!important;letter-spacing:-.07em!important;text-transform:uppercase!important;
}
.admin-v157-command h2 span{display:block!important;color:var(--hub157-cyan)!important}
.admin-v157-command p{color:#a8bfdc!important;line-height:1.5!important;max-width:760px!important}
.admin-v157-actions{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin-top:14px!important}
.admin-v157-btn{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:44px!important;padding:11px 16px!important;border-radius:999px!important;
  border:1px solid rgba(255,255,255,.14)!important;color:#fff!important;text-decoration:none!important;
  font-weight:1000!important;text-transform:uppercase!important;letter-spacing:.04em!important;font-size:12px!important;
}
.admin-v157-btn.primary{
  color:#02101e!important;border:0!important;background:linear-gradient(90deg,var(--hub157-cyan),var(--hub157-purple),var(--hub157-pink))!important;
}
.admin-v157-score{
  border:1px solid rgba(92,255,180,.22)!important;border-radius:22px!important;
  background:rgba(1,7,15,.82)!important;padding:16px!important;
}
.admin-v157-score b{display:block!important;color:#fff!important;font-size:44px!important;line-height:1!important}
.admin-v157-score span{display:block!important;color:#93abc8!important;text-transform:uppercase!important;font-size:11px!important;font-weight:1000!important;letter-spacing:.08em!important;margin-top:6px!important}
.hub153-grid,.ease-grid-v28{
  display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;
}
.hub153-card,.ease-metric-v28,.ease-card-v28,.hub153-panel,.ease-section-v28{
  border:1px solid rgba(56,197,255,.18)!important;border-radius:20px!important;
  background:linear-gradient(180deg,rgba(5,18,34,.90),rgba(2,8,18,.96))!important;
  box-shadow:0 18px 60px rgba(0,0,0,.18)!important;
}
.hub153-card{
  display:grid!important;gap:8px!important;padding:16px!important;text-decoration:none!important;color:#d9ecff!important;
}
.hub153-card strong,.hub153-card h3,.hub153-panel h3,.ease-section-v28 h3{color:#fff!important}
.hub153-card small,.hub153-card p,.hub153-panel p,.ease-section-v28 p{color:#8fa9c8!important;line-height:1.4!important}
.hub153-card.primary,.hub153-card.safe,.hub153-card.warn{
  border-color:rgba(92,255,180,.25)!important;
}
.admin-v37-strip,.ease-hero-v28,.hub153-hero,.hub153-control-strip,.hub153-panel,.ease-layout-v28,.ease-section-v28{
  margin-bottom:16px!important;
}
.hub153-control-strip{
  display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important;
}
.hub153-control-strip a,.hub153-control-strip button{
  border:1px solid rgba(56,197,255,.18)!important;border-radius:16px!important;
  background:rgba(2,9,20,.82)!important;color:#d9ecff!important;padding:12px!important;text-decoration:none!important;
}
.hub153-palette-dialog{
  border:1px solid rgba(56,197,255,.32)!important;border-radius:24px!important;background:#030b18!important;
}
.v117-admin-search-results.active{
  border:1px solid rgba(56,197,255,.22)!important;border-radius:14px!important;background:#020917!important;margin-top:8px!important;padding:8px!important;
}
.v117-admin-search-results a{display:block!important;padding:9px!important;color:#d9ecff!important;text-decoration:none!important;border-radius:10px!important}
.v117-admin-search-results a:hover{background:rgba(56,197,255,.1)!important}
body.hub-v157-login{
  margin:0!important;min-height:100vh!important;display:grid!important;place-items:center!important;
  background:
    radial-gradient(circle at 8% 0%,rgba(56,197,255,.20),transparent 32%),
    radial-gradient(circle at 92% 8%,rgba(255,57,215,.15),transparent 34%),
    linear-gradient(180deg,#020814,#01040b)!important;
  color:#fff!important;font-family:Arial,sans-serif!important;
}
.hub-v157-login-card{
  width:min(560px,92vw)!important;border:1px solid rgba(56,197,255,.34)!important;border-radius:28px!important;
  background:linear-gradient(180deg,rgba(5,18,34,.97),rgba(2,8,18,.98))!important;
  box-shadow:0 30px 100px rgba(0,0,0,.46),0 0 60px rgba(56,197,255,.12)!important;
  padding:clamp(22px,4vw,38px)!important;
}
.hub-v157-login-brand{display:grid!important;grid-template-columns:60px 1fr!important;gap:14px!important;align-items:center!important;margin-bottom:22px!important}
.hub-v157-login-mark{width:60px!important;height:60px!important;border-radius:18px!important;display:flex!important;align-items:center!important;justify-content:center!important;background:linear-gradient(135deg,var(--hub157-cyan),var(--hub157-purple))!important;font-weight:1000!important;color:#02101e!important}
.hub-v157-login-card h1{margin:0!important;font-size:clamp(32px,5vw,48px)!important;letter-spacing:-.06em!important}
.hub-v157-login-card p{margin:6px 0 0!important;color:#9fb6d4!important}
.hub-v157-login-card input{
  width:100%!important;box-sizing:border-box!important;border:1px solid rgba(56,197,255,.26)!important;border-radius:16px!important;
  background:#020917!important;color:#fff!important;padding:15px!important;margin:8px 0!important;font-size:16px!important;
}
.hub-v157-login-card button{
  width:100%!important;border:0!important;border-radius:999px!important;min-height:52px!important;
  background:linear-gradient(90deg,var(--hub157-cyan),var(--hub157-purple),var(--hub157-pink))!important;
  color:#02101e!important;font-weight:1000!important;text-transform:uppercase!important;margin-top:10px!important;
}
.hub-v157-error{border:1px solid rgba(255,86,112,.45)!important;border-radius:14px!important;background:rgba(255,86,112,.1)!important;color:#ffd3da!important;padding:12px!important;margin:12px 0!important}
.hub-v157-login-meta{display:flex!important;gap:8px!important;flex-wrap:wrap!important;margin-top:16px!important}
.hub-v157-login-meta span{border:1px solid rgba(56,197,255,.18)!important;border-radius:999px!important;color:#91abc9!important;padding:7px 9px!important;font-size:11px!important;text-transform:uppercase!important;font-weight:900!important}
@media(max-width:1100px){
  .v104-shell{grid-template-columns:1fr!important}
  .v104-side{position:relative!important;top:auto!important;max-height:none!important}
  .hub153-grid,.ease-grid-v28,.hub153-control-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .admin-v157-command-grid{grid-template-columns:1fr!important}
}
@media(max-width:640px){
  .v104-shell{width:calc(100% - 10px)!important;margin:5px auto!important}
  .v104-top{display:block!important}
  .v104-toplinks{justify-content:flex-start!important;margin-top:12px!important}
  .v104-content{padding:12px!important}
  .hub153-grid,.ease-grid-v28,.hub153-control-strip{grid-template-columns:1fr!important}
  .admin-v157-actions .admin-v157-btn{width:100%!important}
}
