:root{--opacity-xs:0.05;--opacity-sm:0.1;--opacity-md:0.15;--opacity-lg:0.2;--opacity-xl:0.3;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:900;--z-modal:1000;--z-popover:1050;--z-tooltip:1100;--z-notification:1200;--color-admin:role-color("admin","base");--color-abonne:role-color("abonne","base");--color-free:role-color("free","base");--color-visitor:role-color("visitor","base");--spacing-none:0;--spacing-xs:0.25rem;--spacing-sm:0.5rem;--spacing-md:1rem;--spacing-lg:1.5rem;--spacing-xl:2rem;--spacing-2xl:3rem;--spacing-3xl:4rem;--spacing-4:0.25rem;--spacing-8:0.5rem;--spacing-12:0.75rem;--spacing-16:1rem;--spacing-20:1.25rem;--spacing-24:1.5rem;--spacing-32:2rem;--spacing-40:2.5rem;--spacing-44:2.75rem;--spacing-48:3rem;--spacing-56:3.5rem;--spacing-64:4rem;--a11y-min-touch-target:44px;--a11y-preferred-touch-target:56px;--a11y-optimal-touch-target:48px;--a11y-focus-ring-width:2px;--a11y-focus-ring-offset:2px;--a11y-reduced-motion-duration:0.01ms;--a11y-safe-animation-duration:200ms;--a11y-safe-transition-duration:150ms;--a11y-contrast-min:4.5;--a11y-contrast-enhanced:7;--a11y-line-spacing-min:1.5;--a11y-paragraph-spacing-min:1.5em;--a11y-disabled-opacity:0.5;--border-width-none:0;--border-width-thin:1px;--border-width-base:2px;--border-width-focus:2px;--border-width-medium:3px;--border-width-thick:4px;--border-width-extra:6px;--border-input:2px;--border-button-focus:2px;--border-divider:1px;--border-card:1px;--font-size-2xs:0.625rem;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-normal:1.5;--line-height-relaxed:1.625;--font-tsa:var(--font-atkinson),system-ui,-apple-system,Segoe UI,sans-serif}[data-font=lexend]{--font-tsa:var(--font-lexend),system-ui,-apple-system,Segoe UI,sans-serif}:root{--shadow-xs:0 1px 2px rgba(15,23,42,0.05);--shadow-sm:0 2px 4px rgba(15,23,42,0.08);--shadow-md:0 4px 8px rgba(15,23,42,0.1);--shadow-lg:0 8px 16px rgba(15,23,42,0.12);--shadow-xl:0 12px 24px rgba(15,23,42,0.15);--shadow-2xl:0 20px 40px rgba(15,23,42,0.2);--shadow-default:0 2px 6px rgba(0,0,0,0.15);--shadow-subtle:0 1px 2px rgba(15,23,42,0.05);--shadow-raised:0 4px 12px rgba(0,0,0,0.15);--shadow-floating:0 8px 24px rgba(0,0,0,0.2);--shadow-modal:0 20px 40px rgba(15,23,42,0.2);--radius-none:0;--radius-xs:0.25rem;--radius-sm:0.375rem;--radius-md:0.75rem;--radius-lg:1.25rem;--radius-xl:1.5rem;--radius-2xl:2rem;--radius-full:50%;--radius-default:8px;--radius-card:0.75rem;--radius-button:0.375rem;--radius-input:0.375rem;--radius-modal:1.25rem;--timing-xs:0.15s;--timing-sm:0.2s;--timing-base:0.3s;--timing-lg:0.5s;--timing-xl:0.8s;--timing-2xl:1.2s;--easing-linear:linear;--easing-smooth-out:ease-out}.password-checklist__toggle{margin-block-start:.5rem;padding:.5rem 1rem;width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:rgba(0,0,0,0);border:2px solid var(--surface-border,#e2e8f0);border-radius:.375rem;text-align:left;font-size:.875rem;color:var(--text-default,#1e293b);min-width:44px;min-height:44px;cursor:pointer;transition-property:background-color;transition-duration:.15s;transition-timing-function:linear}@media(prefers-reduced-motion:reduce){.password-checklist__toggle{transition:none}}.password-checklist__toggle:hover{background-color:var(--surface-surface,#f8fafc)}.password-checklist__toggle:focus{outline:none}.password-checklist__toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.password-checklist__chev{display:inline-flex;align-items:center;justify-content:center;transition-property:transform;transition-duration:.15s;transition-timing-function:linear}@media(prefers-reduced-motion:reduce){.password-checklist__chev{transition:none}}.password-checklist__chev svg{width:1rem;height:1rem;stroke:currentColor}.password-checklist__chev.is-open{transform:rotate(180deg)}.password-checklist__collapse{overflow:hidden;max-height:0;opacity:0;transform:translateY(-2px);transition-property:max-height opacity transform;transition-duration:.3s;transition-timing-function:ease-out}@media(prefers-reduced-motion:reduce){.password-checklist__collapse{transition:none}}.password-checklist__collapse.is-open{max-height:31.25rem;opacity:1;transform:translateY(0);margin-block-start:.25rem}.password-checklist{margin-block-start:.5rem;padding:1rem 1.5rem;border-radius:.75rem;background-color:var(--surface-surface,#f8fafc);border:2px solid var(--surface-border,#e2e8f0)}.password-checklist__title{margin:0 0 .5rem;font-size:.875rem;font-weight:600;color:var(--text-default,#1e293b)}.password-checklist__list{list-style:none;margin:0;padding:0;display:grid;gap:.25rem;grid-template-columns:1fr}@media(min-width:576px){.password-checklist__list{grid-template-columns:1fr 1fr}}.password-checklist__item{display:flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:.75rem;border:2px dashed rgba(0,0,0,0);outline:none;transition-property:background-color border-color transform;transition-duration:.15s;transition-timing-function:linear}@media(prefers-reduced-motion:reduce){.password-checklist__item{transition:none}}.password-checklist__item:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.password-checklist__item.is-ok{background-color:var(--feedback-success-bg,#dcfce7);border-color:var(--feedback-success-border,#6ee7b7)}.password-checklist__item.is-ok .password-checklist__text{color:var(--feedback-success-dark,#047857);font-weight:600}.password-checklist__item.is-ok .password-checklist__icon{background-color:var(--feedback-success-light,#d1fae5);border-radius:50%}@media(prefers-reduced-motion:no-preference){.password-checklist__item.is-ok{transform:translateX(.125rem)}}.password-checklist__item.is-ko{background-color:var(--feedback-warning-bg,#fef3c7);border-color:var(--feedback-warning-border,#fdba74)}.password-checklist__item.is-ko .password-checklist__text{color:var(--feedback-warning-dark,#c2410c)}.password-checklist__item.is-ko .password-checklist__icon{background-color:var(--feedback-warning-light,#ffedd5);border-radius:50%}.password-checklist__icon{width:1rem;height:1rem;flex:0 0 1rem;display:inline-flex;align-items:center;justify-content:center;font-size:.875rem}.password-checklist__icon svg{width:100%;height:100%;stroke:currentColor}