/* Compte client — auth + SSO (mobile-first) */

.compte-auth {
  max-width: var(--container-prose);
  margin: 0 auto;
  padding: var(--space-sm) clamp(20px, 5vw, 80px) var(--space-2xl);
}

.compte-auth--signup,
.compte-auth--login,
.compte-auth--orders-guest,
.compte-auth--order-tracking,
.compte-auth--forgot,
.compte-auth--reset {
  max-width: var(--container-max);
  padding-top: var(--space-lg);
  padding-inline: clamp(16px, 4vw, 48px);
}

.compte-auth--signup .compte-auth__head,
.compte-auth--login .compte-auth__head,
.compte-auth--orders-guest .compte-auth__head,
.compte-auth--order-tracking .compte-auth__head,
.compte-auth--forgot .compte-auth__head,
.compte-auth--reset .compte-auth__head {
  width: 100%;
  max-width: var(--container-prose);
  margin-inline: auto;
  margin-bottom: var(--space-xl);
  text-align: left;
}

.compte-auth--signup .compte-auth__title,
.compte-auth--login .compte-auth__title,
.compte-auth--orders-guest .compte-auth__title,
.compte-auth--order-tracking .compte-auth__title,
.compte-auth--forgot .compte-auth__title,
.compte-auth--reset .compte-auth__title {
  text-align: left;
  text-wrap: balance;
}

.compte-auth--signup .compte-auth__lede,
.compte-auth--login .compte-auth__lede,
.compte-auth--orders-guest .compte-auth__lede,
.compte-auth--order-tracking .compte-auth__lede,
.compte-auth--forgot .compte-auth__lede,
.compte-auth--reset .compte-auth__lede {
  margin: 0;
  text-align: left;
}

.compte-auth--signup .compte-auth__center,
.compte-auth--login .compte-auth__center,
.compte-auth--orders-guest .compte-auth__center,
.compte-auth--order-tracking .compte-auth__center,
.compte-auth--forgot .compte-auth__center,
.compte-auth--reset .compte-auth__center {
  max-width: var(--container-prose);
  margin-inline: auto;
}

.compte-auth__head {
  margin-bottom: var(--space-md);
  text-align: center;
}

.compte-auth__title {
  margin: 0 0 var(--space-sm);
  text-wrap: balance;
}

.compte-auth__lede {
  margin: 0 auto;
  max-width: 620px;
  font-family: var(--font-serif);
  font-style: italic;
  font-size: var(--section-lede-size);
  font-weight: var(--fw-light);
  line-height: var(--lh-relaxed);
  color: var(--color-ink-soft);
}

.compte-auth__hint {
  margin: calc(var(--space-sm) * -1) 0 var(--space-md);
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
  color: var(--color-ink-soft);
}

.compte-auth--newsletter-proposition .compte-auth__label {
  flex-direction: row;
  align-items: flex-start;
  gap: var(--space-sm);
}

.compte-auth__actions {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.compte-auth__link-btn {
  padding: var(--space-sm) var(--space-md);
  border: none;
  border-radius: var(--radius-sm);
  background: none;
  font: inherit;
  color: var(--color-ink-soft);
  cursor: pointer;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.compte-auth__form {
  display: flex;
  flex-direction: column;
  gap: 0;
}

.compte-auth--signup .compte-auth__form {
  margin-top: 0;
}

.compte-auth--login .compte-auth__form,
.compte-auth--forgot .compte-auth__form,
.compte-auth--reset .compte-auth__form {
  margin-top: 0;
}

.compte-auth__card {
  padding: clamp(var(--space-md), 4vw, var(--space-lg));
  border: 1px solid var(--color-line);
  border-radius: var(--radius-boutique-media);
}

.compte-auth__rule {
  display: flex;
  align-items: center;
  gap: var(--space-sm);
  margin: var(--space-md) 0;
  border: 0;
}

.compte-auth__rule-line {
  flex: 1;
  border: 0;
  border-top: 1px solid var(--color-line);
  margin: 0;
}

.compte-auth__rule-text {
  flex-shrink: 0;
  max-width: 70%;
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
  text-transform: uppercase;
  text-align: center;
  line-height: var(--lh-snug);
  color: var(--color-ink-soft);
}

.compte-sso--first .compte-auth__rule {
  margin-top: 0;
}

.compte-auth__existing {
  position: relative;
  margin-top: var(--space-xl);
  padding-top: var(--space-lg);
  text-align: center;
}

.compte-auth__existing::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  border: 0;
  background: var(--fade-rule-bg);
}

.compte-auth__existing-text {
  margin: 0 0 var(--space-md);
  font-family: var(--font-serif);
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
  line-height: var(--lh-snug);
  color: var(--color-ink-soft);
}

.compte-auth__login-btn.btn {
  width: 100%;
  max-width: 20rem;
}

.compte-auth__row {
  display: flex;
  flex-direction: column;
}

.compte-auth__row .form-field {
  flex: 1;
}

@media (min-width: 36rem) {
  .compte-auth__row {
    flex-direction: row;
    gap: var(--space-md);
  }
}

.compte-auth__label {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  font-size: var(--fs-small);
}

.compte-auth__label--checkbox,
.compte-auth__label:has(> input[type="checkbox"]) {
  flex-direction: row;
  align-items: flex-start;
  gap: var(--space-sm);
  margin: var(--space-sm) 0 var(--space-md);
  font-family: var(--font-serif);
  font-size: var(--fs-small);
  font-style: italic;
  font-weight: var(--fw-light);
  line-height: var(--lh-relaxed);
  color: var(--color-ink-soft);
  cursor: pointer;
}

.compte-auth__label--checkbox input[type="checkbox"],
.compte-auth__label:has(> input[type="checkbox"]) input[type="checkbox"] {
  appearance: none;
  -webkit-appearance: none;
  flex-shrink: 0;
  width: 18px;
  height: 18px;
  margin: 0.12em 0 0;
  border: 1px solid color-mix(in srgb, var(--color-ink-soft) 50%, transparent);
  border-radius: 4px;
  background: color-mix(in srgb, var(--season-bg-secondary) 55%, transparent);
  cursor: pointer;
  transition:
    border-color var(--motion-base) var(--easing-smooth),
    background-color var(--motion-base) var(--easing-smooth),
    box-shadow var(--motion-base) var(--easing-smooth);
}

.compte-auth__label:has(> input[type="checkbox"]) input[type="checkbox"]:checked {
  border-color: var(--season-accent, var(--color-cherry));
  background-color: var(--season-accent, var(--color-cherry));
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 10'%3E%3Cpath fill='none' stroke='%23F4EBDC' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round' d='M1.5 5.2 4.6 8.2 10.5 1.8'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: center;
  background-size: 11px 9px;
}

.compte-auth__label--checkbox input[type="checkbox"]:focus-visible,
.compte-auth__label:has(> input[type="checkbox"]) input[type="checkbox"]:focus-visible {
  outline: 2px solid color-mix(in srgb, var(--season-accent-soft, var(--color-cherry-soft)) 72%, transparent);
  outline-offset: 2px;
}

.compte-auth__label--checkbox input[type="checkbox"]:hover,
.compte-auth__label:has(> input[type="checkbox"]) input[type="checkbox"]:hover {
  border-color: color-mix(in srgb, var(--season-accent, var(--color-cherry)) 55%, var(--color-ink-soft) 45%);
}

.compte-auth__select-field {
  margin-bottom: var(--space-md);
}

.compte-auth__select-label {
  display: block;
  margin-bottom: var(--space-xs);
  font-family: var(--font-mono);
  font-size: var(--fs-eyebrow);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--color-ink-soft);
}

