/* Base compartilhada pelos temas Yelum, Youse, Azul, Tokio, Allianz e Suhai. */

html[data-theme-family="partner-v2"] {
  --sdb-petroleum: var(--partner-ink);
  --sdb-turquoise: var(--partner-primary);
  --sdb-orange: var(--partner-secondary);
  --sdb-off-white: var(--partner-bg);
  --sdb-graphite: var(--partner-ink);
  --sdb-bg: var(--partner-bg);
  --sdb-surface: #ffffff;
  --sdb-surface-raised: #ffffff;
  --sdb-border: var(--partner-line);
  --sdb-text: var(--partner-ink);
  --sdb-muted: var(--partner-muted);
  --sdb-radius-card: var(--partner-card-radius, 20px);
  --sdb-radius-control: var(--partner-control-radius, 10px);
  --sdb-shadow: var(--partner-shadow, 0 22px 58px rgba(20, 30, 34, 0.11));
  font-family: var(--partner-font, "Helvetica Neue", Helvetica, Arial, ui-sans-serif, system-ui, sans-serif);
}

html[data-theme-family="partner-v2"] body {
  background:
    radial-gradient(circle at 94% 88%, var(--partner-page-glow), transparent 28rem),
    linear-gradient(180deg, var(--partner-header-bg) 0 92px, var(--partner-bg) 92px);
}

html[data-theme-family="partner-v2"] body::before {
  background: none;
}

