:root {
  --cifroz-blue: #005bff;
  --cifroz-blue-dark: #0045cc;
  --cifroz-pink: #f9118b;
  --cifroz-ink: #101828;
  --cifroz-muted: #667085;
  --cifroz-line: #e4e9f2;
  --cifroz-soft: #f5f8ff;
  --cifroz-white: #fff;
  --blue: var(--cifroz-blue);
  --blue-dark: var(--cifroz-blue-dark);
  --ink: var(--cifroz-ink);
  --muted: var(--cifroz-muted);
  --line: var(--cifroz-line);
  --soft: var(--cifroz-soft);
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;
  color: var(--cifroz-ink);
  background: var(--cifroz-soft);
}

* { box-sizing: border-box; }
body { color: var(--cifroz-ink); background: var(--cifroz-soft); }
a { color: var(--cifroz-blue); }
a:hover { color: var(--cifroz-blue-dark); }
button, .button, .payment-button, .primary-action, .header-cta, .try-link {
  border: 0;
  background: var(--cifroz-blue);
  color: #fff;
  box-shadow: 0 10px 24px rgba(0, 91, 255, .18);
}
button:hover, .button:hover, .payment-button:hover, .primary-action:hover,
.header-cta:hover, .try-link:hover { background: var(--cifroz-blue-dark); }
button:focus-visible, a:focus-visible, summary:focus-visible,
input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid rgba(0, 91, 255, .28);
  outline-offset: 2px;
}
input:focus, select:focus, textarea:focus {
  border-color: var(--cifroz-blue);
  box-shadow: 0 0 0 3px rgba(0, 91, 255, .1);
}
input[type="checkbox"], input[type="radio"], input[type="range"] { accent-color: var(--cifroz-blue); }

.brand, .landing-brand, .footer-brand, .god-header b {
  display: inline-block;
  width: 142px;
  height: 46px;
  overflow: hidden;
  background: #fff url("/static/brand/cifroz-logo-source.png") center 47% / cover no-repeat;
  border-radius: 8px;
  color: transparent !important;
  font-size: 0 !important;
  line-height: 0;
  text-decoration: none;
  vertical-align: middle;
}
.footer-brand { width: 122px; height: 39px; }
.god-header b { width: 125px; height: 40px; }
.brand span, .landing-brand span, .footer-brand span { display: none; }

header, .online-header, .billing-header, .landing-header, .god-header {
  border-bottom-color: var(--cifroz-line);
  background: rgba(255,255,255,.95);
  backdrop-filter: blur(16px);
}
.landing-header nav > a, .landing-header summary { color: var(--cifroz-ink); }
.landing-header nav > a:hover, .landing-header summary:hover { color: var(--cifroz-blue); }

.card, .panel, .billing-panel, .legal-card, .product-shot {
  border-color: var(--cifroz-line);
  background: #fff;
  box-shadow: 0 10px 34px rgba(27, 55, 105, .07);
}
.link, .header-link, .dashboard-button, .recommendation-card a,
.god-pagination a, .god-user-details-link { color: var(--cifroz-blue) !important; }
.header-link, .dashboard-button, .god-user-details-link {
  background: #edf4ff;
  border-color: #cfe0ff;
}
.password-toggle { background: #edf4ff; color: var(--cifroz-blue-dark); }

.report-tabs .account-tab.active, .account-tab.active {
  border-color: var(--cifroz-blue);
  background: var(--cifroz-blue);
  color: #fff;
}
.period-panel, .recommendations-panel, .cabinet-sync-info, .owner-preview-banner {
  border-color: #cfe0ff;
  background: linear-gradient(180deg, #f7faff 0%, #fff 100%);
}
.loading-status {
  border-color: #c5d9ff;
  background: #f0f6ff;
  color: #194d9a;
}
.spinner { border-color: #cfe0ff; border-top-color: var(--cifroz-blue); }
.progress-track { background: #dce9ff; }
.progress-fill { background: linear-gradient(90deg, var(--cifroz-blue), var(--cifroz-pink)); }
table.sortable th[data-sort-state="asc"]::after,
table.sortable th[data-sort-state="desc"]::after { color: var(--cifroz-blue); }
.god-switch input:checked + span { background: var(--cifroz-blue); }

.billing-note { background: #edf4ff; color: var(--cifroz-blue-dark); }
.billing-header a, .billing-header button.link, .billing-check a { color: var(--cifroz-blue); }
.billing-cabinet-summary > strong, .billing-total strong,
.selected-payment-total strong { color: var(--cifroz-ink); }

.landing-main { position: relative; overflow: hidden; background: #fff; }
.landing-main::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  right: -7vw;
  width: 43vw;
  height: 760px;
  background: linear-gradient(145deg, var(--cifroz-blue) 0 70%, var(--cifroz-pink) 70%);
  clip-path: polygon(15% 0, 100% 0, 100% 100%, 0 68%);
}
.landing-main > * { position: relative; z-index: 1; }
.seo-hero { min-height: 710px; }
.seo-hero h1 { color: var(--cifroz-ink); letter-spacing: -.045em; }
.seo-hero h1 span { color: var(--cifroz-blue); }
.eyebrow { color: var(--cifroz-blue); }
.hero-benefits li::before { background: #eaf2ff; color: var(--cifroz-blue); }
.hero-price { border-color: #cfe0ff; background: #f2f7ff; }
.hero-price strong { color: var(--cifroz-blue); }
.secondary-action { border-color: var(--cifroz-blue); color: var(--cifroz-blue); }
.secondary-action:hover { border-color: var(--cifroz-blue-dark); color: var(--cifroz-blue-dark); }
.hero-shot {
  border-color: rgba(255,255,255,.78);
  box-shadow: 0 28px 70px rgba(0, 46, 135, .22);
}
.formula-card, .info-card { border-left-color: var(--cifroz-blue); background: #f5f8ff; }
.formula-card strong { color: var(--cifroz-blue-dark); }
.pricing-section { position: relative; }
.price-card { border-color: #cfe0ff; box-shadow: 0 16px 45px rgba(0,91,255,.11); }
.price-card strong { color: var(--cifroz-blue); }
.faq-list details[open] { border-color: #cfe0ff; }
.landing-footer { border-top-color: var(--cifroz-line); background: #fff; }
.landing-footer nav a:hover, .legal-card a { color: var(--cifroz-blue); }
.legal-page { background: linear-gradient(180deg, #f2f7ff 0, #fff 320px); }

@media (max-width: 900px) {
  .landing-main::before { width: 55vw; height: 540px; opacity: .12; }
  .brand, .landing-brand { width: 122px; height: 40px; }
}