.compte-auth__select {
  display: block;
  width: 100%;
  padding: 14px 0 8px;
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--color-line);
  color: var(--color-ink);
  font-family: var(--font-sans);
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
  cursor: pointer;
  outline: none;
  transition: border-color var(--motion-base) var(--easing-smooth);
  appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, var(--color-ink-soft) 50%),
    linear-gradient(135deg, var(--color-ink-soft) 50%, transparent 50%);
  background-position: calc(100% - 18px) calc(50% + 2px), calc(100% - 12px) calc(50% + 2px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
}

.compte-auth__select:focus {
  border-color: var(--color-cherry);
}

.compte-auth__input {
  width: 100%;
  padding: var(--space-sm);
  border: 1px solid var(--color-line);
  border-radius: var(--radius-sm);
  font: inherit;
}

.compte-auth__submit.btn {
  width: 100%;
  margin-top: var(--space-xs);
}

.compte-auth__error {
  color: var(--color-cherry-soft);
  margin: 0 0 var(--space-md);
  font-size: var(--fs-small);
  text-align: center;
}

.compte-auth__success {
  color: var(--color-ink-soft);
  margin: 0 0 var(--space-md);
  text-align: center;
}

.compte-auth__aux-link {
  margin: var(--space-md) 0 0;
  font-family: var(--font-serif);
  font-size: var(--fs-small);
  font-style: italic;
  text-align: center;
}

.compte-auth__aux-link a {
  color: var(--color-ink-soft);
  text-decoration: none;
  border-bottom: 1px solid var(--color-line);
}

.compte-auth__aux-link a:hover,
.compte-auth__aux-link a:focus-visible {
  color: var(--color-ink);
  border-bottom-color: var(--color-ink);
}

.compte-auth__links {
  margin-top: var(--space-lg);
  font-size: var(--fs-small);
  text-align: center;
}

.compte-auth__link {
  font-family: var(--font-serif);
  font-style: italic;
  color: var(--color-ink);
  text-decoration: none;
  border-bottom: 1px solid var(--color-line);
  transition: border-color var(--motion-base) var(--easing-smooth),
              color var(--motion-base) var(--easing-smooth);
}

.compte-auth__link:hover,
.compte-auth__link:focus-visible {
  color: var(--color-cherry);
  border-color: var(--color-cherry);
}

.compte-sso {
  --compte-sso-radius: 10px;
  margin: var(--space-lg) 0 0;
  padding-top: var(--space-lg);
  border-top: 1px solid var(--color-line);
}

.compte-sso--first {
  margin: 0;
  padding-top: 0;
  border-top: none;
}

.compte-sso__label {
  text-align: center;
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--color-ink-soft);
  margin: 0 0 var(--space-sm);
}

.compte-sso__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.compte-sso__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--space-sm);
  width: 100%;
  padding: var(--space-sm) var(--space-md);
  border: 1px solid var(--color-line);
  border-radius: var(--compte-sso-radius);
  text-align: center;
  text-decoration: none;
  font-family: var(--font-sans);
  font-size: var(--fs-small);
  font-weight: var(--fw-light);
  letter-spacing: var(--tracking-wide);
  text-transform: uppercase;
  color: var(--color-ink);
  background: transparent;
  transition: border-color var(--motion-base) var(--easing-smooth),
              background-color var(--motion-base) var(--easing-smooth);
}

