/* STAS ERP v253 - stable full-view weather video, readable glass, content-only scroll */
:root{
  --stas-header-h: 88px;
  --stas-footer-h: 56px;
  --sa-topbar-h: 72px;
  --sa-footer-h: 40px;
  --stas-readable-shadow: 0 2px 6px rgba(0,0,0,.72), 0 8px 24px rgba(0,0,0,.32);
  --stas-readable-shadow-soft: 0 1px 4px rgba(0,0,0,.58);
  --stas-glass-bg: rgba(5,16,34,.26);
  --stas-glass-bg-strong: rgba(5,16,34,.36);
  --stas-glass-border: rgba(255,255,255,.22);
}
html{background:#020617!important;}
body.stas-global-weather,
body.sa-live-weather-enabled{
  background:transparent!important;
  color:#f8fbff!important;
}
body.stas-global-weather::before,
body.sa-live-weather-enabled::before{display:none!important;}

/* One full screen video behind every header/sidebar/footer/card. */
.auth-weather-stage-global,
.stas-global-weather-stage{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100svh!important;
  overflow:hidden!important;
  pointer-events:none!important;
  z-index:0!important;
  background:#020617!important;
  isolation:isolate!important;
}
.auth-weather-stage-global .auth-weather-video,
.stas-global-weather-stage .auth-weather-video,
.stas-global-weather-stage video{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  min-width:100%!important;
  min-height:100%!important;
  object-fit:cover!important;
  object-position:center center!important;
  opacity:0!important;
  visibility:hidden!important;
  transform:translate3d(0,0,0)!important;
  backface-visibility:hidden!important;
  filter:saturate(1.03) contrast(1.04) brightness(.96)!important;
  will-change:opacity!important;
  transition:opacity .28s ease!important;
}
.auth-weather-stage-global .auth-weather-video.is-active,
.stas-global-weather-stage .auth-weather-video.is-active,
.stas-global-weather-stage video.is-active{
  opacity:1!important;
  visibility:visible!important;
}
.auth-weather-video-overlay,
.stas-global-weather-overlay{
  position:absolute!important;
  inset:0!important;
  z-index:2!important;
  pointer-events:none!important;
  background:
    radial-gradient(circle at 20% 12%, rgba(255,255,255,.12), transparent 34%),
    linear-gradient(180deg, rgba(2,6,23,.24), rgba(2,6,23,.18) 44%, rgba(2,6,23,.42))!important;
}
body[data-video-tone="bright"] .auth-weather-video-overlay,
body[data-weather-readable="bright"] .auth-weather-video-overlay,
body[data-live-weather="sun"] .auth-weather-video-overlay,
body[data-live-weather="sunny"] .auth-weather-video-overlay{
  background:
    radial-gradient(circle at 24% 14%, rgba(255,255,255,.10), transparent 32%),
    linear-gradient(180deg, rgba(2,6,23,.34), rgba(3,18,39,.26) 48%, rgba(2,6,23,.54))!important;
}
body[data-video-tone="dark"] .auth-weather-video-overlay,
body[data-live-weather="night"] .auth-weather-video-overlay,
body[data-live-weather="clear-night"] .auth-weather-video-overlay{
  background:linear-gradient(180deg, rgba(2,6,23,.20), rgba(2,6,23,.14) 45%, rgba(2,6,23,.46))!important;
}

/* Put real UI above the video but keep every surface translucent. */
body.stas-global-weather > :not(.stas-global-weather-stage):not(.auth-weather-stage-global),
body.sa-live-weather-enabled > :not(.stas-global-weather-stage):not(.auth-weather-stage-global){
  position:relative;
  z-index:2;
}

/* Website: content scroll only between header and footer. */
body.stas-weather-site{
  height:100svh!important;
  min-height:100svh!important;
  overflow:hidden!important;
}
body.stas-weather-site .stas-site-header{
  position:relative!important;
  z-index:20!important;
  min-height:var(--stas-header-h)!important;
  background:rgba(2,6,23,.28)!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 10px 22px rgba(2,6,23,.18)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.stas-weather-site .stas-site-header__inner{min-height:var(--stas-header-h)!important;}
body.stas-weather-site .stas-page-scroll{
  position:relative!important;
  z-index:3!important;
  height:calc(100svh - var(--stas-header-h) - var(--stas-footer-h))!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  overscroll-behavior:contain!important;
  background:transparent!important;
}
body.stas-weather-site footer{
  position:relative!important;
  z-index:20!important;
  min-height:var(--stas-footer-h)!important;
  margin-top:0!important;
  padding-top:.75rem!important;
  padding-bottom:.75rem!important;
  background:rgba(2,6,23,.28)!important;
  border-top:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 -10px 22px rgba(2,6,23,.18)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.stas-weather-site .hero-gradient,
body.stas-weather-site section,
body.stas-weather-site main,
body.stas-weather-site .public-page-main,
body.stas-weather-site .container,
body.stas-weather-site .row{
  background:transparent!important;
}
body.stas-weather-site .hero-gradient{min-height:calc(100svh - var(--stas-header-h) - var(--stas-footer-h))!important;}

/* SuperAdmin: topbar/footer fixed in layout, only content scrolls. */
body.stas-weather-superadmin{
  height:100svh!important;
  min-height:100svh!important;
  overflow:hidden!important;
  background:transparent!important;
}
body.stas-weather-superadmin .sa-shell,
body.stas-weather-superadmin .sa-main{
  height:100svh!important;
  min-height:0!important;
  overflow:hidden!important;
  background:transparent!important;
}
body.stas-weather-superadmin .sa-main{position:relative!important;z-index:2!important;}
body.stas-weather-superadmin .sa-sidebar{
  height:100svh!important;
  min-height:100svh!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  background:rgba(2,6,23,.22)!important;
  border-right:1px solid rgba(255,255,255,.14)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  box-shadow:10px 0 30px rgba(2,6,23,.12)!important;
}
body.stas-weather-superadmin .sa-sidebar .brand,
body.stas-weather-superadmin .sa-sidebar .brand-link,
body.stas-weather-superadmin .sa-sidebar-nav,
body.stas-weather-superadmin .sa-sidebar-version-inline,
body.stas-weather-superadmin .sa-version-pill{
  background:transparent!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body.stas-weather-superadmin .sa-topbar{
  min-height:var(--sa-topbar-h)!important;
  height:var(--sa-topbar-h)!important;
  position:relative!important;
  z-index:12!important;
  background:rgba(2,6,23,.22)!important;
  border-bottom:1px solid rgba(255,255,255,.14)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  box-shadow:0 10px 26px rgba(2,6,23,.14)!important;
}
body.stas-weather-superadmin .sa-content{
  height:calc(100svh - var(--sa-topbar-h) - var(--sa-footer-h))!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  background:transparent!important;
  padding-bottom:18px!important;
  overscroll-behavior:contain!important;
}
body.stas-weather-superadmin .portal-footer,
body.stas-weather-superadmin .sa-auth-footer{
  min-height:var(--sa-footer-h)!important;
  height:var(--sa-footer-h)!important;
  position:relative!important;
  z-index:12!important;
  background:rgba(2,6,23,.24)!important;
  border-top:1px solid rgba(255,255,255,.14)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  box-shadow:0 -10px 26px rgba(2,6,23,.14)!important;
}

/* Scrollbar appears only where the page actually scrolls and only on hover. */
.stas-page-scroll,
body.stas-weather-superadmin .sa-content,
body.stas-weather-superadmin .sa-sidebar,
body.stas-weather-superadmin .sa-sidebar-nav{
  scrollbar-width:none!important;
}
.stas-page-scroll:hover,
body.stas-weather-superadmin .sa-content:hover,
body.stas-weather-superadmin .sa-sidebar:hover,
body.stas-weather-superadmin .sa-sidebar-nav:hover{
  scrollbar-width:thin!important;
  scrollbar-color:rgba(255,255,255,.44) transparent!important;
}
.stas-page-scroll::-webkit-scrollbar,
body.stas-weather-superadmin .sa-content::-webkit-scrollbar,
body.stas-weather-superadmin .sa-sidebar::-webkit-scrollbar,
body.stas-weather-superadmin .sa-sidebar-nav::-webkit-scrollbar{width:0!important;height:0!important;}
.stas-page-scroll:hover::-webkit-scrollbar,
body.stas-weather-superadmin .sa-content:hover::-webkit-scrollbar,
body.stas-weather-superadmin .sa-sidebar:hover::-webkit-scrollbar,
body.stas-weather-superadmin .sa-sidebar-nav:hover::-webkit-scrollbar{width:8px!important;height:8px!important;}
.stas-page-scroll:hover::-webkit-scrollbar-thumb,
body.stas-weather-superadmin .sa-content:hover::-webkit-scrollbar-thumb,
body.stas-weather-superadmin .sa-sidebar:hover::-webkit-scrollbar-thumb,
body.stas-weather-superadmin .sa-sidebar-nav:hover::-webkit-scrollbar-thumb{background:rgba(255,255,255,.44)!important;border-radius:999px!important;}
.stas-page-scroll:hover::-webkit-scrollbar-track,
body.stas-weather-superadmin .sa-content:hover::-webkit-scrollbar-track,
body.stas-weather-superadmin .sa-sidebar:hover::-webkit-scrollbar-track,
body.stas-weather-superadmin .sa-sidebar-nav:hover::-webkit-scrollbar-track{background:transparent!important;}

/* Universal readable translucent surfaces; no white blur. */
body.stas-global-weather .glass,
body.stas-global-weather .card,
body.stas-global-weather .pricing-card,
body.stas-global-weather .feature-card,
body.stas-global-weather .support-card,
body.stas-global-weather .profile-card,
body.stas-global-weather .ticket-card,
body.stas-global-weather .list-group-item,
body.stas-global-weather .table-responsive,
body.stas-global-weather .auth-live-quote-card,
body.stas-global-weather .auth-hero-panel,
body.stas-global-weather .auth-foundation-card,
body.stas-global-weather .auth-foundation-card-panel,
body.stas-global-weather .stas-auth-glass,
body.stas-global-weather .stas-auth-card,
body.stas-global-weather .stas-auth-quote,
body.stas-weather-superadmin .sa-page-shell,
body.stas-weather-superadmin .sa-content .card,
body.stas-weather-superadmin .sa-content .text-bg-dark,
body.stas-weather-superadmin .sa-analytics-card,
body.stas-weather-superadmin .sa-map-panel,
body.stas-weather-superadmin .sa-visitor-globe-card,
body.stas-weather-superadmin .stat-card,
body.stas-weather-superadmin .metric-card,
body.stas-weather-superadmin .dashboard-card,
body.stas-weather-superadmin .glass-card,
body.stas-weather-superadmin .quick-action-card,
body.stas-weather-superadmin .panel,
body.stas-weather-superadmin .table-responsive,
body.stas-weather-superadmin .list-group-item{
  background:var(--stas-glass-bg)!important;
  border:1px solid var(--stas-glass-border)!important;
  color:#f8fbff!important;
  box-shadow:0 18px 42px rgba(2,6,23,.20), inset 0 1px 0 rgba(255,255,255,.08)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}
body[data-video-tone="bright"] .glass,
body[data-video-tone="bright"] .card,
body[data-video-tone="bright"] .auth-foundation-card-panel,
body[data-video-tone="bright"] .sa-page-shell,
body[data-video-tone="bright"] .sa-content .card,
body[data-video-tone="bright"] .sa-analytics-card,
body[data-weather-readable="bright"] .glass,
body[data-weather-readable="bright"] .card,
body[data-weather-readable="bright"] .auth-foundation-card-panel,
body[data-weather-readable="bright"] .sa-page-shell,
body[data-weather-readable="bright"] .sa-content .card,
body[data-weather-readable="bright"] .sa-analytics-card{
  background:var(--stas-glass-bg-strong)!important;
}
body.stas-weather-superadmin .sa-content .card-body,
body.stas-weather-superadmin .sa-content .card-header,
body.stas-weather-superadmin .sa-content .card-footer,
body.stas-weather-superadmin .sa-content .table,
body.stas-weather-superadmin .sa-content .table-dark,
body.stas-weather-superadmin .sa-content thead,
body.stas-weather-superadmin .sa-content tbody,
body.stas-weather-superadmin .sa-content tr,
body.stas-weather-superadmin .sa-content td,
body.stas-weather-superadmin .sa-content th{
  background:transparent!important;
  color:#f8fbff!important;
  border-color:rgba(255,255,255,.16)!important;
}
body.stas-weather-superadmin .sa-map-grid{opacity:.10!important;}
body.stas-weather-superadmin .sa-visitor-globe{background:rgba(5,16,34,.26)!important;border-color:rgba(255,255,255,.18)!important;}

/* Text readable against changing video. */
body.stas-global-weather h1,
body.stas-global-weather h2,
body.stas-global-weather h3,
body.stas-global-weather h4,
body.stas-global-weather h5,
body.stas-global-weather h6,
body.stas-global-weather p,
body.stas-global-weather li,
body.stas-global-weather label,
body.stas-global-weather .lead,
body.stas-global-weather .small,
body.stas-global-weather .muted,
body.stas-global-weather .text-secondary,
body.stas-global-weather .text-muted,
body.stas-global-weather .form-label,
body.stas-weather-superadmin .sa-content h1,
body.stas-weather-superadmin .sa-content h2,
body.stas-weather-superadmin .sa-content h3,
body.stas-weather-superadmin .sa-content h4,
body.stas-weather-superadmin .sa-content h5,
body.stas-weather-superadmin .sa-content h6,
body.stas-weather-superadmin .sa-content p,
body.stas-weather-superadmin .sa-content li,
body.stas-weather-superadmin .sa-content label,
body.stas-weather-superadmin .sa-content .small,
body.stas-weather-superadmin .sa-content .text-secondary,
body.stas-weather-superadmin .sa-content .text-muted,
body.stas-weather-superadmin .sa-sidebar,
body.stas-weather-superadmin .sa-sidebar a,
body.stas-weather-superadmin .sa-sidebar .nav-group-label,
body.stas-weather-superadmin .sa-topbar,
body.stas-weather-superadmin .portal-footer,
body.stas-weather-site .stas-site-header,
body.stas-weather-site .stas-site-header a,
body.stas-weather-site footer,
body.stas-weather-site footer a{
  color:#f8fbff!important;
  text-shadow:var(--stas-readable-shadow)!important;
}
body.stas-global-weather .form-control,
body.stas-global-weather .form-select,
body.stas-global-weather input,
body.stas-global-weather textarea,
body.stas-weather-superadmin .form-control,
body.stas-weather-superadmin .form-select,
body.stas-weather-superadmin input,
body.stas-weather-superadmin textarea{
  background:rgba(248,250,252,.94)!important;
  color:#0f172a!important;
  text-shadow:none!important;
  border-color:rgba(255,255,255,.24)!important;
}
body.stas-global-weather .btn,
body.stas-weather-superadmin .btn,
body.stas-global-weather .badge,
body.stas-weather-superadmin .badge,
body.stas-global-weather code,
body.stas-weather-superadmin code{
  text-shadow:none!important;
}
body.stas-weather-superadmin .live-weather-badge,
body.stas-weather-site .live-weather-badge{
  background:rgba(2,6,23,.26)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  color:#fff!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
}

/* Auth pages must fit better; only their page content scrolls if truly needed. */
body.auth-page.stas-weather-site .stas-page-scroll,
body.auth-page.stas-weather-superadmin .sa-content{overflow-y:auto!important;}
body.auth-website-login .auth-foundation-shell,
body.auth-superadmin-login .auth-foundation-shell{min-height:auto!important;margin:10px auto!important;}
body.auth-website-login .auth-foundation-grid,
body.auth-superadmin-login .auth-foundation-grid{align-items:center!important;}
body.auth-website-login .auth-hero-panel,
body.auth-superadmin-login .auth-hero-panel{min-height:230px!important;}
body.auth-website-login .auth-foundation-title,
body.auth-superadmin-login .auth-foundation-title{font-size:clamp(2.1rem,3.5vw,3.2rem)!important;}
body.auth-website-login .auth-foundation-card-panel,
body.auth-superadmin-login .auth-foundation-card-panel{padding:1.05rem 1.2rem!important;}
body.auth-website-login .auth-field-stack,
body.auth-superadmin-login .auth-field-stack{gap:.72rem!important;}

@media (max-width:991.98px){
  body.stas-weather-site{overflow:auto!important;height:auto!important;min-height:100svh!important;}
  body.stas-weather-site .stas-page-scroll{height:auto!important;min-height:calc(100svh - var(--stas-header-h) - var(--stas-footer-h))!important;overflow:visible!important;}
  body.stas-weather-superadmin .sa-content{height:calc(100svh - var(--sa-topbar-h) - var(--sa-footer-h))!important;}
}
