/* Pages publiques de la suite (modèle Canvas) : en-tête, contenu, pied de page. */
@layer pms {

.pms-site { min-height: 100vh; min-height: 100dvh; display: flex; flex-direction: column; background: var(--pms-canvas); }
.pms-site > .pms-site__main { flex: 1 0 auto; }
.pms-site__header {
	display: flex; align-items: center; justify-content: space-between; gap: var(--pms-space-3);
	padding: var(--pms-space-3) var(--pms-space-4); padding-top: calc(var(--pms-space-3) + env(safe-area-inset-top));
	background: var(--pms-band); color: var(--pms-band-ink);
}
.pms-site__brand { display: flex; align-items: center; gap: var(--pms-space-3); color: inherit; text-decoration: none; font-weight: 700; }
.pms-site__mark { width: 36px; height: 36px; border-radius: 9px; display: grid; place-items: center; background: rgb(255 255 255 / .14); overflow: hidden; font-size: var(--pms-text-sm); }
.pms-site__mark img { width: 100%; height: 100%; object-fit: contain; background: #fff; }
.pms-site__main { width: 100%; max-width: 760px; margin: 0 auto; padding: var(--pms-space-5) var(--pms-space-4) var(--pms-space-7); }
@media (min-width: 768px) { .pms-site__main { padding-top: var(--pms-space-7); } }
.pms-site__title { font-size: var(--pms-text-2xl); margin-bottom: var(--pms-space-5); }
@media (min-width: 768px) { .pms-site__title { font-size: var(--pms-text-3xl); } }
.pms-site__content { max-width: 68ch; }
.pms-site__content :where(p, ul, ol, h2, h3, blockquote, figure, table) + :where(p, ul, ol, h2, h3, blockquote, figure, table) { margin-top: var(--pms-space-4); }
.pms-site__content :where(h2) { font-size: var(--pms-text-xl); margin-top: var(--pms-space-6); }
.pms-site__content :where(h3) { font-size: var(--pms-text-lg); margin-top: var(--pms-space-5); }
.pms-site__content :where(ul) { list-style: disc; padding-left: 1.25em; }
.pms-site__content :where(ol) { list-style: decimal; padding-left: 1.25em; }
.pms-site__content :where(li + li) { margin-top: var(--pms-space-1); }
.pms-site__footer { padding: var(--pms-space-5) var(--pms-space-4) calc(var(--pms-space-5) + env(safe-area-inset-bottom)); border-top: 1px solid var(--pms-line); color: var(--pms-ink-2); font-size: var(--pms-text-sm); text-align: center; }

}

@layer pms {
.pms-site__actions { display: flex; align-items: center; gap: var(--pms-space-2); }
.pms-site__link { display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 var(--pms-space-3); border-radius: 10px; color: var(--pms-band-ink); text-decoration: none; font-weight: 700; font-size: var(--pms-text-sm); }
.pms-site__link:hover { background: rgb(255 255 255 / .1); }
.pms-site__link--solid { background: var(--pms-band-ink); color: var(--pms-band); }
.pms-site__link--solid:hover { background: rgb(255 255 255 / .88); }
@media (max-width: 479px) { .pms-site__link-label { display: none; } .pms-site__link--solid .pms-site__link-label { display: inline; } }
.pms-site__main--wide { max-width: 1120px; }
.pms-site__main--wide .pms-site__content { max-width: none; }
.pms-site__footer nav { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--pms-space-2) var(--pms-space-4); margin-bottom: var(--pms-space-3); }
.pms-site__footer a { color: var(--pms-ink-2); }
.pms-site__narrow { max-width: 440px; }

/* Formulaires de demande */
.pms-reqform { max-width: 640px; scroll-margin-top: 24px; }
.pms-reqform__intro { font-size: var(--pms-text-lg); color: var(--pms-ink-2); margin-bottom: var(--pms-space-5); max-width: 60ch; }
.pms-reqform__done { display: grid; gap: var(--pms-space-3); padding: var(--pms-space-6) var(--pms-space-5); border-radius: var(--pms-radius); background: var(--pms-surface); border: 1px solid var(--pms-line); }
.pms-reqform__check { color: var(--pms-success); }
.pms-reqform__check .pms-icon { width: 40px; height: 40px; }
.pms-site__content .pms-reqform :where(ul) { list-style: none; padding: 0; }

/* Cartes de choix d'action sur l'accueil et les pages */
.pms-tiles { display: grid; gap: var(--pms-space-3); grid-template-columns: minmax(0, 1fr); }
@media (min-width: 640px) { .pms-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 960px) { .pms-tiles--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.pms-tile { display: flex; gap: var(--pms-space-3); align-items: flex-start; padding: var(--pms-space-4); border-radius: var(--pms-radius); background: var(--pms-surface); border: 1px solid var(--pms-line); color: inherit; text-decoration: none; }
a.pms-tile:hover { border-color: var(--pms-line-strong); background: var(--pms-surface-2); }
.pms-tile__icon { width: 44px; height: 44px; flex: none; display: grid; place-items: center; border-radius: 12px; background: var(--pms-tint); color: var(--pms-primary-text); }
.pms-tile__title { font-weight: 700; }
.pms-tile__desc { font-size: var(--pms-text-sm); color: var(--pms-ink-2); margin-top: 2px; }
}

@layer pms {
.pms-site__link { white-space: nowrap; }
.pms-site__brand { min-width: 0; }
.pms-site__brand > span:last-child { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.pms-auth .pms-site__actions { display: none; }
.pms-site__menu { display: flex; gap: var(--pms-space-1); overflow-x: auto; scrollbar-width: none; padding: 0 var(--pms-space-3) var(--pms-space-2); background: var(--pms-band); -webkit-overflow-scrolling: touch; }
.pms-site__menu::-webkit-scrollbar { display: none; }
.pms-site__menu a { flex: none; display: inline-flex; align-items: center; min-height: 36px; padding: 0 var(--pms-space-3); border-radius: 999px; color: var(--pms-band-ink-2); text-decoration: none; font-weight: 600; font-size: var(--pms-text-sm); white-space: nowrap; }
.pms-site__menu a:hover { color: var(--pms-band-ink); background: rgb(255 255 255 / .08); }
.pms-site__menu a[aria-current="page"] { color: var(--pms-band); background: var(--pms-band-ink); }
.pms-auth .pms-site__menu { display: none; }
@media (min-width: 768px) { .pms-site__menu { justify-content: center; } }
}