.compte-sso__icon {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.compte-sso__text {
  line-height: 1.2;
}

.compte-sso__btn:hover,
.compte-sso__btn:focus-visible {
  border-color: var(--color-cherry);
  background: rgba(36, 27, 22, 0.04);
}

.compte-sso__btn--google {
  border-color: var(--color-line);
}

.compte-sso__btn--facebook {
  border-color: var(--color-line);
}

.compte-sso__btn--instagram {
  border-color: var(--color-line);
}

@media (min-width: 40rem) {
  .compte-sso__list {
    flex-direction: row;
    flex-wrap: wrap;
  }

  .compte-sso__list li {
    flex: 1 1 calc(50% - var(--space-xs));
  }

  .compte-sso__list li:last-child:nth-child(3) {
    flex: 1 1 100%;
  }
}

.compte-subtitle {
  font-family: var(--font-serif);
  font-size: var(--type-inpage-h2-size);
  margin: var(--space-lg) 0 var(--space-sm);
}

.compte-address-list {
  list-style: none;
  padding: 0;
  margin: 0 0 var(--space-md);
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.compte-address-card {
  padding: var(--space-md);
  border: 1px solid var(--color-line);
  border-radius: var(--radius-sm);
}

.compte-address-card__badge {
  display: inline-block;
  font-size: var(--fs-mono);
  margin-bottom: var(--space-xs);
  color: var(--color-ink-soft);
}

.compte-address-card__delete {
  margin-top: var(--space-sm);
}

.compte-link-btn {
  background: none;
  border: none;
  padding: 0;
  font: inherit;
  color: var(--color-cherry);
  cursor: pointer;
  text-decoration: underline;
}

/* Suivi commande invite — /commande/{reference}/ */
.compte-order-tracking__reference {
  margin: var(--space-sm) 0 0;
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
  color: var(--color-ink-soft);
}

.compte-order-tracking__reference code {
  font-family: inherit;
  font-size: inherit;
}

.compte-order-tracking__result {
  padding: clamp(var(--space-md), 4vw, var(--space-lg));
  border: 1px solid color-mix(in srgb, var(--season-accent) 22%, var(--color-line));
  border-radius: var(--radius-boutique-media, 10px);
  background: color-mix(in srgb, var(--season-bg) 94%, white);
  text-align: center;
}

.compte-order-tracking__result-title {
  margin: 0 0 var(--space-md);
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  font-weight: var(--fw-regular);
  letter-spacing: var(--tracking-wide);
  text-transform: uppercase;
  color: var(--color-ink-soft);
}

.compte-order-tracking__status {
  margin: 0;
  font-family: var(--font-serif);
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
  line-height: var(--lh-relaxed);
  color: var(--color-ink);
}

.compte-order-tracking__status strong {
  display: block;
  margin-top: var(--space-xs);
  font-size: var(--section-lede-size);
  font-weight: var(--fw-light);
  color: var(--color-ink);
}

.compte-order-tracking__tracking-link {
  margin: var(--space-md) 0 0;
}

.compte-order-tracking__tracking-hint {
  margin: var(--space-xs) 0 0;
  font-family: var(--font-serif);
  font-size: var(--fs-small);
  font-weight: var(--fw-light);
  line-height: var(--lh-relaxed);
  color: var(--color-ink-soft);
}

.compte-order-tracking__next {
  margin-top: var(--space-lg);
  padding-top: var(--space-md);
  border-top: 1px solid var(--color-line);
  text-align: left;
}

.compte-order-tracking__next-label {
  margin: 0 0 var(--space-xs);
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
  text-transform: uppercase;
  color: var(--color-ink-soft);
}

.compte-order-tracking__next-text {
  margin: 0;
  font-family: var(--font-serif);
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
  line-height: var(--lh-relaxed);
  color: var(--color-ink);
}

.compte-order-tracking__account {
  margin-top: var(--space-lg);
  padding-top: var(--space-md);
  border-top: 1px solid var(--color-line);
}

.compte-order-tracking__account-lede {
  margin: 0 0 var(--space-md);
  font-family: var(--font-serif);
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
  line-height: var(--lh-relaxed);
  color: var(--color-ink-soft);
  text-align: left;
}

.compte-order-tracking__account-secondary {
  margin: var(--space-md) 0 var(--space-sm);
  font-family: var(--font-serif);
  font-size: var(--fs-small);
  font-weight: var(--fw-light);
  color: var(--color-ink-soft);
}

.compte-order-tracking__account-btn {
  display: inline-flex;
  width: 100%;
  justify-content: center;
}

.compte-order-tracking__account-btn--secondary {
  margin-top: 0;
}

/* Espace client connecté — hub + sous-pages (aligné contact / auth) */
@import url("../components/cms-page.css");

.compte-area {
  max-width: var(--container-max);
  margin: 0 auto;
  padding:
    var(--cms-page-shell-pad-top)
    var(--cms-page-shell-pad-inline)
    var(--cms-page-shell-pad-bottom);
}

.compte-area__head {
  width: 100%;
  max-width: var(--container-prose);
  margin-inline: auto;
  margin-bottom: var(--space-xl);
  text-align: left;
}

.compte-area__title {
  margin: 0 0 var(--space-sm);
}

.compte-area--order-detail .compte-area__order-ref {
  font-family: var(--type-heading-font-family);
  font-size: var(--type-section-title);
  font-weight: var(--fw-light);
  line-height: var(--lh-tight);
  color: var(--color-ink);
  margin: 0 0 var(--space-sm);
  text-wrap: balance;
}

.compte-area__greet {
  margin: 0 0 var(--space-xs);
  font-family: var(--font-serif);
  font-size: var(--section-lede-size);
  font-weight: var(--fw-light);
  line-height: var(--lh-snug);
  color: var(--color-ink);
}

.compte-area__lede {
  margin: 0;
}

.compte-area--hub .compte-area__lede {
  font-family: var(--font-serif);
  font-size: var(--section-lede-size);
  font-weight: var(--fw-light);
  line-height: var(--lh-snug);
  color: var(--color-ink);
  font-style: normal;
}

.compte-area__center {
  max-width: var(--container-prose);
  margin-inline: auto;
}

.compte-area__card {
  padding: clamp(var(--space-md), 4vw, var(--space-lg));
  border: 1px solid var(--color-line);
  border-radius: var(--radius-boutique-media);
  background: color-mix(in srgb, var(--season-bg) 94%, white);
}

.compte-area__card + .compte-area__card {
  margin-top: var(--space-md);
}

.compte-area__email {
  margin: 0 0 var(--space-lg);
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
  color: var(--color-ink-soft);
}

.compte-area__links {
  margin: var(--space-lg) 0 0;
  text-align: left;
  font-size: var(--fs-small);
}

.compte-area__links--actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-sm);
}

.compte-area__links--actions .btn {
  width: 100%;
  text-decoration: none;
}

@media (min-width: 40rem) {
  .compte-area__links--actions {
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
  }

  .compte-area__links--actions .btn {
    width: auto;
    min-width: 12rem;
  }
}

.compte-empty {
  margin: 0;
  font-family: var(--font-serif);
  font-style: italic;
  font-weight: var(--fw-light);
  color: var(--color-ink-soft);
}

.compte-hint {
  margin: 0 0 var(--space-md);
  font-family: var(--font-serif);
  font-style: italic;
  font-weight: var(--fw-light);
  color: var(--color-ink-soft);
}

/* Hub navigation */
.compte-hub__nav {
  margin-bottom: var(--space-lg);
}

.compte-hub__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.compte-hub__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-sm);
  padding: var(--space-md);
  border: 1px solid var(--color-line);
  border-radius: var(--radius-boutique-media);
  text-decoration: none;
  color: var(--color-ink);
  background: color-mix(in srgb, var(--season-bg) 94%, white);
  transition:
    border-color var(--motion-base) var(--easing-smooth),
    background-color var(--motion-base) var(--easing-smooth);
}

