/*
 * Fichier : abs-revendication.css
 * Emplacement : assets/css/
 *
 * Responsabilité :
 * Présente les écrans du parcours de revendication, rendus dans le modèle de
 * page Parcours du thème.
 *
 * Portée :
 *   Les règles sont portées par la classe de corps que le modèle pose, ce qui
 *   les tient hors des autres pages.
 *
 * Couleurs, espacements et rayons :
 *   Toutes les valeurs viennent des variables du thème, avec une valeur de
 *   repli. Le thème redéfinit ses variables pour prefers-contrast: more, et
 *   une seule valeur posée en dur crève ce mécanisme en silence.
 *
 * Barre de progression :
 *   Sa part est posée par une variable écrite au rendu : la valeur vient du
 *   serveur, et les attributs de la barre disent la même chose pour la
 *   lecture vocale.
 */


.discovery-parcours .abs-revendication-progression {
    margin: 0 0 var(--discovery-space-6, 1.5rem);
}

/*
 * La progression et le rappel de sortie accompagnent le parcours hors de sa
 * zone de contenu : le thème les place avant et après elle. Ils prennent la
 * colonne de lecture du titre et du texte, avec la marge latérale de la page.
 */
.discovery-parcours .abs-revendication-progression,
.discovery-parcours .abs-revendication-sortie {
    box-sizing: content-box;
    max-inline-size: var(--discovery-lecture-max, 42rem);
    margin-inline: auto;
    padding-inline: var(--discovery-space-4, 1rem);
}

.discovery-parcours .abs-revendication-progression {
    padding-block-start: var(--discovery-space-4, 1rem);
}

/*
 * Rythme d'une étape : la mention de la fiche, le texte et le formulaire
 * prennent chacun la même respiration.
 */
.discovery-parcours .abs-revendication-etape > * + * {
    margin-block-start: var(--discovery-space-4, 1rem);
}

.discovery-parcours .abs-revendication-progression-texte {
    margin: 0 0 var(--discovery-space-1, 0.25rem);
    font-size: var(--discovery-text-sm, 0.875rem);
    color: var(--discovery-color-muted, #595959);
}

.discovery-parcours .abs-revendication-progression-barre {
    overflow: hidden;
    block-size: 0.5rem;
    border-radius: var(--discovery-radius-md, 0.5rem);
    background-color: var(--discovery-color-surface, #f2f2f2);
}

.discovery-parcours .abs-revendication-progression-part {
    display: block;
    block-size: 100%;
    inline-size: var(--abs-part, 0%);
    background-color: var(--discovery-color-accent, #6b3fa0);
}

.discovery-parcours .abs-revendication-fiche,
.discovery-parcours .abs-revendication-sortie {
    font-size: var(--discovery-text-sm, 0.875rem);
}

.discovery-parcours .abs-revendication-motif {
    padding: var(--discovery-space-3, 0.75rem);
    border-inline-start: 3px solid var(--discovery-color-border, #767676);
    background-color: var(--discovery-color-surface, #f2f2f2);
}

/* Formulaire et issues d'une étape */

.discovery-parcours .abs-revendication-issues {
    display: flex;
    flex-wrap: wrap;
    gap: var(--discovery-space-3, 0.75rem);
    margin: var(--discovery-space-6, 1.5rem) 0 0;
}

.discovery-parcours .abs-revendication-champ {
    display: flex;
    flex-direction: column;
    gap: var(--discovery-space-1, 0.25rem);
    margin: 0 0 var(--discovery-space-3, 0.75rem);
}

.discovery-parcours .abs-revendication-champ input {
    max-inline-size: 28rem;
}

.discovery-parcours .abs-revendication-mention {
    font-size: var(--discovery-text-sm, 0.875rem);
    color: var(--discovery-color-muted, #595959);
}

/* Exigence réglée sur un autre écran */

.discovery-parcours .abs-revendication-exigence {
    margin: 0 0 var(--discovery-space-3, 0.75rem);
    padding: var(--discovery-space-3, 0.75rem);
    border: 1px solid var(--discovery-color-border, #767676);
    border-radius: var(--discovery-radius-md, 0.5rem);
}

/* Espace de la personne */

.abs-espace-zone {
    margin: 0 0 var(--discovery-space-8, 2rem);
    padding: var(--discovery-space-4, 1rem);
    border: 1px solid var(--discovery-color-border, #767676);
    border-radius: var(--discovery-radius-md, 0.5rem);
}

.abs-espace-lecture dt {
    font-weight: 600;
}

.abs-espace-lecture dd {
    margin: 0 0 var(--discovery-space-2, 0.5rem);
}

.abs-espace-champ {
    display: flex;
    flex-direction: column;
    gap: var(--discovery-space-1, 0.25rem);
}

.abs-espace-champ input,
.abs-espace-champ textarea {
    max-inline-size: 36rem;
}

.abs-espace-aide,
.abs-espace-etat {
    font-size: var(--discovery-text-sm, 0.875rem);
    color: var(--discovery-color-muted, #595959);
}

.abs-espace-issues {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--discovery-space-3, 0.75rem);
}

.abs-revendication-rappel {
    padding: var(--discovery-space-3, 0.75rem) var(--discovery-space-4, 1rem);
    background-color: var(--discovery-color-surface, #f2f2f2);
    border-block-end: 1px solid var(--discovery-color-border, #767676);
}

/* Champ d'appât : hors de l'écran, jamais atteint par le clavier */

.abs-garde {
    position: absolute !important;
    inline-size: 1px;
    block-size: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}
