/* Shared surface for cars, meal teams and Elementor room containers.
   Elementor's explicit widget controls may still override these defaults. */
body .nps-auto-car,
body :is(.nps-auto-cars,.nps-teams-grid,.nps-native-list) .nps-auto-car,
body .nps-vaerelseskort,
body .elementor-element.nps-vaerelseskort {
  box-sizing: border-box;
  min-width: 0;
  background: var(--nps-list-background,var(--nps-card-background,#142a3d80));
  color: var(--nps-list-text,var(--e-global-color-text,#fff));
  border: 1px solid var(--nps-list-border,var(--nps-card-border,rgba(167,186,200,.5)));
  border-radius: var(--nps-list-radius,var(--nps-card-radius,20px));
  -webkit-backdrop-filter: blur(24px) saturate(125%);
  backdrop-filter: blur(24px) saturate(125%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.12),0 8px 24px rgba(0,0,0,.12);
  font-family: var(--nps-body-font-family,var(--e-global-typography-secondary-font-family,inherit));
  overflow-wrap: anywhere;
}
body .nps-trip-block .nps-teams-grid > .nps-auto-car,
body .nps-auto-car-card .nps-car-details { padding: var(--nps-card-padding,21px); }
body .nps-auto-cars .nps-auto-car-card { padding: 0; overflow: hidden; }
body .nps-auto-car-card .nps-car-photo {
  background: rgba(20,42,61,.2);
  border-radius: 0;
}
body .nps-auto-car-card .nps-car-photo-empty { color: inherit; }
body :is(.nps-auto-car,.nps-vaerelseskort) :is(h2,h3,h4),
body :is(.nps-native-list,.nps-auto-cars,.nps-teams-grid) .nps-auto-car :is(h2,h3,h4) {
  font-family: var(--e-global-typography-primary-font-family,inherit);
  color: inherit;
}
body :is(.nps-auto-car,.nps-vaerelseskort) :is(p,li,strong) { color: inherit; }
body .nps-auto-car-card .nps-car-registration { color: inherit; opacity: .8; }
body .nps-teams-grid .nps-meal-section + .nps-meal-section {
  border-color: var(--nps-list-border,var(--nps-card-border,rgba(167,186,200,.5)));
}
/* Room containers keep Elementor's layout, spacing and child widgets. */
.nps-car-wishes { margin-top: 1rem; padding-top: 1rem; border-top: 1px dashed rgba(255,214,122,.65); }
.nps-car-wishes h4 { margin: 0 0 .4rem; }
.nps-car-wishes ul { margin: .65rem 0; padding-left: 1.1em; }
.nps-car-wishes .nps-wish-label { display: inline-block; border: 1px dashed currentColor; border-radius: 5px; padding: .1em .4em; font-size: .8em; }
.nps-car-wishes button { width: 100%; min-height: 44px; margin-top: .65rem; padding: .6em .75em; font: inherit; color: inherit; background: rgba(20,42,61,.65); border: 1px solid currentColor; border-radius: 8px; cursor: pointer; }
.nps-car-wishes button:disabled { opacity: .6; cursor: wait; }
.nps-car-wishes button:focus-visible { outline: 3px solid #ffd67a; outline-offset: 3px; }
.nps-car-wish-status:empty,.nps-car-wish-notice:empty { display: none; }
@media (prefers-reduced-transparency: reduce) {
  body .nps-auto-car,
  body :is(.nps-auto-cars,.nps-teams-grid,.nps-native-list) .nps-auto-car,
  body .nps-vaerelseskort,
  body .elementor-element.nps-vaerelseskort {
    background: var(--nps-card-solid-background,#142a3d);
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }
}
