:root {
  color-scheme: light;
  --uniflo-marketing-background: #fdfdfd;
  --uniflo-marketing-surface: rgba(255, 255, 255, 0.92);
  --uniflo-marketing-surface-solid: #ffffff;
  --uniflo-marketing-text: #11131a;
  --uniflo-marketing-muted: #656d7e;
  --uniflo-marketing-border: #e7e7ee;
  --uniflo-marketing-primary: #8c5cff;
  --uniflo-marketing-primary-rgb: 140, 92, 255;
  --uniflo-marketing-primary-deep: #6e43dd;
  --uniflo-marketing-secondary: #5b8dff;
  --uniflo-marketing-secondary-rgb: 91, 141, 255;
  --uniflo-marketing-success: #18a873;
  --uniflo-marketing-warning: #f2a742;
  --uniflo-marketing-danger: #e54b4f;
  --uniflo-marketing-primary-soft: rgba(140, 92, 255, 0.12);
  --uniflo-marketing-shadow-sm: 0 12px 28px rgba(17, 19, 26, 0.08);
  --uniflo-marketing-shadow-md: 0 24px 60px rgba(17, 19, 26, 0.1);
  --uniflo-marketing-radius: 24px;
  --ink: var(--uniflo-marketing-text);
  --muted: var(--uniflo-marketing-muted);
  --paper: var(--uniflo-marketing-background);
  --soft: #f5f8fb;
  --soft-tint: #f8f6ff;
  --line: var(--uniflo-marketing-border);
  --accent: var(--uniflo-marketing-primary);
  --accent-rgb: var(--uniflo-marketing-primary-rgb);
  --accent-strong: var(--uniflo-marketing-primary-deep);
  --accent-secondary: var(--uniflo-marketing-secondary);
  --accent-secondary-rgb: var(--uniflo-marketing-secondary-rgb);
  --accent-soft: #efe8ff;
  --accent-border: #dcccff;
  --accent-light: #c7b5ff;
  --green: var(--uniflo-marketing-success);
  --global-primary-background: var(--uniflo-marketing-primary);
  --global-secondary-background: #edf0f4;
  --global-muted-background: #f5f8fb;
  --global-background: #ffffff;
  --global-color: var(--uniflo-marketing-muted);
  --global-emphasis-color: var(--uniflo-marketing-text);
  --global-link-color: var(--uniflo-marketing-primary);
}

html.uniflo-marketing-theme-dark {
  color-scheme: dark;
  --uniflo-marketing-background: #11131a;
  --uniflo-marketing-surface: rgba(24, 27, 36, 0.9);
  --uniflo-marketing-surface-solid: #181b24;
  --uniflo-marketing-text: #f5f7fb;
  --uniflo-marketing-muted: #a8b0c1;
  --uniflo-marketing-border: rgba(231, 231, 238, 0.12);
  --uniflo-marketing-primary: #9e79ff;
  --uniflo-marketing-primary-rgb: 158, 121, 255;
  --uniflo-marketing-primary-deep: #c7b5ff;
  --uniflo-marketing-secondary: #7aa2ff;
  --uniflo-marketing-secondary-rgb: 122, 162, 255;
  --uniflo-marketing-success: #2fd597;
  --uniflo-marketing-warning: #ffbf5f;
  --uniflo-marketing-danger: #f87171;
  --uniflo-marketing-primary-soft: rgba(158, 121, 255, 0.16);
  --uniflo-marketing-shadow-sm: 0 20px 45px rgba(0, 0, 0, 0.35);
  --uniflo-marketing-shadow-md: 0 30px 80px rgba(0, 0, 0, 0.42);
  --global-secondary-background: #202430;
  --global-muted-background: #171a21;
  --global-background: #11131a;
}

html {
  background: var(--uniflo-marketing-background);
}

body {
  background:
    radial-gradient(circle at top left, rgba(var(--uniflo-marketing-primary-rgb), 0.16), transparent 28%),
    radial-gradient(circle at top right, rgba(var(--uniflo-marketing-secondary-rgb), 0.12), transparent 24%),
    var(--uniflo-marketing-background);
  color: var(--uniflo-marketing-text);
}

