/* Pages du compte : mêmes blocs et champs que le formulaire d'envoi (sendings.css), colonne étroite et lisible. */
.account-page { max-width: 1100px; margin: 0 auto; padding: 1.2rem 1rem 2.5rem; }
.account-page--narrow { max-width: 640px; }
.account-page--center { text-align: center; }
.account-title { font-family: Dosis, sans-serif; font-size: 2rem; margin: .4rem 0 .5rem; }
.account-subtitle { font-family: Dosis, sans-serif; font-size: 1.4rem; margin: 0 0 .8rem; }
.account-intro { color: var(--ink-soft); font-size: 1.05rem; margin: 0 0 1.4rem; line-height: 1.55; }
.account-hint { margin: .6rem 0 0; color: var(--ink-soft); font-size: .92rem; line-height: 1.5; }
.account-hint--top { margin: 0 0 1rem; clear: both; }
.account-hint-inline { margin: .6rem 0 0; font-weight: 400; font-size: .95rem; }
.account-alt { text-align: center; margin: 1.5rem 0 0; font-size: 1.05rem; }
.account-check { display: flex !important; align-items: center; gap: .55rem; font-weight: 400 !important; min-height: 44px; }
.account-check input { width: 1.25rem; height: 1.25rem; }
.account-form .send-block input[type="password"] { display: block; width: 100%; min-width: 0; font: inherit; font-size: 1rem; color: var(--ink); background: #fff; padding: .7rem .8rem; border: 1px solid #aebfc5; border-radius: 9px; margin-top: .35rem; min-height: 50px; }
.account-form .send-block input[type="password"]:focus { border-color: var(--turquoise-dark); outline: none; box-shadow: var(--focus); }
.account-form .send-actions-bar--form { margin: .4rem 0 0; padding-top: .9rem; }
.account-grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: 1.5rem; align-items: start; }
.account-side .send-block { margin-bottom: 1rem; }
.account-block--quiet { background: var(--paper); }
.account-notice { background: #fff9e9; border: 1px solid #e6cf8f; border-radius: 12px; padding: 1rem 1.25rem; margin: 0 0 1.2rem; display: flex; gap: 1rem; align-items: center; flex-wrap: wrap; justify-content: space-between; }
.account-notice p { margin: 0; line-height: 1.5; }
.account-link-button { background: none; border: 0; padding: .4rem 0; font: inherit; color: var(--turquoise-dark); text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.button--danger { border-color: var(--red); color: var(--red); }
.button--danger:hover, .button--danger:focus-visible { background: var(--red); color: var(--white); }
@media (max-width: 760px) {
  .account-grid { grid-template-columns: minmax(0, 1fr); }
  .account-title { font-size: 1.7rem; }
}
/* Tableau de bord */
.account-head--dashboard { display: flex; justify-content: space-between; align-items: flex-start; gap: 1rem; flex-wrap: wrap; }
.account-logout { color: var(--ink-soft); font-size: .95rem; text-underline-offset: 4px; margin-top: .9rem; }
.account-breadcrumb { font-size: .95rem; color: var(--ink-soft); margin: 0 0 .4rem; }
.account-tiles { list-style: none; padding: 0; margin: .5rem 0 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem; }
.account-tile { position: relative; background: white; border: 1px solid #dce6e9; border-radius: 18px; min-height: 150px; }
.account-tile > a, .account-tile--soon { display: grid; grid-template-columns: 56px minmax(0, 1fr); grid-template-rows: auto auto; column-gap: 1rem; row-gap: .3rem; padding: 1.4rem 1.5rem; text-decoration: none; color: var(--ink); height: 100%; box-sizing: border-box; }
.account-tile svg { grid-row: 1 / 3; width: 48px; height: 48px; fill: var(--turquoise); }
.account-tile--soon svg { fill: #a9b6bc; }
.account-tile__title { font-family: Dosis, sans-serif; font-size: 1.45rem; font-weight: 700; }
.account-tile__text { color: var(--ink-soft); font-size: 1rem; line-height: 1.5; }
.account-tile > a:hover, .account-tile > a:focus-visible { background: var(--turquoise-light); border-radius: 18px; outline: none; }
.account-tile > a:focus-visible { box-shadow: var(--focus); }
.account-tile__badge { grid-column: 2; justify-self: start; margin-top: .3rem; font-size: .8rem; font-weight: 700; color: #705521; background: #fff9e9; border: 1px solid #e6cf8f; border-radius: 999px; padding: .2rem .7rem; }
.account-tile--soon .account-tile__title { color: var(--ink-soft); }
.account-inline-button { display: inline-block; margin-top: .5rem; }
/* Mes envois */
.account-sendings { list-style: none; padding: 0; margin: 0; display: grid; gap: 1rem; }
.account-sending { display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: 1.2rem; background: white; border: 1px solid #dce6e9; border-radius: 18px; padding: 1.1rem 1.3rem; }
.account-sending__image img { display: block; width: 140px; height: auto; border-radius: 10px; }
.account-sending__date { margin: 0; color: var(--ink-soft); font-size: .9rem; }
.account-sending__title { font-family: Dosis, sans-serif; font-size: 1.3rem; margin: .2rem 0 .6rem; }
.account-sending__recipients { list-style: none; padding: 0; margin: 0 0 .7rem; line-height: 1.6; }
.account-sending__address { color: var(--ink-soft); font-size: .9rem; overflow-wrap: anywhere; }
.account-sending__again { font-size: .95rem; text-underline-offset: 4px; }
@media (max-width: 760px) {
  .account-tiles { grid-template-columns: minmax(0, 1fr); }
  .account-sending { grid-template-columns: minmax(0, 1fr); }
}
/* Mes contacts */
.account-search { display: flex; gap: .6rem; align-items: center; flex-wrap: wrap; margin: 0 0 1.2rem; }
.account-search input { flex: 1; min-width: 220px; font: inherit; font-size: 1rem; padding: .7rem .9rem; border: 1px solid #aebfc5; border-radius: 9px; min-height: 50px; }
.account-search .button { display: inline-block; padding: .7rem 1.1rem; font-size: 1rem; }
.account-search__reset { font-size: .95rem; }
.account-contacts { list-style: none; padding: 0; margin: 0; display: grid; gap: .75rem; }
.account-contact { display: flex; justify-content: space-between; align-items: center; gap: 1rem; flex-wrap: wrap; background: white; border: 1px solid #dce6e9; border-radius: 14px; padding: .9rem 1.2rem; }
.account-contact__name { font-family: Dosis, sans-serif; font-size: 1.25rem; margin: 0 0 .2rem; overflow-wrap: anywhere; }
.account-contact__name a { color: var(--ink); text-decoration: none; }
.account-contact__name a:hover { text-decoration: underline; }
.account-contact__details { margin: 0; color: var(--ink-soft); font-size: .95rem; display: flex; flex-wrap: wrap; gap: .3rem 1rem; }
.account-contact__actions { display: flex; align-items: center; gap: 1rem; }
.account-contact__actions .button { display: inline-block; padding: .6rem 1rem; font-size: 1rem; }
.account-contact__edit { font-size: .95rem; text-underline-offset: 4px; }
.account-contact-delete { margin-top: 1.5rem; text-align: center; }
.account-link-button--danger { color: var(--red); }
/* Historique de l'ancien site */
.account-subtitle--section { margin: 2rem 0 .8rem; }
.account-years { display: flex; flex-wrap: wrap; gap: .4rem; margin: 0 0 1rem; }
.account-years a { display: inline-block; padding: .45rem .8rem; border: 1px solid #dce6e9; border-radius: 999px; text-decoration: none; color: var(--turquoise-dark); font-weight: 700; min-height: 40px; }
.account-years a[aria-current="page"] { background: var(--turquoise); border-color: var(--turquoise); color: var(--white); }
.account-sending__kind { display: grid; place-items: center; width: 140px; height: 104px; border-radius: 10px; background: var(--paper); font-size: 2.2rem; color: var(--turquoise-dark); }
.account-sending__note { color: var(--ink-soft); border-bottom: 1px dotted var(--ink-soft); cursor: help; }
.account-sending__message { margin: 0 0 .6rem; padding: .5rem .9rem; border-left: 3px solid #d6e7ed; color: var(--ink-soft); font-style: italic; white-space: pre-line; overflow-wrap: anywhere; }
.account-sending__links { display: flex; align-items: center; gap: 1rem; flex-wrap: wrap; margin: 0; }
.account-sending__view { display: inline-block; padding: .55rem 1rem; font-size: .95rem; }
.account-legacy-card { max-width: 640px; margin: 0 0 1.2rem; }
.account-legacy-card img, .account-legacy-card video { display: block; width: 100%; height: auto; border-radius: 12px; }
/* Mes commandes de cartes papier */
.account-orders { list-style: none; padding: 0; margin: 0 0 1.2rem; display: grid; gap: 1.4rem; }
.account-order { background: white; border: 1px solid #dce6e9; border-radius: 18px; padding: 1.1rem 1.3rem; }
.account-order__head { margin: 0 0 .4rem; padding-bottom: .7rem; border-bottom: 1px solid #e6eef0; font-size: 1rem; overflow-wrap: anywhere; }
.account-order__item { border: 0; border-radius: 0; padding: .9rem 0 0; }
.account-order__state { font-weight: 700; color: var(--turquoise-dark); }
.account-order__state--cancelled, .account-order__state--refunded { color: var(--ink-soft); }
.account-sending__tracking { margin: 0 0 .7rem; overflow-wrap: anywhere; }
.account-order__item + .account-order__item { margin-top: .9rem; border-top: 1px dashed #dce6e9; }