.compte-hub__link:hover,
.compte-hub__link:focus-visible {
  border-color: var(--color-cherry);
  background: color-mix(in srgb, var(--season-bg-secondary) 55%, transparent);
}

.compte-hub__link-text {
  font-family: var(--font-serif);
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
}

.compte-hub__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 1.75rem;
  min-height: 1.75rem;
  padding: 0 var(--space-xs);
  border-radius: 999px;
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
  color: var(--color-ink);
  background: color-mix(in srgb, var(--season-accent-soft, var(--color-cherry-soft)) 35%, var(--season-bg));
  border: 1px solid color-mix(in srgb, var(--season-accent, var(--color-cherry)) 25%, var(--color-line));
}

.compte-hub__logout {
  margin-top: var(--space-md);
}

.compte-hub__logout-btn.btn {
  width: 100%;
}

/* Profil */
.compte-profil__form .form-field {
  margin-bottom: var(--space-md);
}

.compte-profil__password {
  margin-top: var(--space-lg);
  padding-top: var(--space-lg);
  border-top: 1px solid var(--color-line);
}

.compte-profil__sso + .compte-profil__password {
  margin-top: var(--space-lg);
}

.compte-profil__password-toggle.btn {
  width: 100%;
}

.compte-profil__password-panel {
  margin-top: var(--space-md);
}

.compte-profil__password-panel .form-field {
  margin-bottom: var(--space-md);
}

.compte-profil__sso {
  margin-top: var(--space-lg);
  padding-top: var(--space-lg);
  border-top: 1px solid var(--color-line);
}

.compte-profil__sso-title {
  font-family: var(--font-serif);
  font-size: var(--type-inpage-h2-size);
  font-weight: var(--fw-light);
  margin: 0 0 var(--space-xs);
}

.compte-profil__sso-lede {
  margin: 0 0 var(--space-md);
  font-size: var(--fs-small);
  color: var(--color-ink-soft);
  line-height: var(--lh-relaxed);
}

.compte-profil__sso-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.compte-profil__sso-item {
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
  padding: var(--space-md);
  border: 1px solid var(--color-line);
  border-radius: var(--compte-sso-radius, 10px);
}

.compte-profil__sso-item.is-linked {
  border-color: color-mix(in srgb, var(--color-cherry) 18%, var(--color-line));
}

.compte-profil__sso-main {
  display: flex;
  align-items: flex-start;
  gap: var(--space-sm);
}

.compte-profil__sso-icon {
  display: inline-flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  line-height: 0;
}

.compte-profil__sso-copy {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
}

.compte-profil__sso-name {
  font-family: var(--font-sans);
  font-size: var(--fs-small);
  font-weight: var(--fw-regular);
  letter-spacing: var(--tracking-wide);
  text-transform: uppercase;
}

.compte-profil__sso-status {
  font-size: var(--fs-small);
  color: var(--color-ink);
}

.compte-profil__sso-linked-row {
  display: inline-flex;
  align-items: center;
  gap: var(--space-xs);
}

.compte-profil__sso-photo {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  border: 1px solid var(--color-line);
}

.compte-profil__sso-status--muted {
  color: var(--color-ink-soft);
}

.compte-profil__sso-display {
  font-style: italic;
}

.compte-profil__sso-actions {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: var(--space-xs);
}

.compte-profil__sso-error {
  margin: 0;
  font-size: var(--fs-small);
  color: var(--color-cherry);
  line-height: var(--lh-relaxed);
}

.compte-profil__sso-link.btn,
.compte-profil__sso-unlink.btn {
  width: 100%;
}

.compte-profil__sso-unlink-form {
  margin: 0;
}

.compte-profil__sso-hint {
  margin: 0;
  font-size: var(--fs-small);
  color: var(--color-ink-soft);
  line-height: var(--lh-relaxed);
}

@media (min-width: 40rem) {
  .compte-profil__sso-item {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }

  .compte-profil__sso-actions {
    width: auto;
    flex-shrink: 0;
  }

  .compte-profil__sso-link.btn,
  .compte-profil__sso-unlink.btn {
    width: auto;
    min-width: 10rem;
  }
}

/* Hub + table commandes + detail commande + newsletter (contenu quasi pleine largeur) */
.compte-area--hub .compte-area__center,
.compte-area--orders .compte-area__center,
.compte-area--order-detail .compte-area__center,
.compte-area--profil .compte-area__center,
.compte-area--newsletter .compte-area__center {
  width: 100%;
  max-width: none;
  min-width: 0;
  margin-inline: 0;
}

.compte-area--hub .compte-area__head,
.compte-area--orders .compte-area__head,
.compte-area--order-detail .compte-area__head,
.compte-area--profil .compte-area__head,
.compte-area--newsletter .compte-area__head {
  width: 100%;
  max-width: none;
  margin-inline: 0;
  margin-bottom: var(--space-md);
}

.compte-area--orders .compte-area__card,
.compte-area--order-detail .compte-area__card,
.compte-area--newsletter .compte-area__card {
  padding-inline: clamp(var(--space-sm), 2.5vw, var(--space-md));
  min-width: 0;
  box-sizing: border-box;
}

@media (max-width: 39.999rem) {
  .compte-area--hub,
  .compte-area--orders,
  .compte-area--order-detail {
    padding-inline: var(--space-sm);
  }

  .compte-area--orders .compte-area__card,
  .compte-area--order-detail .compte-area__card {
    padding-inline: var(--space-xs);
  }

  .compte-area--orders .compte-table th,
  .compte-area--orders .compte-table td {
    padding-inline: var(--space-2xs);
  }
}

.compte-table-wrap {
  overflow-x: auto;
  margin-inline: calc(var(--space-sm) * -1);
  padding-inline: var(--space-sm);
}

.compte-area--orders .compte-table-wrap {
  margin-inline: 0;
  padding-inline: 0;
  overflow-x: visible;
}

.compte-area--orders .compte-table {
  table-layout: fixed;
}

.compte-table {
  width: 100%;
  min-width: 100%;
  border-collapse: collapse;
  font-family: var(--font-sans);
  font-size: var(--fs-small);
  table-layout: fixed;
}

.compte-table th,
.compte-table td {
  padding: var(--space-sm) clamp(var(--space-xs), 1.5vw, var(--space-sm));
  border-bottom: 1px solid var(--color-line);
  text-align: left;
  vertical-align: middle;
}

