/* rr-outils : styles limités aux blocs de l'extension. Aucune règle globale. */
.rr-sim,.rr-faq,.rr-chart{
  --rr-red:#C21F25;--rr-red-hover:#A5191E;--rr-red-deep:#8E1519;--rr-red-soft:#FBEDEC;--rr-red-line:#EFC7C6;
  --rr-blush:#FBF5F2;--rr-ink:#1E1E1E;--rr-grey:#54595F;--rr-muted:#5C6166;--rr-line:#E6E2DF;--rr-paper-alt:#F7F4F2;
  --rr-green:#1F7A3A;--rr-title:"Poppins",sans-serif;--rr-text:"Open Sans",sans-serif;--rr-r:6px;--rr-r-lg:14px;
  --rr-shadow:0 1px 2px rgba(60,20,20,.05),0 12px 32px -8px rgba(60,20,20,.12);
  color-scheme:light;color:var(--rr-ink);font:16px/1.65 var(--rr-text);
}
.rr-sim *,.rr-sim *::before,.rr-sim *::after,.rr-faq *,.rr-chart *{box-sizing:border-box}
.rr-sim [hidden],.rr-faq [hidden]{display:none!important}
.rr-sim h2,.rr-sim h3,.rr-sim h4,.rr-faq h2,.rr-faq summary{font-family:var(--rr-title);color:var(--rr-ink);margin:0;text-wrap:balance}
.rr-sim p{margin:0}
.rr-sim button{font:inherit;cursor:pointer}
.rr-sim :focus-visible,.rr-faq :focus-visible{outline:3px solid var(--rr-red);outline-offset:3px;border-radius:4px}
.rr-sim ::selection{background:var(--rr-red);color:#fff}
.rr-icon{width:20px;height:20px;flex:none;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

/* Boutons */
.rr-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:14px 24px;border-radius:var(--rr-r);font:600 16px/1.2 var(--rr-title);text-decoration:none;border:2px solid var(--rr-red);transition:background .18s,color .18s,border-color .18s}
.rr-btn-primary{background:var(--rr-red);color:#fff}
.rr-btn-ghost{background:transparent;color:var(--rr-red)}
.rr-linkbtn{background:none;border:0;padding:0;color:var(--rr-red);font-weight:600;text-decoration:underline;text-underline-offset:3px}

/* États des boutons et liens.
   Le thème Hello Elementor applique `[type=button]:hover, button:focus, a:hover...{background-color:#c36;color:#fff}`
   (spécificité 0,2,0) : sans couleur explicite dans chaque état, l'étiquette passe en blanc sur fond clair.
   Chaque style définit donc color, background-color (et border-color) pour repos, :hover, :focus, :focus-visible
   et :active, avec un sélecteur plus spécifique que celui du thème. L'état pressé (aria-pressed="true") garde
   ses propres couleurs dans tous les états. Le contour de focus visible (outline) reste celui de .rr-sim :focus-visible. */
.rr-sim .rr-btn-primary,.rr-sim .rr-btn-primary:focus,.rr-sim .rr-btn-primary:focus-visible{background-color:var(--rr-red);border-color:var(--rr-red);color:#fff;text-decoration:none}
.rr-sim .rr-btn-primary:hover{background-color:var(--rr-red-hover);border-color:var(--rr-red-hover);color:#fff;text-decoration:none}
.rr-sim .rr-btn-primary:active{background-color:var(--rr-red-deep);border-color:var(--rr-red-deep);color:#fff;text-decoration:none}
.rr-sim .rr-btn-primary:disabled,.rr-sim .rr-btn-primary:disabled:hover,.rr-sim .rr-btn-primary:disabled:focus,.rr-sim .rr-btn-primary:disabled:active{background-color:#DAD6D3;border-color:#DAD6D3;color:#5E5A57;cursor:not-allowed}
.rr-sim .rr-btn-ghost,.rr-sim .rr-btn-ghost:focus,.rr-sim .rr-btn-ghost:focus-visible{background-color:transparent;border-color:var(--rr-red);color:var(--rr-red);text-decoration:none}
.rr-sim .rr-btn-ghost:hover{background-color:var(--rr-red-soft);border-color:var(--rr-red);color:var(--rr-red);text-decoration:none}
.rr-sim .rr-btn-ghost:active{background-color:var(--rr-red-line);border-color:var(--rr-red);color:var(--rr-red-deep);text-decoration:none}
.rr-sim .rr-linkbtn[type="button"],.rr-sim .rr-linkbtn[type="button"]:focus,.rr-sim .rr-linkbtn[type="button"]:focus-visible{background-color:transparent;color:var(--rr-red);text-decoration:underline}
.rr-sim .rr-linkbtn[type="button"]:hover{background-color:transparent;color:var(--rr-red-hover);text-decoration:underline}
.rr-sim .rr-linkbtn[type="button"]:active{background-color:transparent;color:var(--rr-red-deep);text-decoration:underline}
.rr-sim .rr-note a,.rr-sim .rr-state a,.rr-sim .rr-consent a,.rr-sim .rr-banner a{color:var(--rr-red);text-decoration:underline;background-color:transparent}
.rr-sim .rr-note a:hover,.rr-sim .rr-state a:hover,.rr-sim .rr-consent a:hover,.rr-sim .rr-banner a:hover,.rr-sim .rr-note a:focus,.rr-sim .rr-state a:focus,.rr-sim .rr-consent a:focus,.rr-sim .rr-banner a:focus{color:var(--rr-red-hover);background-color:transparent;text-decoration:underline}

/* Mise en page du simulateur */
.rr-sim{padding:8px 0 24px}
/* Le conteneur de taille est .rr-wrap (pas .rr-sim) : la barre mobile fixed reste ancrée au viewport */
.rr-wrap{container-type:inline-size;container-name:rr}
.rr-head{max-width:720px;margin-bottom:32px}
.rr-head .rr-badge{display:inline-block;margin:0 0 12px!important;padding:4px 14px;border:1px solid var(--rr-red-line);border-radius:999px;background:var(--rr-red-soft);color:var(--rr-red-deep);font:600 16px/1.4 var(--rr-title);letter-spacing:.01em}
.rr-head h2{font-size:clamp(28px,3vw,38px);line-height:1.15;font-weight:700;letter-spacing:-.02em}
.rr-head p{font-size:18px;color:var(--rr-grey);margin-top:12px}
.rr-banner{display:flex;gap:12px;align-items:flex-start;padding:14px 18px;margin-bottom:24px;background:var(--rr-paper-alt);border-radius:var(--rr-r-lg)}
.rr-banner .rr-icon{color:var(--rr-red);margin-top:3px}
.rr-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:32px;align-items:start}
.rr-panel{container-type:inline-size;background:#fff;border:1px solid var(--rr-line);border-radius:var(--rr-r-lg);padding:32px}
.rr-panel>h3{font-size:20px;font-weight:600;margin-bottom:28px}
.rr-field{margin-bottom:30px;border:0;padding:0;min-width:0}
.rr-sim legend.rr-label{padding:0;width:100%}
.rr-field:last-child{margin-bottom:0}
.rr-label{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-weight:700;margin-bottom:10px;padding:0}
.rr-label output{font:600 16px var(--rr-title);color:var(--rr-red);white-space:nowrap}
.rr-help{font-size:16px;color:var(--rr-muted);margin-top:8px}
.rr-help[data-out="dob-hint"]{margin:-18px 0 30px}
.rr-inp{display:flex;align-items:center;min-width:0;height:54px;border:1px solid #C9C4C0;border-radius:var(--rr-r);background:#fff}
.rr-inp:hover{border-color:var(--rr-grey)}
.rr-inp:focus-within{border-color:var(--rr-red);box-shadow:inset 0 0 0 1px var(--rr-red)}
.rr-inp input,.rr-inp select{flex:1 1 auto;width:100%;min-width:0;height:100%;padding:0 16px;border:0;border-radius:var(--rr-r);font:600 18px var(--rr-text);color:var(--rr-ink);background:transparent;font-variant-numeric:tabular-nums;caret-color:var(--rr-red)}
.rr-inp input:focus,.rr-inp select:focus{outline:none}
.rr-inp .rr-unit{flex:none;white-space:nowrap;padding-right:16px;color:var(--rr-muted)}
.rr-row2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.rr-row2>*{min-width:0}
.rr-stepper{display:inline-flex;align-items:stretch;border:1px solid #C9C4C0;border-radius:var(--rr-r);overflow:hidden;background:#fff}
.rr-stepper button{width:54px;border:0;background:var(--rr-paper-alt);color:var(--rr-ink);display:grid;place-items:center}
.rr-sim .rr-stepper button[type="button"],.rr-sim .rr-stepper button[type="button"]:focus,.rr-sim .rr-stepper button[type="button"]:focus-visible{background-color:var(--rr-paper-alt);color:var(--rr-ink)}
.rr-sim .rr-stepper button[type="button"]:hover{background-color:var(--rr-red-soft);color:var(--rr-red)}
.rr-sim .rr-stepper button[type="button"]:active{background-color:var(--rr-red-line);color:var(--rr-red-deep)}
.rr-stepper input{width:92px;height:54px;border:0;border-inline:1px solid #C9C4C0;text-align:center;font:600 18px var(--rr-text);-moz-appearance:textfield;caret-color:var(--rr-red)}
.rr-stepper input::-webkit-inner-spin-button{display:none}
.rr-stepper input:focus{outline:none;background:var(--rr-red-soft)}
.rr-range{width:100%;margin:10px 0 2px;accent-color:var(--rr-red);height:28px}
.rr-ticks{display:flex;justify-content:space-between;font-size:16px;color:var(--rr-muted)}
/* Repères positionnés sur la valeur : le centre du curseur parcourt la piste de thumb/2 à (100 % - thumb/2).
   --p = (valeur - min) / (max - min) * 100, --rr-thumb = largeur du curseur natif (16 px sous Chrome, Firefox et Safari). */
.rr-ticks.is-pos{display:block;position:relative;height:1.65em;--rr-thumb:16px}
.rr-ticks.is-pos span{position:absolute;top:0;left:calc(var(--p) * 1% + (.5 - var(--p) / 100) * var(--rr-thumb));transform:translateX(-50%);white-space:nowrap}
.rr-seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;background:var(--rr-paper-alt);border-radius:10px}
.rr-seg button{min-height:46px;border:0;border-radius:var(--rr-r);background:transparent;color:var(--rr-ink);font-weight:600;padding:8px 10px}
.rr-sim .rr-seg button[type="button"],.rr-sim .rr-seg button[type="button"]:focus,.rr-sim .rr-seg button[type="button"]:focus-visible{background-color:transparent;color:var(--rr-ink)}
.rr-sim .rr-seg button[type="button"]:hover{background-color:rgba(255,255,255,.7);color:var(--rr-ink)}
.rr-sim .rr-seg button[type="button"]:active{background-color:rgba(255,255,255,.9);color:var(--rr-ink)}
.rr-sim .rr-seg button[type="button"][aria-pressed="true"],.rr-sim .rr-seg button[type="button"][aria-pressed="true"]:hover,.rr-sim .rr-seg button[type="button"][aria-pressed="true"]:focus,.rr-sim .rr-seg button[type="button"][aria-pressed="true"]:focus-visible,.rr-sim .rr-seg button[type="button"][aria-pressed="true"]:active{background-color:#fff;color:var(--rr-red);box-shadow:0 1px 2px rgba(0,0,0,.08),0 2px 8px -2px rgba(0,0,0,.12)}
.rr-toggles{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.rr-toggles button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:12px 14px;border:1px solid var(--rr-line);border-radius:var(--rr-r);background:#fff;text-align:left}
.rr-toggles button small{font-size:16px;color:var(--rr-muted)}
/* Libellés secondaires (barres et tableau du cumul) : jamais sous 16 px, le `small` du navigateur réduit à 13 px */
.rr-sim small{font-size:16px}
.rr-sim .rr-toggles button[type="button"],.rr-sim .rr-toggles button[type="button"]:focus,.rr-sim .rr-toggles button[type="button"]:focus-visible{background-color:#fff;border-color:var(--rr-line);color:var(--rr-ink)}
.rr-sim .rr-toggles button[type="button"]:hover{background-color:var(--rr-blush);border-color:#C9C4C0;color:var(--rr-ink)}
.rr-sim .rr-toggles button[type="button"]:active{background-color:var(--rr-paper-alt);border-color:#C9C4C0;color:var(--rr-ink)}
.rr-sim .rr-toggles button[type="button"][aria-pressed="true"],.rr-sim .rr-toggles button[type="button"][aria-pressed="true"]:hover,.rr-sim .rr-toggles button[type="button"][aria-pressed="true"]:focus,.rr-sim .rr-toggles button[type="button"][aria-pressed="true"]:focus-visible,.rr-sim .rr-toggles button[type="button"][aria-pressed="true"]:active{background-color:var(--rr-red-soft);border-color:var(--rr-red);color:var(--rr-ink)}
.rr-toggles button[aria-pressed="true"] strong{color:var(--rr-red)}

/* Résultat */
.rr-result{position:sticky;top:100px}
.rr-result .rr-panel{border:0;box-shadow:var(--rr-shadow)}
.rr-kicker{font-size:16px;font-weight:600;color:var(--rr-muted)}
.rr-big{font:700 clamp(40px,4.6vw,56px)/1.05 var(--rr-title);letter-spacing:-.03em;color:var(--rr-red);margin-top:6px;font-variant-numeric:tabular-nums}
.rr-big-sub{margin:8px 0 24px!important;color:var(--rr-muted)}
.rr-lines{margin:0;padding:0;list-style:none;border-top:1px solid var(--rr-line)}
.rr-lines li{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--rr-line)}
.rr-lines .v{font-weight:700;white-space:nowrap;font-variant-numeric:tabular-nums}
.rr-lines .is-gain .v{color:var(--rr-green)}
.rr-lines .is-loss .v{color:var(--rr-red)}
/* Délais d'amortissement : la valeur peut passer à la ligne sur mobile */
.rr-lines li.is-wrap{flex-wrap:wrap;row-gap:2px}
.rr-lines .is-wrap>span:first-child{flex:1 1 14em}
.rr-lines .is-wrap .v{margin-left:auto;text-align:right}
/* Détail du calcul (retraite progressive) */
.rr-calc{margin-top:20px}
.rr-calc-title{font:600 16px var(--rr-title);margin-bottom:8px!important}
.rr-calc ul{margin:0;padding:0 0 0 20px;color:var(--rr-grey);font-size:16px}
.rr-calc li{margin:0 0 6px}
.rr-calc strong{color:var(--rr-ink)}
.rr-pill{display:inline-block;margin-top:16px;padding:5px 12px;border-radius:var(--rr-r-lg);background:var(--rr-paper-alt);font-size:16px;color:var(--rr-grey)}
.rr-note{margin-top:16px!important;padding:14px 16px;background:var(--rr-paper-alt);border-radius:var(--rr-r);font-size:16px}
.rr-note.is-warn{background:var(--rr-red-soft)}
.rr-checks{list-style:none;margin:0 0 20px;padding:0}
.rr-checks li{display:grid;grid-template-columns:24px 1fr;gap:10px;padding:8px 0}
.rr-checks .rr-icon{width:22px;height:22px}
.rr-checks .is-ok .rr-icon{color:var(--rr-green)}
.rr-checks .is-ko .rr-icon{color:var(--rr-red)}
.rr-checks small{display:block;color:var(--rr-muted);font-size:16px}
.rr-actions{display:grid;gap:10px;margin-top:24px}
.rr-disclaimer{font-size:16px;color:var(--rr-muted);margin-top:16px!important}
.rr-disclaimer strong{color:var(--rr-ink)}

/* Barres de comparaison (valeurs toujours visibles, sans survol) */
.rr-bars{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:12px}
.rr-bars li{display:grid;gap:4px}
.rr-bars .rr-bar-lbl{display:flex;justify-content:space-between;gap:12px;font-size:16px}
.rr-bars .rr-bar-lbl strong{font-variant-numeric:tabular-nums;white-space:nowrap}
.rr-bars .rr-track{height:10px;border-radius:999px;background:var(--rr-paper-alt);overflow:hidden}
.rr-bars .rr-fill{height:100%;border-radius:999px;background:#D9C9C6}
.rr-bars li.is-best .rr-fill{background:var(--rr-red)}

/* Blocs repliables */
.rr-block{margin-top:40px}
.rr-fold{border:1px solid var(--rr-line);border-radius:var(--rr-r-lg);background:#fff}
.rr-fold>summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 24px;cursor:pointer;font:600 18px var(--rr-title)}
.rr-fold>summary::-webkit-details-marker{display:none}
.rr-fold>summary .rr-icon{color:var(--rr-red);transition:transform .2s}
.rr-fold[open]>summary .rr-icon{transform:rotate(180deg)}
.rr-fold-body{padding:0 24px 24px}
.rr-table-wrap{overflow-x:auto;border:1px solid var(--rr-line);border-radius:var(--rr-r)}
.rr-table{width:100%;border-collapse:collapse;font-size:16px;font-variant-numeric:tabular-nums;min-width:660px}
.rr-table th,.rr-table td{padding:11px 14px;text-align:right;border-bottom:1px solid var(--rr-line)}
.rr-table th:first-child,.rr-table td:first-child{text-align:left}
.rr-table thead th{background:var(--rr-paper-alt);font-weight:700;font-size:16px}
.rr-table tr.is-me{background:var(--rr-red-soft)}
.rr-table tr.is-me td:first-child{font-weight:700}
.rr-table td.is-cell{background:var(--rr-red);color:#fff;font-weight:700}

/* Lead : bloc en ligne dans le panneau de résultat (colonne d'environ 460 px) */
.rr-lead{margin-top:20px;padding-top:20px;border-top:1px solid var(--rr-line)}
.rr-lead-intro{color:var(--rr-grey);margin:0 0 16px!important}
.rr-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}
.rr-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px 6px 10px;border-radius:999px;background:#fff;border:1px solid var(--rr-red-line);color:var(--rr-red);font-size:16px;font-weight:600}
.rr-chip .rr-icon{width:16px;height:16px}
.rr-lead .rr-lfield{margin-bottom:16px;min-width:0}
/* Prénom et nom côte à côte dans le panneau de résultat, empilés quand le panneau est étroit (mobile) */
.rr-lrow{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 16px}
@container (max-width:379px){.rr-lrow{grid-template-columns:minmax(0,1fr)}}
@supports not (container-type:inline-size){@media (max-width:599px){.rr-lrow{grid-template-columns:minmax(0,1fr)}}}
.rr-lead label.rr-flabel{display:block;font-weight:700;margin-bottom:8px}
.rr-lead input[type=text],.rr-lead input[type=email]{width:100%;height:54px;padding:0 16px;border:1px solid #C9C4C0;border-radius:var(--rr-r);font:16px var(--rr-text);background:#fff;caret-color:var(--rr-red)}
.rr-lead input[type=text]:focus,.rr-lead input[type=email]:focus{outline:none;border-color:var(--rr-red);box-shadow:inset 0 0 0 1px var(--rr-red)}
.rr-lead input[aria-invalid="true"]{border-color:var(--rr-red)}
.rr-err{font-size:16px;color:var(--rr-red);margin-top:6px!important}
.rr-consent{display:flex;gap:12px;align-items:flex-start;font-size:16px;margin-bottom:20px;cursor:pointer}
.rr-consent input{width:22px;height:22px;margin:2px 0 0;accent-color:var(--rr-red);flex:none}
.rr-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.rr-state{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:var(--rr-r-lg);background:#fff;margin-top:12px}
.rr-state .rr-icon{width:28px;height:28px}
.rr-state h4{font:600 18px var(--rr-title);margin-bottom:4px}
.rr-state.is-ok{border:1px solid #BFE0C6}.rr-state.is-ok .rr-icon{color:var(--rr-green)}
.rr-state.is-ko{border:1px solid var(--rr-red-line)}.rr-state.is-ko .rr-icon{color:var(--rr-red)}
.rr-spin{width:18px;height:18px;border:2px solid rgba(255,255,255,.45);border-top-color:#fff;border-radius:50%;animation:rr-spin .8s linear infinite}
@keyframes rr-spin{to{transform:rotate(360deg)}}

/* Pont entre leviers */
.rr-bridge{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:stretch}
.rr-bridge h3{font-size:24px;font-weight:700;letter-spacing:-.015em}
.rr-bridge-intro p{color:var(--rr-grey);margin-top:8px}
.rr-bridge a{display:flex;flex-direction:column;gap:8px;padding:24px;border:1px solid var(--rr-line);border-radius:var(--rr-r-lg);text-decoration:none;color:var(--rr-ink);transition:border-color .18s,box-shadow .18s,transform .18s}
.rr-sim .rr-bridge a,.rr-sim .rr-bridge a:focus{background-color:#fff;color:var(--rr-ink)}
.rr-sim .rr-bridge a:hover{background-color:#fff;border-color:var(--rr-red-line);box-shadow:var(--rr-shadow);transform:translateY(-2px);color:var(--rr-ink)}
.rr-bridge a h4{font:600 20px var(--rr-title);color:var(--rr-red)}
.rr-bridge a p{color:var(--rr-grey);flex:1}
.rr-go{display:inline-flex;align-items:center;gap:8px;font-weight:700}
.rr-go .rr-icon{color:var(--rr-red);transition:transform .18s}
.rr-bridge a:hover .rr-go .rr-icon{transform:translateX(3px)}

/* FAQ */
.rr-faq details{border-bottom:1px solid var(--rr-line)}
.rr-faq details:first-of-type{border-top:1px solid var(--rr-line)}
.rr-faq summary{list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center;padding:18px 0;cursor:pointer;font:600 17px/1.4 var(--rr-title)}
.rr-faq summary::-webkit-details-marker{display:none}
.rr-faq summary:hover{color:var(--rr-red)}
.rr-faq summary .rr-icon{color:var(--rr-red);transition:transform .2s}
.rr-faq details[open] summary .rr-icon{transform:rotate(45deg)}
.rr-faq details.is-closing summary .rr-icon{transform:none}
.rr-faq .rr-acc-body{overflow:hidden}
.rr-faq .rr-acc-body p{margin:0;padding:0 40px 20px 0;color:var(--rr-grey)}

/* Graphique */
.rr-chart{margin:24px 0 0;padding:24px;border:1px solid var(--rr-line);border-radius:var(--rr-r-lg);background:#fff}
.rr-chart figcaption{font:600 16px var(--rr-title);margin-bottom:4px}
.rr-chart .rr-chart-sub{font-size:16px;color:var(--rr-muted);margin:0 0 16px}
.rr-chart svg{display:block;width:100%;height:auto;overflow:visible}
.rr-chart .bar{fill:#E9DCD9}.rr-chart .bar.win{fill:var(--rr-red)}
.rr-chart .axis{font:16px var(--rr-text);fill:var(--rr-muted)}
.rr-chart .val{font:600 16px var(--rr-text);fill:var(--rr-ink)}
.rr-chart .band-lbl{font:600 16px var(--rr-text);fill:var(--rr-red)}

/* Barre mobile */
.rr-mbar{display:none}
@container rr (max-width:899px){
  .rr-grid{grid-template-columns:1fr}
  .rr-result{position:static}
  .rr-bridge{grid-template-columns:1fr}
}
@media (max-width:980px){
  .rr-mbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:40;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--rr-line);box-shadow:0 -8px 24px -8px rgba(0,0,0,.16);transition:transform .25s cubic-bezier(.16,1,.3,1)}
  .rr-mbar.is-off{transform:translateY(110%)}
  .rr-mbar .l{font-size:16px;color:var(--rr-muted);margin:0}
  .rr-mbar .v{font:700 22px var(--rr-title);color:var(--rr-red);font-variant-numeric:tabular-nums;margin:0}
  .rr-mbar .rr-btn{min-height:44px;padding:10px 16px;font-size:16px}
}
@container rr (max-width:599px){
  .rr-panel,.rr-result .rr-panel{padding:22px}
  .rr-row2,.rr-toggles{grid-template-columns:1fr}
  .rr-seg.is-5{grid-auto-flow:row;grid-template-columns:repeat(3,1fr)}
}
@container (max-width:419px){
  .rr-row2{grid-template-columns:minmax(0,1fr)}
}
/* Repli sans container queries (iOS 15 et moins) : mêmes règles, pilotées par la fenêtre */
@supports not (container-type:inline-size){
  @media (max-width:899px){
    .rr-grid{grid-template-columns:1fr}
    .rr-result{position:static}
    .rr-bridge{grid-template-columns:1fr}
  }
  @media (max-width:599px){
    .rr-panel,.rr-result .rr-panel{padding:22px}
    .rr-row2,.rr-toggles{grid-template-columns:1fr}
    .rr-seg.is-5{grid-auto-flow:row;grid-template-columns:repeat(3,1fr)}
  }
  @media (max-width:419px){
    .rr-row2{grid-template-columns:minmax(0,1fr)}
  }
}
@media (prefers-reduced-motion:reduce){.rr-sim *,.rr-faq *{transition:none!important;animation:none!important}}
