/* Dark shadcn-inspired component tokens. */
:root {
  --background: #09090b;
  --foreground: #fafafa;
  --card: #121214;
  --card-foreground: #fafafa;
  --popover: #121214;
  --popover-foreground: #fafafa;
  --primary: #d7193f;
  --primary-foreground: #fff;
  --secondary: #1c1c1f;
  --secondary-foreground: #fafafa;
  --muted: #1c1c1f;
  --muted-foreground: #a1a1aa;
  --accent: #2a1016;
  --accent-foreground: #fff;
  --destructive: #ef4444;
  --border: #2b2b31;
  --input: #2b2b31;
  --ring: #ef3154;
  --radius: .75rem;
  --ink: var(--foreground);
  --navy: #000;
  --red: var(--primary);
  --sand: var(--card);
  --mist: var(--muted);
  --line: var(--border);
  --white: var(--foreground);
  --shadow: 0 24px 80px rgba(0, 0, 0, .55);
}

body { background: var(--background); color: var(--foreground); color-scheme: dark; }
.hero { background: radial-gradient(circle at 15% 28%, rgba(215, 25, 63, .28), transparent 30%), radial-gradient(circle at 80% 80%, rgba(215, 25, 63, .08), transparent 35%), #050506; }
.finder-card { background: var(--card); color: var(--card-foreground); border: 1px solid var(--border); box-shadow: var(--shadow); }
.finder-card .step-label, .uzdpart-help, .uzdpart-status { color: var(--muted-foreground); }
.uzdpart-field select, .uzdpart-field input, .uzdpart-field textarea { background: var(--background); border-color: var(--input); color: var(--foreground); border-radius: var(--radius); }
.uzdpart-field[hidden] { display: none !important; }
.uzdpart-field select:focus, .uzdpart-field input:focus, .uzdpart-field textarea:focus { outline: 2px solid var(--ring); outline-offset: 2px; border-color: var(--ring); }
.uzdpart-submit { display: flex; align-items: center; justify-content: center; gap: 10px; background: var(--primary); border-radius: var(--radius); min-height: 50px; box-shadow: 0 8px 28px rgba(215, 25, 63, .24); }
.uzdpart-submit:hover { background: #ee2048; }
.uzdpart-submit:focus-visible { outline: 2px solid var(--ring); outline-offset: 3px; }
.uzdpart-whatsapp-icon { flex: 0 0 auto; }
.how, .editorial, .content-area { background: var(--background); }
.steps article { border-color: var(--border); }
.steps article p, .confidence-grid p:last-child { color: var(--muted-foreground); }
.confidence { background: var(--card); border-block: 1px solid var(--border); }
.home-about p, .prose-large p, .process-list p, .value-grid p, .about-kicker span { color: var(--muted-foreground); }
.about-hero { background: radial-gradient(circle at 78% 28%, rgba(215, 25, 63, .25), transparent 27%), linear-gradient(145deg, #050506, #13070a); border-bottom: 1px solid var(--border); }
.about-process { background: var(--card); border-block: 1px solid var(--border); }
.about-values { background: #050506; }
.value-grid { background: var(--border); border: 1px solid var(--border); border-radius: calc(var(--radius) * 1.5); overflow: hidden; }
.value-grid article { background: var(--card); }
.about-cta { background: linear-gradient(120deg, var(--card), var(--accent)); border: 1px solid var(--border); border-radius: calc(var(--radius) * 1.5); }
.button-link { background: var(--primary); color: var(--primary-foreground); }
.button-link:hover { background: #ee2048; color: #fff; }
.contact-hero { background: radial-gradient(circle at 75% 25%, rgba(215, 25, 63, .22), transparent 28%), linear-gradient(145deg, #050506, #13070a); border-bottom: 1px solid var(--border); }
.contact-heading>p:not(.eyebrow), .contact-card p { color: var(--muted-foreground); }
.contact-card { background: var(--card); border: 1px solid var(--border); }
.contact-card h2 a { color: var(--foreground); }
.contact-label { color: var(--primary); }
.location-section { background: var(--card); border-block: 1px solid var(--border); }
.button-secondary { background: var(--secondary); border: 1px solid var(--border); color: var(--foreground); }
.button-secondary:hover { background: var(--accent); }
.office-map iframe { background: var(--secondary); filter: grayscale(.25) contrast(1.05); }
.uzdpart-vin-note { color: var(--muted-foreground); border-left: 2px solid var(--primary); padding-left: 12px; }
.uzdpart-progress li { color: var(--muted-foreground); }
.uzdpart-progress li span { background: var(--secondary); border: 1px solid var(--border); color: var(--muted-foreground); }
.uzdpart-progress li[aria-current="step"] { color: var(--foreground); }
.uzdpart-progress li[aria-current="step"] span { background: var(--primary); border-color: var(--primary); color: var(--primary-foreground); }
.uzdpart-progress li.is-complete span { background: var(--accent); border-color: var(--primary); color: var(--foreground); }
.uzdpart-step-intro { color: var(--muted-foreground); }
.uzdpart-next { background: var(--primary); color: var(--primary-foreground); }
.uzdpart-next:hover { background: #ee2048; }
.uzdpart-back { border: 1px solid var(--border); color: var(--foreground); }
.uzdpart-back:hover { background: var(--secondary); }
.uzdpart-next:focus-visible, .uzdpart-back:focus-visible { outline: 2px solid var(--ring); outline-offset: 3px; }
.uzdpart-vin-scan { background: var(--secondary); border: 1px solid var(--border); color: var(--foreground); }
.uzdpart-vin-scan:hover { background: var(--accent); border-color: var(--primary); }
.uzdpart-vin-scan:focus-visible, .uzdpart-vin-confirmation button:focus-visible { outline: 2px solid var(--ring); outline-offset: 3px; }
.uzdpart-vin-confirmation { background: #10261a; border: 1px solid #1d5531; }
.uzdpart-vin-confirmation button { color: var(--foreground); }
.uzdpart-status.is-success { color: #86efac; }
.uzdpart-status.is-error { color: #fda4af; }
.site-footer { background: #000; }
.brandmark { display: inline-flex; align-items: center; }
.brandmark img { display: block; width: auto; height: 52px; }
.site-footer .brandmark img { height: 64px; }
.header-cta { border-color: var(--border); background: rgba(18, 18, 20, .65); }
.uzdpart-notice { background: #10261a; color: #86efac; border: 1px solid #1d5531; }
.uzdpart-notice-error { background: #2a1016; color: #fda4af; border-color: #7f1d2d; }
option { background: var(--popover); color: var(--popover-foreground); }
a { color: #f43f5e; }

@media (max-width: 520px) {
  .brandmark img { height: 44px; }
  .site-footer .brandmark img { height: 56px; }
}