.compte-table th {
  font-family: var(--font-mono);
  font-size: var(--fs-eyebrow);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--color-ink-soft);
  font-weight: var(--fw-regular);
}

.compte-table code {
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
}

.compte-table__ref-cell code {
  white-space: nowrap;
}

.compte-table__thumbs-cell {
  width: 3.75rem;
  vertical-align: top;
}

.compte-table__thumbs {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
}

.compte-table__thumb {
  display: block;
  width: 3rem;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--radius-sm);
  background: color-mix(in srgb, var(--season-bg-secondary) 55%, transparent);
}

.compte-table__thumb--empty {
  border: 1px solid var(--color-line);
}

.compte-area--orders .compte-table__thumbs-head,
.compte-area--orders .compte-table__thumbs-cell,
.compte-area--orders .compte-table__total-head,
.compte-area--orders .compte-table__total-cell,
.compte-area--orders .compte-table__date-head,
.compte-area--orders .compte-table__date-cell,
.compte-area--orders .compte-table__status-head,
.compte-area--orders .compte-table__status-cell {
  display: none;
}

.compte-area--orders .compte-table__date--inline {
  display: block;
  margin-top: var(--space-2xs);
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
  color: var(--color-ink-soft);
  line-height: var(--lh-snug);
}

.compte-area--orders .compte-table__ref-head,
.compte-area--orders .compte-table__ref-cell {
  min-width: 0;
  width: auto;
}

.compte-area--orders .compte-table__ref-cell code {
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
  font-size: clamp(0.625rem, 2.75vw, var(--fs-mono));
  line-height: var(--lh-snug);
}

.compte-area--orders .compte-table__action-head,
.compte-area--orders .compte-table__action-cell {
  width: 4.75rem;
  white-space: nowrap;
  padding-left: var(--space-2xs);
  padding-right: 0;
  text-align: right;
  vertical-align: middle;
}

.compte-table__view-btn.btn {
  padding: 10px 12px;
  font-size: 11px;
  min-width: 0;
  width: 100%;
  max-width: 4.5rem;
  text-decoration: none;
}

@media (min-width: 40rem) {
  .compte-area--orders .compte-table {
    table-layout: auto;
  }

  .compte-area--orders .compte-table__ref-cell code {
    white-space: nowrap;
    overflow-wrap: normal;
    word-break: normal;
    font-size: var(--fs-mono);
  }

  .compte-table__thumbs-cell {
    width: 4.75rem;
  }

  .compte-table__thumb {
    width: 4rem;
  }

  .compte-area--orders .compte-table__thumbs-head,
  .compte-area--orders .compte-table__thumbs-cell,
  .compte-area--orders .compte-table__total-head,
  .compte-area--orders .compte-table__total-cell,
  .compte-area--orders .compte-table__date-head,
  .compte-area--orders .compte-table__date-cell,
  .compte-area--orders .compte-table__status-head,
  .compte-area--orders .compte-table__status-cell {
    display: table-cell;
  }

  .compte-area--orders .compte-table__date--inline {
    display: none;
  }

  .compte-area--orders .compte-table__action-head,
  .compte-area--orders .compte-table__action-cell {
    width: auto;
    padding-inline: clamp(var(--space-xs), 1.5vw, var(--space-sm));
    text-align: left;
    white-space: normal;
  }

  .compte-table__view-btn.btn {
    width: auto;
    max-width: none;
    padding: 14px 24px;
    font-size: 13px;
  }
}

/* Masterclass list */
.compte-masterclass-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-md);
}

.compte-masterclass-list__item {
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  padding-bottom: var(--space-md);
  border-bottom: 1px solid var(--color-line);
}

.compte-masterclass-list__item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

/* Commande detail */
.compte-order-detail__summary {
  margin-bottom: var(--space-md);
}

.compte-order-detail__meta-grid {
  display: grid;
  gap: var(--space-md);
  margin: 0;
}

.compte-order-detail__meta-row {
  display: grid;
  gap: var(--space-xs);
}

.compte-order-detail__meta-row dt {
  margin: 0;
  font-family: var(--font-mono);
  font-size: var(--fs-eyebrow);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--color-ink-soft);
}

.compte-order-detail__meta-row dd {
  margin: 0;
  font-family: var(--font-serif);
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
  line-height: var(--lh-snug);
  color: var(--color-ink);
}

.compte-order-detail__status {
  display: inline-block;
  padding: 0.2em 0.65em;
  border: 1px solid color-mix(in srgb, var(--season-accent, var(--color-cherry)) 25%, var(--color-line));
  border-radius: 999px;
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
}

.compte-order-detail__delivery {
  width: 100%;
  min-width: 0;
  margin-top: var(--space-md);
  padding-top: var(--space-md);
  border-top: 1px solid var(--color-line);
}

.compte-order-detail__delivery-label {
  margin: 0 0 var(--space-xs);
  font-family: var(--font-mono);
  font-size: var(--fs-eyebrow);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--color-ink-soft);
}

.compte-order-detail__delivery-method {
  margin: 0;
  font-family: var(--font-serif);
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
  line-height: var(--lh-snug);
  color: var(--color-ink);
}

.compte-order-detail__delivery-detail {
  margin-top: var(--space-xs);
}

.compte-order-detail__delivery-name,
.compte-order-detail__delivery-address {
  margin: 0;
  font-family: var(--font-sans);
  font-size: var(--fs-small);
  line-height: var(--lh-snug);
  color: var(--color-ink-soft);
}

.compte-order-detail__delivery-address {
  margin-top: 0.15em;
}

.compte-order-detail__tracking {
  width: 100%;
  min-width: 0;
  margin-top: var(--space-md);
  padding-top: var(--space-md);
  border-top: 1px solid var(--color-line);
}

.compte-order-detail__tracking-ref-line {
  margin: 0;
}

.compte-order-detail__tracking-ref {
  font-family: var(--font-sans);
  font-size: var(--fs-small);
  line-height: var(--lh-snug);
  color: var(--color-ink-soft);
  text-decoration: none;
  border-bottom: 1px solid color-mix(in srgb, var(--color-ink-soft) 35%, transparent);
  transition: color var(--motion-base) var(--easing-smooth),
              border-color var(--motion-base) var(--easing-smooth);
}

