/* Scoped to the phone control; inherit the site's typography. */
.phone-reveal{--phone-pink:#f19ac2;--phone-progress:0%;width:min(100%,390px);margin-top:16px;font-family:var(--ta-text,"DM Sans"),Arial,sans-serif;color:#f3eef1}
.phone-reveal [hidden]{display:none!important}
.phone-reveal .phone-track{position:relative;height:60px;border:1px solid #51414a;border-radius:999px;background:#242125;box-shadow:inset 0 2px 6px #0004;isolation:isolate;overflow:hidden}
.phone-reveal .phone-fill{position:absolute;inset:0;background:#f19ac225;clip-path:inset(0 calc(100% - var(--phone-progress)) 0 0);transition:clip-path .45s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.phone-reveal .phone-thumb-path{position:absolute;inset:5px 5px 5px 5px;pointer-events:none;margin-right:48px}
.phone-reveal .phone-thumb{display:grid;place-items:center;position:absolute;left:var(--phone-progress);width:48px;height:48px;border-radius:50%;color:#242125;background:var(--phone-pink);box-shadow:inset 0 1px 1px #fff9,0 3px 10px #0004;font-size:24px;transition:left .45s cubic-bezier(.2,.8,.2,1)}
.phone-reveal.is-dragging .phone-thumb,.phone-reveal.is-dragging .phone-fill{transition:none}
.phone-reveal .phone-label{position:absolute;inset:0;display:grid;place-items:center;padding-left:42px;font-size:13px;font-weight:600;pointer-events:none}
.phone-reveal input[type=range]{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:5px;border:0;opacity:0;cursor:ew-resize;touch-action:pan-y;appearance:none;background:transparent}
.phone-reveal input[type=range]::-webkit-slider-thumb{appearance:none;width:48px;height:48px;border:0}
.phone-reveal input[type=range]::-moz-range-thumb{width:48px;height:48px;border:0}
.phone-reveal .phone-track:focus-within{outline:2px solid var(--phone-pink);outline-offset:4px}
.phone-reveal .phone-help,.phone-reveal .phone-status{font-size:11px;line-height:1.6;color:#c4b5bf;margin:9px 8px 0}
.phone-reveal .phone-status:empty{display:none}
.phone-reveal .phone-challenge:not(:empty){margin-top:12px;min-height:65px}
.phone-reveal .phone-result{padding:17px 20px;border:1px solid #51414a;background:#242125;border-radius:20px;animation:phone-appear .35s ease-out}
.phone-reveal .phone-number{display:block;font-size:24px;letter-spacing:.02em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;user-select:text}
.phone-reveal .phone-actions{display:flex;gap:10px;margin-top:12px;flex-wrap:wrap}
.phone-reveal .phone-actions a,.phone-reveal .phone-actions button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 20px;border:1px solid #75616b;border-radius:999px;font-size:13px;font-weight:600;text-decoration:none}
.phone-reveal .phone-actions a{background:var(--phone-pink);border-color:var(--phone-pink);color:#242125}
.phone-reveal .phone-actions :focus-visible{outline:2px solid var(--phone-pink);outline-offset:4px}
@keyframes phone-appear{from{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.phone-reveal *{animation:none!important;transition:none!important}}

/* Écran tactile : pas de clavier, l'aide reste lue par les lecteurs d'écran (aria-describedby) */
@media (hover:none) and (pointer:coarse){.phone-reveal .phone-help{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0}}
