/*
 * base.css — styles minimaux des widgets de la plateforme.
 * Tout le reste (typographie, couleurs, mise en page) vient du thème du site,
 * via ses variables : --cms-accent, --cms-radius, --cms-surface…
 */
.cms-hp { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.cms-form { display: grid; gap: .75rem; }
.cms-field { display: grid; gap: .25rem; }
.cms-field input, .cms-field textarea { font: inherit; padding: .6rem .75rem; border: 1px solid var(--cms-border, #ccc); border-radius: var(--cms-radius, 6px); }
.cms-check { display: flex; gap: .5rem; align-items: flex-start; font-size: .9em; }
.cms-button { font: inherit; cursor: pointer; padding: .65rem 1.2rem; border: 0; border-radius: var(--cms-radius, 6px); background: var(--cms-accent, #222); color: var(--cms-on-accent, #fff); }
.cms-button--ghost { background: transparent; color: inherit; border: 1px solid currentColor; }
.cms-button[disabled] { opacity: .6; cursor: progress; }
.cms-link { background: none; border: 0; padding: 0; font: inherit; color: inherit; text-decoration: underline; cursor: pointer; }
.cms-form__status.is-ok { color: var(--cms-success, #18794e); }
.cms-form__status.is-error { color: var(--cms-danger, #c4320a); }
.cms-cookies { position: fixed; z-index: 1000; left: 1rem; right: 1rem; bottom: 1rem; max-width: 40rem; margin: 0 auto; padding: 1rem 1.25rem; background: var(--cms-surface, #fff); color: var(--cms-text, #111); border-radius: var(--cms-radius, 8px); box-shadow: 0 8px 30px rgba(0,0,0,.18); }
.cms-cookies[hidden] { display: none; }
.cms-cookies__actions { display: flex; gap: .5rem; justify-content: flex-end; }
.cms-breadcrumbs ol, .cms-langs ul { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; margin: 0; padding: 0; }
.cms-breadcrumbs li + li::before { content: "›"; margin-right: .5rem; opacity: .6; }
.cms-pagination { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.cms-search { display: flex; gap: .5rem; }
.cms-search input { flex: 1; font: inherit; padding: .6rem .75rem; }
