/* STAS v682: rotating ERP examples, readable marketing pages, and a non-reflowing scrollbar overlay. */
:root {
  --stas-ui-ink: #17271f;
  --stas-ui-muted: #59685e;
  --stas-ui-line: #d7e1d8;
  --stas-ui-canvas: #f4f7f3;
  --stas-ui-surface: #fff;
  --stas-ui-surface-soft: #f7faf7;
  --stas-ui-green: #176b45;
  --stas-ui-green-dark: #105136;
  --stas-ui-green-deep: #0c2e22;
  --stas-ui-green-soft: #e8f2ea;
  --stas-ui-lime: #d8f2aa;
  --stas-ui-focus: #bd7d10;
  --stas-ui-shadow: 0 8px 24px rgba(24, 50, 34, .08);
  --stas-ui-radius: 14px;
}
html { background: var(--stas-ui-canvas) !important; }

/* Scrollbars are absent by default; pointer-edge and scroll-key handlers reveal them briefly. */
html, body, .stas-page-scroll {
  scrollbar-width: none !important;
  scrollbar-color: transparent transparent !important;
  scrollbar-gutter: auto !important;
}
html.stas-scrollbar-hover, body.stas-scrollbar-hover, .stas-page-scroll.stas-scrollbar-hover { scrollbar-width: thin !important; scrollbar-color: #82958a transparent !important; }
html::-webkit-scrollbar, body::-webkit-scrollbar, .stas-page-scroll::-webkit-scrollbar { display: none !important; width: 0 !important; height: 0 !important; background: transparent !important; }
html.stas-scrollbar-hover::-webkit-scrollbar, body.stas-scrollbar-hover::-webkit-scrollbar, .stas-page-scroll.stas-scrollbar-hover::-webkit-scrollbar { display: block !important; width: 10px !important; height: 10px !important; }
html::-webkit-scrollbar-track, body::-webkit-scrollbar-track, .stas-page-scroll::-webkit-scrollbar-track { background: transparent !important; }
html::-webkit-scrollbar-thumb, body::-webkit-scrollbar-thumb, .stas-page-scroll::-webkit-scrollbar-thumb {
  min-height: 36px;
  border: 3px solid transparent !important;
  border-radius: 999px !important;
  background: transparent !important;
  background-clip: padding-box !important;
}
:is(html, body, .stas-page-scroll, .erp-content, .sa-content, .erp-sidebar, .sa-sidebar, .sidebar-scrollable, .sa-sidebar-nav) {
  scrollbar-width: none !important;
  scrollbar-color: transparent transparent;
  scrollbar-gutter: auto !important;
}
:is(html, body, .stas-page-scroll, .erp-content, .sa-content, .erp-sidebar, .sa-sidebar, .sidebar-scrollable, .sa-sidebar-nav).stas-scrollbar-hover {
  scrollbar-width: thin !important;
  scrollbar-color: #82958a transparent !important;
}
:is(html, body, .stas-page-scroll, .erp-content, .sa-content, .erp-sidebar, .sa-sidebar, .sidebar-scrollable, .sa-sidebar-nav)::-webkit-scrollbar { display: none !important; width: 0 !important; height: 0 !important; }
:is(html, body, .stas-page-scroll, .erp-content, .sa-content, .erp-sidebar, .sa-sidebar, .sidebar-scrollable, .sa-sidebar-nav).stas-scrollbar-hover::-webkit-scrollbar { display: block !important; width: 10px !important; height: 10px !important; }
:is(html, body, .stas-page-scroll, .erp-content, .sa-content, .erp-sidebar, .sa-sidebar, .sidebar-scrollable, .sa-sidebar-nav)::-webkit-scrollbar-thumb {
  border: 3px solid transparent !important;
  border-radius: 999px !important;
  background: transparent !important;
  background-clip: padding-box !important;
}
:is(html, body, .stas-page-scroll, .erp-content, .sa-content, .erp-sidebar, .sa-sidebar, .sidebar-scrollable, .sa-sidebar-nav).stas-scrollbar-hover::-webkit-scrollbar-thumb { background: #82958a !important; }
/* Older shared shell rules revealed bars whenever the whole scroll panel was hovered.
   Keep the thumb hidden until the pointer is at the gutter; the helper adds the class. */
html:not(.stas-scrollbar-hover):hover::-webkit-scrollbar-thumb,
body:not(.stas-scrollbar-hover):hover::-webkit-scrollbar-thumb,
.stas-page-scroll:not(.stas-scrollbar-hover):hover::-webkit-scrollbar-thumb,
.erp-content:not(.stas-scrollbar-hover):hover::-webkit-scrollbar-thumb,
.sa-content:not(.stas-scrollbar-hover):hover::-webkit-scrollbar-thumb,
.erp-sidebar:not(.stas-scrollbar-hover):hover::-webkit-scrollbar-thumb,
.sa-sidebar:not(.stas-scrollbar-hover):hover::-webkit-scrollbar-thumb,
.sa-sidebar-nav:not(.stas-scrollbar-hover):hover::-webkit-scrollbar-thumb,
.sidebar-scrollable:not(.stas-scrollbar-hover):hover::-webkit-scrollbar-thumb { background: transparent !important; }
html:not(.stas-scrollbar-hover):hover,
body:not(.stas-scrollbar-hover):hover,
.stas-page-scroll:not(.stas-scrollbar-hover):hover,
.erp-content:not(.stas-scrollbar-hover):hover,
.sa-content:not(.stas-scrollbar-hover):hover,
.erp-sidebar:not(.stas-scrollbar-hover):hover,
.sa-sidebar:not(.stas-scrollbar-hover):hover,
.sa-sidebar-nav:not(.stas-scrollbar-hover):hover,
.sidebar-scrollable:not(.stas-scrollbar-hover):hover { scrollbar-color: transparent transparent !important; }
html.stas-scrollbar-hover::-webkit-scrollbar-thumb,
body.stas-scrollbar-hover::-webkit-scrollbar-thumb,
.stas-page-scroll.stas-scrollbar-hover::-webkit-scrollbar-thumb { background: #82958a !important; }
html.stas-scrollbar-hover::-webkit-scrollbar-thumb:hover,
body.stas-scrollbar-hover::-webkit-scrollbar-thumb:hover,
.stas-page-scroll.stas-scrollbar-hover::-webkit-scrollbar-thumb:hover { background: #526b5b !important; }
html body.stas-weather-site .stas-page-scroll:not(.stas-scrollbar-hover):hover { scrollbar-color: transparent transparent !important; }
html body.stas-weather-site .stas-page-scroll:not(.stas-scrollbar-hover):hover::-webkit-scrollbar-thumb { background: transparent !important; }
html body.stas-global-weather :is(.erp-content, .sa-content, .erp-sidebar, .sa-sidebar, .sa-sidebar-nav, .sidebar-scrollable):not(.stas-scrollbar-hover):hover {
  scrollbar-color: transparent transparent !important;
}
html body.stas-global-weather :is(.erp-content, .sa-content, .erp-sidebar, .sa-sidebar, .sa-sidebar-nav, .sidebar-scrollable):not(.stas-scrollbar-hover):hover::-webkit-scrollbar-thumb {
  background: transparent !important;
}
html body.stas-global-weather :is(.erp-content, .sa-content, .erp-sidebar, .sa-sidebar, .sa-sidebar-nav, .sidebar-scrollable).stas-scrollbar-hover {
  scrollbar-width: thin !important;
  scrollbar-color: #82958a transparent !important;
}
html body.stas-global-weather :is(.erp-content, .sa-content, .erp-sidebar, .sa-sidebar, .sa-sidebar-nav, .sidebar-scrollable).stas-scrollbar-hover::-webkit-scrollbar {
  display: block !important;
  width: 10px !important;
  height: 10px !important;
}
html body.stas-global-weather :is(.erp-content, .sa-content, .erp-sidebar, .sa-sidebar, .sa-sidebar-nav, .sidebar-scrollable).stas-scrollbar-hover::-webkit-scrollbar-thumb {
  background: #82958a !important;
}

/* Plans, support and contact were still inheriting the old pale-on-pale theme. */
html body.stas-pricing-page .pricing-hero :is(.small, h1, p) {
  color: #173e2a !important;
  -webkit-text-fill-color: #173e2a !important;
  text-shadow: none !important;
}
html body.stas-pricing-page .pricing-hero { max-width: 1080px !important; margin: 0 auto 30px !important; }
html body.stas-pricing-page .pricing-hero h1 { font-size: clamp(2rem, 3.4vw, 2.8rem) !important; line-height: 1.1 !important; font-weight: 780 !important; }
html body.stas-pricing-page .pricing-hero p { color: #52645a !important; -webkit-text-fill-color: #52645a !important; font-size: 1.05rem !important; }
html body.stas-pricing-page .pricing-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 18px !important;
  margin: 0 !important;
}
html body.stas-pricing-page .pricing-grid > [class*="col-"] { width: auto !important; max-width: none !important; padding: 0 !important; }
html body.stas-pricing-page .pricing-grid .plan-card {
  height: 100% !important;
  overflow: hidden !important;
  border: 1px solid var(--stas-ui-line) !important;
  border-radius: 16px !important;
  background: #fff !important;
  color: var(--stas-ui-ink) !important;
  box-shadow: var(--stas-ui-shadow) !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
html body.stas-pricing-page .pricing-grid .plan-card:hover { transform: translateY(-3px) !important; border-color: #72a481 !important; box-shadow: 0 14px 28px rgba(24,75,45,.13) !important; }
html body.stas-pricing-page .pricing-grid .plan-card .card-top { padding: 22px !important; background: linear-gradient(135deg, #edf5ee, #f8faf7) !important; }
html body.stas-pricing-page .pricing-grid .plan-card .card-body { padding: 22px !important; background: #fff !important; }
html body.stas-pricing-page .pricing-grid .plan-card :is(h3, h4, h5, strong, .fw-semibold, .text-secondary, .muted, .small, .plan-cycle-summary, .plan-details-list, .display-6) {
  color: #243b2d !important;
  -webkit-text-fill-color: #243b2d !important;
  text-shadow: none !important;
}
html body.stas-pricing-page .pricing-grid .plan-card :is(.text-secondary, .muted, .small, .plan-cycle-summary) { color: #52645a !important; -webkit-text-fill-color: #52645a !important; }
html body.stas-pricing-page .pricing-grid .plan-card .display-6 { font-size: clamp(2rem, 2.8vw, 2.65rem) !important; font-weight: 760 !important; font-variant-numeric: tabular-nums; }
html body.stas-pricing-page .pricing-grid .plan-card .price-chip { background: #e8f2ea !important; color: #245237 !important; -webkit-text-fill-color: #245237 !important; }
html body.stas-pricing-page .pricing-grid .plan-card .module-chip { border-color: #d7e1d8 !important; background: #f2f7f2 !important; color: #315b41 !important; -webkit-text-fill-color: #315b41 !important; }
html body.stas-pricing-page .pricing-grid .plan-card .plan-billing-switch { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; }
html body.stas-pricing-page .pricing-grid .plan-card .cycle-btn { min-height: 40px !important; padding: 7px 13px !important; border: 1px solid #b9cabe !important; border-radius: 999px !important; background: #fff !important; color: #315643 !important; -webkit-text-fill-color: #315643 !important; font-weight: 650 !important; }
html body.stas-pricing-page .pricing-grid .plan-card .cycle-btn.is-active { border-color: var(--stas-ui-green) !important; background: var(--stas-ui-green) !important; color: #fff !important; -webkit-text-fill-color: #fff !important; }
html body.stas-pricing-page .pricing-grid .plan-card .btn-outline-light { border-color: #8eaa96 !important; background: #fff !important; color: #244a33 !important; -webkit-text-fill-color: #244a33 !important; }

html body.stas-support-page :is(h1, h2, h3, h4, h5, p, .small, .text-secondary) {
  color: #243b2d !important;
  -webkit-text-fill-color: #243b2d !important;
  text-shadow: none !important;
}
html body.stas-support-page .container > p { max-width: 72ch !important; color: #52645a !important; -webkit-text-fill-color: #52645a !important; font-size: 1rem !important; line-height: 1.7 !important; }
html body.stas-support-page .accordion-item,
html body.stas-support-page .accordion-button,
html body.stas-support-page .accordion-body,
html body.stas-support-page .accordion-button.text-bg-dark,
html body.stas-support-page .accordion-item.text-bg-dark {
  border-color: var(--stas-ui-line) !important;
  background: #fff !important;
  color: #243b2d !important;
  -webkit-text-fill-color: #243b2d !important;
  box-shadow: none !important;
}
html body.stas-support-page .accordion-button { min-height: 54px !important; font-weight: 700 !important; }
html body.stas-support-page .accordion-button:not(.collapsed) { background: #eef5ef !important; color: #173e2a !important; -webkit-text-fill-color: #173e2a !important; }
html body.stas-support-page .glass { border: 1px solid var(--stas-ui-line) !important; border-radius: 14px !important; background: #fff !important; color: #243b2d !important; box-shadow: var(--stas-ui-shadow) !important; }
html body.stas-support-page .glass :is(h5, p, .small, .text-secondary) { color: #243b2d !important; -webkit-text-fill-color: #243b2d !important; }
html body.stas-support-page .glass p { color: #52645a !important; -webkit-text-fill-color: #52645a !important; }

html body.stas-contact-page .glass {
  border: 1px solid var(--stas-ui-line) !important;
  border-radius: 15px !important;
  background: #fff !important;
  color: #243b2d !important;
  box-shadow: var(--stas-ui-shadow) !important;
}
html body.stas-contact-page .glass :is(h1, h2, h3, h4, h5, label, .fw-semibold, .text-secondary, .small, p) {
  color: #243b2d !important;
  -webkit-text-fill-color: #243b2d !important;
  text-shadow: none !important;
}
html body.stas-contact-page .glass :is(p, .text-secondary, .small) { color: #52645a !important; -webkit-text-fill-color: #52645a !important; }
html body.stas-contact-page .module-card { border: 1px solid var(--stas-ui-line) !important; border-radius: 10px !important; background: #f7faf7 !important; color: #243b2d !important; }
html body.stas-contact-page .form-control { background: #fff !important; color: #17271f !important; -webkit-text-fill-color: #17271f !important; border-color: #aebdb2 !important; }
/* Receipt carousel is paused while hovered or keyboard-focused. */
html body.stas-global-weather.stas-weather-site .fx-zslip { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 12px !important; }
html body.stas-global-weather.stas-weather-site .fx-receipt-example[hidden] { display: none !important; }
html body.stas-global-weather.stas-weather-site .fx-receipt-example { width: 310px !important; max-width: 100% !important; transform: rotate(1deg) !important; }
html body.stas-global-weather.stas-weather-site .fx-receipt-world { display: block !important; margin-bottom: 8px !important; color: #315b41 !important; font: 700 .7rem/1.4 system-ui, sans-serif !important; letter-spacing: .08em !important; text-transform: uppercase !important; }
html body.stas-global-weather.stas-weather-site .fx-receipt-example h3 { color: #173e2a !important; -webkit-text-fill-color: #173e2a !important; font: 700 .85rem/1.4 system-ui, sans-serif !important; }
html body.stas-global-weather.stas-weather-site .fx-receipt-example dt { color: #3b414c !important; }
html body.stas-global-weather.stas-weather-site .fx-receipt-example dd { color: #17271f !important; }
html body.stas-global-weather.stas-weather-site .fx-receipt-controls { display: grid !important; width: min(100%, 340px) !important; gap: 8px !important; justify-items: center !important; }
html body.stas-global-weather.stas-weather-site .fx-receipt-controls > span { color: #52645a !important; font-size: .76rem !important; font-weight: 650 !important; }
html body.stas-global-weather.stas-weather-site .fx-receipt-buttons { display: flex !important; flex-wrap: wrap !important; justify-content: center !important; gap: 7px !important; }
html body.stas-global-weather.stas-weather-site .fx-receipt-buttons button { min-height: 36px !important; padding: 6px 10px !important; border: 1px solid #b9cabe !important; border-radius: 8px !important; background: #fff !important; color: #244a33 !important; font-family: inherit !important; font-size: .78rem !important; font-weight: 650 !important; line-height: 1.3 !important; cursor: pointer !important; }
html body.stas-global-weather.stas-weather-site .fx-receipt-buttons button:hover { border-color: #72a481 !important; background: #eef5ef !important; }

html body.stas-weather-site {
  min-height: 100vh !important;
  height: auto !important;
  margin: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  background: var(--stas-ui-canvas) !important;
  color: var(--stas-ui-ink) !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
}
html body.stas-weather-site .stas-page-scroll {
  position: relative !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
  background: var(--stas-ui-canvas) !important;
}
html body.stas-weather-site > .stas-skip-link:not(:focus-visible) {
  position: fixed !important;
  top: 8px !important;
  left: 12px !important;
  transform: translateY(-150%) !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
html body.stas-weather-site > .stas-skip-link:focus-visible {
  position: fixed !important;
  z-index: 20000 !important;
  top: 8px !important;
  left: 12px !important;
  padding: 10px 14px !important;
  border: 2px solid var(--stas-ui-lime) !important;
  border-radius: 9px !important;
  background: var(--stas-ui-green-deep) !important;
  color: #fff !important;
  opacity: 1 !important;
  transform: none !important;
}

/* Public website header. */
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header {
  position: sticky !important;
  top: 0 !important;
  z-index: 1200 !important;
  display: block !important;
  width: 100% !important;
  min-height: 72px !important;
  padding: 0 !important;
  background: linear-gradient(110deg, #0c2e22, #145539 58%, #1d6844) !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,.14) !important;
  box-shadow: 0 6px 20px rgba(16, 54, 36, .16) !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__inner {
  display: flex !important;
  width: min(100%, 1280px) !important;
  max-width: 1280px !important;
  min-height: 72px !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  gap: 22px !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__brand,
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__brand :where(span, strong) {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  opacity: 1 !important;
  font-size: 1rem !important;
  font-weight: 750 !important;
  text-decoration: none !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__brand .stas-brand-mark {
  display: inline-grid !important;
  place-items: center !important;
  width: 38px !important;
  height: 38px !important;
  margin-right: 10px !important;
  border-radius: 11px !important;
  background: var(--stas-ui-lime) !important;
  color: var(--stas-ui-green-deep) !important;
  -webkit-text-fill-color: var(--stas-ui-green-deep) !important;
  box-shadow: none !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__collapse {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  background: transparent !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__nav {
  gap: 4px !important;
  align-items: center !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__nav .nav-link {
  display: inline-flex !important;
  align-items: center !important;
  min-height: 44px !important;
  padding: 9px 12px !important;
  border-radius: 9px !important;
  color: #f7fbf7 !important;
  -webkit-text-fill-color: #f7fbf7 !important;
  opacity: 1 !important;
  font-size: .9rem !important;
  font-weight: 650 !important;
  text-decoration: none !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__nav .nav-link:is(:hover, :focus-visible) {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: rgba(255,255,255,.13) !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__actions {
  display: flex !important;
  align-items: center !important;
  flex: 0 0 auto !important;
  gap: 9px !important;
  margin-left: auto !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__actions .btn,
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__actions button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 44px !important;
  padding: 8px 15px !important;
  border-radius: 10px !important;
  opacity: 1 !important;
  font-size: .88rem !important;
  font-weight: 700 !important;
  visibility: visible !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__actions .btn-outline-light {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  border: 1px solid rgba(255,255,255,.62) !important;
  background: rgba(255,255,255,.06) !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__actions .btn-primary {
  color: #173c29 !important;
  -webkit-text-fill-color: #173c29 !important;
  border: 1px solid var(--stas-ui-lime) !important;
  background: var(--stas-ui-lime) !important;
  box-shadow: none !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header .navbar-toggler {
  min-width: 44px !important;
  min-height: 44px !important;
  border: 1px solid rgba(255,255,255,.55) !important;
}
html body.stas-global-weather.stas-weather-site .stas-signin .dropdown-menu {
  z-index: 1300 !important;
  min-width: 17rem !important;
  border: 1px solid var(--stas-ui-line) !important;
  border-radius: 12px !important;
  background: #fff !important;
  color: var(--stas-ui-ink) !important;
  box-shadow: var(--stas-ui-shadow) !important;
}
html body.stas-global-weather.stas-weather-site .stas-signin .dropdown-item,
html body.stas-global-weather.stas-weather-site .stas-signin .dropdown-item :where(span, strong) {
  color: var(--stas-ui-ink) !important;
  -webkit-text-fill-color: var(--stas-ui-ink) !important;
  white-space: normal !important;
}

/* Homepage, price cards and readable page copy. */
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh {
  --sh-bg: var(--stas-ui-canvas) !important;
  --sh-panel: #fff !important;
  --sh-rule: var(--stas-ui-line) !important;
  --sh-text: var(--stas-ui-ink) !important;
  --sh-muted: var(--stas-ui-muted) !important;
  --sh-accent: var(--stas-ui-green) !important;
  color: var(--stas-ui-ink) !important;
  background: var(--stas-ui-canvas) !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-wrap {
  width: min(100%, 1180px) !important;
  max-width: 1180px !important;
  margin: 0 auto !important;
  padding-inline: 24px !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-hero {
  padding: clamp(44px, 5.5vw, 72px) 0 !important;
  background: linear-gradient(135deg, #edf5ee 0%, #f8faf7 56%, #eaf2eb 100%) !important;
  color: var(--stas-ui-ink) !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-hero__grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(380px, .95fr) !important;
  align-items: center !important;
  gap: clamp(28px, 4.5vw, 56px) !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-hero h1 {
  max-width: 18ch !important;
  margin: 0 0 18px !important;
  color: #143c2b !important;
  -webkit-text-fill-color: #143c2b !important;
  font-size: clamp(2.3rem, 4vw, 3.55rem) !important;
  font-weight: 760 !important;
  line-height: 1.04 !important;
  letter-spacing: -.043em !important;
  text-wrap: balance !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-hero p.sh-lede {
  max-width: 58ch !important;
  color: #53645a !important;
  -webkit-text-fill-color: #53645a !important;
  font-size: clamp(1rem, 1.3vw, 1.13rem) !important;
  line-height: 1.7 !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-kicker {
  display: inline-flex !important;
  min-height: 32px !important;
  align-items: center !important;
  padding: 6px 11px !important;
  border: 1px solid #c9ddcd !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #315b41 !important;
  -webkit-text-fill-color: #315b41 !important;
  font-size: .76rem !important;
  font-weight: 750 !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-height: 46px !important;
  padding: 0 18px !important;
  border-radius: 10px !important;
  font-size: .92rem !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-btn--primary {
  background: var(--stas-ui-green) !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-btn--quiet {
  border: 1px solid #91ad99 !important;
  background: #fff !important;
  color: #18452f !important;
  -webkit-text-fill-color: #18452f !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-proof-list {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 6px 18px !important;
  margin-top: 18px !important;
  color: #43564a !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-product-stage {
  display: block !important;
  max-width: 620px !important;
  min-width: 0 !important;
  margin-inline: auto !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-console {
  padding: 18px !important;
  border: 1px solid #c9d9cb !important;
  border-radius: 18px !important;
  background: #fff !important;
  color: var(--stas-ui-ink) !important;
  box-shadow: 0 16px 38px rgba(22, 57, 37, .12) !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-console__grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-console-card {
  display: flex !important;
  min-height: 124px !important;
  flex-direction: column !important;
  gap: 7px !important;
  padding: 14px !important;
  border: 1px solid var(--stas-ui-line) !important;
  border-radius: 12px !important;
  background: #f8faf7 !important;
  color: var(--stas-ui-ink) !important;
  line-height: 1.45 !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-console-card strong { color: #173e2a !important; }
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-console-card__icon {
  display: inline-grid !important;
  width: 34px !important;
  height: 32px !important;
  place-items: center !important;
  border-radius: 8px !important;
  background: #e5f1e7 !important;
  color: var(--stas-ui-green) !important;
  font-size: .72rem !important;
  font-weight: 800 !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-console__ledger {
  display: flex !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin-top: 14px !important;
  padding-top: 12px !important;
  border-top: 1px solid var(--stas-ui-line) !important;
  color: var(--stas-ui-muted) !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-trust { background: #e8f0e9 !important; }
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-sec,
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-sec--white {
  background: #fff !important;
  color: var(--stas-ui-ink) !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-sec h2 { color: #173e2a !important; }

/* Make the lower Website sections readable even when older skins set text-fill directly. */
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh :is(.sh-section-kicker, .sh-sec h2, .fx-head h2, .fx-group h3, .fx-sub) {
  color: #173e2a !important;
  -webkit-text-fill-color: #173e2a !important;
  text-shadow: none !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh :is(.sh-intro, .sh-lede, .fx-list span, .fx-next p) {
  color: #52645a !important;
  -webkit-text-fill-color: #52645a !important;
  text-shadow: none !important;
  font-size: 1rem !important;
  line-height: 1.7 !important;
}

/* Home platform areas: readable cards with a small, consistent hover response. */
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-priority-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-priority-card,
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-every li {
  position: relative !important;
  display: flex !important;
  min-width: 0 !important;
  min-height: 150px !important;
  flex-direction: column !important;
  padding: 22px !important;
  overflow: hidden !important;
  border: 1px solid #d7e1d8 !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: #17271f !important;
  -webkit-text-fill-color: initial !important;
  box-shadow: 0 5px 16px rgba(24,50,34,.055) !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease, background-color .18s ease !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-priority-card { min-height: 196px !important; }
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-every li { min-height: 148px !important; }
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-priority-card:hover,
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-priority-card:focus-within,
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-every li:hover {
  transform: translateY(-4px) !important;
  border-color: #72a481 !important;
  background: #fbfefb !important;
  box-shadow: 0 14px 28px rgba(24,75,45,.13) !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-priority-card h3,
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-every strong {
  display: block !important;
  margin: 0 0 9px !important;
  color: #173e2a !important;
  -webkit-text-fill-color: #173e2a !important;
  font-size: 1.05rem !important;
  font-weight: 760 !important;
  line-height: 1.35 !important;
  text-shadow: none !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-priority-card p,
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-every span {
  margin: 0 !important;
  color: #52645a !important;
  -webkit-text-fill-color: #52645a !important;
  font-size: .94rem !important;
  line-height: 1.62 !important;
  text-shadow: none !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-priority-card__number {
  display: grid !important;
  width: 36px !important;
  height: 36px !important;
  margin: 0 0 22px !important;
  place-items: center !important;
  border-radius: 10px !important;
  background: #e8f2ea !important;
  color: #176b45 !important;
  -webkit-text-fill-color: #176b45 !important;
  font-size: .78rem !important;
  font-weight: 800 !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-console-card,
html body.stas-global-weather.stas-weather-site .sh-plan-card {
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-console-card:hover,
html body.stas-global-weather.stas-weather-site .sh-plan-card:hover {
  transform: translateY(-4px) !important;
  border-color: #72a481 !important;
  box-shadow: 0 15px 30px rgba(24,75,45,.14) !important;
}

/* Features detail page: make every group and every text level readable. */
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .fx :is(h1, h2, h3, strong) {
  color: #173e2a !important;
  -webkit-text-fill-color: #173e2a !important;
  text-shadow: none !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .fx .fx-groups {
  border-top: 0 !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .fx-group {
  padding: 20px !important;
  border: 1px solid #d7e1d8 !important;
  border-radius: 14px !important;
  background: #fff !important;
  box-shadow: 0 5px 16px rgba(24,50,34,.055) !important;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .fx-group:hover {
  transform: translateY(-3px) !important;
  border-color: #72a481 !important;
  box-shadow: 0 13px 25px rgba(24,75,45,.12) !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .fx-list li {
  margin-top: 5px !important;
  padding: 10px !important;
  border: 1px solid transparent !important;
  border-radius: 9px !important;
  transition: background-color .16s ease, border-color .16s ease !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .fx-list li:hover {
  border-color: #d7e8da !important;
  background: #f2f8f3 !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .fx-list strong {
  margin-bottom: 4px !important;
  color: #244b33 !important;
  -webkit-text-fill-color: #244b33 !important;
}
html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .fx-list span {
  color: #52645a !important;
  -webkit-text-fill-color: #52645a !important;
}

/* Compact plan cards replace the cramped two-column price table. */
html body.stas-global-weather.stas-weather-site .sh-plans-shell { overflow: visible !important; }
html body.stas-global-weather.stas-weather-site .sh-plans-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  align-items: stretch !important;
}
html body.stas-global-weather.stas-weather-site .sh-plan-card {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
  padding: 20px !important;
  border: 1px solid var(--stas-ui-line) !important;
  border-radius: 16px !important;
  background: #fff !important;
  color: var(--stas-ui-ink) !important;
  box-shadow: var(--stas-ui-shadow) !important;
}
html body.stas-global-weather.stas-weather-site .sh-plan-card__heading { display: flex; justify-content: space-between; gap: 10px; align-items: flex-start; }
html body.stas-global-weather.stas-weather-site .sh-plan-card h3 { margin: 0; color: #173e2a !important; font-size: 1.1rem !important; font-weight: 750 !important; }
html body.stas-global-weather.stas-weather-site .sh-plan-card__cycle {
  flex: 0 0 auto;
  padding: 4px 8px;
  border-radius: 999px;
  background: #eaf3eb;
  color: #315b41;
  font-size: .68rem;
  font-weight: 700;
}
html body.stas-global-weather.stas-weather-site .sh-plan-card__erp { min-height: 2.5em; margin: 8px 0 16px; color: var(--stas-ui-muted) !important; font-size: .82rem; }
html body.stas-global-weather.stas-weather-site .sh-plan-card__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 5px 8px; color: #173e2a; }
html body.stas-global-weather.stas-weather-site .sh-plan-card__price strong { font-size: clamp(1.35rem, 2vw, 1.8rem); font-weight: 800; font-variant-numeric: tabular-nums; }
html body.stas-global-weather.stas-weather-site .sh-plan-card__price span { color: var(--stas-ui-muted); font-size: .84rem; }
html body.stas-global-weather.stas-weather-site .sh-plan-card__monthly { margin: 5px 0 0; color: var(--stas-ui-muted) !important; font-size: .78rem; }
html body.stas-global-weather.stas-weather-site .sh-plan-card__details { display: grid; gap: 8px; margin: 18px 0 20px; padding: 14px 0 0 18px; border-top: 1px solid #edf1ed; color: #46584b; font-size: .83rem; line-height: 1.45; }
html body.stas-global-weather.stas-weather-site .sh-plan-card__link { display: flex; justify-content: space-between; align-items: center; margin-top: auto; min-height: 42px; padding: 8px 11px; border-radius: 9px; background: var(--stas-ui-green); color: #fff !important; font-weight: 700; text-decoration: none !important; }

/* The public footer is intentionally informational: no duplicate nav buttons. */
html body.stas-global-weather.stas-weather-site footer.stas-site-footer {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  width: 100% !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 24px 0 !important;
  border: 0 !important;
  border-top: 1px solid rgba(255,255,255,.1) !important;
  background: var(--stas-ui-green-deep) !important;
  color: #e5eee7 !important;
  box-shadow: none !important;
}
html body.stas-global-weather.stas-weather-site .stas-site-footer__inner {
  display: flex !important;
  width: min(100%, 1180px) !important;
  margin: 0 auto !important;
  padding: 0 24px !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
}
html body.stas-global-weather.stas-weather-site .stas-site-footer__brand { color: #fff !important; font-size: .98rem; font-weight: 750; }
html body.stas-global-weather.stas-weather-site .stas-site-footer__note,
html body.stas-global-weather.stas-weather-site .stas-site-footer__copyright { color: #c1d0c4 !important; font-size: .8rem !important; line-height: 1.5 !important; }

/* Customer portal surfaces use the same legible shell and controls. */
html body.stas-global-weather.stas-weather-site.stas-portal-workspace { background: var(--stas-ui-canvas) !important; color: var(--stas-ui-ink) !important; }
html body.stas-global-weather.stas-weather-site.stas-portal-workspace main :where(.card, .module-card) { border: 1px solid var(--stas-ui-line) !important; background: #fff !important; color: var(--stas-ui-ink) !important; box-shadow: var(--stas-ui-shadow) !important; }
html body.stas-global-weather.stas-weather-site.stas-portal-workspace main :where(h1, h2, h3) { color: #173e2a !important; }

/* Shared control and table language. */
html body.stas-global-weather :where(a, button, input, select, textarea, [role="button"], [tabindex]):focus-visible {
  outline: 3px solid var(--stas-ui-focus) !important;
  outline-offset: 2px !important;
}
html body.stas-global-weather :where(.form-control, .form-select, textarea) {
  min-height: 42px;
  border: 1px solid #aebdb2 !important;
  border-radius: 9px !important;
  background: #fff !important;
  color: var(--stas-ui-ink) !important;
  box-shadow: none !important;
}
html body.stas-global-weather :where(.form-control, .form-select, textarea):focus {
  border-color: var(--stas-ui-green) !important;
  box-shadow: 0 0 0 3px rgba(23,107,69,.15) !important;
}
html body.stas-global-weather :where(.btn, button) { font-family: inherit; }
html body.stas-global-weather :where(.btn-primary, .btn-success) {
  border-color: var(--stas-ui-green) !important;
  background: var(--stas-ui-green) !important;
  color: #fff !important;
  font-weight: 700 !important;
}
html body.stas-global-weather :where(.btn-outline-light) {
  border-color: #92aa99 !important;
  background: #fff !important;
  color: #244a33 !important;
}
html body.stas-global-weather .table {
  --bs-table-color: var(--stas-ui-ink);
  --bs-table-striped-color: var(--stas-ui-ink);
  --bs-table-hover-color: var(--stas-ui-ink);
  --bs-table-striped-bg: #f6f9f6;
  --bs-table-hover-bg: #eaf3eb;
  border-color: var(--stas-ui-line) !important;
}
html body.stas-global-weather .table > :not(caption) > * > * { border-color: var(--stas-ui-line) !important; }
html body.stas-global-weather .table thead th { background: #edf3ee !important; color: #365443 !important; font-weight: 700 !important; }

/* Sales ERP shell and sidebar. */
html body.stas-weather-erp:not(.auth-page) { min-height: 100vh !important; background: var(--stas-ui-canvas) !important; color: var(--stas-ui-ink) !important; }
html body.stas-weather-erp:not(.auth-page) .erp-shell { min-height: 100vh !important; background: var(--stas-ui-canvas) !important; }
html body.stas-weather-erp:not(.auth-page) .erp-sidebar {
  flex: 0 0 252px !important;
  width: 252px !important;
  background: linear-gradient(180deg, #0c2e22, #124832) !important;
  border-right: 1px solid #0a281d !important;
  box-shadow: 4px 0 18px rgba(14, 47, 32, .08) !important;
  backdrop-filter: none !important;
}
html body.stas-weather-erp:not(.auth-page) .erp-sidebar .brand { border-color: rgba(255,255,255,.12) !important; }
html body.stas-weather-erp:not(.auth-page) .erp-sidebar .brand :where(a, span, div) { color: #f7fbf7 !important; }
html body.stas-weather-erp:not(.auth-page) .erp-sidebar .brand span.logo { background: var(--stas-ui-lime) !important; color: var(--stas-ui-green-deep) !important; }
html body.stas-weather-erp:not(.auth-page) .erp-sidebar a.nav-link {
  min-height: 42px !important;
  margin: 2px 8px !important;
  padding: 9px 12px !important;
  border: 1px solid transparent !important;
  border-radius: 9px !important;
  color: #dfece2 !important;
  font-size: .88rem !important;
  font-weight: 600 !important;
}
html body.stas-weather-erp:not(.auth-page) .erp-sidebar a.nav-link:is(:hover, .active) {
  border-color: rgba(216,242,170,.22) !important;
  background: rgba(216,242,170,.12) !important;
  color: #fff !important;
}
html body.stas-weather-erp:not(.auth-page) .erp-sidebar a.nav-link.active { box-shadow: inset 3px 0 0 var(--stas-ui-lime) !important; font-weight: 750 !important; }
html body.stas-weather-erp:not(.auth-page) .erp-main { min-width: 0 !important; background: var(--stas-ui-canvas) !important; }
html body.stas-weather-erp:not(.auth-page) .erp-topbar {
  min-height: 64px !important;
  height: auto !important;
  padding: 8px 18px !important;
  border-bottom: 1px solid var(--stas-ui-line) !important;
  background: #fff !important;
  color: var(--stas-ui-ink) !important;
  box-shadow: 0 2px 8px rgba(20,55,35,.04) !important;
  backdrop-filter: none !important;
}
html body.stas-weather-erp:not(.auth-page) .erp-topbar :where(.erp-topbar-label, .erp-user-name, .erp-page-h1) { color: var(--stas-ui-ink) !important; }
html body.stas-weather-erp:not(.auth-page) .erp-topbar .btn-outline-light { border-color: #9aafa0 !important; background: #fff !important; color: #244a33 !important; }
html body.stas-weather-erp:not(.auth-page) .erp-content {
  min-width: 0 !important;
  width: 100% !important;
  padding: clamp(14px, 2vw, 26px) !important;
  background: var(--stas-ui-canvas) !important;
  color: var(--stas-ui-ink) !important;
}
html body.stas-weather-erp:not(.auth-page) .erp-content :where(h1, h2, h3, h4, h5, h6) { color: #183d2a !important; text-shadow: none !important; }
html body.stas-weather-erp:not(.auth-page) .erp-content :where(p, li, label, .text-secondary, .text-muted, .small) { color: #53645a; text-shadow: none !important; }
html body.stas-weather-erp:not(.auth-page) :where(.erp-card, .erp-content .card, .erp-content .modal-content, .erp-content .offcanvas) {
  border: 1px solid var(--stas-ui-line) !important;
  border-radius: var(--stas-ui-radius) !important;
  background: #fff !important;
  color: var(--stas-ui-ink) !important;
  box-shadow: var(--stas-ui-shadow) !important;
  backdrop-filter: none !important;
}
html body.stas-weather-erp:not(.auth-page) .erp-content .card :where(*:not(input):not(select):not(textarea):not(button):not(.btn):not(a.btn)) { color: inherit; text-shadow: none !important; }
html body.stas-weather-erp:not(.auth-page) .erp-content .btn-outline-light { border-color: #93aa99 !important; background: #fff !important; color: #244a33 !important; }

/* POS screen: fast scan, legible cart, persistent order summary, no behavior changes. */
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 { padding-bottom: max(24px, env(safe-area-inset-bottom, 0px)) !important; }
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-reference-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr) !important;
  align-items: start !important;
  gap: 16px !important;
  margin: 0 !important;
}
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-reference-layout > [class*="col-"] { width: auto !important; max-width: none !important; padding: 0 !important; }
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 :where(.pos-reference-cart-card, .pos-reference-catalog, .pos-reference-order-card) {
  border: 1px solid var(--stas-ui-line) !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: var(--stas-ui-ink) !important;
  box-shadow: var(--stas-ui-shadow) !important;
}
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-reference-order-card { position: sticky !important; top: 78px !important; }
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 #posScan {
  min-height: 54px !important;
  border: 2px solid #83a68d !important;
  border-radius: 11px !important;
  background: #fff !important;
  color: var(--stas-ui-ink) !important;
  font-size: 1rem !important;
  font-weight: 600 !important;
}
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 #posLines { margin: 12px 0 !important; }
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 #posLines th { white-space: nowrap; }
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-category-rail { display: flex !important; gap: 7px !important; overflow-x: auto !important; padding: 4px 0 9px !important; }
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-category-chip {
  flex: 0 0 auto !important;
  min-height: 40px !important;
  padding: 7px 12px !important;
  border: 1px solid #b9cabe !important;
  border-radius: 999px !important;
  background: #fff !important;
  color: #315643 !important;
  font-weight: 650 !important;
}
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-category-chip.is-active { background: #e4f1e6 !important; border-color: #68a17b !important; }
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-tile {
  display: flex !important;
  min-height: 110px !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 8px !important;
  padding: 13px !important;
  border: 1px solid #d5e1d7 !important;
  border-radius: 12px !important;
  background: #f9fbf9 !important;
  color: var(--stas-ui-ink) !important;
  text-align: left !important;
}
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-tile:hover,
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-tile:focus-visible { border-color: #6ca17d !important; background: #edf5ee !important; }
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-tile :where(.p, .n, .pos-tile-meta, .pos-sold-signal) { color: var(--stas-ui-ink) !important; }
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-stock-pill { background: #e4f1e6 !important; color: #275238 !important; border-radius: 999px !important; }
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-stock-pill.is-low { background: #fff1d6 !important; color: #744b00 !important; }
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 :where(#posSub, #posTax) { color: #44564a !important; }
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 :where(#posTotal, #posChange) { color: #143c2b !important; font-size: 1.55rem !important; font-weight: 800 !important; font-variant-numeric: tabular-nums; }
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 #posPay {
  min-height: 56px !important;
  border: 1px solid var(--stas-ui-green) !important;
  border-radius: 11px !important;
  background: var(--stas-ui-green) !important;
  color: #fff !important;
  font-size: 1.02rem !important;
  font-weight: 750 !important;
}
html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 #posHold { border-color: #93aa99 !important; background: #fff !important; color: #244a33 !important; }

/* SuperAdmin workspace. */
html body.stas-weather-superadmin:not(.auth-page) { min-height: 100vh !important; background: var(--stas-ui-canvas) !important; color: var(--stas-ui-ink) !important; }
html body.stas-weather-superadmin:not(.auth-page) .sa-shell { min-height: 100vh !important; background: var(--stas-ui-canvas) !important; }
html body.stas-weather-superadmin:not(.auth-page) .sa-sidebar {
  background: linear-gradient(180deg, #0c2e22, #124832) !important;
  border-right: 1px solid #0a281d !important;
  box-shadow: 4px 0 18px rgba(14,47,32,.08) !important;
}
html body.stas-weather-superadmin:not(.auth-page) .sa-sidebar :where(.brand, .brand-link, .brand-copy, .nav-group-label, .nav-link, .nav-label) { color: #e8f1e9 !important; text-shadow: none !important; }
html body.stas-weather-superadmin:not(.auth-page) .sa-sidebar .nav-link {
  min-height: 42px !important;
  margin: 2px 8px !important;
  padding: 9px 12px !important;
  border: 1px solid transparent !important;
  border-radius: 9px !important;
  font-size: .88rem !important;
  font-weight: 600 !important;
}
html body.stas-weather-superadmin:not(.auth-page) .sa-sidebar .nav-link:is(:hover, .active) { background: rgba(216,242,170,.12) !important; border-color: rgba(216,242,170,.2) !important; color: #fff !important; }
html body.stas-weather-superadmin:not(.auth-page) .sa-sidebar .nav-link.active { box-shadow: inset 3px 0 0 var(--stas-ui-lime) !important; font-weight: 750 !important; }
html body.stas-weather-superadmin:not(.auth-page) .sa-main { min-width: 0 !important; background: var(--stas-ui-canvas) !important; }
html body.stas-weather-superadmin:not(.auth-page) .sa-topbar {
  min-height: 64px !important;
  border-bottom: 1px solid var(--stas-ui-line) !important;
  background: #fff !important;
  color: var(--stas-ui-ink) !important;
  box-shadow: 0 2px 8px rgba(20,55,35,.04) !important;
  backdrop-filter: none !important;
}
html body.stas-weather-superadmin:not(.auth-page) .sa-topbar :where(.sa-topbar-title, .sa-build-badge, .small, strong) { color: var(--stas-ui-ink) !important; text-shadow: none !important; }
html body.stas-weather-superadmin:not(.auth-page) .sa-content {
  min-width: 0 !important;
  padding: clamp(14px, 2vw, 26px) !important;
  overflow-x: hidden !important;
  background: var(--stas-ui-canvas) !important;
  color: var(--stas-ui-ink) !important;
}
html body.stas-weather-superadmin:not(.auth-page) .sa-content :where(h1, h2, h3, h4, h5, h6) { color: #183d2a !important; text-shadow: none !important; }
html body.stas-weather-superadmin:not(.auth-page) .sa-content :where(p, li, label, .small, .form-text, .text-secondary, .text-muted) { color: #53645a !important; text-shadow: none !important; }
html body.stas-weather-superadmin:not(.auth-page) :where(.sa-page-shell, .sa-content .card, .sa-panel, .sa-analytics-card, .stat-card, .metric-card, .dashboard-card, .panel) {
  border: 1px solid var(--stas-ui-line) !important;
  border-radius: var(--stas-ui-radius) !important;
  background: #fff !important;
  color: var(--stas-ui-ink) !important;
  box-shadow: var(--stas-ui-shadow) !important;
  backdrop-filter: none !important;
}
html body.stas-weather-superadmin:not(.auth-page) .portal-footer { background: #fff !important; border-top: 1px solid var(--stas-ui-line) !important; color: var(--stas-ui-muted) !important; }

/* Responsive navigation, POS and compact tables. */
@media (max-width: 1100px) {
  html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__inner { gap: 12px !important; padding-inline: 18px !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__nav .nav-link { padding-inline: 9px !important; }
  html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-reference-layout { grid-template-columns: minmax(0, 1.15fr) minmax(300px, .85fr) !important; }
  html body.stas-global-weather.stas-weather-site .sh-plans-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  html body.stas-pricing-page .pricing-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-priority-grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .fx-groups { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
@media (max-width: 991.98px) {
  html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__inner { min-height: 62px !important; flex-wrap: wrap !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__collapse {
    flex-basis: 100% !important;
    width: 100% !important;
    margin-top: 6px !important;
    padding: 10px 0 14px !important;
    border-top: 1px solid rgba(255,255,255,.15) !important;
    background: #124832 !important;
  }
  html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__nav { align-items: stretch !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__nav .nav-link { width: 100% !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__actions { margin: 10px 0 0 !important; flex-wrap: wrap !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-hero__grid { grid-template-columns: minmax(0, 1fr) !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-product-stage { max-width: 720px !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-priority-card { min-height: 178px !important; }
  html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-reference-layout { grid-template-columns: minmax(0, 1fr) !important; }
  html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-reference-order-card { position: static !important; }
  html body.stas-weather-erp:not(.auth-page) .erp-sidebar { flex-basis: 250px !important; width: 250px !important; }
}
@media (max-width: 650px) {
  html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__inner { padding-inline: 14px !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__brand { font-size: .92rem !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page) .stas-site-header__actions .btn { min-height: 42px !important; padding-inline: 11px !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-wrap { padding-inline: 16px !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-hero { padding: 38px 0 !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-hero h1 { font-size: clamp(2rem, 9vw, 2.8rem) !important; line-height: 1.08 !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-console__grid { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-priority-grid { grid-template-columns: minmax(0, 1fr) !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .sh-every { grid-template-columns: minmax(0, 1fr) !important; gap: 12px !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page):not(.stas-portal-workspace) .fx-groups { grid-template-columns: minmax(0, 1fr) !important; }
  html body.stas-global-weather.stas-weather-site:not(.auth-page) .sh-proof-list { grid-template-columns: minmax(0, 1fr) !important; }
  html body.stas-global-weather.stas-weather-site .sh-plans-grid { grid-template-columns: minmax(0, 1fr) !important; }
  html body.stas-pricing-page .pricing-grid { grid-template-columns: minmax(0, 1fr) !important; }
  html body.stas-global-weather.stas-weather-site .sh-plan-card { padding: 17px !important; }
  html body.stas-global-weather.stas-weather-site .stas-site-footer__inner { align-items: flex-start !important; flex-direction: column !important; padding-inline: 18px !important; }
  html body.stas-global-weather.stas-weather-site .fx-receipt-example { transform: none !important; width: 100% !important; }
  html body.stas-weather-erp:not(.auth-page) .erp-content,
  html body.stas-weather-superadmin:not(.auth-page) .sa-content { padding: 12px !important; }
  html body.stas-weather-erp.erp-pos-workspace .pos-reference-v673 .pos-reference-layout { gap: 12px !important; }
}
@media (prefers-reduced-motion: reduce) {
  html body.stas-global-weather :where(*, *::before, *::after) { scroll-behavior: auto !important; transition-duration: .001ms !important; }
}

/* v682: keep native rails hidden and draw the temporary thumb as an overlay.
   The overlay does not consume layout width, so revealing it cannot move content. */
html, body, .stas-page-scroll, .erp-content, .sa-content, .erp-sidebar,
.sa-sidebar, .sidebar-scrollable, .sa-sidebar-nav {
  scrollbar-width: none !important;
  scrollbar-color: transparent transparent !important;
  scrollbar-gutter: auto !important;
}
html::-webkit-scrollbar, body::-webkit-scrollbar, .stas-page-scroll::-webkit-scrollbar,
.erp-content::-webkit-scrollbar, .sa-content::-webkit-scrollbar, .erp-sidebar::-webkit-scrollbar,
.sa-sidebar::-webkit-scrollbar, .sidebar-scrollable::-webkit-scrollbar, .sa-sidebar-nav::-webkit-scrollbar {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
}
.stas-overlay-scrollbar {
  position: fixed !important;
  z-index: 2147483000 !important;
  box-sizing: border-box !important;
  width: 14px !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  touch-action: none !important;
  transition: opacity .14s ease, visibility 0s linear .14s !important;
}
.stas-overlay-scrollbar.is-visible {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transition-delay: 0s !important;
}
.stas-overlay-scrollbar__track {
  position: absolute !important;
  inset: 0 !important;
  background: transparent !important;
  border: 0 !important;
}
.stas-overlay-scrollbar__thumb {
  position: absolute !important;
  top: 0;
  left: 4px !important;
  right: 4px !important;
  min-height: 36px !important;
  border: 0 !important;
  border-radius: 999px !important;
  background: rgba(23, 107, 69, .66) !important;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .72) !important;
  cursor: grab !important;
}
.stas-overlay-scrollbar__thumb:hover,
.stas-overlay-scrollbar.is-dragging .stas-overlay-scrollbar__thumb {
  background: #176b45 !important;
}
.stas-overlay-scrollbar.is-dragging .stas-overlay-scrollbar__thumb { cursor: grabbing !important; }
.stas-overlay-scrollbar:focus-visible { outline: 2px solid #bd7d10 !important; outline-offset: -2px !important; }
@media (prefers-reduced-motion: reduce) {
  .stas-overlay-scrollbar { transition: none !important; }
}
@media print {
  .stas-overlay-scrollbar { display: none !important; }
}

/* Keep the overlay inside the content area when a site header or footer is visible. */
html body.stas-global-weather.stas-weather-site > .stas-skip-link,
html body.stas-global-weather.stas-weather-site > .stas-skip-link:focus,
html body.stas-global-weather.stas-weather-site > .stas-skip-link:focus-visible {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 1px !important;
  height: 1px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transform: none !important;
  box-shadow: none !important;
}

/* Support and Contact use the viewport as their frame; only their content can scroll. */
html body.stas-global-weather.stas-weather-site:is(.stas-support-page, .stas-contact-page) {
  display: flex !important;
  flex-direction: column !important;
  height: 100vh !important;
  height: 100dvh !important;
  min-height: 0 !important;
  overflow: hidden !important;
}
html body.stas-global-weather.stas-weather-site:is(.stas-support-page, .stas-contact-page) > .stas-site-header {
  flex: 0 0 auto !important;
}
html body.stas-global-weather.stas-weather-site:is(.stas-support-page, .stas-contact-page) > .stas-page-scroll {
  flex: 1 1 auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
}
html body.stas-global-weather.stas-weather-site:is(.stas-support-page, .stas-contact-page) > .stas-site-footer {
  flex: 0 0 auto !important;
  padding: 10px 0 !important;
}
html body.stas-global-weather.stas-weather-site:is(.stas-support-page, .stas-contact-page) .stas-site-footer__inner {
  min-height: 40px !important;
}

/* Support fits one desktop viewport while its FAQ stays scrollable if expanded. */
html body.stas-support-page .stas-page-scroll > .stas-support-layout {
  width: 100% !important;
  padding: clamp(12px, 2.2vh, 20px) 0 !important;
}
html body.stas-support-page .stas-support-layout > .container { max-width: 1180px !important; }
html body.stas-support-page .stas-support-layout h1 { margin-bottom: 7px !important; font-size: clamp(1.5rem, 2.2vw, 1.9rem) !important; line-height: 1.18 !important; }
html body.stas-support-page .stas-support-layout > .container > p { max-width: 76ch !important; margin-bottom: 12px !important; font-size: .94rem !important; line-height: 1.45 !important; }
html body.stas-support-page .stas-support-layout .accordion-button { min-height: 46px !important; padding: 10px 14px !important; }
html body.stas-support-page .stas-support-layout .row.g-4 { --bs-gutter-x: 1rem !important; --bs-gutter-y: 1rem !important; margin-top: 4px !important; }
html body.stas-support-page .stas-support-layout .glass.p-4 { min-height: 0 !important; padding: clamp(13px, 1.8vh, 17px) !important; }
html body.stas-support-page .stas-support-layout .glass h5 { margin-bottom: 6px !important; font-size: 1.05rem !important; }
html body.stas-support-page .stas-support-layout .glass p { margin-bottom: 9px !important; }
html body.stas-support-page .stas-support-layout .glass .btn { min-height: 38px !important; }

/* Contact keeps the complete message form and information cards in one screen on desktop. */
html body.stas-contact-page .stas-page-scroll > .stas-contact-layout {
  width: 100% !important;
  padding: clamp(8px, 1.5vh, 14px) 0 !important;
}
html body.stas-contact-page .stas-contact-layout > .container { max-width: 1100px !important; }
html body.stas-contact-page .stas-contact-layout .row.align-items-stretch {
  --bs-gutter-x: 1rem !important;
  --bs-gutter-y: .75rem !important;
}
html body.stas-contact-page .stas-contact-layout .glass.p-4 { min-height: 0 !important; padding: clamp(12px, 1.8vh, 17px) !important; }
html body.stas-contact-page .stas-contact-layout .glass h1 { margin-bottom: 8px !important; font-size: 1.65rem !important; }
html body.stas-contact-page .stas-contact-layout .glass h3 { font-size: 1.18rem !important; }
html body.stas-contact-page .stas-contact-layout .glass p { margin-bottom: 10px !important; line-height: 1.42 !important; }
html body.stas-contact-page .stas-contact-layout .d-grid.gap-3 { gap: 8px !important; }
html body.stas-contact-page .stas-contact-layout .module-card { padding: 8px 10px !important; line-height: 1.35 !important; }
html body.stas-contact-page .stas-contact-layout .module-card .small { font-size: .78rem !important; }
html body.stas-contact-page .stas-contact-layout form.row.g-3 {
  --bs-gutter-x: .75rem !important;
  --bs-gutter-y: .55rem !important;
}
html body.stas-contact-page .stas-contact-layout .form-label { margin-bottom: 3px !important; font-size: .83rem !important; }
html body.stas-contact-page .stas-contact-layout .form-control { min-height: 38px !important; padding: 7px 10px !important; }
html body.stas-contact-page .stas-contact-layout textarea.form-control {
  height: clamp(88px, 15vh, 116px) !important;
  min-height: 88px !important;
  max-height: 116px !important;
  resize: none !important;
}
html body.stas-contact-page .stas-contact-layout form .btn { min-height: 38px !important; }

/* On small screens, the middle content region remains the only scroll container. */
@media (max-width: 767.98px) {
  html body.stas-support-page .stas-support-layout,
  html body.stas-contact-page .stas-contact-layout { padding: 12px 0 !important; }
  html body.stas-contact-page .stas-contact-layout .row.align-items-stretch { --bs-gutter-y: .7rem !important; }
  html body.stas-contact-page .stas-contact-layout textarea.form-control { height: 100px !important; min-height: 100px !important; }
  html body.stas-global-weather.stas-weather-site:is(.stas-support-page, .stas-contact-page) .stas-site-footer__note { display: none !important; }
}

/* v684: website signup and sign-in share the STAS forest-green public-site identity. */
html body.auth-page.auth-website-signup,
html body.auth-page.auth-website-login {
  color: #153c2e !important;
  background: #f2f7f3 !important;
  font-family: Inter, "Segoe UI", Arial, sans-serif !important;
}
html body.auth-page.auth-website-signup .stas-site-header,
html body.auth-page.auth-website-login .stas-site-header {
  background: linear-gradient(105deg, #0c3025, #176544) !important;
  border-bottom: 1px solid rgba(255,255,255,.17) !important;
  box-shadow: 0 8px 24px rgba(12,48,37,.13) !important;
}
html body.auth-page.auth-website-signup .stas-site-header__brand,
html body.auth-page.auth-website-login .stas-site-header__brand,
html body.auth-page.auth-website-signup .stas-site-header__nav .nav-link,
html body.auth-page.auth-website-login .stas-site-header__nav .nav-link { color: #fff !important; }
html body.auth-page.auth-website-signup .stas-site-header .stas-brand-mark,
html body.auth-page.auth-website-login .stas-site-header .stas-brand-mark { background: #d8f3a8 !important; color: #12382b !important; }
html body.auth-page.auth-website-signup .stas-site-header__actions .btn-primary,
html body.auth-page.auth-website-login .stas-site-header__actions .btn-primary {
  color: #12382b !important; background: #d8f3a8 !important; border-color: #d8f3a8 !important;
}
html body.auth-page.auth-website-signup .stas-site-header__actions .btn-outline-light,
html body.auth-page.auth-website-login .stas-site-header__actions .btn-outline-light {
  color: #fff !important; background: rgba(255,255,255,.08) !important; border-color: rgba(255,255,255,.62) !important;
}
html body.auth-page.auth-website-signup .stas-site-footer,
html body.auth-page.auth-website-login .stas-site-footer {
  color: #f4fbf6 !important; background: #0c3025 !important; border-top: 1px solid #245b43 !important;
}
html body.auth-page.auth-website-signup .stas-site-footer__note,
html body.auth-page.auth-website-login .stas-site-footer__note,
html body.auth-page.auth-website-signup .stas-site-footer__copyright,
html body.auth-page.auth-website-login .stas-site-footer__copyright { color: #dcebe1 !important; }
html body.auth-page.auth-website-signup .stas-auth-page { background: transparent !important; }
html body.auth-page.auth-website-signup .stas-auth-wrap { max-width: 1160px !important; }
html body.auth-page.auth-website-signup .stas-auth-quote,
html body.auth-page.auth-website-signup .stas-auth-hero,
html body.auth-page.auth-website-signup .stas-auth-card {
  color: #153c2e !important; background: #fff !important; border: 1px solid #d5e4d9 !important;
  border-radius: 20px !important; box-shadow: 0 14px 34px rgba(24,63,45,.09) !important;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
}
html body.auth-page.auth-website-signup .stas-auth-quote { min-height: 68px !important; }
html body.auth-page.auth-website-signup .stas-auth-quote p,
html body.auth-page.auth-website-signup .stas-auth-quote .author,
html body.auth-page.auth-website-signup .stas-auth-title,
html body.auth-page.auth-website-signup .stas-auth-card h1,
html body.auth-page.auth-website-signup .stas-auth-card h2,
html body.auth-page.auth-website-signup .stas-auth-card h3,
html body.auth-page.auth-website-signup .stas-auth-copy,
html body.auth-page.auth-website-signup .stas-auth-subtitle,
html body.auth-page.auth-website-signup .stas-auth-points,
html body.auth-page.auth-website-signup .stas-auth-points li,
html body.auth-page.auth-website-signup .stas-auth-card .form-label,
html body.auth-page.auth-website-signup .stas-auth-links,
html body.auth-page.auth-website-signup .stas-auth-form-note { color: #153c2e !important; text-shadow: none !important; }
html body.auth-page.auth-website-signup .stas-auth-kicker {
  color: #14583a !important; background: #edf7ef !important; border-color: #cfe2d4 !important;
}
html body.auth-page.auth-website-signup .stas-auth-card .form-control,
html body.auth-page.auth-website-signup .stas-auth-card .form-select {
  color: #19392c !important; background-color: #fbfdfb !important; border: 1px solid #c8d9cd !important;
  box-shadow: inset 0 1px 2px rgba(22,60,43,.04) !important;
}
html body.auth-page.auth-website-signup .stas-auth-card .form-control:focus,
html body.auth-page.auth-website-signup .stas-auth-card .form-select:focus {
  border-color: #18734c !important; box-shadow: 0 0 0 .2rem rgba(24,115,76,.16) !important;
}
html body.auth-page.auth-website-signup .stas-auth-helper,
html body.auth-page.auth-website-signup .stas-auth-plan-chip { color: #214c37 !important; background: #f0f7f1 !important; border-color: #d5e4d9 !important; }
html body.auth-page.auth-website-signup .btn-auth-primary,
html body.auth-page.auth-website-signup .stas-auth-actions .btn-auth-primary {
  color: #fff !important; background: #176b45 !important; border-color: #176b45 !important;
}
html body.auth-page.auth-website-signup .btn-auth-secondary,
html body.auth-page.auth-website-signup .stas-auth-actions .btn-auth-secondary {
  color: #16583c !important; background: #fff !important; border-color: #9ebda8 !important;
}
html body.auth-page.auth-website-signup .stas-auth-inline-link { color: #176b45 !important; }

/* Sign-in is a focused, single-viewport page on desktop; only compact phone viewports may scroll. */
html body.auth-page.auth-website-login {
  display: flex !important; flex-direction: column !important; width: 100% !important;
  height: 100vh !important; height: 100dvh !important; min-height: 0 !important; overflow: hidden !important;
}
html body.auth-page.auth-website-login > .stas-site-header { flex: 0 0 auto !important; }
html body.auth-page.auth-website-login > .stas-page-scroll {
  flex: 1 1 auto !important; width: 100% !important; min-height: 0 !important; height: auto !important;
  display: flex !important; align-items: center !important; justify-content: center !important;
  padding: clamp(8px, 2vh, 18px) 14px !important; overflow: hidden !important;
  background: radial-gradient(circle at 12% 10%, #e3f2e7, transparent 38%), #f2f7f3 !important;
}
html body.auth-page.auth-website-login > .stas-site-footer { flex: 0 0 auto !important; }
html body.auth-page.auth-website-login .auth-foundation-shell--website {
  width: min(1120px, 100%) !important; min-height: 0 !important; height: auto !important;
  margin: 0 auto !important; padding: 0 !important; display: block !important;
}
html body.auth-page.auth-website-login .auth-foundation-grid--website {
  width: 100% !important; max-width: none !important; grid-template-columns: minmax(0,1fr) minmax(350px,440px) !important;
  gap: 18px !important; align-items: stretch !important;
}
html body.auth-page.auth-website-login .auth-foundation-hero { gap: 12px !important; }
html body.auth-page.auth-website-login .auth-live-quote-card,
html body.auth-page.auth-website-login .auth-hero-panel,
html body.auth-page.auth-website-login .website-auth-card {
  color: #153c2e !important; background: #fff !important; border: 1px solid #d5e4d9 !important;
  border-radius: 20px !important; box-shadow: 0 14px 34px rgba(24,63,45,.09) !important;
  backdrop-filter: none !important; -webkit-backdrop-filter: none !important;
}
html body.auth-page.auth-website-login .auth-live-quote-card { min-height: 64px !important; padding: 12px 18px !important; }
html body.auth-page.auth-website-login .auth-live-quote-text,
html body.auth-page.auth-website-login .auth-live-quote-author,
html body.auth-page.auth-website-login .auth-foundation-title,
html body.auth-page.auth-website-login .auth-foundation-copy,
html body.auth-page.auth-website-login .auth-foundation-kicker,
html body.auth-page.auth-website-login .website-auth-feature-list li,
html body.auth-page.auth-website-login .auth-foundation-form-title,
html body.auth-page.auth-website-login .auth-foundation-form-copy,
html body.auth-page.auth-website-login .auth-foundation-form .form-label,
html body.auth-page.auth-website-login .website-auth-link { color: #153c2e !important; text-shadow: none !important; }
html body.auth-page.auth-website-login .auth-hero-panel { min-height: 0 !important; padding: clamp(18px, 3vw, 34px) !important; }
html body.auth-page.auth-website-login .auth-foundation-kicker { background: #edf7ef !important; border-color: #cfe2d4 !important; }
html body.auth-page.auth-website-login .auth-foundation-card-panel { padding: clamp(18px, 2.4vw, 26px) !important; }
html body.auth-page.auth-website-login .auth-foundation-card-cap { display: none !important; }
html body.auth-page.auth-website-login .auth-foundation-form .form-control {
  color: #19392c !important; background: #fbfdfb !important; border: 1px solid #c8d9cd !important;
  box-shadow: none !important;
}
html body.auth-page.auth-website-login .auth-foundation-form .form-control:focus { border-color: #18734c !important; box-shadow: 0 0 0 .2rem rgba(24,115,76,.16) !important; }
html body.auth-page.auth-website-login .auth-btn-primary { color: #fff !important; background: #176b45 !important; border-color: #176b45 !important; }
html body.auth-page.auth-website-login .auth-btn-secondary { color: #16583c !important; background: #fff !important; border-color: #9ebda8 !important; }
html body.auth-page.auth-website-login .website-auth-actions { flex-wrap: wrap !important; }
html body.auth-page.auth-website-login .website-auth-links-row { margin-top: .65rem !important; }
@media (max-width: 767.98px) {
  html body.auth-page.auth-website-login > .stas-page-scroll { overflow-y: auto !important; justify-content: flex-start !important; }
  html body.auth-page.auth-website-login .auth-foundation-grid--website { grid-template-columns: minmax(0,1fr) !important; width: min(460px,100%) !important; }
  html body.auth-page.auth-website-login .auth-foundation-hero { display: none !important; }
}
@media (max-height: 650px) {
  html body.auth-page.auth-website-login > .stas-page-scroll { overflow-y: auto !important; justify-content: flex-start !important; }
}

/* v685: keep website auth pages inside the site frame, not the document scroll. */
html:has(body.auth-page.auth-website-login),
html:has(body.auth-page.auth-website-signup) {
  height: 100% !important;
  overflow: hidden !important;
  scrollbar-width: none !important;
}
html:has(body.auth-page.auth-website-login)::-webkit-scrollbar,
html:has(body.auth-page.auth-website-signup)::-webkit-scrollbar { display: none !important; width: 0 !important; height: 0 !important; }
html body.auth-page.auth-website-login::-webkit-scrollbar,
html body.auth-page.auth-website-signup::-webkit-scrollbar { display: none !important; width: 0 !important; height: 0 !important; }
html body.auth-page.auth-website-login .stas-brand-mark,
html body.auth-page.auth-website-signup .stas-brand-mark { display: none !important; }

html body.auth-page.auth-website-login .website-auth-card,
html body.auth-page.auth-website-login .website-auth-card .auth-foundation-card-panel {
  background: #fff !important;
  background-image: none !important;
  color: #153c2e !important;
  border: 1px solid #d5e4d9 !important;
}
html body.auth-page.auth-website-login .website-auth-card {
  overflow: visible !important;
  box-shadow: 0 16px 38px rgba(24,63,45,.1) !important;
}
html body.auth-page.auth-website-login .website-auth-card .auth-foundation-card-panel {
  border: 0 !important;
  border-radius: inherit !important;
  box-shadow: none !important;
}
html body.auth-page:is(.auth-website-login, .auth-erp-login) .auth-password-wrap {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  width: 100% !important;
}
html body.auth-page:is(.auth-website-login, .auth-erp-login) .auth-password-wrap > .form-control {
  width: 100% !important;
  padding-right: 3.15rem !important;
}
html body.auth-page:is(.auth-website-login, .auth-erp-login) .auth-password-wrap > .auth-toggle {
  position: absolute !important;
  top: 50% !important;
  right: 5px !important;
  transform: translateY(-50%) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  min-height: 30px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 8px !important;
  background: #edf7ef !important;
  color: #176b45 !important;
  box-shadow: none !important;
  z-index: 2 !important;
}
html body.auth-page:is(.auth-website-login, .auth-erp-login) .auth-password-wrap > .auth-toggle:hover {
  background: #dcefe2 !important;
}
html body.auth-page:is(.auth-website-login, .auth-erp-login) .auth-toggle svg { width: 17px !important; height: 17px !important; }

html body.auth-page.auth-website-login .stas-overlay-scrollbar { display: none !important; }
html body.auth-page.auth-website-login > .stas-page-scroll { scrollbar-width: none !important; }
html body.auth-page.auth-website-login > .stas-page-scroll::-webkit-scrollbar { display: none !important; width: 0 !important; }

/* Signup scrolls inside its content panel, keeping the green header in place. */
html body.auth-page.auth-website-signup {
  display: flex !important;
  flex-direction: column !important;
  width: 100% !important;
  height: 100vh !important;
  height: 100dvh !important;
  min-height: 0 !important;
  overflow: hidden !important;
}
html body.auth-page.auth-website-signup > .stas-site-header {
  position: relative !important;
  inset: auto !important;
  z-index: 1030 !important;
  flex: 0 0 auto !important;
}
html body.auth-page.auth-website-signup > .stas-page-scroll {
  flex: 1 1 auto !important;
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain !important;
  scroll-behavior: smooth !important;
  scrollbar-width: none !important;
}
html body.auth-page.auth-website-signup > .stas-page-scroll::-webkit-scrollbar { display: none !important; width: 0 !important; }
html body.auth-page.auth-website-signup > .stas-site-footer { flex: 0 0 auto !important; }
html body.auth-page.auth-website-signup .stas-auth-page {
  min-height: 0 !important;
  padding: clamp(12px, 2vh, 20px) 0 !important;
}
html body.auth-page.auth-website-signup .stas-auth-grid { align-items: start !important; }
html body.auth-page.auth-website-signup .stas-auth-card { background: #fff !important; }
html body.auth-page.auth-website-signup .stas-auth-card .form-label { color: #1b4633 !important; }
html body.auth-page.auth-website-signup .stas-auth-card .form-control,
html body.auth-page.auth-website-signup .stas-auth-card .form-select {
  min-height: 44px !important;
  border-radius: 12px !important;
  background: #fbfdfb !important;
  border-color: #c8d9cd !important;
}
html body.auth-page.auth-website-signup .stas-auth-actions .btn { transition: transform .16s ease, box-shadow .16s ease, background-color .16s ease !important; }
html body.auth-page.auth-website-signup .stas-auth-actions .btn:hover { transform: translateY(-1px); box-shadow: 0 6px 16px rgba(24,63,45,.13) !important; }
/* ERP sign-in is a standalone screen, so give it the same public-site palette and card hierarchy. */
html:has(body.auth-page.auth-erp-login) {
  height: 100% !important;
  overflow: hidden !important;
  scrollbar-width: none !important;
}
html:has(body.auth-page.auth-erp-login)::-webkit-scrollbar { display: none !important; width: 0 !important; height: 0 !important; }
html body.auth-page.auth-erp-login {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100vh !important;
  height: 100dvh !important;
  min-height: 0 !important;
  overflow: hidden !important;
  color: #153c2e !important;
  background: radial-gradient(circle at 12% 12%, #e3f2e7, transparent 38%), #f2f7f3 !important;
}
html body.auth-page.auth-erp-login .auth-foundation-shell {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 1 1 auto !important;
  width: 100% !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: clamp(14px, 3vh, 28px) 18px !important;
  background: transparent !important;
}
html body.auth-page.auth-erp-login .auth-foundation-grid {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(360px,460px) !important;
  gap: 18px !important;
  width: min(1080px,100%) !important;
  max-width: 1080px !important;
  min-height: 0 !important;
  margin: 0 auto !important;
  padding: 0 !important;
  overflow: visible !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}
html body.auth-page.auth-erp-login .auth-foundation-hero { display: grid !important; gap: 14px !important; }
html body.auth-page.auth-erp-login .auth-live-quote-card,
html body.auth-page.auth-erp-login .auth-hero-panel,
html body.auth-page.auth-erp-login .auth-foundation-card {
  display: block !important;
  color: #153c2e !important;
  background: #fff !important;
  background-image: none !important;
  border: 1px solid #d5e4d9 !important;
  border-radius: 20px !important;
  box-shadow: 0 14px 34px rgba(24,63,45,.09) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
html body.auth-page.auth-erp-login .auth-live-quote-card { min-height: 64px !important; padding: 14px 18px !important; }
html body.auth-page.auth-erp-login .auth-hero-panel { min-height: 0 !important; padding: clamp(20px, 3vw, 36px) !important; }
html body.auth-page.auth-erp-login :is(.auth-live-quote-text,.auth-live-quote-author,.auth-foundation-kicker,.auth-foundation-title,.auth-foundation-copy) {
  color: #153c2e !important;
  text-shadow: none !important;
}
html body.auth-page.auth-erp-login .auth-foundation-kicker { background: #edf7ef !important; border-color: #cfe2d4 !important; }
html body.auth-page.auth-erp-login .auth-foundation-card-panel {
  padding: clamp(20px, 2.5vw, 30px) !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: inherit !important;
  box-shadow: none !important;
}
html body.auth-page.auth-erp-login .auth-foundation-form-title,
html body.auth-page.auth-erp-login .auth-foundation-form .form-label { color: #153c2e !important; text-shadow: none !important; }
html body.auth-page.auth-erp-login .auth-foundation-form-copy,
html body.auth-page.auth-erp-login .auth-foundation-form .small { color: #496b57 !important; text-shadow: none !important; }
html body.auth-page.auth-erp-login .auth-foundation-form .form-control {
  min-height: 44px !important;
  color: #19392c !important;
  background: #fbfdfb !important;
  border: 1px solid #c8d9cd !important;
  border-radius: 12px !important;
  box-shadow: none !important;
}
html body.auth-page.auth-erp-login .auth-btn-primary { color: #fff !important; background: #176b45 !important; border-color: #176b45 !important; }
html body.auth-page.auth-erp-login .auth-btn-secondary { color: #16583c !important; background: #fff !important; border-color: #9ebda8 !important; }
html body.auth-page.auth-erp-login .portal-footer { flex: 0 0 auto !important; color: #f4fbf6 !important; background: #0c3025 !important; border-top: 1px solid #245b43 !important; }
html body.auth-page.auth-erp-login .stas-overlay-scrollbar { display: none !important; }
@media (max-width: 767.98px), (max-height: 650px) {
  html body.auth-page.auth-website-login > .stas-page-scroll,
  html body.auth-page.auth-erp-login { overflow-y: auto !important; }
  html body.auth-page.auth-website-login .stas-overlay-scrollbar,
  html body.auth-page.auth-erp-login .stas-overlay-scrollbar { display: block !important; }
  html body.auth-page.auth-erp-login .auth-foundation-shell { flex: 0 0 auto !important; }
  html body.auth-page.auth-erp-login .auth-foundation-grid { grid-template-columns: minmax(0,1fr) !important; max-width: 460px !important; }
  html body.auth-page.auth-erp-login .auth-foundation-hero { display: none !important; }
}

/* v687: website login and signup footers use a readable, unclipped text row. */
html body.auth-page:is(.auth-website-login, .auth-website-signup) > footer.stas-site-footer {
  box-sizing: border-box !important;
  height: auto !important;
  min-height: 62px !important;
  padding: 7px 0 !important;
  overflow: visible !important;
}
html body.auth-page:is(.auth-website-login, .auth-website-signup) .stas-site-footer__inner {
  box-sizing: border-box !important;
  min-height: 46px !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px 20px !important;
  padding-inline: clamp(16px, 4vw, 32px) !important;
}
html body.auth-page:is(.auth-website-login, .auth-website-signup) .stas-site-footer__identity { min-width: 0 !important; }
html body.auth-page:is(.auth-website-login, .auth-website-signup) .stas-site-footer__brand {
  margin: 0 !important;
  line-height: 1.35 !important;
}
html body.auth-page:is(.auth-website-login, .auth-website-signup) .stas-site-footer__note { display: none !important; }
html body.auth-page:is(.auth-website-login, .auth-website-signup) .stas-site-footer__copyright {
  margin: 0 !important;
  line-height: 1.4 !important;
  text-align: right !important;
  white-space: nowrap !important;
}
html body.auth-page.auth-website-signup #signupBlockers:not(:empty) {
  padding: .65rem .8rem !important;
  border: 1px solid #fed7aa !important;
  border-radius: 12px !important;
  background: #fff7ed !important;
  color: #7c2d12 !important;
  opacity: 1 !important;
}
@media (max-width: 575.98px) {
  html body.auth-page:is(.auth-website-login, .auth-website-signup) > footer.stas-site-footer { min-height: 58px !important; }
  html body.auth-page:is(.auth-website-login, .auth-website-signup) .stas-site-footer__inner {
    flex-direction: row !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }
  html body.auth-page:is(.auth-website-login, .auth-website-signup) .stas-site-footer__identity,
  html body.auth-page:is(.auth-website-login, .auth-website-signup) .stas-site-footer__copyright { flex: 0 0 100% !important; text-align: center !important; }
  html body.auth-page:is(.auth-website-login, .auth-website-signup) .stas-site-footer__copyright { white-space: normal !important; }
}