:root {
  --crystal-ink: #07111f;
  --crystal-text: #182437;
  --crystal-muted: #5d6b7f;
  --crystal-line: rgba(119, 147, 180, 0.28);
  --crystal-line-strong: rgba(14, 165, 233, 0.36);
  --crystal-surface: rgba(255, 255, 255, 0.9);
  --crystal-surface-solid: #ffffff;
  --crystal-frost: rgba(241, 249, 255, 0.82);
  --crystal-blue: #0ea5e9;
  --crystal-blue-deep: #155eef;
  --crystal-cyan: #06b6d4;
  --crystal-emerald: #10b981;
  --crystal-gold: #f5b82e;
  --crystal-shadow: 0 18px 48px rgba(12, 74, 110, 0.13);
  --crystal-shadow-soft: 0 8px 24px rgba(12, 74, 110, 0.09);
}

html {
  background: #f4fbff;
}

body.lux-site {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.92) 0 18%, transparent 18% 100%),
    repeating-linear-gradient(90deg, rgba(14, 165, 233, 0.055) 0 1px, transparent 1px 96px),
    repeating-linear-gradient(0deg, rgba(14, 165, 233, 0.04) 0 1px, transparent 1px 96px),
    linear-gradient(180deg, #f8fdff 0%, #eefaff 42%, #ffffff 100%) !important;
  color: var(--crystal-text) !important;
}

body.lux-site::selection {
  background: rgba(14, 165, 233, 0.22);
  color: var(--crystal-ink);
}

.crawl-noscript {
  display: block;
  max-width: 900px;
  margin: 12px auto;
  padding: 10px 14px;
  border: 1px solid rgba(14, 165, 233, 0.24);
  border-radius: 8px;
  background: #ffffff;
  color: #334155;
  font-size: 0.92rem;
  box-shadow: 0 8px 20px rgba(12, 74, 110, 0.08);
}

.site-header {
  min-height: 68px !important;
  border-bottom: 1px solid rgba(14, 165, 233, 0.18) !important;
  background: rgba(255, 255, 255, 0.82) !important;
  box-shadow: 0 10px 36px rgba(12, 74, 110, 0.1) !important;
  backdrop-filter: blur(22px) saturate(1.35) !important;
}

.site-logo,
.brand {
  color: var(--crystal-ink) !important;
}

.site-logo__bolt,
.brand-logo-accent {
  color: var(--crystal-blue) !important;
  text-shadow: 0 0 16px rgba(14, 165, 233, 0.34);
}

.site-nav a,
.nav-dropdown summary,
.mobile-nav a {
  border-radius: 8px !important;
}

.site-nav a:hover,
.nav-dropdown summary:hover,
.nav-dropdown[open] summary {
  background: rgba(14, 165, 233, 0.1) !important;
  color: var(--crystal-blue-deep) !important;
}

.dropdown-menu,
.mobile-nav {
  border: 1px solid var(--crystal-line) !important;
  background: rgba(255, 255, 255, 0.96) !important;
  box-shadow: var(--crystal-shadow-soft) !important;
}

.legacy-content {
  max-width: 1160px !important;
}

.home-hero.lux-page-top,
.premium-unified-hero,
.lux-page-top {
  max-width: 1050px !important;
}

.home-hero {
  padding-top: clamp(18px, 3vw, 34px) !important;
}

.lux-title-strip,
.home-hero__title-strip,
.premium-hero-copy {
  text-align: center !important;
  border-left: 0 !important;
  padding-left: 0 !important;
  margin-inline: auto !important;
}

.home-hero h1,
.lux-title-strip h1,
h1 {
  color: var(--crystal-ink) !important;
  letter-spacing: 0 !important;
  text-wrap: balance;
}

.home-hero__subtitle,
.lux-page-lead,
.premium-hero-copy > p:last-child,
.home-hero__lead {
  color: var(--crystal-muted) !important;
}