.compte-order-detail__tracking-ref:hover,
.compte-order-detail__tracking-ref:focus-visible {
  color: var(--color-ink);
  border-color: var(--color-ink);
}

.compte-order-detail__tracking-hint {
  margin: var(--space-xs) 0 0;
  font-family: var(--font-sans);
  font-size: var(--fs-small);
  line-height: var(--lh-snug);
  color: var(--color-ink-soft);
}

.compte-order-items {
  overflow-x: auto;
}

.compte-order-items__table {
  width: 100%;
  border-collapse: collapse;
  font-family: var(--font-sans);
  font-size: var(--fs-small);
}

.compte-order-items__table th,
.compte-order-items__table td {
  padding: var(--space-sm);
  border-bottom: 1px solid var(--color-line);
  text-align: left;
  vertical-align: middle;
}

.compte-order-items__table th {
  font-family: var(--font-mono);
  font-size: var(--fs-eyebrow);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
  color: var(--color-ink-soft);
  font-weight: var(--fw-regular);
}

.compte-order-items__thumb {
  width: 4.5rem;
}

.compte-order-items__photo {
  display: block;
  width: 4rem;
  aspect-ratio: 4 / 5;
  object-fit: cover;
  border-radius: var(--radius-sm);
  background: color-mix(in srgb, var(--season-bg-secondary) 55%, transparent);
}

.compte-order-items__photo--empty {
  border: 1px solid var(--color-line);
}

.compte-order-items__number code {
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
}

.compte-order-items__title {
  font-family: var(--font-serif);
  font-weight: var(--fw-light);
  line-height: var(--lh-snug);
}

.compte-order-items__qty {
  display: inline-block;
  margin-left: var(--space-xs);
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  color: var(--color-ink-soft);
}

.compte-order-items__price {
  font-family: var(--font-serif);
  font-size: var(--fs-body);
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}

.compte-order-detail__totals {
  margin-top: var(--space-md);
  padding-top: var(--space-sm);
  border-top: 1px solid var(--color-line);
}

.compte-order-detail__totals-row {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  gap: var(--space-md);
  margin: 0 0 var(--space-xs);
  font-family: var(--font-serif);
  font-size: var(--fs-body);
  line-height: var(--lh-relaxed);
  color: var(--color-ink);
}

.compte-area--order-detail .compte-order-detail__totals-row span:last-child,
.compte-area--order-detail .compte-order-detail__totals-row strong {
  flex-shrink: 0;
  font-variant-numeric: tabular-nums;
  text-align: right;
}

.compte-order-detail__totals-row--total {
  margin-bottom: 0;
  padding-top: var(--space-sm);
  border-top: 1px solid var(--color-line);
  font-family: var(--font-sans);
  font-size: var(--fs-label);
  letter-spacing: var(--tracking-wide);
  text-transform: uppercase;
}

.compte-order-detail__totals-row--total strong {
  font-family: var(--font-serif);
  font-size: var(--fs-body);
  font-weight: var(--fw-regular);
  letter-spacing: normal;
  text-transform: none;
}

.compte-order-items__certificate .certificate-download-link {
  margin-top: 0;
}

.compte-order-items__certificate .btn.certificate-download-link {
  text-transform: none;
  letter-spacing: var(--tracking-wide);
  font-size: var(--fs-small);
  line-height: var(--lh-snug);
  white-space: normal;
  text-align: center;
  max-width: 15rem;
  padding: var(--space-sm) var(--space-md);
}

.compte-order-items__muted {
  color: var(--color-ink-soft);
  font-style: italic;
}

.compte-area--order-detail .compte-order-items {
  overflow-x: clip;
  min-width: 0;
  width: 100%;
  max-width: 100%;
}

.compte-area--order-detail .compte-order-items__table {
  display: block;
  width: 100%;
  max-width: 100%;
}

.compte-area--order-detail .compte-order-items__table thead {
  display: none;
}

.compte-area--order-detail .compte-order-items__table tbody {
  display: block;
  width: 100%;
  max-width: 100%;
}

.compte-area--order-detail .compte-order-items__table tr {
  display: grid;
  grid-template-columns: 2.75rem minmax(0, 1fr) auto;
  grid-template-areas: "thumb piece price";
  align-items: start;
  column-gap: var(--space-sm);
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  padding-block: var(--space-md);
  border-bottom: 1px solid var(--color-line);
}

.compte-area--order-detail .compte-order-items__table tr:last-child {
  border-bottom: 0;
}

.compte-area--order-detail .compte-order-items__table th,
.compte-area--order-detail .compte-order-items__table td {
  display: block;
  box-sizing: border-box;
  min-width: 0;
  padding: 0;
  border-bottom: 0;
}

.compte-area--order-detail .compte-order-items__thumb {
  grid-area: thumb;
  width: 2.75rem;
}

.compte-area--order-detail .compte-order-items__photo {
  width: 2.5rem;
}

.compte-area--order-detail .compte-order-items__piece {
  grid-area: piece;
  min-width: 0;
}

.compte-area--order-detail .compte-order-items__piece-main {
  display: flex;
  flex-direction: column;
  gap: var(--space-2xs);
  min-width: 0;
}

.compte-area--order-detail .compte-order-items__ref {
  margin: 0;
}

.compte-area--order-detail .compte-order-items__ref code {
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: break-word;
}

.compte-area--order-detail .compte-order-items__title {
  margin: 0;
  font-family: var(--font-serif);
  font-weight: var(--fw-light);
  line-height: var(--lh-snug);
  overflow-wrap: anywhere;
  word-break: break-word;
}

.compte-area--order-detail .compte-order-items__price {
  grid-area: price;
  justify-self: end;
  text-align: right;
}

.compte-area--order-detail .compte-order-items__certificate {
  margin-top: var(--space-xs);
  min-width: 0;
  max-width: 100%;
}

.compte-area--order-detail .compte-order-items__certificate .btn.certificate-download-link {
  display: flex;
  width: 100%;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0;
  padding: var(--space-sm);
  font-size: var(--fs-small);
  line-height: var(--lh-snug);
  letter-spacing: var(--tracking-wide);
  white-space: normal;
  text-align: center;
  min-height: 2.75rem;
}