html.uniflo-marketing-theme-dark body {
  background:
    radial-gradient(circle at top left, rgba(158, 121, 255, 0.16), transparent 30%),
    radial-gradient(circle at top right, rgba(122, 162, 255, 0.1), transparent 26%),
    var(--uniflo-marketing-background);
}

.tm-page {
  background: transparent;
}

.uk-section,
.uk-container,
.uk-grid,
.uk-card,
.uk-card-default,
.uk-card-body,
.uk-panel,
.uk-panel-box,
.uk-margin,
.uk-margin-top,
.uk-margin-medium,
.uk-margin-large,
.uk-margin-remove-first-child,
.uk-width-auto,
.uk-width-auto\@m,
.uk-width-expand,
.uk-width-expand\@m,
.input-group,
.input-group-text {
  color: var(--uniflo-marketing-text) !important;
}

.el-link,
.uk-icon,
.uk-icon-link,
.uk-icon-button {
  color: var(--uniflo-marketing-primary) !important;
}

.tm-header .uk-navbar-container,
.tm-header-mobile .uk-navbar-container,
.uk-navbar-sticky {
  background: rgba(253, 253, 253, 0.92) !important;
  border-bottom: 1px solid var(--uniflo-marketing-border);
  box-shadow: none;
  backdrop-filter: blur(18px);
}

html.uniflo-marketing-theme-dark .tm-header .uk-navbar-container,
html.uniflo-marketing-theme-dark .tm-header-mobile .uk-navbar-container,
html.uniflo-marketing-theme-dark .uk-navbar-sticky {
  background: rgba(17, 19, 26, 0.82) !important;
}

.uk-logo,
.uk-navbar-nav > li > a,
.uk-navbar-item,
.uk-text-meta,
.uk-h1,
.uk-h2,
.uk-h3,
.uk-h4,
.uk-h5,
.uk-heading-small,
.uk-heading-medium,
.uk-heading-large {
  color: var(--uniflo-marketing-text);
}

.uk-logo img {
  display: block;
  width: auto;
  max-height: 56px;
  object-fit: contain;
}

html.uniflo-marketing-nav-ready .tm-header .uk-navbar,
html.uniflo-marketing-nav-ready .tm-header-mobile .uk-navbar {
  display: none !important;
}

.tm-header .uk-navbar-container > .uk-container,
.tm-header-mobile .uk-navbar-container > .uk-container,
.tm-header-mobile .uk-navbar-container > .uk-container-expand {
  max-width: 100%;
}

.uniflo-marketing-shell {
  display: flex;
  align-items: center;
  gap: 24px;
  width: 100%;
}

.uniflo-marketing-shell-desktop {
  min-height: 88px;
  justify-content: space-between;
}

.uniflo-marketing-shell-mobile {
  flex-direction: column;
  align-items: stretch;
  gap: 16px;
  padding: 16px 0;
}

.uniflo-marketing-mobile-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.uniflo-marketing-mobile-actions {
  display: flex;
  align-items: center;
  gap: 12px;
}

.uniflo-marketing-brand {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  min-width: 0;
  color: var(--uniflo-marketing-text);
  text-decoration: none;
}

.uniflo-marketing-brand img {
  display: block;
  width: auto;
  height: 38px;
  max-width: 52px;
  object-fit: contain;
}

.uniflo-marketing-brand-text {
  color: var(--uniflo-marketing-text);
  font-size: 1.9rem;
  font-weight: 800;
  letter-spacing: -0.045em;
  line-height: 1;
  white-space: nowrap;
  text-decoration: none;
}

.uniflo-marketing-nav,
.uniflo-marketing-mobile-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
}

.uniflo-marketing-nav {
  flex: 1 1 auto;
}

.uniflo-marketing-mobile-nav {
  overflow-x: auto;
  justify-content: flex-start;
  padding-bottom: 4px;
}