.home-badge,
.premium-kicker,
.lux-kicker {
  border: 1px solid rgba(14, 165, 233, 0.28) !important;
  background: linear-gradient(180deg, #ffffff, #eaf8ff) !important;
  color: #075985 !important;
  box-shadow: inset 0 1px 0 #ffffff, 0 8px 20px rgba(14, 165, 233, 0.12) !important;
}

.premium-formula-pill,
.lux-formula-pill,
.formula-chip,
.formula-display {
  border: 1px solid rgba(14, 165, 233, 0.3) !important;
  border-left: 3px solid var(--crystal-cyan) !important;
  background: linear-gradient(135deg, #ffffff 0%, #ebfaff 70%, #fff8e6 100%) !important;
  color: #075985 !important;
  box-shadow: var(--crystal-shadow-soft) !important;
}

.soft-calc {
  max-width: 900px !important;
  margin: 0 auto !important;
  padding: clamp(14px, 2vw, 22px) !important;
  border: 1px solid var(--crystal-line-strong) !important;
  border-radius: 12px !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(234, 248, 255, 0.88)),
    linear-gradient(90deg, rgba(14, 165, 233, 0.08), rgba(245, 184, 46, 0.08)) !important;
  box-shadow: var(--crystal-shadow), inset 0 1px 0 rgba(255, 255, 255, 0.95) !important;
}

.soft-calc__trust {
  margin-bottom: 12px !important;
  border: 1px solid rgba(14, 165, 233, 0.26) !important;
  background: linear-gradient(90deg, #075985, #155eef) !important;
  box-shadow: 0 10px 28px rgba(21, 94, 239, 0.22) !important;
}

.soft-calc__shell {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.78fr) !important;
  border: 1px solid rgba(14, 165, 233, 0.2) !important;
  border-radius: 10px !important;
  background: rgba(255, 255, 255, 0.86) !important;
}

.soft-calc__inputs,
.soft-calc__results {
  padding: clamp(14px, 2vw, 20px) !important;
}

.soft-calc__inputs {
  border-right: 1px solid rgba(14, 165, 233, 0.18) !important;
  background: rgba(255, 255, 255, 0.9) !important;
}

.soft-calc__results {
  background: linear-gradient(180deg, #f7fdff, #ffffff) !important;
}

.soft-calc__section {
  gap: 12px !important;
}

.soft-calc__field-head {
  margin-bottom: 6px !important;
}

.soft-calc__label {
  color: #334155 !important;
}

.soft-calc__mode-bar {
  width: 100% !important;
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  border-radius: 8px !important;
  background: #eaf8ff !important;
  border: 1px solid rgba(14, 165, 233, 0.22) !important;
}

.soft-calc__mode-pill {
  min-height: 36px !important;
  padding: 8px 10px !important;
  border-radius: 7px !important;
}

.soft-calc__mode-pill.is-active,
.soft-calc__mode-pill[aria-selected="true"],
.soft-calc__mode-pill.active {
  background: linear-gradient(135deg, var(--crystal-blue), var(--crystal-blue-deep)) !important;
  color: #ffffff !important;
  box-shadow: 0 8px 18px rgba(14, 165, 233, 0.24) !important;
}

.soft-calc__input,
.soft-calc .calc-input {
  min-height: 46px !important;
  padding: 10px 14px !important;
  border: 1px solid rgba(119, 147, 180, 0.42) !important;
  border-radius: 8px !important;
  background: linear-gradient(180deg, #ffffff, #f8fdff) !important;
  color: var(--crystal-ink) !important;
  font-size: clamp(1.08rem, 2vw, 1.42rem) !important;
  box-shadow: inset 0 1px 2px rgba(12, 74, 110, 0.06) !important;
}

.soft-calc__input:focus,
.soft-calc .calc-input:focus {
  border-color: var(--crystal-blue) !important;
  box-shadow: 0 0 0 4px rgba(14, 165, 233, 0.16), inset 0 1px 2px rgba(12, 74, 110, 0.05) !important;
}

.soft-calc__field-unit,
.soft-calc .calc-unit,
.soft-calc__unit-pill,
.soft-calc__pf-badge {
  background: #e6f7ff !important;
  color: #0369a1 !important;
  border: 1px solid rgba(14, 165, 233, 0.22) !important;
  border-radius: 7px !important;
}

.soft-calc__helper,
.soft-calc__safety,
.calc-note {
  color: var(--crystal-muted) !important;
}

.soft-calc__preset {
  border-radius: 999px !important;
  background: #ffffff !important;
}

.soft-calc__preset:hover,
.soft-calc__btn--ghost:hover {
  border-color: var(--crystal-blue) !important;
  background: #eaf8ff !important;
  color: #075985 !important;
}

.soft-calc__result-value,
.soft-calc .calc-result-value {
  color: var(--crystal-blue-deep) !important;
  font-size: clamp(1.9rem, 4vw, 2.65rem) !important;
  text-shadow: 0 12px 30px rgba(21, 94, 239, 0.18) !important;
}

.soft-calc__cost-pill {
  background: linear-gradient(90deg, rgba(16, 185, 129, 0.14), rgba(14, 165, 233, 0.12)) !important;
  color: #065f46 !important;
}

.soft-calc__projection-row,
.soft-calc__formula-foot {
  border-color: rgba(119, 147, 180, 0.22) !important;
}

.soft-calc__btn,
.calc-btn,
.lx-btn,
.btn-ghost,
.preset-btn {
  border-radius: 8px !important;
}

.soft-calc__btn--primary,
.soft-calc__btn.lx-action-copy,
.calc-btn.lx-action-copy {
  border-color: var(--crystal-blue-deep) !important;
  background: linear-gradient(135deg, var(--crystal-blue), var(--crystal-blue-deep)) !important;
  color: #ffffff !important;
}

.home-section-card,
.legacy-content .card,
.premium-card,
.content-card,
.article-card,
.legal-card,
.contact-card,
.authority-card,
.premium-feature-strip a,
.premium-tool-card,
.premium-trust-item,
.premium-directory-group,
.tool-guide-card,
.premium-faq-list details,
.premium-content-showcase,
.blog-premium-hero,
.article-content--premium {
  border: 1px solid var(--crystal-line) !important;
  border-radius: 8px !important;
  background: var(--crystal-surface) !important;
  box-shadow: var(--crystal-shadow-soft), inset 0 1px 0 rgba(255, 255, 255, 0.88) !important;
}

.home-section-card:hover,
.premium-feature-strip a:hover,
.premium-tool-card:hover,
.tool-guide-card:hover,
.blog-card:hover,
.content-card:hover {
  border-color: var(--crystal-line-strong) !important;
  box-shadow: var(--crystal-shadow) !important;
}

.legacy-content th {
  background: #eaf8ff !important;
  color: #075985 !important;
}

.legacy-content td {
  background: rgba(255, 255, 255, 0.82) !important;
}

.legacy-content tr:nth-child(2n) td {
  background: #f7fdff !important;
}

.footer-wrapper,
.site-footer {
  background: linear-gradient(180deg, #07111f, #020617) !important;
}

.footer-title,
.footer-col-title,
.footer-links a:hover,
.site-footer a:hover {
  color: #7dd3fc !important;
}

@media (max-width: 900px) {
  .soft-calc__shell {
    grid-template-columns: 1fr !important;
  }

  .soft-calc__inputs {
    border-right: 0 !important;
    border-bottom: 1px solid rgba(14, 165, 233, 0.18) !important;
  }
}

@media (max-width: 560px) {
  .site-header {
    min-height: 62px !important;
  }

  .soft-calc {
    padding: 12px !important;
    border-radius: 10px !important;
  }

  .soft-calc__inputs,
  .soft-calc__results {
    padding: 12px !important;
  }

  .soft-calc__input,
  .soft-calc .calc-input {
    font-size: 1.12rem !important;
  }
}