@media (min-width: 40rem) {
  .compte-area--order-detail .compte-order-items__table thead {
    display: block;
    border-bottom: 1px solid var(--color-line);
  }

  .compte-area--order-detail .compte-order-items__table thead tr {
    padding-block: var(--space-sm) var(--space-xs);
    border-bottom: 0;
  }

  .compte-area--order-detail .compte-order-items__table thead th {
    font-family: var(--font-mono);
    font-size: var(--fs-eyebrow);
    letter-spacing: var(--tracking-wider);
    text-transform: uppercase;
    color: var(--color-ink-soft);
    font-weight: var(--fw-regular);
  }

  .compte-area--order-detail .compte-order-items__piece-head {
    grid-area: piece;
  }

  .compte-area--order-detail .compte-order-items__price-head {
    grid-area: price;
    justify-self: end;
    text-align: right;
  }

  .compte-area--order-detail .compte-order-items__table tr {
    grid-template-columns: 4.5rem minmax(0, 1fr) auto;
  }

  .compte-area--order-detail .compte-order-items__piece-main {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: baseline;
    column-gap: var(--space-sm);
    row-gap: var(--space-2xs);
  }

  .compte-area--order-detail .compte-order-items__ref code {
    white-space: nowrap;
  }

  .compte-area--order-detail .compte-order-items__thumb {
    width: 4.5rem;
  }

  .compte-area--order-detail .compte-order-items__photo {
    width: 4rem;
  }
}

.compte-order-history {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.compte-order-history__item {
  display: grid;
  gap: var(--space-xs);
  padding-bottom: var(--space-sm);
  border-bottom: 1px solid var(--color-line);
}

.compte-order-history__item:last-child {
  padding-bottom: 0;
  border-bottom: 0;
}

.compte-order-history__date {
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
  color: var(--color-ink-soft);
}

.compte-order-history__change {
  font-family: var(--font-serif);
  font-weight: var(--fw-light);
  line-height: var(--lh-snug);
  color: var(--color-ink);
}

.compte-order-history__hint {
  font-family: var(--font-sans);
  font-size: var(--fs-small);
  font-weight: var(--fw-regular);
  color: var(--color-ink-soft);
}

.compte-order-history__item--next {
  padding-top: var(--space-sm);
  margin-top: var(--space-xs);
  border-top: 1px solid var(--color-line);
  border-bottom: 0;
}

.compte-order-history__next-label {
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
  color: var(--color-ink-soft);
  text-transform: uppercase;
}

.compte-order-history__next-text {
  margin: 0;
  font-family: var(--font-serif);
  font-weight: var(--fw-light);
  line-height: var(--lh-relaxed);
  color: var(--color-ink-soft);
}

@media (min-width: 40rem) {
  .compte-order-detail__meta-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--space-lg);
  }

  .compte-order-detail__meta-row--full {
    grid-column: 1 / -1;
  }

  .compte-order-history__item {
    grid-template-columns: minmax(10rem, 14rem) 1fr;
    align-items: baseline;
    gap: var(--space-md);
  }

  .compte-order-history__item--next {
    align-items: start;
  }
}

.compte-address-card--readonly {
  border: 0;
  padding: var(--space-sm) 0;
  border-bottom: 1px solid var(--color-line);
  border-radius: 0;
}

.compte-address-list--readonly .compte-address-card--readonly:last-child {
  border-bottom: 0;
}

.compte-newsletter__intro {
  margin: 0 0 var(--space-lg);
  font-family: var(--font-sans);
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
  line-height: var(--lh-relaxed);
  color: var(--color-ink-soft);
}

.compte-newsletter__intro .compte-newsletter__email {
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
  color: var(--color-ink);
}

.compte-newsletter__options {
  margin: 0 0 var(--space-md);
  padding: 0;
  border: 0;
}

.compte-newsletter__options .compte-auth__label--checkbox {
  margin-bottom: var(--space-sm);
  font-style: normal;
}

@media (min-width: 40rem) {
  .compte-hub__list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: var(--space-sm);
  }
}

@media (min-width: 64rem) {
  .compte-area--hub .compte-hub__list {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* Hub — commandes en cours */
.compte-hub__pending {
  margin-bottom: var(--space-lg);
  padding: clamp(var(--space-md), 4vw, var(--space-lg));
  border: 1px solid color-mix(in srgb, var(--season-accent, var(--color-cherry)) 22%, var(--color-line));
  border-radius: var(--radius-boutique-media);
  background: color-mix(in srgb, var(--season-bg) 94%, white);
}

.compte-hub__pending-title {
  margin: 0 0 var(--space-xs);
  font-family: var(--font-serif);
  font-size: var(--type-inpage-h2-size);
  font-weight: var(--fw-light);
  color: var(--color-ink);
}

.compte-hub__pending-lede {
  margin: 0 0 var(--space-md);
  font-family: var(--font-serif);
  font-style: italic;
  font-size: var(--fs-small);
  font-weight: var(--fw-light);
  line-height: var(--lh-relaxed);
  color: var(--color-ink-soft);
}

.compte-hub__pending-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.compte-hub__pending-link {
  display: grid;
  gap: var(--space-xs);
  padding: var(--space-md);
  border: 1px solid var(--color-line);
  border-radius: var(--radius-boutique-media);
  text-decoration: none;
  color: var(--color-ink);
  background: color-mix(in srgb, var(--season-bg-secondary) 35%, transparent);
  transition:
    border-color var(--motion-base) var(--easing-smooth),
    background-color var(--motion-base) var(--easing-smooth);
}

.compte-hub__pending-thumbs {
  display: block;
}

.compte-hub__pending-thumbs .compte-table__thumbs {
  justify-content: flex-start;
}

.compte-hub__pending-link:hover,
.compte-hub__pending-link:focus-visible {
  border-color: var(--color-cherry);
  background: color-mix(in srgb, var(--season-bg-secondary) 55%, transparent);
}

.compte-hub__pending-ref code {
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
}

.compte-hub__pending-meta {
  display: flex;
  flex-wrap: wrap;
  gap: var(--space-sm);
  align-items: center;
}

.compte-hub__pending-status {
  display: inline-block;
  padding: 0.15em 0.55em;
  border: 1px solid color-mix(in srgb, var(--season-accent, var(--color-cherry)) 25%, var(--color-line));
  border-radius: 999px;
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
  color: var(--color-ink);
}

.compte-hub__pending-date {
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  color: var(--color-ink-soft);
}

.compte-hub__pending-total {
  font-family: var(--font-serif);
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
  color: var(--color-ink);
}

@media (min-width: 36rem) {
  .compte-hub__pending-link {
    grid-template-columns: auto minmax(0, 1.2fr) minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--space-md);
  }

  .compte-hub__pending-total {
    text-align: right;
  }
}

/* Hub — avant-premières collection */
.compte-hub__early-access {
  margin-bottom: var(--space-lg);
  padding: clamp(var(--space-md), 4vw, var(--space-lg));
  border: 1px solid color-mix(in srgb, var(--season-accent, var(--color-cherry)) 22%, var(--color-line));
  border-radius: var(--radius-boutique-media);
  background: color-mix(in srgb, var(--season-bg) 94%, white);
}

.compte-hub__early-access-title {
  margin: 0 0 var(--space-xs);
  font-family: var(--font-serif);
  font-size: var(--type-inpage-h2-size);
  font-weight: var(--fw-light);
  color: var(--color-ink);
}

.compte-hub__early-access-lede {
  margin: 0 0 var(--space-md);
  font-family: var(--font-serif);
  font-style: italic;
  font-size: var(--fs-small);
  font-weight: var(--fw-light);
  line-height: var(--lh-relaxed);
  color: var(--color-ink-soft);
}

.compte-hub__early-access-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: var(--space-sm);
}