.uniflo-marketing-mobile-nav::-webkit-scrollbar {
  display: none;
}

.uniflo-marketing-nav-link,
.uniflo-marketing-login-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 18px;
  border-radius: 14px;
  color: var(--uniflo-marketing-text) !important;
  font-size: 0.98rem;
  font-weight: 500;
  text-decoration: none;
  transition:
    background-color 160ms ease,
    color 160ms ease,
    box-shadow 160ms ease,
    transform 160ms ease;
}

.uniflo-marketing-nav-link:hover,
.uniflo-marketing-login-link:hover {
  background: rgba(var(--uniflo-marketing-primary-rgb), 0.08);
  color: var(--uniflo-marketing-primary-deep) !important;
  text-decoration: none;
}

.uniflo-marketing-nav-link.is-active {
  background: var(--uniflo-marketing-surface-solid);
  box-shadow: 0 14px 35px rgba(17, 19, 26, 0.08);
}

html.uniflo-marketing-theme-dark .uniflo-marketing-nav-link.is-active {
  box-shadow: 0 18px 40px rgba(0, 0, 0, 0.32);
}

.uniflo-marketing-actions {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
  flex: 0 0 auto;
}

.uniflo-marketing-theme-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border: 0;
  border-radius: 14px;
  background: transparent;
  color: var(--uniflo-marketing-text);
  cursor: pointer;
  transition:
    background-color 160ms ease,
    color 160ms ease,
    transform 160ms ease;
}

.uniflo-marketing-theme-toggle:hover {
  background: rgba(var(--uniflo-marketing-primary-rgb), 0.08);
  color: var(--uniflo-marketing-primary-deep);
}

.uniflo-marketing-theme-toggle span {
  font-size: 1.1rem;
  line-height: 1;
}

.uniflo-marketing-login-link {
  padding-inline: 10px;
}

.uniflo-marketing-register-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  padding: 0 24px;
  border-radius: 12px;
  background: linear-gradient(
    135deg,
    var(--uniflo-marketing-primary) 0%,
    var(--uniflo-marketing-secondary) 100%
  );
  color: #ffffff !important;
  font-size: 0.98rem;
  font-weight: 700;
  text-decoration: none;
  box-shadow: 0 20px 40px rgba(var(--uniflo-marketing-primary-rgb), 0.24);
  transition:
    transform 160ms ease,
    box-shadow 160ms ease,
    filter 160ms ease;
}

.uniflo-marketing-register-button:hover {
  color: #ffffff !important;
  text-decoration: none;
  transform: translateY(-1px);
  filter: brightness(1.02);
}

.uk-button,
.uk-subnav-pill > * > * {
  border-radius: 999px;
  font-weight: 600;
}

.uk-button-primary {
  background: linear-gradient(
    135deg,
    var(--uniflo-marketing-primary) 0%,
    var(--uniflo-marketing-secondary) 100%
  ) !important;
  border: 0;
  box-shadow: 0 18px 36px rgba(var(--uniflo-marketing-primary-rgb), 0.18);
}

.uk-button-default,
.uk-button-secondary {
  background: var(--uniflo-marketing-surface-solid);
  border: 1px solid var(--uniflo-marketing-border);
  color: var(--uniflo-marketing-text);
}

.uk-card-default,
.uk-card-primary,
.uk-card-secondary,
.uk-panel-box,
.uk-tile-default,
.uk-section-muted,
.uk-section-default .uk-card {
  background: var(--uniflo-marketing-surface) !important;
  border: 1px solid var(--uniflo-marketing-border);
  border-radius: var(--uniflo-marketing-radius);
  box-shadow: var(--uniflo-marketing-shadow-md);
}

.uk-card-primary {
  color: var(--uniflo-marketing-text) !important;
  background:
    linear-gradient(180deg, rgba(var(--uniflo-marketing-primary-rgb), 0.08), rgba(255, 255, 255, 0.96)) !important;
}

