/* Keep the MY profile card independent of reservation form/card overrides. */
html[data-ami-background="seasonal"] .customer-mypage #mypage-card {
  padding: clamp(20px, 5vw, 36px);
  border: 1px solid rgba(127,157,141,.22);
  border-radius: 24px;
  background: rgba(255,253,249,.96);
  box-shadow: 0 12px 34px rgba(43,56,48,.08);
  overflow-wrap: anywhere;
}
.customer-profile-details { margin: 24px 0; }
.customer-profile-details > div { display: grid; gap: 6px; padding: 14px 0; border-bottom: 1px solid #e1e7e2; }
.customer-profile-details dt { color: #63756a; font-size: .8rem; }
.customer-profile-details dd { margin: 0; color: #303832; line-height: 1.7; white-space: pre-line; }
.customer-profile-status { color: #52665a; font-size: .85rem; line-height: 1.8; }
.customer-profile-edit-button { width: 100%; min-height: 48px; padding: 12px 16px; border: 1px solid #6b8a78; border-radius: 16px; background: #f4f8f4; color: #365b46; font: inherit; font-weight: 700; cursor: pointer; }
.customer-profile-edit-button:disabled { opacity: .65; cursor: wait; }
.customer-profile-form { margin-top: 24px; padding-top: 24px; border-top: 1px solid #dfe5e1; }
.customer-profile-form h3 { margin: 0 0 12px; font-size: 1.1rem; }
.customer-profile-fields { display: grid; gap: 16px; }
.customer-profile-fields label { display: grid; min-width: 0; gap: 7px; color: #405749; font-size: .9rem; }
.customer-profile-fields input { box-sizing: border-box; display: block; width: 100%; min-width: 0; min-height: 48px; padding: 12px; border: 1px solid #cbd9cf; border-radius: 12px; background: #fff; color: #303832; font: inherit; font-size: 16px; }
.customer-profile-fields input:focus-visible { outline: 3px solid #8aaa97; outline-offset: 2px; }
.customer-profile-form-actions { display: grid; gap: 8px; margin-top: 20px; }
.customer-profile-form-actions .primary-button { width: 100%; }
.customer-profile-reservations { margin-top: 28px; padding-top: 22px; border-top: 1px solid #dfe5e1; }
@media (min-width: 600px) {
  .customer-profile-details > div { grid-template-columns: 120px minmax(0,1fr); gap: 16px; }
  .customer-profile-fields { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .customer-profile-fields .profile-field-wide { grid-column: 1 / -1; }
}