html[data-theme-family="partner-v2"] .skip-link {
  background: var(--partner-primary-dark);
  color: var(--partner-skip-ink, #ffffff);
}

html[data-theme-family="partner-v2"] .site-header {
  border-bottom: 1px solid var(--partner-header-line);
  background: var(--partner-header-bg);
}

html[data-theme-family="partner-v2"] .brand {
  color: var(--partner-header-ink);
}

html[data-theme-family="partner-v2"] .brand__halo {
  stroke: var(--partner-brand-accent, var(--partner-primary));
}

html[data-theme-family="partner-v2"] .brand__smile {
  stroke: var(--partner-secondary);
}

html[data-theme-family="partner-v2"] .brand__car {
  fill: var(--partner-header-ink);
  stroke: var(--partner-header-ink);
}

html[data-theme-family="partner-v2"] .brand__face {
  stroke: var(--partner-header-bg);
}

html[data-theme-family="partner-v2"] .brand__wordmark strong {
  color: var(--partner-brand-accent, var(--partner-primary));
}

html[data-theme-family="partner-v2"] .partner-lockup__divider {
  height: 38px;
  background: var(--partner-header-line);
}

html[data-theme-family="partner-v2"] .partner-lockup__label {
  color: var(--partner-header-muted);
}

html[data-theme-family="partner-v2"] .partner-lockup__logo {
  width: var(--partner-logo-width, auto);
  max-width: var(--partner-logo-width, 118px);
  height: var(--partner-logo-height, 34px);
  object-fit: contain;
  mix-blend-mode: var(--partner-logo-blend, normal);
}

html[data-theme-family="partner-v2"] .header-assurance {
  color: var(--partner-header-ink);
}

html[data-theme-family="partner-v2"] .header-assurance span {
  background: var(--partner-soft);
  color: var(--partner-primary-dark);
}

html[data-theme-family="partner-v2"] .quote-stage {
  border-color: var(--partner-stage-line, var(--partner-line));
}

html[data-theme-family="partner-v2"] .brand-panel {
  background: var(--partner-panel-bg);
  color: var(--partner-panel-ink);
}

html[data-theme-family="partner-v2"] .brand-panel::before {
  position: absolute;
  top: -100px;
  right: -120px;
  width: 330px;
  height: 290px;
  border: 24px solid var(--partner-panel-pattern);
  border-radius: var(--partner-pattern-radius, 50%);
  content: "";
  transform: rotate(var(--partner-pattern-rotation, -12deg));
}

html[data-theme-family="partner-v2"] .brand-panel::after {
  right: -108px;
  bottom: -160px;
  border-color: var(--partner-secondary);
  opacity: var(--partner-panel-accent-opacity, 0.72);
}

html[data-theme-family="partner-v2"] .brand-panel__eyebrow {
  color: var(--partner-panel-muted);
}

html[data-theme-family="partner-v2"] .brand-panel__title strong {
  color: var(--partner-panel-highlight);
}

html[data-theme-family="partner-v2"] .brand-panel__illustration {
  filter: drop-shadow(0 24px 36px var(--partner-panel-shadow));
}

html[data-theme-family="partner-v2"] .brand-panel__road--top {
  stroke: var(--partner-road-top);
}

html[data-theme-family="partner-v2"] .brand-panel__car {
  fill: var(--partner-car-fill);
  stroke: var(--partner-car-line);
}

html[data-theme-family="partner-v2"] .brand-panel__window,
html[data-theme-family="partner-v2"] .brand-panel__face {
  stroke: var(--partner-car-line);
}

html[data-theme-family="partner-v2"] .brand-panel__road--bottom {
  stroke: var(--partner-road-bottom);
}

html[data-theme-family="partner-v2"] .brand-panel__note {
  border-color: var(--partner-note-line);
  background: var(--partner-note-bg);
  color: var(--partner-note-ink);
}

html[data-theme-family="partner-v2"] .back-button:hover {
  background: var(--partner-soft);
  color: var(--partner-primary-dark);
}

html[data-theme-family="partner-v2"] .secure-mark,
html[data-theme-family="partner-v2"] .step-group,
html[data-theme-family="partner-v2"] .lookup-status--success,
html[data-theme-family="partner-v2"] .vehicle-result__eyebrow,
html[data-theme-family="partner-v2"] .tap-feedback {
  color: var(--partner-primary-dark);
}

html[data-theme-family="partner-v2"] .encouragement {
  border-color: var(--partner-soft-line);
  background: var(--partner-soft);
  color: var(--partner-soft-ink);
}

html[data-theme-family="partner-v2"] .encouragement span,
html[data-theme-family="partner-v2"] .vehicle-result__check,
html[data-theme-family="partner-v2"] .success-state__icon {
  background: var(--partner-primary);
  color: var(--partner-check-ink, #ffffff);
}

html[data-theme-family="partner-v2"] .step-heading h1,
html[data-theme-family="partner-v2"] .success-state h1,
html[data-theme-family="partner-v2"] .field__label {
  color: var(--partner-heading);
}

html[data-theme-family="partner-v2"] .step-heading h1,
html[data-theme-family="partner-v2"] .success-state h1 {
  letter-spacing: var(--partner-heading-spacing, -0.045em);
}

html[data-theme-family="partner-v2"] .step-heading h1::after {
  width: 56px;
  height: 4px;
  background: var(--partner-heading-rule);
}

html[data-theme-family="partner-v2"] .social-name-toggle {
  border-color: var(--partner-soft-line);
  background: var(--partner-soft);
  color: var(--partner-primary-dark);
}

html[data-theme-family="partner-v2"] .social-name-toggle:hover {
  background: var(--partner-soft-strong);
}

html[data-theme-family="partner-v2"] .social-name-panel {
  border-color: var(--partner-soft-line);
  background: var(--partner-panel-soft);
}

html[data-theme-family="partner-v2"] .field__input {
  border-width: 1px;
  border-color: var(--partner-line);
  border-radius: var(--partner-control-radius, 10px);
  color: var(--partner-ink);
  box-shadow: none;
}

html[data-theme-family="partner-v2"] .field__input:hover {
  border-color: var(--partner-line-strong);
}

html[data-theme-family="partner-v2"] .field__input:focus {
  border-color: var(--partner-primary);
  box-shadow: 0 0 0 3px var(--partner-focus-ring);
}

html[data-theme-family="partner-v2"] .select-wrap::after {
  color: var(--partner-primary-dark);
}

html[data-theme-family="partner-v2"] .choice-card,
html[data-theme-family="partner-v2"] .fipe-candidate,
html[data-theme-family="partner-v2"] .consent-card {
  border-width: 1px;
  border-color: var(--partner-line);
  border-radius: var(--partner-control-radius, 10px);
  background: #ffffff;
  box-shadow: none;
}

html[data-theme-family="partner-v2"] .choice-card:hover {
  border-color: var(--partner-primary);
  background: var(--partner-hover);
}

html[data-theme-family="partner-v2"] .choice-card:has(input:focus-visible),
html[data-theme-family="partner-v2"] .consent-card:has(input:focus-visible) {
  outline-color: var(--partner-focus-outline);
}

html[data-theme-family="partner-v2"] .choice-card:has(input:checked),
html[data-theme-family="partner-v2"] .fipe-candidate:has(input:checked) {
  border-color: var(--partner-primary);
  background: var(--partner-soft);
  box-shadow: 0 0 0 1px var(--partner-selection-ring);
}

html[data-theme-family="partner-v2"] .choice-card__check,
html[data-theme-family="partner-v2"] .consent-card__control {
  border-color: var(--partner-control-line);
}

html[data-theme-family="partner-v2"] .choice-card:has(input:checked) .choice-card__check,
html[data-theme-family="partner-v2"] .consent-card:has(input:checked) .consent-card__control {
  border-color: var(--partner-primary);
  background: var(--partner-primary);
  color: var(--partner-check-ink, #ffffff);
}

html[data-theme-family="partner-v2"] .alternative-actions button:hover {
  background: var(--partner-soft);
  color: var(--partner-primary-dark);
}

html[data-theme-family="partner-v2"] .vehicle-result {
  border-color: var(--partner-soft-line);
  background: var(--partner-soft);
}

html[data-theme-family="partner-v2"] .consent-card:has(input:checked) {
  border-color: var(--partner-soft-line);
  background: var(--partner-soft);
}

html[data-theme-family="partner-v2"] .button {
  border-radius: var(--partner-button-radius, var(--partner-control-radius, 10px));
}

html[data-theme-family="partner-v2"] .button:focus-visible,
html[data-theme-family="partner-v2"] .back-button:focus-visible,
html[data-theme-family="partner-v2"] .alternative-actions button:focus-visible {
  outline-color: var(--partner-focus-outline);
}

html[data-theme-family="partner-v2"] .button--primary {
  background: var(--partner-action);
  box-shadow: 0 9px 20px var(--partner-action-shadow);
  color: var(--partner-action-ink);
}

html[data-theme-family="partner-v2"] .button--primary:hover {
  background: var(--partner-action-hover);
  box-shadow: 0 12px 25px var(--partner-action-shadow-hover);
}

html[data-theme-family="partner-v2"] .button--skip {
  background: var(--partner-skip-bg);
  color: var(--partner-heading);
}

html[data-theme-family="partner-v2"] .success-state__icon {
  box-shadow: 0 0 0 11px var(--partner-success-ring);
}

@media (max-width: 899px) {
  html[data-theme-family="partner-v2"] body,
  html[data-theme-family="partner-v2"] .site-header {
    background: var(--partner-header-bg);
  }

  html[data-theme-family="partner-v2"] .quote-stage {
    border-radius: var(--partner-mobile-radius, 16px) var(--partner-mobile-radius, 16px) 0 0;
    box-shadow: 0 -7px 28px var(--partner-mobile-shadow);
  }
}

@media (max-width: 480px) {
  html[data-theme-family="partner-v2"] .partner-lockup__logo {
    width: var(--partner-logo-mobile-width, var(--partner-logo-width, 78px));
    max-width: var(--partner-logo-mobile-width, var(--partner-logo-width, 78px));
    height: var(--partner-logo-mobile-height, 32px);
  }
}
