/*
 * The public site's components (« PingManager Public » design system), inside the club's theme.
 * Every rule sits under `.ping-public:not(#_):not(#_)`: each `:not(#_)` counts as an id, so a
 * theme's selector with up to one id (`#content .entry-content input[type="text"]`) never
 * outranks ours, the reset included, and the reset below rolls whatever a theme gives our
 * elements back to the browser's own look before our components style them. A theme that styles
 * them with !important, or with two ids, is not supported: its pages would need the shadow root
 * (DESIGN-registration §4.9). Tokens only; the journey's own values are declared once here.
 */

/* Reset: whatever a theme gives our elements is rolled back to the browser's own defaults
   (`revert`), at the scope's weight, before the components below style them. Icons keep their
   SVG attributes, which `revert` would erase. */
.ping-public:not(#_):not(#_) { font-family: inherit; color: var(--bp-color-text); }
/* The journey pattern's own values (GUIDELINES « Shared packages »): PingManager's, not wp-ui's. */
.ping-public:not(#_):not(#_) { --ping-journey-radius: 12px; --ping-journey-title-size: 22px; --ping-journey-card-title-size: 18px; --ping-journey-progress-height: 6px; --ping-journey-shadow-selected: 0 2px 8px rgba(0, 0, 0, 0.08); }
.ping-public:not(#_):not(#_) :where(*:not(svg, svg *)) { all: revert; }
.ping-public:not(#_):not(#_) :where(*) { box-sizing: border-box; }
/* Pseudo-elements cannot sit in :where(); a theme's label::after « * » stops here too. */
.ping-public:not(#_):not(#_) *::before, .ping-public:not(#_):not(#_) *::after { all: revert; box-sizing: border-box; }
.ping-public:not(#_):not(#_) :where(input, button, select, textarea) { font: inherit; color: inherit; }
.ping-public:not(#_):not(#_) :where(h2, h3, p, ul, ol, li, fieldset, legend) { margin: 0; padding: 0; }
.ping-public:not(#_):not(#_) :where(ul, ol) { list-style: none; }
.ping-public:not(#_):not(#_) :where(fieldset) { border: 0; min-width: 0; }
.ping-public:not(#_):not(#_) :where(a) { color: var(--bp-color-action); }
/* Browsers apply `hidden` at the author's level, which the reset reverts: a field a condition hides stays hidden. */
.ping-public:not(#_):not(#_) [hidden] { display: none; }
/* Visually hidden, read aloud: WordPress's .screen-reader-text is the theme's, and the reset undoes it. */
.ping-public:not(#_):not(#_) .ping-sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }

/* Journey frame */
.ping-public:not(#_):not(#_) .ping-journey { padding-block: var(--bp-space-12); font-family: inherit; color: var(--bp-color-text); box-sizing: border-box; }
/* Progress */
.ping-public:not(#_):not(#_) .ping-progress { display: flex; flex-direction: column; gap: var(--bp-space-2); margin-bottom: var(--bp-space-6); }
.ping-public:not(#_):not(#_) .ping-progress__track { height: var(--ping-journey-progress-height); border-radius: var(--bp-radius-full); background: var(--bp-color-surface-alt); overflow: hidden; }
.ping-public:not(#_):not(#_) .ping-progress__bar { height: 100%; border-radius: var(--bp-radius-full); background: var(--bp-color-action); transition: width var(--bp-duration-slow) var(--bp-ease-out); }
.ping-public:not(#_):not(#_) .ping-progress__count { font-size: var(--bp-text-s); line-height: 16px; color: var(--bp-color-text-muted); }
/* Step */
.ping-public:not(#_):not(#_) .ping-step { display: flex; flex-direction: column; gap: var(--bp-space-6); animation: ping-step-in var(--bp-duration-slow) var(--bp-ease-out); }
.ping-public:not(#_):not(#_) .ping-step__head { display: flex; flex-direction: column; gap: var(--bp-space-2); }
.ping-public:not(#_):not(#_) .ping-step__title { margin: 0; font-size: var(--ping-journey-title-size); line-height: 28px; font-weight: 700; color: var(--bp-color-text); text-wrap: balance; }
.ping-public:not(#_):not(#_) .ping-step__hint { margin: 0; font-size: var(--bp-text-m); line-height: 20px; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-step__body { display: flex; flex-direction: column; gap: var(--bp-space-4); }
/* `Form_Renderer` wraps the fields in its form and section elements: they keep the step's rhythm. */
.ping-public:not(#_):not(#_) :is([data-ping-form], [data-ping-section]) { display: flex; flex-direction: column; gap: var(--bp-space-4); }
@keyframes ping-step-in { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
/* Choice cards: a label around a visually hidden radio or checkbox */
.ping-public:not(#_):not(#_) .ping-choices { display: grid; gap: var(--bp-space-3); grid-template-columns: 1fr; margin: 0; padding: 0; border: 0; min-width: 0; }
.ping-public:not(#_):not(#_) .ping-choices--pair { grid-template-columns: 1fr 1fr; }
@media (min-width: 600px) {
	.ping-public:not(#_):not(#_) .ping-choices--two { grid-template-columns: 1fr 1fr; }
}
.ping-public:not(#_):not(#_) .ping-choice { position: relative; display: flex; align-items: center; gap: var(--bp-space-3); min-height: var(--bp-control-height-touch); padding: var(--bp-space-4); background: var(--bp-color-surface); border: 2px solid var(--bp-color-border-control); border-radius: var(--ping-journey-radius); cursor: pointer; transition: border-color var(--bp-duration-fast) var(--bp-ease-out), background-color var(--bp-duration-fast) var(--bp-ease-out), box-shadow var(--bp-duration-fast) var(--bp-ease-out); }
.ping-public:not(#_):not(#_) .ping-choice input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.ping-public:not(#_):not(#_) .ping-choice:hover { border-color: var(--bp-color-action); }
.ping-public:not(#_):not(#_) .ping-choice:has(input:checked) { border-color: var(--bp-color-action); background: var(--bp-color-action-tint); box-shadow: var(--ping-journey-shadow-selected); }
.ping-public:not(#_):not(#_) .ping-choice:has(input:focus-visible) { outline: 2px solid var(--bp-color-focus); outline-offset: 2px; }
.ping-public:not(#_):not(#_) .ping-choice:has(input:disabled) { opacity: 0.5; cursor: not-allowed; }
.ping-public:not(#_):not(#_) .ping-choice:has(input:disabled):hover { border-color: var(--bp-color-border-control); }
.ping-public:not(#_):not(#_) .ping-choice__body { display: flex; flex-direction: column; gap: var(--bp-space-1); flex: 1; min-width: 0; }
.ping-public:not(#_):not(#_) .ping-choice__title { font-size: var(--bp-text-l); line-height: 20px; font-weight: 600; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-choice__meta { font-size: var(--bp-text-s); line-height: 16px; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-choice__price { font-size: var(--bp-text-body); line-height: 22px; font-weight: 700; color: var(--bp-color-action); white-space: nowrap; font-variant-numeric: tabular-nums; }
.ping-public:not(#_):not(#_) .ping-choice__check { flex: none; display: grid; place-items: center; width: 24px; height: 24px; border-radius: var(--bp-radius-full); border: 2px solid var(--bp-color-border-control); color: var(--bp-color-on-action); }
.ping-public:not(#_):not(#_) .ping-choice__check svg { width: 16px; height: 16px; opacity: 0; }
.ping-public:not(#_):not(#_) .ping-choice:has(input:checked) .ping-choice__check { background: var(--bp-color-action); border-color: var(--bp-color-action); }
.ping-public:not(#_):not(#_) .ping-choice:has(input:checked) .ping-choice__check svg { opacity: 1; }
.ping-public:not(#_):not(#_) .ping-choice--compact { justify-content: center; padding: var(--bp-space-3); }
.ping-public:not(#_):not(#_) .ping-choice--compact .ping-choice__body { flex: none; align-items: center; }
.ping-public:not(#_):not(#_) .ping-choice--compact .ping-choice__check { display: none; }
/* A group of choices under a heading: a federation, a licence's answers */
.ping-public:not(#_):not(#_) .ping-choice-group { display: flex; flex-direction: column; gap: var(--bp-space-3); }
.ping-public:not(#_):not(#_) .ping-choice-group + .ping-choice-group { margin-top: var(--bp-space-4); }
.ping-public:not(#_):not(#_) .ping-choice-group__more { margin-top: var(--bp-space-1); }
/* Shown while « Licence prise dans un autre club » is chosen; a browser without :has shows it always. */
.ping-public:not(#_):not(#_) .ping-choice-group:not(:has(input[value="elsewhere"]:checked)) .ping-choice-group__more { display: none; }
.ping-public:not(#_):not(#_) .ping-choice-group__head { display: flex; align-items: center; gap: var(--bp-space-3); margin: 0; }
.ping-public:not(#_):not(#_) .ping-choice-group__logo { display: grid; place-items: center; width: var(--bp-space-12); height: var(--bp-space-12); border-radius: var(--bp-radius-l); background: var(--bp-color-surface); border: 1px solid var(--bp-color-divider); font-size: var(--bp-text-s); font-weight: 700; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-choice-group__logo img { max-width: 40px; max-height: 40px; }
.ping-public:not(#_):not(#_) .ping-choice-group__name { font-size: var(--bp-text-l); line-height: 20px; font-weight: 600; color: var(--bp-color-text); }
/* Members to pick from (MemberPicker): an avatar, then the card's body; « Ajouter une personne » dashed */
.ping-public:not(#_):not(#_) .ping-member { display: flex; flex: 1; align-items: center; gap: var(--bp-space-3); min-width: 0; }
.ping-public:not(#_):not(#_) .ping-member__avatar { flex: none; display: grid; place-items: center; width: 40px; height: 40px; border-radius: var(--bp-radius-full); background: var(--bp-color-surface-alt); color: var(--bp-color-text-secondary); font-size: var(--bp-text-m); font-weight: 600; }
.ping-public:not(#_):not(#_) .ping-member__avatar svg { width: 20px; height: 20px; }
.ping-public:not(#_):not(#_) .ping-choice:has(input:checked) .ping-member__avatar { background: var(--bp-color-surface); color: var(--bp-color-action); }
/* The page's first question (EntryChoices): one card per kind of transaction, each a button. */
.ping-public:not(#_):not(#_) .ping-entries { display: flex; flex-direction: column; gap: var(--bp-space-3); }
.ping-public:not(#_):not(#_) .ping-choice--go { justify-content: space-between; width: 100%; font: inherit; text-align: left; cursor: pointer; }
.ping-public:not(#_):not(#_) .ping-choice--go .ping-choice__title { font-size: var(--ping-journey-card-title-size); line-height: 24px; }
.ping-public:not(#_):not(#_) .ping-choice--go > svg { flex: none; color: var(--bp-color-text-muted); transition: transform var(--bp-duration-fast) var(--bp-ease-out); }
.ping-public:not(#_):not(#_) .ping-choice--go:hover > svg, .ping-public:not(#_):not(#_) .ping-choice--go:focus-visible > svg { color: var(--bp-color-action); transform: translateX(2px); }
.ping-public:not(#_):not(#_) .ping-step__foot { display: flex; flex-direction: column; gap: var(--bp-space-1); margin-top: var(--bp-space-2); font-size: var(--bp-text-m); color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-step__foot p { margin: 0; }
.ping-public:not(#_):not(#_) .ping-step__lead { margin: 0; font-size: var(--bp-text-l); line-height: 1.6; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-choice--add { width: 100%; border-style: dashed; font: inherit; text-align: left; }
.ping-public:not(#_):not(#_) .ping-choice__check--box { border-radius: var(--bp-radius-s); }
.ping-public:not(#_):not(#_) .ping-choice--add .ping-member__avatar { background: var(--bp-color-action-tint); color: var(--bp-color-action); }
/* A state in a word, a colour and a dot (Badge) */
.ping-public:not(#_):not(#_) .ping-badge { display: inline-flex; align-items: center; gap: var(--bp-space-1); padding: calc(var(--bp-space-1) / 2) var(--bp-space-2); border-radius: var(--bp-radius-full); font-size: var(--bp-text-xs); line-height: 16px; font-weight: 600; letter-spacing: 0.04em; text-transform: uppercase; white-space: nowrap; }
.ping-public:not(#_):not(#_) .ping-badge::before { content: ""; width: 6px; height: 6px; border-radius: var(--bp-radius-full); background: currentColor; }
.ping-public:not(#_):not(#_) .ping-badge--warning { color: var(--bp-tone-warning-text); background: var(--bp-tone-warning-bg); }
.ping-public:not(#_):not(#_) .ping-badge--warning::before { background: var(--bp-tone-warning-mark); }
.ping-public:not(#_):not(#_) .ping-badge--success { color: var(--bp-tone-success-text); background: var(--bp-tone-success-bg); }
.ping-public:not(#_):not(#_) .ping-badge--success::before { background: var(--bp-tone-success-mark); }
.ping-public:not(#_):not(#_) .ping-badge--danger { color: var(--bp-tone-danger-text); background: var(--bp-tone-danger-bg); }
.ping-public:not(#_):not(#_) .ping-badge--todo { color: var(--bp-color-action-hover); background: var(--bp-color-action-tint); }
.ping-public:not(#_):not(#_) .ping-badge--quiet { color: var(--bp-color-text-secondary); background: var(--bp-color-surface-alt); }
/* A short message in a quiet panel (Panel): a hint, an error for the step, a confirmation */
.ping-public:not(#_):not(#_) .ping-panel { display: flex; gap: var(--bp-space-3); align-items: flex-start; padding: var(--bp-space-3) var(--bp-space-4); border-radius: var(--bp-radius-l); background: var(--bp-color-surface-alt); color: var(--bp-color-text); font-size: var(--bp-text-m); line-height: 20px; }
.ping-public:not(#_):not(#_) .ping-panel svg { flex: none; width: 20px; height: 20px; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-panel p { margin: 0; }
.ping-public:not(#_):not(#_) .ping-panel a { color: var(--bp-color-action); font-weight: 600; }
.ping-public:not(#_):not(#_) .ping-panel--error { background: var(--bp-tone-danger-bg); }
.ping-public:not(#_):not(#_) .ping-panel--error svg { color: var(--bp-tone-danger-mark); }
.ping-public:not(#_):not(#_) .ping-panel--success { background: var(--bp-tone-success-bg); }
.ping-public:not(#_):not(#_) .ping-panel--success svg { color: var(--bp-tone-success-text); }
/* Fields */
.ping-public:not(#_):not(#_) .ping-field { display: flex; flex-direction: column; gap: var(--bp-space-1); min-width: 0; }
.ping-public:not(#_):not(#_) .ping-field__label { font-size: var(--bp-text-m); line-height: 18px; font-weight: 600; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-field__optional { font-weight: 400; }
.ping-public:not(#_):not(#_) .ping-field__input { width: 100%; height: var(--bp-control-height-touch); padding: 0 var(--bp-space-3); font: inherit; font-size: var(--bp-text-body); color: var(--bp-color-text); background: var(--bp-color-surface); border: 1px solid var(--bp-color-border-control); border-radius: var(--bp-radius-l); -webkit-appearance: none; appearance: none; transition: border-color var(--bp-duration-fast) var(--bp-ease-out); }
.ping-public:not(#_):not(#_) .ping-field__input::placeholder { color: var(--bp-color-text-muted); }
.ping-public:not(#_):not(#_) .ping-field__input:hover { border-color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-field__input:focus { outline: none; border: 2px solid var(--bp-color-action); padding: 0 calc(var(--bp-space-3) - 1px); }
.ping-public:not(#_):not(#_) .ping-field__input[readonly] { color: var(--bp-color-text-secondary); background: var(--bp-color-surface-alt); border-color: var(--bp-color-surface-alt); cursor: default; }
.ping-public:not(#_):not(#_) .ping-field__help { margin: 0; font-size: var(--bp-text-m); line-height: 20px; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-field__error { display: none; align-items: center; gap: var(--bp-space-1); margin: 0; font-size: var(--bp-text-m); line-height: 20px; color: var(--bp-tone-danger-text); }
.ping-public:not(#_):not(#_) .ping-field__error svg { flex: none; width: 16px; height: 16px; }
.ping-public:not(#_):not(#_) .ping-field--error .ping-field__input { border: 2px solid var(--bp-tone-danger-text); padding: 0 calc(var(--bp-space-3) - 1px); }
.ping-public:not(#_):not(#_) .ping-field--error .ping-field__error { display: flex; animation: ping-fade-in var(--bp-duration-base) var(--bp-ease-out); }
.ping-public:not(#_):not(#_) .ping-field-pair { display: grid; grid-template-columns: 1fr 2fr; gap: var(--bp-space-4); }
@media (max-width: 480px) {
	.ping-public:not(#_):not(#_) .ping-field-pair { grid-template-columns: 1fr; }
}
/* FileField: a plain file input until ping-forms.js marks it ready, then its button. */
.ping-public:not(#_):not(#_) .ping-file__input { width: 100%; min-height: var(--bp-control-height-touch); font: inherit; font-size: var(--bp-text-m); color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-file .ping-file__button { display: none; align-self: flex-start; }
.ping-public:not(#_):not(#_) .ping-file--ready .ping-file__input { position: absolute; width: 1px; height: 1px; min-height: 0; margin: 0; padding: 0; opacity: 0; overflow: hidden; clip-path: inset(50%); }
.ping-public:not(#_):not(#_) .ping-file--ready .ping-file__button { display: inline-flex; }
.ping-public:not(#_):not(#_) .ping-file--ready .ping-file__input:focus-visible + .ping-file__button { outline: 2px solid var(--bp-color-focus); outline-offset: 2px; }
.ping-public:not(#_):not(#_) .ping-file__chosen { display: flex; align-items: center; gap: var(--bp-space-3); padding: var(--bp-space-2); padding-right: var(--bp-space-3); background: var(--bp-color-surface); border: 1px solid var(--bp-color-border-control); border-radius: var(--bp-radius-l); animation: ping-fade-in var(--bp-duration-base) var(--bp-ease-out); }
.ping-public:not(#_):not(#_) .ping-file__chosen[hidden] { display: none; }
.ping-public:not(#_):not(#_) .ping-file__thumb { flex: none; display: grid; place-items: center; width: 64px; height: 64px; overflow: hidden; color: var(--bp-color-text-secondary); background: var(--bp-color-surface-alt); border-radius: var(--bp-radius-m); }
.ping-public:not(#_):not(#_) .ping-file__thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.ping-public:not(#_):not(#_) .ping-file__name { flex: 1; min-width: 0; font-size: var(--bp-text-body); font-weight: 600; color: var(--bp-color-text); overflow-wrap: anywhere; }
.ping-public:not(#_):not(#_) .ping-file__remove { display: inline-flex; align-items: center; gap: var(--bp-space-1); min-height: var(--bp-control-height-touch); padding: 0 var(--bp-space-2); font: inherit; font-size: var(--bp-text-m); font-weight: 600; color: var(--bp-color-text-secondary); background: none; border: 0; border-radius: var(--bp-radius-m); cursor: pointer; }
.ping-public:not(#_):not(#_) .ping-file__remove:hover { color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-file__remove:focus-visible { outline: 2px solid var(--bp-color-focus); outline-offset: 2px; }
.ping-public:not(#_):not(#_) .ping-file__remove svg { width: 16px; height: 16px; }
.ping-public:not(#_):not(#_) .ping-file__remove[hidden] { display: none; }
.ping-public:not(#_):not(#_) .ping-field--error .ping-file__button { border: 2px solid var(--bp-tone-danger-text); }
.ping-public:not(#_):not(#_) .ping-portrait { display: grid; justify-items: center; gap: var(--bp-space-4); text-align: center; }
.ping-public:not(#_):not(#_) .ping-portrait__frame { position: relative; display: grid; place-items: center; width: 200px; height: 200px; overflow: hidden; border-radius: var(--bp-radius-full); border: 2px dashed var(--bp-color-border-control); background: var(--bp-color-surface-alt); color: var(--bp-color-text-muted); touch-action: none; }
.ping-public:not(#_):not(#_) .ping-portrait--filled .ping-portrait__frame { border: 2px solid var(--bp-color-surface); box-shadow: 0 0 0 1px var(--bp-color-border-control); cursor: grab; }
.ping-public:not(#_):not(#_) .ping-portrait__frame svg { width: 64px; height: 64px; }
.ping-public:not(#_):not(#_) .ping-portrait__image { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transform-origin: center; user-select: none; -webkit-user-drag: none; }
.ping-public:not(#_):not(#_) .ping-portrait__image[hidden], .ping-public:not(#_):not(#_) .ping-portrait--filled .ping-portrait__empty { display: none; }
.ping-public:not(#_):not(#_) .ping-portrait__tools { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: var(--bp-space-3); }
.ping-public:not(#_):not(#_) .ping-portrait__tools[hidden] { display: none; }
.ping-public:not(#_):not(#_) .ping-portrait__zoom { display: inline-flex; align-items: center; gap: var(--bp-space-2); color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-portrait__zoom svg { width: 18px; height: 18px; }
.ping-public:not(#_):not(#_) .ping-portrait__zoom input { width: 140px; min-height: var(--bp-control-height-touch); accent-color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-portrait__actions { display: none; flex-wrap: wrap; justify-content: center; gap: var(--bp-space-3); width: 100%; }
.ping-public:not(#_):not(#_) .ping-portrait__actions .ping-btn { flex: 1 1 200px; }
.ping-public:not(#_):not(#_) .ping-portrait__actions svg { width: 20px; height: 20px; }
.ping-public:not(#_):not(#_) .ping-portrait--ready .ping-portrait__actions { display: flex; }
.ping-public:not(#_):not(#_) .ping-portrait__input { width: 100%; min-height: var(--bp-control-height-touch); font: inherit; }
.ping-public:not(#_):not(#_) .ping-portrait--ready .ping-portrait__input { position: absolute; width: 1px; height: 1px; min-height: 0; margin: 0; padding: 0; opacity: 0; overflow: hidden; clip-path: inset(50%); }
.ping-public:not(#_):not(#_) .ping-portrait .ping-field__help { max-width: 34em; }
@keyframes ping-fade-in { from { opacity: 0; transform: translateY(-4px); } to { opacity: 1; transform: none; } }
/* Consent: a question and a yes / no pair */
.ping-public:not(#_):not(#_) .ping-consent { display: flex; flex-direction: column; gap: var(--bp-space-2); margin: 0; padding: 0; border: 0; min-width: 0; }
.ping-public:not(#_):not(#_) .ping-consent__question { margin-bottom: var(--bp-space-2); padding: 0; font-size: var(--bp-text-body); line-height: 24px; color: var(--bp-color-text); }
/* Attestation: one checkbox and its statement */
.ping-public:not(#_):not(#_) .ping-attest { display: flex; gap: var(--bp-space-3); align-items: flex-start; padding: var(--bp-space-4); background: var(--bp-color-surface); border: 1px solid var(--bp-color-border-control); border-radius: var(--bp-radius-l); cursor: pointer; }
.ping-public:not(#_):not(#_) .ping-attest:has(input:checked) { border-color: var(--bp-color-action); background: var(--bp-color-action-tint); }
.ping-public:not(#_):not(#_) .ping-attest:has(input:focus-visible) { outline: 2px solid var(--bp-color-focus); outline-offset: 2px; }
.ping-public:not(#_):not(#_) .ping-attest input { flex: none; width: 20px; height: 20px; margin: calc(var(--bp-space-1) / 2) 0 0; accent-color: var(--bp-color-action); }
.ping-public:not(#_):not(#_) .ping-attest__text { font-size: var(--bp-text-body); line-height: 24px; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-attest__text small { display: block; margin-top: var(--bp-space-1); font-size: var(--bp-text-m); line-height: 20px; color: var(--bp-color-text-secondary); }
/* Buttons and the step's navigation */
.ping-public:not(#_):not(#_) .ping-btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--bp-space-2); min-height: var(--bp-control-height-touch); padding: 0 var(--bp-space-6); font: inherit; font-size: var(--bp-text-l); line-height: 20px; font-weight: 600; border-radius: var(--bp-radius-l); border: 1px solid transparent; cursor: pointer; text-decoration: none; transition: background-color var(--bp-duration-fast) var(--bp-ease-out), border-color var(--bp-duration-fast) var(--bp-ease-out); }
.ping-public:not(#_):not(#_) .ping-btn svg { width: 16px; height: 16px; }
.ping-public:not(#_):not(#_) .ping-btn:focus-visible { outline: 2px solid var(--bp-color-focus); outline-offset: 2px; }
.ping-public:not(#_):not(#_) .ping-btn--primary { background: var(--bp-color-action); color: var(--bp-color-on-action); }
.ping-public:not(#_):not(#_) .ping-btn--primary:hover { background: var(--bp-color-action-hover); }
.ping-public:not(#_):not(#_) .ping-btn--secondary { background: var(--bp-color-surface); color: var(--bp-color-text); border-color: var(--bp-color-border-control); }
.ping-public:not(#_):not(#_) .ping-btn--secondary:hover { border-color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-btn:disabled { opacity: 0.5; cursor: not-allowed; }
.ping-public:not(#_):not(#_) .ping-nav { display: flex; justify-content: space-between; gap: var(--bp-space-3); margin-top: var(--bp-space-2); }
.ping-public:not(#_):not(#_) .ping-nav .ping-btn--primary { margin-left: auto; }
@media (max-width: 480px) {
	.ping-public:not(#_):not(#_) .ping-journey { padding-block: var(--bp-space-6); }
	.ping-public:not(#_):not(#_) .ping-nav { flex-direction: column-reverse; }
	.ping-public:not(#_):not(#_) .ping-nav .ping-btn { width: 100%; }
}
.ping-public:not(#_):not(#_) .ping-btn--link { min-height: 0; padding: 0; background: none; color: var(--bp-color-action); font-size: var(--bp-text-m); }
.ping-public:not(#_):not(#_) .ping-btn--wide { width: 100%; }
.ping-public:not(#_):not(#_) .ping-recap { display: flex; flex-direction: column; gap: var(--bp-space-3); }
.ping-public:not(#_):not(#_) .ping-recap__member { padding: var(--bp-space-5); background: var(--bp-color-surface); border: 1px solid var(--bp-color-divider); border-radius: var(--ping-journey-radius); }
.ping-public:not(#_):not(#_) .ping-recap__who { display: flex; align-items: baseline; justify-content: space-between; gap: var(--bp-space-3); padding-bottom: var(--bp-space-3); border-bottom: 1px solid var(--bp-color-divider); font-size: var(--bp-text-l); font-weight: 600; }
.ping-public:not(#_):not(#_) .ping-recap__who small { font-size: var(--bp-text-s); font-weight: 400; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-recap__lines { list-style: none; margin: 0; padding: var(--bp-space-2) 0 0; }
.ping-public:not(#_):not(#_) .ping-recap__line { display: flex; justify-content: space-between; align-items: baseline; gap: var(--bp-space-3); padding: var(--bp-space-2) 0; font-size: var(--bp-text-m); line-height: 20px; }
.ping-public:not(#_):not(#_) .ping-recap__label { display: flex; flex-direction: column; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-recap__label small { font-size: var(--bp-text-s); color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-recap__price { font-weight: 600; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ping-public:not(#_):not(#_) .ping-recap__total { display: flex; justify-content: space-between; align-items: baseline; padding: var(--bp-space-4) var(--bp-space-5); background: var(--bp-color-surface-alt); border-radius: var(--ping-journey-radius); font-size: var(--bp-text-l); }
.ping-public:not(#_):not(#_) .ping-recap__total strong { font-size: var(--ping-journey-title-size); line-height: 28px; font-variant-numeric: tabular-nums; }
.ping-public:not(#_):not(#_) .ping-recap__note { margin: 0; font-size: var(--bp-text-m); line-height: 20px; color: var(--bp-color-text-secondary); }
/* Registrations closed (DESIGN-dashboard §4.3): one card, writing to the club first, then what goes on. */
.ping-public:not(#_):not(#_) .ping-closed { --ping-closed-width: 640px; --ping-closed-mark: 56px; display: flex; flex-direction: column; align-items: center; gap: var(--bp-space-4); max-width: var(--ping-closed-width); margin-inline: auto; padding: var(--bp-space-12) var(--bp-space-8); border-radius: var(--ping-journey-radius); background: var(--bp-color-surface); box-shadow: 0 0 0 1px var(--bp-color-divider); text-align: center; box-sizing: border-box; }
.ping-public:not(#_):not(#_) .ping-closed__mark { display: inline-grid; place-items: center; width: var(--ping-closed-mark); height: var(--ping-closed-mark); border-radius: var(--bp-radius-full); background: var(--bp-color-action-tint); color: var(--bp-color-action); }
.ping-public:not(#_):not(#_) .ping-closed__title { margin: 0; font-size: var(--ping-journey-title-size); line-height: 1.3; font-weight: 700; color: var(--bp-color-text); text-wrap: balance; }
.ping-public:not(#_):not(#_) .ping-closed__lead { margin: 0; max-width: 32em; font-size: var(--bp-text-l); line-height: 1.6; color: var(--bp-color-text-secondary); text-wrap: pretty; }
.ping-public:not(#_):not(#_) .ping-closed__contact { display: flex; flex-direction: column; align-items: center; gap: var(--bp-space-2); margin-top: var(--bp-space-2); }
.ping-public:not(#_):not(#_) .ping-closed__address { font-size: var(--bp-text-m); color: var(--bp-color-text-secondary); overflow-wrap: anywhere; }
.ping-public:not(#_):not(#_) .ping-closed__going { display: flex; flex-direction: column; gap: var(--bp-space-4); align-self: stretch; margin-top: var(--bp-space-6); padding-top: var(--bp-space-6); box-shadow: inset 0 1px 0 var(--bp-color-divider); text-align: left; }
.ping-public:not(#_):not(#_) .ping-closed__subtitle { margin: 0; font-size: var(--bp-text-l); line-height: 1.4; font-weight: 600; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-closed__todos { display: flex; flex-direction: column; margin: 0; padding: 0; list-style: none; }
.ping-public:not(#_):not(#_) .ping-closed__todo { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--bp-space-3) var(--bp-space-4); margin: 0; padding: var(--bp-space-4) 0; box-shadow: inset 0 -1px 0 var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-closed__todo-text { display: flex; flex: 1 1 18em; flex-direction: column; gap: var(--bp-space-1); font-size: var(--bp-text-m); color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-closed__todo-text strong { font-size: var(--bp-text-l); color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-closed__account { margin: 0; font-size: var(--bp-text-m); color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-closed__staff { display: flex; flex-direction: column; gap: var(--bp-space-1); align-self: stretch; margin-top: var(--bp-space-6); padding: var(--bp-space-4) var(--bp-space-5); border-radius: var(--ping-journey-radius); background: var(--bp-color-surface-alt); font-size: var(--bp-text-m); color: var(--bp-color-text-secondary); text-align: left; }
.ping-public:not(#_):not(#_) .ping-closed__staff strong { color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-closed__staff-links { display: flex; flex-wrap: wrap; gap: var(--bp-space-2) var(--bp-space-5); margin-top: var(--bp-space-1); font-weight: 600; }
/* The bureau's preview while closed: a bar above the step, never mistaken for the page's own notes. */
.ping-public:not(#_):not(#_) .ping-preview { display: flex; flex-wrap: wrap; align-items: center; gap: var(--bp-space-2) var(--bp-space-4); margin-bottom: var(--bp-space-8); padding: var(--bp-space-3) var(--bp-space-5); border-radius: var(--ping-journey-radius); background: var(--bp-tone-warning-bg); color: var(--bp-color-text); font-size: var(--bp-text-m); }
.ping-public:not(#_):not(#_) .ping-preview svg { flex: none; color: var(--bp-tone-warning-text); }
.ping-public:not(#_):not(#_) .ping-preview p { flex: 1 1 20em; margin: 0; }
.ping-public:not(#_):not(#_) .ping-preview a { font-weight: 600; }
@media (max-width: 782px) {
	.ping-public:not(#_):not(#_) .ping-closed { padding: var(--bp-space-8) var(--bp-space-5); }
	.ping-public:not(#_):not(#_) .ping-closed__contact, .ping-public:not(#_):not(#_) .ping-closed__contact .ping-btn, .ping-public:not(#_):not(#_) .ping-closed__todo .ping-btn { width: 100%; }
}
/* « Mon compte » (DESIGN-member-account): a header, its tabs, then cards. The pattern's own values. */
.ping-public:not(#_):not(#_) .ping-account { --ping-account-radius: 16px; --ping-account-avatar: 44px; --ping-account-tabbar: 64px; --ping-account-title-size: 32px; --ping-account-title-line: 40px; --ping-account-title-phone: 26px; --ping-account-heading-size: 18px; --ping-account-figure-size: 28px; --ping-account-logo: 20px; --ping-account-tab-icon: 22px; --ping-account-width: 1040px; --ping-account-form: 560px; --ping-account-mark: 32px; --ping-account-mark-icon: 16px; --ping-account-track-logo: 28px; --ping-account-facts: 320px; --ping-account-text: 320px; --ping-account-avatar-large: 56px; --ping-account-details-head: 240px; --ping-account-todo-size: 20px; display: flex; flex-direction: column; gap: var(--bp-space-8); width: 100%; max-width: var(--ping-account-width); margin-inline: auto; padding-block: var(--bp-space-12); }
.ping-public:not(#_):not(#_) .ping-account__head { display: flex; flex-wrap: wrap; align-items: flex-end; justify-content: space-between; gap: var(--bp-space-4); }
.ping-public:not(#_):not(#_) .ping-account__hello { display: flex; flex-direction: column; gap: var(--bp-space-1); }
.ping-public:not(#_):not(#_) .ping-account__eyebrow { font-size: var(--bp-text-s); line-height: 16px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--bp-color-text-muted); }
.ping-public:not(#_):not(#_) .ping-account__title { margin: 0; font-size: var(--ping-account-title-size); line-height: var(--ping-account-title-line); font-weight: 700; letter-spacing: -0.02em; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-account__bar { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--bp-space-2) var(--bp-space-6); margin-top: calc(-1 * var(--bp-space-4)); box-shadow: inset 0 -1px 0 var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-account__tabs { display: flex; gap: var(--bp-space-8); }
/* Inside « Mon compte » a state reads as a quiet pill, in sentence case. */
.ping-public:not(#_):not(#_) .ping-account .ping-badge { padding: var(--bp-space-1) var(--bp-space-2); font-size: var(--bp-text-s); letter-spacing: 0; text-transform: none; }
.ping-public:not(#_):not(#_) .ping-account__tab { display: inline-flex; align-items: center; gap: var(--bp-space-2); min-height: var(--bp-control-height-touch); color: var(--bp-color-text-secondary); font-size: var(--bp-text-l); font-weight: 500; text-decoration: none; }
.ping-public:not(#_):not(#_) .ping-account__tab svg { display: none; }
.ping-public:not(#_):not(#_) .ping-account__tab[aria-current="page"] { color: var(--bp-color-text); font-weight: 600; box-shadow: inset 0 -2px 0 var(--bp-color-action); }
.ping-public:not(#_):not(#_) .ping-account__tab:focus-visible { outline: 2px solid var(--bp-color-focus); outline-offset: 2px; }
.ping-public:not(#_):not(#_) .ping-account__body { display: flex; flex-direction: column; gap: var(--bp-space-8); }
.ping-public:not(#_):not(#_) .ping-account__section { display: flex; flex-direction: column; gap: var(--bp-space-4); }
.ping-public:not(#_):not(#_) .ping-account__heading { margin: 0; font-size: var(--ping-account-heading-size); line-height: 1.35; font-weight: 600; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-account__section-head { display: flex; align-items: baseline; justify-content: space-between; gap: var(--bp-space-4); }
.ping-public:not(#_):not(#_) .ping-account__people { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--bp-space-4); }
.ping-public:not(#_):not(#_) .ping-account__person { display: grid; grid-template-rows: auto 1fr auto; gap: var(--bp-space-5); }
.ping-public:not(#_):not(#_) .ping-account__pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--bp-space-4); align-items: start; }
.ping-public:not(#_):not(#_) .ping-account__card { display: flex; flex-direction: column; gap: var(--bp-space-4); padding: var(--bp-space-6) var(--bp-space-8); border-radius: var(--ping-account-radius); background: var(--bp-color-surface); box-shadow: 0 0 0 1px var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-account__person { padding: var(--bp-space-6); }
.ping-public:not(#_):not(#_) .ping-account__card-head { display: flex; align-items: center; justify-content: space-between; gap: var(--bp-space-3); }
.ping-public:not(#_):not(#_) .ping-account__who { display: flex; align-items: center; gap: var(--bp-space-3); }
.ping-public:not(#_):not(#_) .ping-account__avatar { display: inline-grid; place-items: center; flex: none; width: var(--ping-account-avatar); height: var(--ping-account-avatar); border-radius: var(--bp-radius-full); background: var(--bp-color-action-tint); color: var(--bp-color-action-hover); font-size: var(--bp-text-l); font-weight: 600; }
.ping-public:not(#_):not(#_) .ping-account__name { display: flex; flex-direction: column; min-width: 0; font-size: var(--bp-text-m); color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-account__name strong { font-size: var(--bp-text-body); font-weight: 600; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-account__lines { display: flex; flex-direction: column; gap: var(--bp-space-3); flex: 1; }
.ping-public:not(#_):not(#_) .ping-account__line { display: flex; align-items: center; justify-content: space-between; gap: var(--bp-space-3); font-size: var(--bp-text-m); }
.ping-public:not(#_):not(#_) .ping-account__line .ping-badge { flex: none; }
.ping-public:not(#_):not(#_) .ping-account__what { display: inline-flex; flex: 1 1 auto; align-items: center; gap: var(--bp-space-2); min-width: 0; overflow: hidden; color: var(--bp-color-text-secondary); white-space: nowrap; text-overflow: ellipsis; }
.ping-public:not(#_):not(#_) .ping-account__what img { flex: none; width: var(--ping-account-logo); height: var(--ping-account-logo); object-fit: contain; }
.ping-public:not(#_):not(#_) .ping-account__foot { margin: 0; padding-top: var(--bp-space-4); box-shadow: inset 0 1px 0 var(--bp-color-divider); font-size: var(--bp-text-m); color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-account__figure { margin: 0; font-size: var(--ping-account-figure-size); line-height: 1.2; font-weight: 700; letter-spacing: -0.02em; font-variant-numeric: tabular-nums; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-account__meta { margin: 0; font-size: var(--bp-text-m); line-height: 20px; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-account__link { font-size: var(--bp-text-m); font-weight: 600; text-decoration: none; }
.ping-public:not(#_):not(#_) .ping-account__todo { flex-direction: row; flex-wrap: wrap; align-items: center; gap: var(--bp-space-6); padding: var(--bp-space-6) var(--bp-space-8); }
.ping-public:not(#_):not(#_) .ping-account__avatar--large { width: var(--ping-account-avatar-large); height: var(--ping-account-avatar-large); font-size: var(--ping-account-heading-size); }
.ping-public:not(#_):not(#_) .ping-account__todo-text { display: flex; flex: 1 1 var(--ping-account-text); flex-direction: column; gap: var(--bp-space-1); }
.ping-public:not(#_):not(#_) .ping-account__eyebrow--todo { color: var(--bp-tone-warning-text); }
.ping-public:not(#_):not(#_) .ping-account__todo-title { font-size: var(--ping-account-todo-size); line-height: 1.4; font-weight: 600; letter-spacing: -0.01em; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-account__rows li + li { box-shadow: inset 0 1px 0 var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-account__rows a { display: flex; align-items: center; justify-content: space-between; gap: var(--bp-space-3); min-height: var(--bp-control-height-touch); color: var(--bp-color-text); font-size: var(--bp-text-l); text-decoration: none; }
.ping-public:not(#_):not(#_) .ping-account__rows svg { width: var(--ping-account-mark-icon); height: var(--ping-account-mark-icon); color: var(--bp-color-text-muted); }
/* « Adhésions »: the members as pills, then the season beside the member's facts. */
.ping-public:not(#_):not(#_) .ping-account__people-nav { display: flex; flex-wrap: wrap; gap: var(--bp-space-2); }
.ping-public:not(#_):not(#_) .ping-account__people-nav a { display: inline-flex; align-items: center; min-height: var(--bp-control-height-touch); padding: 0 var(--bp-space-5); border-radius: var(--bp-radius-full); background: var(--bp-color-surface); box-shadow: inset 0 0 0 1px var(--bp-color-border-control); color: var(--bp-color-text); font-weight: 600; text-decoration: none; }
.ping-public:not(#_):not(#_) .ping-account__people-nav a[aria-current="page"] { background: var(--bp-color-action-tint); box-shadow: inset 0 0 0 2px var(--bp-color-action); color: var(--bp-color-action-hover); }
.ping-public:not(#_):not(#_) .ping-account__member { display: grid; grid-template-columns: minmax(0, 1fr) var(--ping-account-facts); gap: var(--bp-space-6); align-items: start; }
.ping-public:not(#_):not(#_) .ping-account__tracks, .ping-public:not(#_):not(#_) .ping-account__facts { display: flex; flex-direction: column; gap: var(--bp-space-4); }
.ping-public:not(#_):not(#_) .ping-account__logo { display: inline-grid; place-items: center; flex: none; width: var(--ping-account-avatar); height: var(--ping-account-avatar); border-radius: var(--bp-radius-l); background: var(--bp-color-surface); box-shadow: 0 0 0 1px var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-account__logo img { width: var(--ping-account-track-logo); height: var(--ping-account-track-logo); object-fit: contain; }
.ping-public:not(#_):not(#_) .ping-account__steps { display: flex; flex-direction: column; }
.ping-public:not(#_):not(#_) .ping-account__step { display: flex; align-items: flex-start; gap: var(--bp-space-4); padding: var(--bp-space-4) 0; box-shadow: inset 0 1px 0 var(--bp-color-divider); color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-account__step .ping-btn { flex: none; margin-left: auto; }
.ping-public:not(#_):not(#_) .ping-account__mark { display: inline-grid; place-items: center; flex: none; width: var(--ping-account-mark); height: var(--ping-account-mark); border-radius: var(--bp-radius-full); background: var(--bp-color-surface-alt); font-size: var(--bp-text-m); font-weight: 600; }
.ping-public:not(#_):not(#_) .ping-account__mark svg { width: var(--ping-account-mark-icon); height: var(--ping-account-mark-icon); }
.ping-public:not(#_):not(#_) .ping-account__step--done { color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-account__step--done .ping-account__mark { background: var(--bp-tone-success-bg); color: var(--bp-tone-success-text); }
.ping-public:not(#_):not(#_) .ping-account__step--current { color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-account__step--current .ping-account__mark { background: var(--bp-color-action); color: var(--bp-color-on-action); }
.ping-public:not(#_):not(#_) .ping-account__step-text { display: flex; flex: 1; flex-direction: column; gap: var(--bp-space-1); min-width: 0; font-size: var(--bp-text-m); line-height: 20px; }
.ping-public:not(#_):not(#_) .ping-account__step-text strong { font-size: var(--bp-text-l); font-weight: 600; }
.ping-public:not(#_):not(#_) .ping-account__dl { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--bp-space-2) var(--bp-space-4); margin: 0; font-size: var(--bp-text-m); }
.ping-public:not(#_):not(#_) .ping-account__dl dt { color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-account__dl dd { margin: 0; text-align: right; }
.ping-public:not(#_):not(#_) .ping-account__pairs { display: flex; flex-direction: column; gap: var(--bp-space-2); font-size: var(--bp-text-m); }
.ping-public:not(#_):not(#_) .ping-account__pairs li { display: flex; justify-content: space-between; gap: var(--bp-space-3); }
.ping-public:not(#_):not(#_) .ping-account__pairs li span + span { color: var(--bp-color-text-secondary); }
/* « Paiements »: an order's lines beside its payment; earlier orders as rows that open. */
.ping-public:not(#_):not(#_) .ping-account__order { display: grid; grid-template-columns: minmax(0, 1fr) var(--ping-account-facts); gap: 0; padding: 0; }
.ping-public:not(#_):not(#_) .ping-account__order-lines, .ping-public:not(#_):not(#_) .ping-account__order-side { display: flex; flex-direction: column; gap: var(--bp-space-3); padding: var(--bp-space-6) var(--bp-space-8); }
.ping-public:not(#_):not(#_) .ping-account__order .ping-account__lines { flex: none; }
.ping-public:not(#_):not(#_) .ping-account__order-side { align-items: flex-start; box-shadow: inset 1px 0 0 var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-account__order-side .ping-account__lines, .ping-public:not(#_):not(#_) .ping-account__order-side .ping-account__dl { align-self: stretch; }
.ping-public:not(#_):not(#_) .ping-account__amount { flex: none; font-variant-numeric: tabular-nums; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-account__total { padding-top: var(--bp-space-3); box-shadow: inset 0 1px 0 var(--bp-color-divider); font-weight: 600; }
.ping-public:not(#_):not(#_) .ping-account__orders { padding: 0; }
.ping-public:not(#_):not(#_) .ping-account__orders li + li { box-shadow: inset 0 1px 0 var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-account__orders a { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: var(--bp-space-4); padding: var(--bp-space-4) var(--bp-space-8); color: var(--bp-color-text); text-decoration: none; }
.ping-public:not(#_):not(#_) .ping-account__order-what { display: flex; flex-direction: column; min-width: 0; font-size: var(--bp-text-m); color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-account__order-what strong { font-size: var(--bp-text-l); color: var(--bp-color-text); }
/* « Profil »: the shop's account form in our fields. */
.ping-public:not(#_):not(#_) .ping-account__form { display: flex; flex-direction: column; gap: var(--bp-space-4); max-width: var(--ping-account-form); }
.ping-public:not(#_):not(#_) .ping-account__fields { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--bp-space-4); }
.ping-public:not(#_):not(#_) .ping-account__password { display: flex; flex-direction: column; gap: var(--bp-space-3); padding-top: var(--bp-space-4); box-shadow: inset 0 1px 0 var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-account__notices { display: flex; flex-direction: column; gap: var(--bp-space-2); }
.ping-public:not(#_):not(#_) .ping-account__notices :is(.woocommerce-error, .woocommerce-message, .woocommerce-info) { display: flex; flex-direction: column; gap: var(--bp-space-1); margin: 0; padding: var(--bp-space-3) var(--bp-space-4); border-radius: var(--bp-radius-l); background: var(--bp-color-surface-alt); color: var(--bp-color-text); font-size: var(--bp-text-m); }
.ping-public:not(#_):not(#_) .ping-account__notices .woocommerce-error { background: var(--bp-tone-danger-bg); color: var(--bp-tone-danger-text); }
.ping-public:not(#_):not(#_) .ping-account__notices .woocommerce-message { background: var(--bp-tone-success-bg); color: var(--bp-tone-success-text); }
/* A member's details: each section's title and help beside its fields. */
.ping-public:not(#_):not(#_) .ping-account__details-top { display: flex; flex-direction: column; align-items: flex-start; gap: var(--bp-space-2); }
.ping-public:not(#_):not(#_) .ping-account__back { display: inline-flex; align-items: center; gap: var(--bp-space-1); min-height: var(--bp-control-height-touch); font-size: var(--bp-text-m); font-weight: 600; text-decoration: none; }
.ping-public:not(#_):not(#_) .ping-account__back svg { width: var(--ping-account-mark-icon); height: var(--ping-account-mark-icon); }
.ping-public:not(#_):not(#_) .ping-account__details { gap: 0; padding: 0; }
.ping-public:not(#_):not(#_) .ping-account__details-section { display: grid; grid-template-columns: var(--ping-account-details-head) minmax(0, 1fr); gap: var(--bp-space-8); padding: var(--bp-space-6) var(--bp-space-8); }
.ping-public:not(#_):not(#_) .ping-account__details-section + .ping-account__details-section { box-shadow: inset 0 1px 0 var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-account__details-head { display: flex; flex-direction: column; gap: var(--bp-space-1); }
.ping-public:not(#_):not(#_) .ping-account__details-title { margin: 0; font-size: var(--bp-text-l); line-height: 1.4; font-weight: 600; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-account__details-fields { display: flex; flex-direction: column; gap: var(--bp-space-4); min-width: 0; }
.ping-public:not(#_):not(#_) .ping-account__details-actions { display: flex; justify-content: flex-end; gap: var(--bp-space-3); padding: var(--bp-space-6) var(--bp-space-8); box-shadow: inset 0 1px 0 var(--bp-color-divider); }
@media (max-width: 1000px) {
	.ping-public:not(#_):not(#_) .ping-account__people { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
/* Phone: the tabs become a bar at the bottom of the screen, each icon over its name. */
@media (max-width: 782px) {
	.ping-public:not(#_):not(#_) .ping-account { gap: var(--bp-space-6); padding-block: var(--bp-space-6) calc(var(--ping-account-tabbar) + var(--bp-space-6)); }
	.ping-public:not(#_):not(#_) .ping-account__title { font-size: var(--ping-account-title-phone); line-height: 1.25; }
	.ping-public:not(#_):not(#_) .ping-account__tabs { position: fixed; inset: auto 0 0 0; z-index: 50; display: grid; grid-auto-columns: minmax(0, 1fr); grid-auto-flow: column; gap: 0; margin: 0; height: var(--ping-account-tabbar); background: var(--bp-color-surface); box-shadow: 0 -1px 0 var(--bp-color-divider); }
	.ping-public:not(#_):not(#_) .ping-account__tab { flex-direction: column; justify-content: center; gap: var(--bp-space-1); font-size: var(--bp-text-xs); font-weight: 600; color: var(--bp-color-text-muted); }
	.ping-public:not(#_):not(#_) .ping-account__tab svg { display: block; width: var(--ping-account-tab-icon); height: var(--ping-account-tab-icon); }
	.ping-public:not(#_):not(#_) .ping-account__tab[aria-current="page"] { color: var(--bp-color-action); box-shadow: none; }
	.ping-public:not(#_):not(#_) .ping-account__card, .ping-public:not(#_):not(#_) .ping-account__todo { padding: var(--bp-space-5); }
	.ping-public:not(#_):not(#_) .ping-account__people, .ping-public:not(#_):not(#_) .ping-account__pair { grid-template-columns: minmax(0, 1fr); }
	.ping-public:not(#_):not(#_) .ping-account__bar { margin-top: 0; box-shadow: none; }
	.ping-public:not(#_):not(#_) .ping-account__avatar--large { display: none; }
	.ping-public:not(#_):not(#_) .ping-account__todo .ping-btn { width: 100%; }
	.ping-public:not(#_):not(#_) .ping-account__member { grid-template-columns: minmax(0, 1fr); }
	.ping-public:not(#_):not(#_) .ping-account__order, .ping-public:not(#_):not(#_) .ping-account__fields { grid-template-columns: minmax(0, 1fr); }
	.ping-public:not(#_):not(#_) .ping-account__order-lines, .ping-public:not(#_):not(#_) .ping-account__order-side { padding: var(--bp-space-5); }
	.ping-public:not(#_):not(#_) .ping-account__order-side { box-shadow: inset 0 1px 0 var(--bp-color-divider); }
	.ping-public:not(#_):not(#_) .ping-account__orders a { grid-template-columns: minmax(0, 1fr) auto; padding: var(--bp-space-4) var(--bp-space-5); }
	.ping-public:not(#_):not(#_) .ping-account__orders .ping-badge { display: none; }
	.ping-public:not(#_):not(#_) .ping-account__step { flex-wrap: wrap; }
	.ping-public:not(#_):not(#_) .ping-account__step .ping-btn { width: 100%; margin-left: 0; }
	.ping-public:not(#_):not(#_) .ping-account__details-section { grid-template-columns: minmax(0, 1fr); gap: var(--bp-space-4); padding: var(--bp-space-5); }
	.ping-public:not(#_):not(#_) .ping-account__details-actions { flex-direction: column-reverse; padding: var(--bp-space-5); }
	.ping-public:not(#_):not(#_) .ping-account__details-actions .ping-btn { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
	.ping-public:not(#_):not(#_) .ping-step, .ping-public:not(#_):not(#_) .ping-field--error .ping-field__error, .ping-public:not(#_):not(#_) .ping-file__chosen { animation: none; }
	.ping-public:not(#_):not(#_) .ping-progress__bar, .ping-public:not(#_):not(#_) .ping-choice, .ping-public:not(#_):not(#_) .ping-field__input, .ping-public:not(#_):not(#_) .ping-btn { transition: none; }
}

/* The cheque and the transfer at WooCommerce's checkout (ping-checkout.js): « En 1 fois » or « En 3
   fois » as the journey's cards, what to hand in under them, then the club's instructions. */
.ping-public:not(#_):not(#_).ping-checkout { display: grid; gap: var(--bp-space-3); }
.ping-public:not(#_):not(#_) .ping-checkout__note { display: grid; gap: var(--bp-space-1); padding: var(--bp-space-3) var(--bp-space-4); border-radius: var(--bp-radius-l); background: var(--bp-color-surface-alt); font-size: var(--bp-text-m); line-height: 20px; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-checkout__note-title { font-size: var(--bp-text-l); line-height: 22px; font-weight: 600; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-checkout__instructions { font-size: var(--bp-text-m); line-height: 20px; color: var(--bp-color-text-secondary); }

/* An order paid in three, on its page: the instalments and which are in. */
.ping-public:not(#_):not(#_).ping-order-instalments { display: grid; gap: var(--bp-space-2); margin: 0 0 var(--bp-space-6); padding: var(--bp-space-4) var(--bp-space-5); border-radius: var(--bp-radius-l); background: var(--bp-color-surface-alt); }
.ping-public:not(#_):not(#_).ping-order-instalments h2 { font-size: var(--bp-text-l); line-height: 22px; font-weight: 600; }
.ping-public:not(#_):not(#_).ping-order-instalments li { font-size: var(--bp-text-body); line-height: 24px; }


/* The club's homepage (DESIGN-club-homepage §4.2): within the theme's content width, the theme's font and colours. */
.ping-public:not(#_):not(#_) .ping-home { --ping-home-radius: 16px; --ping-home-photo-radius: 20px; --ping-home-name-size: 44px; --ping-home-name-line: 50px; --ping-home-name-phone: 32px; --ping-home-name-phone-line: 38px; --ping-home-title-size: 28px; --ping-home-title-line: 34px; --ping-home-price-size: 26px; --ping-home-mark: 44px; --ping-home-text: 34em; --ping-home-range: 200px; --ping-home-hall: 320px; --ping-home-logo: 56px; display: flex; flex-direction: column; gap: var(--bp-space-12); padding-block: var(--bp-space-8) var(--bp-space-12); }
.ping-public:not(#_):not(#_) .ping-home__hero { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--bp-space-8); align-items: center; padding: var(--bp-space-8); border-radius: var(--ping-home-radius); background: var(--bp-color-surface-alt); }
.ping-public:not(#_):not(#_) .ping-home__hero--photo { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); }
.ping-public:not(#_):not(#_) .ping-home__intro { display: flex; flex-direction: column; gap: var(--bp-space-4); }
.ping-public:not(#_):not(#_) .ping-home__eyebrow { font-size: var(--bp-text-s); line-height: 16px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--bp-color-text-muted); }
.ping-public:not(#_):not(#_) .ping-home__name { margin: 0; font-size: var(--ping-home-name-size); line-height: var(--ping-home-name-line); font-weight: 800; letter-spacing: -0.02em; color: var(--bp-color-text); text-wrap: balance; }
.ping-public:not(#_):not(#_) .ping-home__presentation { max-width: var(--ping-home-text); font-size: var(--bp-text-body); line-height: 1.6; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-home__actions { display: flex; flex-wrap: wrap; gap: var(--bp-space-3); margin-top: var(--bp-space-2); }
.ping-public:not(#_):not(#_) .ping-home__photo { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--ping-home-photo-radius); }
.ping-public:not(#_):not(#_) .ping-home__section { display: flex; flex-direction: column; gap: var(--bp-space-6); }
.ping-public:not(#_):not(#_) .ping-home__head { display: flex; flex-direction: column; gap: var(--bp-space-2); }
.ping-public:not(#_):not(#_) .ping-home__title { margin: 0; font-size: var(--ping-home-title-size); line-height: var(--ping-home-title-line); font-weight: 700; letter-spacing: -0.01em; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-home__lead { color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-home__ranges { display: grid; grid-template-columns: repeat(auto-fill, minmax(var(--ping-home-range), 1fr)); gap: var(--bp-space-4); }
.ping-public:not(#_):not(#_) .ping-home__range { display: flex; flex-direction: column; gap: var(--bp-space-1); padding: var(--bp-space-5); border-radius: var(--ping-home-radius); background: var(--bp-color-surface); box-shadow: 0 0 0 1px var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-home__range-name { font-size: var(--bp-text-l); line-height: 22px; font-weight: 600; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-home__range-ages { font-size: var(--bp-text-m); line-height: 20px; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-home__from { margin-top: var(--bp-space-3); font-size: var(--bp-text-s); line-height: 16px; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-home__price { font-size: var(--ping-home-price-size); line-height: 1.15; font-weight: 700; font-variant-numeric: tabular-nums; color: var(--bp-color-action); }
.ping-public:not(#_):not(#_) .ping-home__halls { display: grid; grid-template-columns: repeat(auto-fill, minmax(var(--ping-home-hall), 1fr)); gap: var(--bp-space-4); }
.ping-public:not(#_):not(#_) .ping-home__hall { display: flex; gap: var(--bp-space-4); padding: var(--bp-space-6); border-radius: var(--ping-home-radius); background: var(--bp-color-surface); box-shadow: 0 0 0 1px var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-home__mark { flex: none; display: inline-grid; place-items: center; width: var(--ping-home-mark); height: var(--ping-home-mark); border-radius: var(--bp-radius-l); background: var(--bp-color-action-tint); color: var(--bp-color-action-hover); }
.ping-public:not(#_):not(#_) .ping-home__mark svg { width: 22px; height: 22px; }
.ping-public:not(#_):not(#_) .ping-home__hall-text { display: flex; flex-direction: column; gap: var(--bp-space-1); min-width: 0; }
.ping-public:not(#_):not(#_) .ping-home__hall-name { font-size: var(--bp-text-l); line-height: 22px; font-weight: 600; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-home__address { color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-home__directions { font-size: var(--bp-text-m); line-height: 20px; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-home__route { display: inline-flex; align-items: center; gap: var(--bp-space-1); margin-top: var(--bp-space-2); font-weight: 600; text-decoration: none; }
.ping-public:not(#_):not(#_) .ping-home__route svg { width: 14px; height: 14px; }
.ping-public:not(#_):not(#_) .ping-home__federations { display: grid; grid-template-columns: repeat(auto-fill, minmax(var(--ping-home-hall), 1fr)); gap: var(--bp-space-4); }
.ping-public:not(#_):not(#_) .ping-home__federation { display: flex; align-items: center; gap: var(--bp-space-4); padding: var(--bp-space-5); border-radius: var(--ping-home-radius); background: var(--bp-color-surface); box-shadow: 0 0 0 1px var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-home__federation-logo { flex: none; width: var(--ping-home-logo); height: var(--ping-home-logo); object-fit: contain; }
.ping-public:not(#_):not(#_) .ping-home__federation-text { display: flex; flex-direction: column; gap: var(--bp-space-1); min-width: 0; }
.ping-public:not(#_):not(#_) .ping-home__federation-name { font-size: var(--bp-text-l); line-height: 22px; font-weight: 600; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-home__federation-full { font-size: var(--bp-text-m); line-height: 20px; color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-home__federation-number { font-size: var(--bp-text-s); line-height: 16px; color: var(--bp-color-text-muted); font-variant-numeric: tabular-nums; }
.ping-public:not(#_):not(#_) .ping-home__contact { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--bp-space-6); padding: var(--bp-space-8); border-radius: var(--ping-home-radius); background: var(--bp-color-surface); box-shadow: 0 0 0 1px var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-home__contact-text { display: flex; flex-direction: column; gap: var(--bp-space-2); min-width: 0; }
.ping-public:not(#_):not(#_) .ping-home__ways { display: flex; flex-wrap: wrap; gap: var(--bp-space-2) var(--bp-space-6); margin-top: var(--bp-space-2); }
.ping-public:not(#_):not(#_) .ping-home__way { display: inline-flex; align-items: center; gap: var(--bp-space-2); min-height: var(--bp-control-height-touch); font-weight: 600; color: var(--bp-color-text); text-decoration: none; overflow-wrap: anywhere; }
.ping-public:not(#_):not(#_) .ping-home__way:hover { color: var(--bp-color-action); }
.ping-public:not(#_):not(#_) .ping-home__way svg { flex: none; width: 18px; height: 18px; color: var(--bp-color-text-secondary); }
@media (max-width: 782px) {
	.ping-public:not(#_):not(#_) .ping-home { gap: var(--bp-space-8); padding-block: var(--bp-space-4) var(--bp-space-8); }
	.ping-public:not(#_):not(#_) .ping-home__hero, .ping-public:not(#_):not(#_) .ping-home__hero--photo { grid-template-columns: minmax(0, 1fr); padding: var(--bp-space-6) var(--bp-space-5); }
	.ping-public:not(#_):not(#_) .ping-home__hero--photo .ping-home__photo { order: -1; }
	.ping-public:not(#_):not(#_) .ping-home__name { font-size: var(--ping-home-name-phone); line-height: var(--ping-home-name-phone-line); }
	.ping-public:not(#_):not(#_) .ping-home__actions .ping-btn { flex: 1 1 100%; }
	.ping-public:not(#_):not(#_) .ping-home__ranges { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--bp-space-3); }
	.ping-public:not(#_):not(#_) .ping-home__range { padding: var(--bp-space-4); }
	.ping-public:not(#_):not(#_) .ping-home__halls, .ping-public:not(#_):not(#_) .ping-home__federations { grid-template-columns: minmax(0, 1fr); }
	.ping-public:not(#_):not(#_) .ping-home__hall { padding: var(--bp-space-5); }
	.ping-public:not(#_):not(#_) .ping-home__contact { padding: var(--bp-space-6) var(--bp-space-5); }
	.ping-public:not(#_):not(#_) .ping-home__contact .ping-btn { flex: 1 1 100%; }
}

/* PingManager's banner at the homepage's foot (Platform_Brand), in PingManager's colours, not the club's: a placeholder until its brand. */
.ping-public:not(#_):not(#_) .ping-brand { --ping-brand-bg: #16181d; --ping-brand-text: #ffffff; --ping-brand-muted: #d6dbe6; --ping-brand-title: 24px; display: grid; grid-template-columns: minmax(0, 1fr) auto; align-items: center; gap: var(--bp-space-8); padding: var(--bp-space-8); border-radius: var(--ping-home-radius); background: var(--ping-brand-bg); color: var(--ping-brand-text); }
.ping-public:not(#_):not(#_) .ping-brand__text { display: flex; flex-direction: column; gap: var(--bp-space-2); min-width: 0; }
.ping-public:not(#_):not(#_) .ping-brand__name { display: inline-flex; align-items: center; gap: var(--bp-space-2); font-size: var(--bp-text-s); line-height: 16px; font-weight: 700; color: var(--ping-brand-muted); }
.ping-public:not(#_):not(#_) .ping-brand__title { margin: 0; font-size: var(--ping-brand-title); line-height: 30px; font-weight: 700; color: var(--ping-brand-text); }
.ping-public:not(#_):not(#_) .ping-brand__lead { max-width: var(--ping-home-text); color: var(--ping-brand-muted); }
.ping-public:not(#_):not(#_) .ping-brand__go { background: var(--ping-brand-text); color: var(--ping-brand-bg); white-space: nowrap; }
.ping-public:not(#_):not(#_) .ping-brand__go:hover { background: var(--ping-brand-muted); color: var(--ping-brand-bg); }
.ping-public:not(#_):not(#_) .ping-brand__go svg { width: 18px; height: 18px; }
@media (max-width: 782px) {
	.ping-public:not(#_):not(#_) .ping-brand { grid-template-columns: minmax(0, 1fr); padding: var(--bp-space-6) var(--bp-space-5); }
	.ping-public:not(#_):not(#_) .ping-brand__go { width: 100%; }
}

/* The legal pages (DESIGN-legal-pages §4.2): reading width, the theme's font and colours. */
.ping-public:not(#_):not(#_) .ping-legal { --ping-legal-width: 760px; --ping-legal-title: 40px; --ping-legal-title-line: 46px; --ping-legal-title-phone: 30px; --ping-legal-heading: 22px; --ping-legal-lead: 18px; --ping-legal-term: 220px; display: flex; flex-direction: column; gap: var(--bp-space-8); width: 100%; max-width: var(--ping-legal-width); margin-inline: auto; padding-block: var(--bp-space-12); font-size: var(--bp-text-body); line-height: 1.6; }
.ping-public:not(#_):not(#_) .ping-legal__head { display: flex; flex-direction: column; gap: var(--bp-space-2); }
.ping-public:not(#_):not(#_) .ping-legal__title { margin: 0; font-size: var(--ping-legal-title); line-height: var(--ping-legal-title-line); font-weight: 800; letter-spacing: -0.02em; color: var(--bp-color-text); text-wrap: balance; }
.ping-public:not(#_):not(#_) .ping-legal__dated { font-size: var(--bp-text-m); color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-legal__lead { font-size: var(--ping-legal-lead); color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-legal__section { display: flex; flex-direction: column; gap: var(--bp-space-3); }
.ping-public:not(#_):not(#_) .ping-legal__heading { margin: 0; font-size: var(--ping-legal-heading); line-height: 1.3; font-weight: 700; color: var(--bp-color-text); }
.ping-public:not(#_):not(#_) .ping-legal__list { list-style: disc; padding-left: var(--bp-space-6); display: flex; flex-direction: column; gap: var(--bp-space-2); }
.ping-public:not(#_):not(#_) .ping-legal__facts { display: grid; grid-template-columns: var(--ping-legal-term) minmax(0, 1fr); gap: var(--bp-space-2) var(--bp-space-4); margin: 0; }
.ping-public:not(#_):not(#_) .ping-legal__facts dt { color: var(--bp-color-text-secondary); }
.ping-public:not(#_):not(#_) .ping-legal__facts dd { margin: 0; overflow-wrap: anywhere; }
.ping-public:not(#_):not(#_) .ping-legal__table { overflow-x: auto; border-radius: var(--bp-radius-l); box-shadow: 0 0 0 1px var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-legal__table table { width: 100%; min-width: 640px; border-collapse: collapse; font-size: var(--bp-text-m); line-height: 1.45; }
.ping-public:not(#_):not(#_) .ping-legal__table :is(th, td) { padding: var(--bp-space-3) var(--bp-space-4); text-align: left; vertical-align: top; }
.ping-public:not(#_):not(#_) .ping-legal__table thead th { background: var(--bp-color-surface-alt); font-weight: 600; }
.ping-public:not(#_):not(#_) .ping-legal__table tbody tr { border-top: 1px solid var(--bp-color-divider); }
.ping-public:not(#_):not(#_) .ping-legal__table tbody th { font-weight: 600; }
@media (max-width: 782px) {
	.ping-public:not(#_):not(#_) .ping-legal { gap: var(--bp-space-6); padding-block: var(--bp-space-6) var(--bp-space-8); }
	.ping-public:not(#_):not(#_) .ping-legal__title { font-size: var(--ping-legal-title-phone); line-height: 1.2; }
	.ping-public:not(#_):not(#_) .ping-legal__facts { grid-template-columns: minmax(0, 1fr); gap: 0; }
	.ping-public:not(#_):not(#_) .ping-legal__facts dd { margin-bottom: var(--bp-space-2); }
}