.uk-label-primary,
.uk-badge,
.uk-subnav-pill > .uk-active > a {
  background: var(--uniflo-marketing-primary-soft) !important;
  color: var(--uniflo-marketing-primary-deep) !important;
}

.uk-text-primary,
.uk-text-tertiary,
.uk-link,
a {
  color: var(--uniflo-marketing-primary);
}

.uk-link:hover,
a:hover {
  color: var(--uniflo-marketing-primary-deep);
}

.uk-input,
.uk-select,
.uk-textarea {
  border-radius: 16px;
  border-color: var(--uniflo-marketing-border);
  background: rgba(255, 255, 255, 0.96);
  color: var(--uniflo-marketing-text);
}

.uk-input:focus,
.uk-select:focus,
.uk-textarea:focus {
  border-color: rgba(var(--uniflo-marketing-primary-rgb), 0.42);
  box-shadow: 0 0 0 4px rgba(var(--uniflo-marketing-primary-rgb), 0.12);
}

.uk-section-primary,
.uk-background-primary {
  background:
    linear-gradient(135deg, rgba(var(--uniflo-marketing-primary-rgb), 0.94), rgba(var(--uniflo-marketing-secondary-rgb), 0.92)) !important;
}

.uk-alert-tertiary,
.uk-button-tertiary,
.uk-card-tertiary,
.uk-section-tertiary,
.uk-overlay-tertiary,
.uk-tile-tertiary {
  background: var(--uniflo-marketing-primary) !important;
  border-color: var(--uniflo-marketing-primary) !important;
  color: #ffffff !important;
}

.uk-text-tertiary,
.uk-link-text:hover,
.uk-link-toggle:hover .uk-link-text {
  color: var(--uniflo-marketing-primary) !important;
}

.uk-card-tertiary {
  background: transparent !important;
  border: 2px solid var(--uniflo-marketing-primary) !important;
  color: var(--uniflo-marketing-text) !important;
}

.uk-alert-quaternary,
.uk-button-quaternary,
.uk-card-quaternary,
.uk-section-quaternary,
.uk-overlay-quaternary,
.uk-tile-quaternary {
  background: var(--uniflo-marketing-text) !important;
  color: var(--uniflo-marketing-surface-solid) !important;
}

.uk-alert-quinary,
.uk-button-quinary,
.uk-card-quinary,
.uk-section-quinary,
.uk-overlay-quinary,
.uk-tile-quinary {
  background: var(--uniflo-marketing-surface-solid) !important;
  color: var(--uniflo-marketing-text) !important;
}

.btn-primary,
.uk-button-primary,
.uk-button-tertiary,
.uniflo-marketing-register-button {
  background: linear-gradient(
    135deg,
    var(--uniflo-marketing-primary) 0%,
    var(--uniflo-marketing-secondary) 100%
  ) !important;
}

.btn-success,
.text-success,
.uk-text-success {
  color: var(--uniflo-marketing-success) !important;
}

.btn-warning,
.text-warning,
.uk-text-warning {
  color: var(--uniflo-marketing-warning) !important;
}

.btn-danger,
.text-danger,
.uk-text-danger {
  color: var(--uniflo-marketing-danger) !important;
}

@media (max-width: 959px) {
  .tm-header-mobile .uk-navbar-container {
    padding-inline: 20px;
  }

  .uniflo-marketing-mobile-nav {
    gap: 8px;
  }

  .uniflo-marketing-brand-text {
    font-size: 1.45rem;
  }

  .uniflo-marketing-mobile-nav .uniflo-marketing-nav-link,
  .uniflo-marketing-login-link {
    min-height: 38px;
    padding-inline: 14px;
    font-size: 0.92rem;
    white-space: nowrap;
  }

  .uniflo-marketing-mobile-actions .uniflo-marketing-register-button {
    min-height: 38px;
    padding-inline: 18px;
    font-size: 0.92rem;
  }

  .uniflo-marketing-mobile-actions .uniflo-marketing-theme-toggle {
    width: 38px;
    height: 38px;
  }
}