.compte-hub__early-access-card {
  display: grid;
  gap: var(--space-sm);
  padding: var(--space-md);
  border: 1px solid color-mix(in srgb, var(--season-accent, var(--color-cherry)) 28%, var(--color-line));
  border-radius: var(--radius-boutique-media);
  background: color-mix(in srgb, var(--season-bg) 92%, white);
  background-image: var(--season-bokeh);
  color: var(--color-ink);
}

.compte-hub__early-access-card--open {
  animation: compte-hub-early-pulse 3.2s ease-in-out infinite;
}

@keyframes compte-hub-early-pulse {
  0%,
  100% {
    transform: scale(1);
    opacity: 1;
  }

  50% {
    transform: scale(1.012);
    opacity: 0.94;
  }
}

.compte-hub__early-access-name {
  margin: 0;
  font-family: var(--font-serif);
  font-size: var(--type-inpage-h3-size, 1.125rem);
  font-weight: var(--fw-light);
}

.compte-hub__early-access-status {
  margin: 0;
  font-size: var(--fs-small);
  color: var(--color-ink-soft);
}

.compte-hub__early-access-status--open {
  color: var(--season-accent, var(--color-cherry));
  font-family: var(--font-mono);
  font-size: var(--fs-mono);
  letter-spacing: var(--tracking-wide);
}

.compte-hub__early-access-status--open [data-countdown-display] {
  font-variant-numeric: tabular-nums;
}

.compte-hub__early-access-btn {
  justify-self: start;
  border-color: color-mix(in srgb, var(--season-accent, var(--color-cherry)) 55%, var(--color-ink));
  color: var(--color-ink);
}

.compte-hub__early-access-btn:hover,
.compte-hub__early-access-btn:focus-visible {
  background: color-mix(in srgb, var(--season-accent, var(--color-cherry)) 14%, transparent);
  border-color: var(--season-accent, var(--color-cherry));
  color: var(--color-ink);
}

@media (min-width: 640px) {
  .compte-hub__early-access-card {
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
  }

  .compte-hub__early-access-name {
    grid-column: 1;
    grid-row: 1;
  }

  .compte-hub__early-access-status {
    grid-column: 1;
    grid-row: 2;
  }

  .compte-hub__early-access-btn {
    grid-column: 2;
    grid-row: 1 / span 2;
    justify-self: end;
    align-self: center;
  }
}

@media (prefers-reduced-motion: reduce) {
  .compte-hub__early-access-card--open {
    animation: none;
  }
}

/* Profil — bloc livraison (reutilise acquire.css) */
.compte-profil__delivery {
  margin: var(--space-lg) 0;
  padding-top: var(--space-lg);
  border-top: 1px solid var(--color-line);
}

.compte-profil__delivery .compte-hint {
  margin-bottom: var(--space-lg);
}

.compte-profil__delivery .acquire-page__country-row {
  margin-top: var(--space-md);
}

.compte-profil__country {
  margin-top: var(--space-md);
}

.compte-profil__address {
  display: grid;
  gap: clamp(10px, 2vw, 14px);
  margin-top: var(--space-md);
}

.compte-profil__shipping-label {
  margin-top: var(--space-lg);
}

.compte-profil__shipping-methods {
  margin-top: var(--space-sm);
}

.compte-profil__relay-panel {
  margin-top: var(--space-md);
}

.compte-profil__identity {
  scroll-margin-top: calc(var(--header-height-home, 88px) + var(--space-md));
}

.compte-profil__relay-contact-hint {
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  background: none;
  text-align: inherit;
  cursor: pointer;
  text-decoration: underline;
  text-decoration-color: color-mix(in srgb, var(--color-ink) 35%, transparent);
  text-underline-offset: 0.18em;
  transition: text-decoration-color 0.2s ease, color 0.2s ease;
}

.compte-profil__relay-contact-hint:hover,
.compte-profil__relay-contact-hint:focus-visible {
  color: var(--color-accent);
  text-decoration-color: currentColor;
  outline: none;
}

.compte-profil__relay-contact-hint[hidden] {
  display: none;
}

.compte-profil__delivery .acquire-page__country-combobox.is-open {
  z-index: 6;
}

.compte-area--profil .compte-area__card {
  overflow: visible;
}

/* Suppression de compte — aligné newsletter / profil */
.compte-area--delete .compte-area__head,
.compte-area--delete .compte-area__center {
  text-align: left;
}

.compte-area--newsletter .compte-area__head,
.compte-area--newsletter .compte-area__center {
  text-align: left;
}

.compte-area--newsletter .compte-area__lede {
  font-family: var(--font-sans);
  font-style: normal;
  font-size: var(--fs-body);
  font-weight: var(--fw-light);
  line-height: var(--lh-relaxed);
  color: var(--color-ink-soft);
}

.compte-delete__form {
  margin-top: 0;
}

.compte-delete__form .compte-auth__label--checkbox {
  margin-top: 0;
  margin-bottom: var(--space-lg);
}

.compte-delete__form .compte-auth__submit.btn {
  margin-top: 0;
}
