:root{
  --lw-bg-1:#061323;
  --lw-bg-2:#0f2747;
  --lw-bg-3:#173760;
  --lw-surface-1:rgba(10,24,46,.95);
  --lw-surface-2:rgba(18,44,83,.92);
  --lw-surface-3:rgba(23,55,96,.92);
  --lw-border:rgba(255,255,255,.10);
  --lw-text:#eef6ff;
  --lw-muted:rgba(238,246,255,.80);
  --lw-panel:rgba(255,255,255,.08);
  --lw-card:#0f2747;
}
body[data-live-weather="sun"]{
  --lw-bg-1:#6dc9ff;
  --lw-bg-2:#2f9eff;
  --lw-bg-3:#186dd6;
  --lw-surface-1:rgba(12,76,142,.94);
  --lw-surface-2:rgba(16,89,164,.92);
  --lw-surface-3:rgba(19,63,126,.92);
  --lw-border:rgba(255,255,255,.16);
}
body[data-live-weather="cloud"]{
  --lw-bg-1:#8eb7dc;
  --lw-bg-2:#5d96cb;
  --lw-bg-3:#345f92;
  --lw-surface-1:rgba(41,73,109,.95);
  --lw-surface-2:rgba(53,93,139,.92);
  --lw-surface-3:rgba(29,54,84,.92);
  --lw-border:rgba(255,255,255,.14);
}
body[data-live-weather="rain"]{
  --lw-bg-1:#5f89c5;
  --lw-bg-2:#2c63a9;
  --lw-bg-3:#143968;
  --lw-surface-1:rgba(14,37,69,.96);
  --lw-surface-2:rgba(18,47,88,.94);
  --lw-surface-3:rgba(11,31,59,.94);
  --lw-border:rgba(173,216,255,.18);
}
body[data-live-weather="storm"]{
  --lw-bg-1:#364d7b;
  --lw-bg-2:#1f315d;
  --lw-bg-3:#0a1737;
  --lw-surface-1:rgba(7,19,41,.98);
  --lw-surface-2:rgba(10,28,58,.95);
  --lw-surface-3:rgba(7,19,41,.95);
  --lw-border:rgba(255,245,157,.18);
}
body[data-live-weather="clear-night"]{
  --lw-bg-1:#071327;
  --lw-bg-2:#10244a;
  --lw-bg-3:#173760;
  --lw-surface-1:rgba(5,17,36,.98);
  --lw-surface-2:rgba(10,31,62,.95);
  --lw-surface-3:rgba(8,23,47,.95);
  --lw-border:rgba(148,163,184,.18);
}
html[data-live-weather],body[data-live-weather]{
  background:linear-gradient(180deg,var(--lw-bg-1) 0%,var(--lw-bg-2) 48%,var(--lw-bg-3) 100%) fixed !important;
  color:var(--lw-text);
  transition:background .6s ease,color .4s ease;
}
body[data-live-weather] .navbar,
body[data-live-weather] .sa-topbar,
body[data-live-weather] .sa-sidebar,
body[data-live-weather] .sa-sidebar .brand,
body[data-live-weather] .erp-topbar,
body[data-live-weather] .erp-sidebar,
body[data-live-weather] .erp-sidebar .brand,
body[data-live-weather] footer,
body[data-live-weather] .portal-footer,
body[data-live-weather] .sa-auth-footer{
  background:linear-gradient(180deg,var(--lw-surface-1) 0%,var(--lw-surface-2) 58%,var(--lw-surface-3) 100%) !important;
  border-color:var(--lw-border) !important;
  color:var(--lw-text) !important;
  transition:background .6s ease,border-color .6s ease,color .4s ease;
}
body[data-live-weather] .navbar,
body[data-live-weather] .sa-topbar,
body[data-live-weather] .erp-topbar{backdrop-filter:blur(16px);}
body[data-live-weather] .sa-content,
body[data-live-weather] .erp-content,
body[data-live-weather] .main,
body[data-live-weather] .hero-gradient{
  background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,0)) !important;
}
body[data-live-weather] .navbar .nav-link,
body[data-live-weather] .navbar-brand,
body[data-live-weather] .sa-topbar a,
body[data-live-weather] .erp-topbar a,
body[data-live-weather] .sa-sidebar a.nav-link,
body[data-live-weather] .erp-sidebar a.nav-link,
body[data-live-weather] footer,
body[data-live-weather] .text-secondary,
body[data-live-weather] .small.text-secondary{color:var(--lw-muted) !important;}
body[data-live-weather] .navbar .nav-link:hover,
body[data-live-weather] .sa-topbar a:hover,
body[data-live-weather] .erp-topbar a:hover,
body[data-live-weather] .sa-sidebar a.nav-link:hover,
body[data-live-weather] .erp-sidebar a.nav-link:hover,
body[data-live-weather] .sa-sidebar a.nav-link.active,
body[data-live-weather] .erp-sidebar a.nav-link.active,
body[data-live-weather] footer a:hover{color:#fff !important;background:rgba(255,255,255,.08) !important;}
body[data-live-weather] .btn-outline-light{border-color:rgba(255,255,255,.28)!important;color:#fff!important;}
body[data-live-weather] .btn-outline-light:hover{background:rgba(255,255,255,.12)!important;color:#fff!important;}
body[data-live-weather] .card,
body[data-live-weather] .glass{background:var(--lw-panel)!important;border-color:var(--lw-border)!important;box-shadow:0 20px 46px rgba(2,6,23,.22)!important;}
body[data-live-weather] .portal-footer,
body[data-live-weather] .sa-auth-footer{
  min-height:50px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  font-size:.86rem;
  font-weight:700;
  letter-spacing:.02em;
}
body[data-live-weather] .portal-footer span,
body[data-live-weather] .sa-auth-footer span{width:100%;display:block;color:#fff;}
body[data-live-weather] .auth-stage{
  background:linear-gradient(180deg,var(--lw-bg-1) 0%,var(--lw-bg-2) 46%,var(--lw-bg-3) 100%) !important;
  transition:background .6s ease;
}
body[data-live-weather] .auth-stage[data-weather="sun"]{background:linear-gradient(180deg,#74d2ff 0%,#2da2ff 44%,#176fd7 100%) !important;}
body[data-live-weather] .auth-stage[data-weather="cloud"]{background:linear-gradient(180deg,#8fb8de 0%,#649bd0 46%,#355e94 100%) !important;}
body[data-live-weather] .auth-stage[data-weather="rain"]{background:linear-gradient(180deg,#6a92cc 0%,#2f66ad 46%,#153a69 100%) !important;}
body[data-live-weather] .auth-stage[data-weather="storm"]{background:linear-gradient(180deg,#40557f 0%,#223560 42%,#0b1737 100%) !important;}
body[data-live-weather] .auth-stage[data-weather="clear-night"]{background:linear-gradient(180deg,#071327 0%,#10244a 46%,#173760 100%) !important;}
body[data-live-weather] .auth-cloud-features span{
  color:#c2410c !important;
  text-shadow:0 1px 0 rgba(255,255,255,.88);
  letter-spacing:.01em;
}
body[data-live-weather] .auth-tagline,
body[data-live-weather] .auth-hero-title,
body[data-live-weather] .auth-hero h1,
body[data-live-weather] .auth-hero p,
body[data-live-weather] .login-note,
body[data-live-weather] .hero-note,
body[data-live-weather] .site-auth-footer-note{color:#f8fbff !important; text-shadow:0 2px 14px rgba(10,24,46,.20);}
body[data-live-weather] .login-note,
body[data-live-weather] .hero-note{background:rgba(255,255,255,.16)!important;border-color:rgba(255,255,255,.12)!important;}
body[data-live-weather] .auth-panel-wrap .auth-clip,
body[data-live-weather] .auth-card{backdrop-filter:blur(8px);}
body[data-live-weather] [data-live-weather-label]{background:rgba(10,24,46,.26)!important;color:#fff!important;border:1px solid rgba(255,255,255,.12);}
body.auth-page:not(.sa-auth)[data-live-weather] nav.navbar,
body.auth-page:not(.sa-auth)[data-live-weather] footer{display:block!important;}
body[data-live-weather] .foot{max-width:none;margin:0;padding:14px 16px;background:linear-gradient(180deg,var(--lw-surface-1) 0%,var(--lw-surface-2) 58%,var(--lw-surface-3) 100%)!important;border-top:1px solid var(--lw-border)!important;color:#fff!important;}
body[data-live-weather] .live-weather-badge{
  display:inline-flex;
  align-items:center;
  gap:6px;
  border-radius:999px;
  padding:6px 10px;
  font-size:.72rem;
  font-weight:700;
  background:rgba(255,255,255,.10);
  color:#fff;
  border:1px solid rgba(255,255,255,.14);
}
body[data-live-weather] .weather-badge-wrap{display:flex;align-items:center;gap:10px;}
body[data-live-weather="storm"] .live-weather-badge::before{content:"⚡";}
body[data-live-weather="rain"] .live-weather-badge::before{content:"🌧";}
body[data-live-weather="cloud"] .live-weather-badge::before{content:"☁";}
body[data-live-weather="clear-night"] .live-weather-badge::before{content:"🌙";}
body[data-live-weather="sun"] .live-weather-badge::before{content:"☀";}


.portal-footer,
.sa-auth-footer{
  min-height:50px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  border-top:1px solid rgba(255,255,255,.08);
  background:#0f2747;
  color:#fff;
  font-size:.86rem;
  font-weight:700;
  letter-spacing:.02em;
}
.portal-footer span,
.sa-auth-footer span{width:100%;display:block;}

body.auth-page.sa-auth footer.portal-footer,
body.auth-page.sa-auth footer.sa-auth-footer{display:flex!important;}


/* v61 auth/dashboard/weather polish */
[data-live-weather-label]{display:none!important;}
body[data-live-weather] .live-weather-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  font-size:.78rem;
  font-weight:800;
  color:#fff!important;
  background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.18)!important;
  box-shadow:0 8px 20px rgba(2,6,23,.16);
  backdrop-filter:blur(12px);
}
body[data-live-weather] .sa-topbar .live-weather-badge,
body[data-live-weather] .erp-topbar .live-weather-badge,
body[data-live-weather] nav.navbar .live-weather-badge,
body[data-live-weather] .erp-auth-topbar .live-weather-badge{margin-left:12px;}
body.auth-page .live-weather-badge{white-space:nowrap;}
body.auth-page .auth-cloud-features span{overflow:hidden!important;text-overflow:ellipsis!important;}
body.auth-page .auth-cloud-features .slot1,
body.auth-page .auth-cloud-features .slot3{left:96px!important;right:auto!important;}
body.auth-page .auth-cloud-features .slot2,
body.auth-page .auth-cloud-features .slot4{right:96px!important;left:auto!important;}
body.auth-page .market-scene{left:0;right:0;bottom:12px!important;height:138px!important;z-index:1;pointer-events:none;}
body.auth-page .market-scene .track{position:absolute;left:18%;right:18%;bottom:62px;height:6px;background:rgba(255,255,255,.42);box-shadow:0 10px 0 rgba(255,255,255,.42);border-radius:999px;opacity:.55;}
body.auth-page .market-scene .shop.shop-a{left:8%;}
body.auth-page .market-scene .shop.shop-b{left:18%;}
body.auth-page .market-scene .hospital{left:40%;right:auto;width:96px;height:64px;}
body.auth-page .market-scene .tower{left:62%;right:auto;height:88px;}
body.auth-page .market-scene .tree.tree-a{left:30%;}
body.auth-page .market-scene .tree.tree-b{left:54%;}
body.auth-page .market-scene .tree.tree-c{left:76%;}
body.auth-page .market-scene .person.person-a{left:48%;}
body.auth-page .market-scene .person.person-b{left:52%;}
body.auth-page .market-scene .person.person-c{left:68%;}
body.auth-page .market-scene .person.person-d{left:72%;}
body.auth-page .market-scene .vehicle{position:absolute;display:block;}
body.auth-page .market-scene .vehicle.car{bottom:26px;width:50px;height:16px;border-radius:9px;background:#2563eb;animation:carMove 16s linear infinite;}
body.auth-page .market-scene .vehicle.bus{bottom:26px;width:74px;height:18px;border-radius:8px;background:#f97316;animation:busMove 20s linear infinite;animation-delay:-6s;}
body.auth-page .market-scene .vehicle.truck{bottom:26px;width:82px;height:18px;border-radius:8px;background:#22c55e;animation:truckMove 24s linear infinite;animation-delay:-12s;}
body.auth-page .market-scene .vehicle.train{bottom:70px;width:150px;height:18px;border-radius:10px;background:linear-gradient(90deg,#e5e7eb 0 78%,#94a3b8 78% 100%);animation:trainMove 28s linear infinite;animation-delay:-8s;opacity:.92;}
body.auth-page .market-scene .vehicle.plane{top:18px;left:-140px;width:64px;height:18px;background:linear-gradient(90deg,#fff,#dbeafe);clip-path:polygon(0 50%,36% 40%,68% 0,72% 26%,100% 32%,74% 50%,100% 68%,72% 74%,68% 100%,36% 60%);opacity:.92;animation:planeMove 30s linear infinite;}
body.auth-page .market-scene .vehicle:before,
body.auth-page .market-scene .vehicle:after{content:"";position:absolute;bottom:-6px;width:10px;height:10px;border-radius:50%;background:#0f172a;}
body.auth-page .market-scene .vehicle.car:before,
body.auth-page .market-scene .vehicle.bus:before,
body.auth-page .market-scene .vehicle.truck:before{left:8px;}
body.auth-page .market-scene .vehicle.car:after,
body.auth-page .market-scene .vehicle.bus:after,
body.auth-page .market-scene .vehicle.truck:after{right:8px;}
body.auth-page .market-scene .vehicle.train:before,
body.auth-page .market-scene .vehicle.train:after,
body.auth-page .market-scene .vehicle.plane:before,
body.auth-page .market-scene .vehicle.plane:after{display:none;}
@keyframes busMove{0%{transform:translateX(-120px)}100%{transform:translateX(calc(100vw + 180px))}}
@keyframes truckMove{0%{transform:translateX(-180px)}100%{transform:translateX(calc(100vw + 220px))}}
@keyframes trainMove{0%{transform:translateX(calc(100vw + 180px))}100%{transform:translateX(-260px)}}
@keyframes planeMove{0%{transform:translateX(0)}100%{transform:translateX(calc(100vw + 260px)) translateY(-26px)}}
body.auth-page.sa-auth .auth-panel-wrap{padding-top:96px!important;}
body.auth-page:not(.sa-auth) .auth-panel-wrap{padding-top:88px!important;}
body.auth-page.sa-auth .market-scene .hospital{left:34%!important;}
body.auth-page.sa-auth .market-scene .tower{left:66%!important;}
body.auth-page.sa-auth .auth-clip{max-width:456px!important;}
body.auth-page.sa-auth .auth-cloud{margin-top:18px!important;}
body.auth-page.sa-auth .auth-cloud-features span{font-size:.82rem!important;max-width:120px!important;}
body.auth-page:not(.sa-auth) .auth-cloud-features span{font-size:.8rem!important;max-width:116px!important;}
body:not(.auth-page)[data-live-weather] .sa-content,
body:not(.auth-page)[data-live-weather] .erp-content{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02))!important;color:#f8fbff!important;}
body:not(.auth-page)[data-live-weather] .sa-content,
body:not(.auth-page)[data-live-weather] .sa-content p,
body:not(.auth-page)[data-live-weather] .sa-content li,
body:not(.auth-page)[data-live-weather] .sa-content label,
body:not(.auth-page)[data-live-weather] .sa-content .small,
body:not(.auth-page)[data-live-weather] .sa-content .text-secondary,
body:not(.auth-page)[data-live-weather] .sa-content .text-muted,
body:not(.auth-page)[data-live-weather] .sa-content .text-dark,
body:not(.auth-page)[data-live-weather] .erp-content,
body:not(.auth-page)[data-live-weather] .erp-content p,
body:not(.auth-page)[data-live-weather] .erp-content li,
body:not(.auth-page)[data-live-weather] .erp-content label,
body:not(.auth-page)[data-live-weather] .erp-content .small,
body:not(.auth-page)[data-live-weather] .erp-content .text-secondary,
body:not(.auth-page)[data-live-weather] .erp-content .text-muted,
body:not(.auth-page)[data-live-weather] .erp-content .text-dark{color:#eef6ff!important;}
body:not(.auth-page)[data-live-weather] .sa-content .card,
body:not(.auth-page)[data-live-weather] .erp-content .card{background:rgba(8,23,47,.38)!important;border:1px solid var(--lw-border)!important;}
body:not(.auth-page)[data-live-weather] .sa-content .table,
body:not(.auth-page)[data-live-weather] .erp-content .table,
body:not(.auth-page)[data-live-weather] .sa-content .table td,
body:not(.auth-page)[data-live-weather] .sa-content .table th,
body:not(.auth-page)[data-live-weather] .erp-content .table td,
body:not(.auth-page)[data-live-weather] .erp-content .table th{color:#f8fbff!important;border-color:rgba(255,255,255,.12)!important;}
body:not(.auth-page)[data-live-weather] .sa-content .form-control,
body:not(.auth-page)[data-live-weather] .sa-content .form-select,
body:not(.auth-page)[data-live-weather] .erp-content .form-control,
body:not(.auth-page)[data-live-weather] .erp-content .form-select{background:rgba(255,255,255,.10)!important;color:#fff!important;border-color:var(--lw-border)!important;}
body:not(.auth-page)[data-live-weather] .sa-content .form-control::placeholder,
body:not(.auth-page)[data-live-weather] .erp-content .form-control::placeholder{color:rgba(238,246,255,.72)!important;}
@media (max-width: 991px){
  body.auth-page .market-scene{height:112px!important;}
  body.auth-page .market-scene .shop.shop-b{left:22%!important;}
  body.auth-page .market-scene .hospital{left:38%!important;}
  body.auth-page .market-scene .tower{left:68%!important;}
  body.auth-page .live-weather-badge{font-size:.72rem;padding:7px 10px;}
}
