/**
 * RU Bottin : feuille de la page publique du Bottin (/pro/, fiches, fenêtres,
 * Modifier ma fiche) et de l'onglet Bottin des hubs.
 *
 * Correctif 70 (31 octobre 2026) : ces règles étaient imprimées dans la page
 * (deux balises de style de ru_bottin_render_shortcode()). Même contenu, même
 * ordre. Les deux textes traduits du CSS (« REQUIS », « Connecte-toi pour
 * voir ») arrivent par les variables --rub-txt-requis et --rub-txt-connecte,
 * posées par rub-public.js à partir de RUB_PUB.
 */
@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@400;500;600&family=Fraunces:opsz,wght@9..144,400;9..144,500&display=swap');
/* ---- Bloc 1 : page du Bottin ---- */
html, body { max-width: 100%; overflow-x: hidden; }
#ru-bottin-app { overflow-x: hidden; }
#ru-bottin-app {
  --gold:var(--rub-text);--gold2:var(--rub-text);--gold-soft:rgba(17,17,17,0.08);--gold-border:rgba(17,17,17,0.22);
  --surface:#FFFFFF;--surface2:#F0F0F0;--surface3:#ECEAE4;--border:var(--rub-border);--border2:var(--rub-border2);
  --text:var(--rub-text);--sub:#444444;--muted:#777777;--dim:#AAAAAA;--green:var(--rub-green);--green-soft:rgba(22,163,74,0.08);
  --amber:var(--rub-amber);--amber-soft:#FEF3E2;--red:var(--rub-red);--red-soft:rgba(229,57,53,0.08);--blue:#1565C0;--blue-soft:rgba(21,101,192,0.07);
  --r:10px;--r-sm:7px;--r-xs:5px;--mono:Arial,Helvetica,sans-serif;--display:Fraunces,Georgia,serif;--body:Arial,Helvetica,sans-serif;
  --shadow:0 1px 3px rgba(0,0,0,.06),0 4px 12px rgba(0,0,0,.04);--shadow-h:0 4px 16px rgba(0,0,0,.10),0 1px 4px rgba(0,0,0,.06);
  font-family:var(--body);color:var(--text);font-size:14px;
}
#ru-bottin-app *,#ru-bottin-app *::before,#ru-bottin-app *::after{box-sizing:border-box;margin:0;padding:0;}
#ru-bottin-app .rub-desc{font-size:13px;color:var(--sub);line-height:1.6;margin-bottom:16px;}
#ru-bottin-app .rub-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:20px;}
#ru-bottin-app .rub-type-tabs{display:inline-flex;background:var(--surface2);border:1px solid var(--border2);border-radius:100px;padding:3px;gap:2px;}
#ru-bottin-app .rub-type-tab{padding:6px 16px;border-radius:100px;font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);cursor:pointer;border:none;background:transparent;transition:all .2s;}
#ru-bottin-app .rub-type-tab.active{background:var(--text);color:#fff;}
#ru-bottin-app .rub-type-tab.active-gold{background:var(--rub-text);color:#fff;}
#ru-bottin-app .rub-cta-login{display:flex;align-items:center;gap:10px;padding:12px 15px;background:var(--gold-soft);border:1px solid var(--gold-border);border-radius:var(--r);margin-bottom:18px;font-size:13px;color:var(--sub);}
#ru-bottin-app .rub-cta-login a{color:var(--gold2);font-weight:600;text-decoration:none;}
#ru-bottin-app .rub-ma-fiche{display:flex;align-items:center;gap:14px;padding:14px 18px;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--gold);border-radius:var(--r);margin-bottom:20px;box-shadow:var(--shadow);flex-wrap:wrap;}
#ru-bottin-app .rub-mf-av{width:44px;height:44px;border-radius:10px;flex-shrink:0;overflow:hidden;font-size:0;line-height:0;}
#ru-bottin-app .rub-mf-av img{width:100%;height:100%;object-fit:cover;display:block;}
#ru-bottin-app .rub-mf-info{flex:1;min-width:0;}
#ru-bottin-app .rub-mf-label{font-family:var(--mono);font-size:8px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--gold2);margin-bottom:2px;}
#ru-bottin-app .rub-mf-nom{font-size:14px;font-weight:600;color:var(--text);}
#ru-bottin-app .rub-mf-statut{font-size:11px;color:var(--green);margin-top:1px;}
#ru-bottin-app .rub-mf-actions{display:flex;gap:6px;flex-wrap:wrap;flex-shrink:0;}
#ru-bottin-app .rub-search-row{display:flex;gap:8px;margin-bottom:12px;flex-wrap:wrap;}
#ru-bottin-app .rub-search-wrap{flex:1;min-width:200px;position:relative;}
#ru-bottin-app .rub-search-ico{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none;}
#ru-bottin-app .rub-search{width:100%;padding:10px 14px 10px 36px;background:var(--surface2);border:1px solid var(--border2);border-radius:var(--r);font-family:var(--body);font-size:13px;color:var(--text);outline:none;transition:border-color .14s,box-shadow .14s;}
#ru-bottin-app .rub-search:focus{border-color:var(--gold);box-shadow:0 0 0 3px var(--gold-soft);background:var(--surface);}
#ru-bottin-app .rub-filter-btn{display:flex;align-items:center;gap:6px;padding:0 16px;background:var(--surface);border:1px solid var(--border2);border-radius:var(--r-sm);font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--sub);cursor:pointer;transition:all .15s;white-space:nowrap;}
#ru-bottin-app .rub-filters-panel{display:none;background:var(--surface);border:1px solid var(--border);border-radius:var(--r);padding:16px;margin-bottom:16px;box-shadow:var(--shadow);}
#ru-bottin-app .rub-filters-panel.open{display:block;}
#ru-bottin-app .rub-filter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:9px;}
#ru-bottin-app .rub-filter-lbl{font-family:var(--mono);font-size:8px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;display:block;}
#ru-bottin-app .rub-filter-sel{width:100%;padding:8px 9px;background:var(--surface2);border:1px solid var(--border2);border-radius:var(--r-xs);color:var(--text);font-size:12px;font-family:var(--body);outline:none;cursor:pointer;}
#ru-bottin-app .rub-filter-reset{padding:8px 13px;background:transparent;border:1px solid var(--border2);border-radius:var(--r-xs);color:var(--muted);font-family:var(--mono);font-size:9px;font-weight:700;cursor:pointer;align-self:flex-end;height:34px;}
#ru-bottin-app .rub-count{display:flex;align-items:center;gap:8px;font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:16px;}
#ru-bottin-app .rub-count-dot{width:6px;height:6px;border-radius:50%;background:var(--gold);flex-shrink:0;}
#ru-bottin-app .rub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;}
#ru-bottin-app .rub-empty{grid-column:1/-1;padding:50px 20px;text-align:center;color:var(--muted);font-size:13px;}
#ru-bottin-app .rub-loading{grid-column:1/-1;padding:36px;text-align:center;color:var(--muted);font-family:var(--mono);font-size:10px;letter-spacing:.1em;display:flex;align-items:center;justify-content:center;gap:10px;}
#ru-bottin-app .rub-spinner{width:16px;height:16px;flex-shrink:0;border:2px solid var(--border2);border-top-color:var(--gold);border-radius:50%;animation:rubSpin .7s linear infinite;}
@keyframes rubSpin{to{transform:rotate(360deg);}}
#ru-bottin-app .rub-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r);overflow:hidden;cursor:pointer;transition:transform .2s,box-shadow .2s,border-color .2s;box-shadow:var(--shadow);}
#ru-bottin-app .rub-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-h);border-color:var(--border2);}
#ru-bottin-app .rub-card-stripe{height:2px;}
#ru-bottin-app .rub-card-inner{padding:15px 16px;}
#ru-bottin-app .rub-card-head{display:flex;gap:11px;align-items:flex-start;margin-bottom:10px;}
#ru-bottin-app .rub-card-av{width:44px;height:44px;border-radius:10px;flex-shrink:0;overflow:hidden;font-size:0;line-height:0;}
#ru-bottin-app .rub-card-av img{width:100%;height:100%;object-fit:cover;display:block;}
#ru-bottin-app .rub-card-info{flex:1;min-width:0;}
#ru-bottin-app .rub-card-nom{font-size:13px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:2px;}
#ru-bottin-app .rub-card-loc{font-size:11px;color:var(--muted);}
#ru-bottin-app .rub-dispo-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0;margin-top:4px;}
#ru-bottin-app .rub-dispo-dot.ok{background:var(--green);}
#ru-bottin-app .rub-dispo-dot.part{background:var(--amber);}
#ru-bottin-app .rub-dispo-dot.non{background:var(--dim);}
#ru-bottin-app .rub-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:9px;}
#ru-bottin-app .rub-tag{font-family:Arial, Helvetica, sans-serif;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:100px;border:1px solid;}
#ru-bottin-app .tag-ind{background:#F0F0EB;color:var(--rub-ink);border-color:var(--border2);}
#ru-bottin-app .tag-ent{background:var(--surface3);color:var(--rub-ink);border-color:var(--border2);}
#ru-bottin-app .tag-gold{background:var(--gold-soft);color:var(--gold2);border-color:var(--gold-border);}
#ru-bottin-app .tag-ok{background:var(--green-soft);color:var(--green);border-color:rgba(46,125,50,.2);}
#ru-bottin-app .tag-part{background:var(--amber-soft);color:var(--amber);border-color:rgba(180,83,9,.2);}
#ru-bottin-app .tag-non{background:var(--surface2);color:var(--muted);border-color:var(--border);}
#ru-bottin-app .rub-card-bio{font-size:11px;color:var(--sub);line-height:1.5;max-height:30px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:10px;}
#ru-bottin-app .rub-card-foot{display:flex;align-items:center;justify-content:space-between;padding-top:9px;border-top:1px solid var(--border);}
#ru-bottin-app .rub-card-anc{font-family:var(--mono);font-size:9px;color:var(--muted);}
#ru-bottin-app .rub-pagination{display:flex;justify-content:center;gap:5px;margin-top:24px;flex-wrap:wrap;}
#ru-bottin-app .rub-pgbtn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;background:var(--surface);border:1px solid var(--border2);border-radius:var(--r-xs);font-family:var(--mono);font-size:11px;color:var(--sub);cursor:pointer;transition:all .14s;}
#ru-bottin-app .rub-pgbtn:hover,#ru-bottin-app .rub-pgbtn.active{background:var(--text);color:#fff;border-color:var(--text);}
#ru-bottin-app .rub-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 16px;border-radius:var(--r-sm);font-family:var(--mono);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:none;transition:all .15s;text-decoration:none;}
#ru-bottin-app .rub-btn-dark{background:var(--text);color:#fff;}
#ru-bottin-app .rub-btn-dark:hover{background:#333;transform:translateY(-1px);}
#ru-bottin-app .rub-btn-outline{background:transparent;border:1px solid var(--border2);color:var(--sub);}
#ru-bottin-app .rub-btn-outline:hover{border-color:var(--text);color:var(--text);}
@media(max-width:640px){
  #ru-bottin-app .rub-type-tabs{display:flex;overflow-x:auto;scrollbar-width:none;max-width:100%;width:100%;}
  #ru-bottin-app .rub-type-tab{flex-shrink:0;white-space:nowrap;}
  #ru-bottin-app .rub-actions{flex-direction:column;align-items:stretch;}
  #ru-bottin-app .rub-grid{grid-template-columns:1fr;}
}

/* ---- Bloc 2 : fenêtres et fiches ---- */
/* Tokens (couleurs/polices) : source unique = assets/css/rub-tokens.css */

.rub-ov{display:none;position:fixed;inset:0!important;width:100vw;height:100vh;height:100dvh;background:rgba(17,17,17,.52);z-index:99998!important;align-items:flex-start;justify-content:center;padding:24px 16px;overflow-y:auto;overflow-x:hidden;box-sizing:border-box;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;}
.rub-ov.open{display:flex;}

.rub-mbox{background:var(--rub-surface);border:1px solid var(--rub-border2);border-radius:14px;width:100%;max-width:740px;min-width:0;margin:auto;box-shadow:var(--rub-shadow);overflow:hidden;overflow-x:hidden;animation:rubMIn .22s cubic-bezier(.34,1.56,.64,1);font-family:var(--rub-body);color:var(--rub-text);box-sizing:border-box;overscroll-behavior:contain;}
.rub-mbox-sm{max-width:680px;}
.rub-mbox *{box-sizing:border-box;max-width:100%;}

@keyframes rubMIn{from{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:none}}

.rub-m-stripe{height:3px;}
.rub-m-head{display:flex;align-items:flex-start;gap:14px;padding:20px 20px 15px;border-bottom:1px solid var(--rub-border);overflow:hidden;}
.rub-m-av{width:62px;height:62px;border-radius:12px;flex-shrink:0;overflow:hidden;font-size:0;line-height:0;}
.rub-m-av img{width:100%;height:100%;object-fit:cover;display:block;}
.rub-m-info{flex:1;min-width:0;overflow:hidden;}
.rub-m-nom{font-family:var(--rub-display);font-size:28px;letter-spacing:.04em;color:var(--rub-text);line-height:1;margin-bottom:3px;word-break:break-word;}
.rub-m-sub{font-size:12px;color:var(--rub-muted);margin-bottom:8px;word-break:break-word;}
.rub-m-numero{font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rub-muted);margin-bottom:5px;}
.rub-m-tags{display:flex;flex-wrap:wrap;gap:5px;}
.rub-m-x{width:28px;height:28px;min-width:28px;border-radius:50%;border:1px solid var(--rub-border2);background:transparent;cursor:pointer;color:var(--rub-muted);font-size:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .13s;}
/* v2.3 - Croix flottante : masquée par défaut, visible uniquement en mobile */
.rub-m-floating-close{display:none;}
.rub-f-floating-close{display:none;}
.rub-m-x:hover{background:var(--rub-red-s);color:var(--rub-red);}

.rub-m-body{padding:16px 20px;max-height:60vh;overflow-y:auto;overflow-x:hidden;word-break:break-word;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;}
.rub-m-section{font-family:var(--rub-mono);font-size:8px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--rub-gold2);margin:14px 0 8px;padding-bottom:5px;border-bottom:1px solid var(--rub-gold-b);}
.rub-m-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;}
.rub-m-field{display:flex;flex-direction:column;gap:3px;}
.rub-m-flbl{font-family:var(--rub-mono);font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--rub-muted);}
.rub-m-fval{font-size:13px;color:var(--rub-text);word-break:break-word;}
.rub-m-fval a{color:var(--rub-gold2);text-decoration:none;}
.rub-m-bio-box{font-size:13px;color:var(--rub-sub);line-height:1.65;max-height:220px;overflow-y:auto;background:var(--rub-s2);border:1px solid var(--rub-border);border-radius:var(--rub-rsm);padding:12px 14px;word-break:break-word;}
/* v2.3 - Wrapper bio + bouton scroll ↓ */
.rub-m-bio-wrap{position:relative;}
.rub-m-bio-arrow{position:absolute;bottom:10px;left:50%;margin-left:-16px;width:32px;height:32px;border-radius:50%;border:1px solid var(--rub-text);background:linear-gradient(135deg,var(--rub-text),var(--rub-text));color:var(--rub-ink);font-size:14px;font-weight:700;cursor:pointer;display:none;align-items:center;justify-content:center;box-shadow:0 2px 6px rgba(17,17,17,.4);opacity:0;transition:opacity .25s;animation:rubBioArrowBounce 1.6s ease-in-out infinite;}
.rub-m-bio-wrap.scrollable .rub-m-bio-arrow{display:flex;opacity:1;}
.rub-m-bio-wrap.scrolled .rub-m-bio-arrow{opacity:0;pointer-events:none;}
.rub-m-bio-arrow:hover{background:var(--rub-accent,var(--ru-accent,#1d5c8f));color:var(--rub-accent-ink,#FFFFFF);animation:none;}
@keyframes rubBioArrowBounce{0%,100%{transform:translateY(0);}50%{transform:translateY(3px);}}
.rub-m-chips{display:flex;flex-wrap:wrap;gap:5px;margin-top:2px;}
.rub-m-chip{font-size:10px;font-weight:500;padding:3px 9px;border-radius:100px;background:var(--rub-s2);color:var(--rub-sub);border:1px solid var(--rub-border);}
.rub-m-reseaux{display:flex;flex-direction:column;gap:7px;margin-top:4px;}
.rub-m-reseau-row{display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--rub-s2);border:1px solid var(--rub-border);border-radius:var(--rub-rsm);overflow:hidden;}
.rub-m-reseau-lbl{font-family:var(--rub-mono);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--rub-muted);min-width:80px;flex-shrink:0;}
.rub-m-reseau-val{font-size:12px;color:var(--rub-sub);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.rub-m-reseau-btns{display:flex;gap:4px;flex-shrink:0;}
.rub-m-reseau-btn{padding:4px 9px;border-radius:5px;font-family:var(--rub-mono);font-size:8px;font-weight:700;cursor:pointer;border:1px solid var(--rub-border2);background:var(--rub-surface);color:var(--rub-sub);transition:all .13s;text-decoration:none;display:inline-flex;align-items:center;}
.rub-m-reseau-btn.ouvrir{background:var(--rub-text);color:#fff;border-color:var(--rub-text);}
.rub-m-qr-contact-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start;}
.rub-m-qr-block{display:flex;flex-direction:column;align-items:center;gap:6px;}
.rub-m-qr-block img{width:80px;height:80px;border:1px solid var(--rub-border);border-radius:6px;padding:3px;background:#fff;}
/* v2.3 - Section Partager cette fiche */
.rub-m-share-box{display:flex;align-items:center;gap:16px;padding:14px 16px;background:linear-gradient(135deg,rgba(17,17,17,.06),rgba(17,17,17,.02));border:1px solid rgba(17,17,17,.25);border-radius:10px;}
.rub-m-share-qr{display:flex;flex-direction:column;align-items:center;gap:5px;flex-shrink:0;}
.rub-m-share-dl{margin-top:2px;width:90px;padding:5px 6px;background:transparent;border:1px solid var(--rub-border2);border-radius:5px;font-family:var(--rub-mono);font-size:8px;font-weight:700;letter-spacing:.06em;color:var(--rub-gold2);cursor:pointer;text-transform:uppercase;}
.rub-m-share-dl:hover{background:var(--rub-text);color:#fff;border-color:var(--rub-text);}
.rub-m-share-actions{flex:1;min-width:0;}
.rub-m-share-btn{padding:7px 12px;border-radius:6px;font-family:var(--rub-mono);font-size:10px;font-weight:700;letter-spacing:.06em;cursor:pointer;border:1px solid var(--rub-border2);background:var(--rub-surface);color:var(--rub-text);transition:all .13s;}
.rub-m-share-btn:hover{background:var(--rub-text);color:#fff;border-color:var(--rub-text);}
.rub-m-qr-lbl{font-family:var(--rub-mono);font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--rub-muted);}
.rub-m-contacts{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px;}
.rub-m-contact{display:inline-flex;align-items:center;gap:5px;padding:6px 11px;background:var(--rub-s2);border:1px solid var(--rub-border);border-radius:var(--rub-rxs);font-size:11px;font-weight:500;color:var(--rub-sub);text-decoration:none;cursor:pointer;transition:all .13s;}
.rub-m-contact-blur{display:inline-flex;align-items:center;padding:6px 11px;background:var(--rub-s2);border:1px solid var(--rub-border);border-radius:var(--rub-rxs);font-size:11px;color:var(--rub-muted);filter:blur(3px);user-select:none;pointer-events:none;}
.rub-dispo-sw{display:flex;gap:5px;flex-wrap:wrap;margin-top:5px;}
.rub-dispo-b{padding:6px 12px;border-radius:var(--rub-rxs);font-family:var(--rub-mono);font-size:9px;font-weight:700;border:1px solid var(--rub-border2);background:var(--rub-s2);color:var(--rub-muted);cursor:pointer;transition:all .13s;}
.rub-dispo-b.ok{background:var(--rub-green-s);border-color:rgba(46,125,50,.3);color:var(--rub-green);}
.rub-dispo-b.part{background:var(--rub-amber-s);border-color:rgba(180,83,9,.3);color:var(--rub-amber);}
.rub-dispo-b.non{background:var(--rub-s2);border-color:var(--rub-border2);color:var(--rub-muted);}
.rub-m-link-btn{display:inline-flex;align-items:center;gap:5px;padding:7px 13px;background:var(--rub-blue-s);border:1px solid rgba(29,78,216,.2);border-radius:var(--rub-rxs);font-family:var(--rub-mono);font-size:9px;font-weight:700;color:var(--rub-blue);cursor:pointer;transition:all .14s;}
.rub-m-link-btn:hover{background:var(--rub-blue);color:#fff;}
.rub-m-foot{display:flex;gap:12px;align-items:center;padding:12px 20px;border-top:1px solid var(--rub-border);background:var(--rub-s2);flex-wrap:wrap;overflow:hidden;justify-content:space-between;}
/* v2.3 - Footer refondu : zone gauche (actions secondaires) + zone droite (action principale + Fermer) */
.rub-m-foot-left{display:flex;gap:6px;align-items:center;flex-wrap:wrap;}
.rub-m-foot-right{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-left:auto;}
.rub-m-foot-secondary{padding:6px 10px;border-radius:6px;font-family:var(--rub-mono);font-size:9px;font-weight:700;letter-spacing:.06em;cursor:pointer;border:1px solid var(--rub-border2);background:transparent;color:var(--rub-muted);transition:all .13s;text-transform:uppercase;}
.rub-m-foot-secondary:hover{background:var(--rub-text);color:#fff;border-color:var(--rub-text);}
.rub-m-foot-primary{padding:9px 16px;border-radius:7px;font-family:var(--rub-mono);font-size:10px;font-weight:700;letter-spacing:.08em;cursor:pointer;border:1px solid var(--rub-text);background:linear-gradient(135deg,var(--rub-text) 0%,var(--rub-text) 100%);color:var(--rub-ink);transition:all .13s;text-transform:uppercase;box-shadow:0 1px 3px rgba(17,17,17,.3);}
.rub-m-foot-primary:hover{background:var(--rub-accent,var(--ru-accent,#1d5c8f));color:var(--rub-accent-ink,#FFFFFF);}
.rub-m-foot-close{padding:8px 14px;border-radius:7px;font-family:var(--rub-mono);font-size:10px;font-weight:700;letter-spacing:.08em;cursor:pointer;border:1px solid var(--rub-border2);background:var(--rub-surface);color:var(--rub-text);transition:all .13s;text-transform:uppercase;}
.rub-m-foot-close:hover{background:var(--rub-text);color:#fff;border-color:var(--rub-text);}
.rub-m-cta-join{display:flex;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(135deg,var(--rub-gold-soft),rgba(17,17,17,.04));border:1px solid rgba(17,17,17,.3);border-radius:10px;margin-top:12px;}
.rub-m-cta-join-icon{font-size:22px;flex-shrink:0;}
.rub-m-cta-join-text{flex:1;min-width:0;}
.rub-m-cta-join-text p{font-size:12px;color:var(--rub-sub);line-height:1.5;margin-bottom:8px;}
.rub-m-cta-join-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;background:var(--rub-text);color:#fff;border-radius:8px;border:none;font-family:var(--rub-mono);font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-decoration:none;cursor:pointer;transition:all .15s;}
.rub-t{font-family:Arial, Helvetica, sans-serif;font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:4px 10px;border-radius:100px;border:1px solid;}
.rub-t-ind{background:#F0F0EB;color:var(--rub-ink);border-color:var(--rub-border2);}
.rub-t-ent{background:var(--rub-s3);color:var(--rub-ink);border-color:var(--rub-border2);}
.rub-t-gold{background:var(--rub-gold-soft);color:var(--rub-gold2);border-color:var(--rub-gold-b);}
.rub-t-ok{background:var(--rub-green-s);color:var(--rub-green);border-color:rgba(46,125,50,.2);}
.rub-t-part{background:var(--rub-amber-s);color:var(--rub-amber);border-color:rgba(180,83,9,.2);}
.rub-t-non{background:var(--rub-s2);color:var(--rub-muted);border-color:var(--rub-border);}
/* v2.3 - Badges Profil Vérifié (3 niveaux) */
.rub-t-verif{background:linear-gradient(135deg,var(--rub-green-bg),#BBF7D0);color:var(--rub-green-text);border-color:var(--rub-green);font-weight:800;}
.rub-t-attente{background:linear-gradient(135deg,var(--rub-amber-bg),#FFF4E5);color:#92400E;border-color:var(--rub-amber);font-weight:800;}
.rub-t-non-revendiquee{background:linear-gradient(135deg,#F3F4F6,var(--rub-border-solid));color:#4B5563;border-color:var(--rub-text-400);font-weight:800;font-style:italic;}
.rub-bdg-verif{background:linear-gradient(135deg,var(--rub-green-bg),#BBF7D0) !important;color:var(--rub-green-text) !important;border-color:var(--rub-green) !important;font-weight:800 !important;}
.rub-bdg-attente{background:linear-gradient(135deg,var(--rub-amber-bg),#FFF4E5) !important;color:#92400E !important;border-color:var(--rub-amber) !important;font-weight:800 !important;}

.rub-f-head{display:flex;align-items:center;justify-content:space-between;padding:13px 18px;border-bottom:2px solid var(--rub-ink);background:var(--rub-s2);position:sticky;top:0;z-index:1;overflow:hidden;}
.rub-f-title{font-family:var(--rub-display);font-size:20px;letter-spacing:.04em;color:var(--rub-text);}
.rub-f-body{padding:16px 18px;max-height:72vh;overflow-y:auto;overflow-x:hidden;font-family:Arial, Helvetica, sans-serif;word-break:break-word;}
.rub-f-foot{display:flex;gap:8px;justify-content:flex-end;padding:12px 18px;border-top:2px solid var(--rub-ink);background:var(--rub-s2);overflow:hidden;}
.rub-f-section{font-family:Arial, Helvetica, sans-serif;font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--rub-ink);margin:18px 0 9px;padding-bottom:6px;border-bottom:2px solid var(--rub-ink);}
.rub-f-group{display:flex;align-items:center;gap:10px;margin:34px 0 6px;font-family:Arial, Helvetica, sans-serif;}
.rub-f-group-num{width:26px;height:26px;border-radius:50%;background:var(--rub-accent,var(--ru-accent,#1d5c8f));color:var(--rub-accent-ink,#FFFFFF);display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;flex-shrink:0;line-height:1;}
.rub-f-group-t{font-size:15px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--rub-ink);}
#rub-form .rub-f-group{margin:38px 0 8px !important;}
#rub-form .rub-f-group-num{background:var(--rub-accent,var(--ru-accent,#1d5c8f)) !important;color:var(--rub-accent-ink,#FFFFFF) !important;}
.rub-step{display:none;}
.rub-step.is-active{display:block;}
.rub-wiz-bar{display:flex;align-items:center;gap:6px;margin:4px 0 24px;flex-wrap:nowrap;overflow-x:auto;}
.rub-wiz-dot{display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;padding:4px;border-radius:8px;font-family:Arial,Helvetica,sans-serif;opacity:.45;transition:opacity .15s;}
.rub-wiz-dot.is-active,.rub-wiz-dot.is-done{opacity:1;}
.rub-wiz-dot-n{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;background:#e3e3e3;color:var(--ru-discret,#6b7280);flex-shrink:0;line-height:1;transition:all .15s;}
.rub-wiz-dot.is-active .rub-wiz-dot-n,.rub-wiz-dot.is-done .rub-wiz-dot-n{background:var(--rub-accent,var(--ru-accent,#1d5c8f));color:var(--rub-accent-ink,#FFFFFF);}
.rub-wiz-dot-l{font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--rub-ink);white-space:nowrap;}
.rub-wiz-line{flex:1;min-width:12px;height:2px;background:#e3e3e3;}
@media(max-width:640px){.rub-wiz-dot-l{display:none;}.rub-wiz-line{min-width:6px;}}
#rub-form .rub-f-group + .rub-f-section{margin-top:14px !important;}
#rub-form .rub-step > .rub-f-section:first-child{margin-top:0 !important;}
.rub-f-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;}
.rub-fg{display:flex;flex-direction:column;gap:5px;}
.rub-fg.s2{grid-column:1/-1;}
/* v2.3 - Labels en noir pur gras (Section 3 - règle 19) */
.rub-flbl{font-family:Arial, Helvetica, sans-serif;font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--rub-ink);text-transform:none;}
.rub-flbl .req{color:var(--rub-red);font-weight:700;font-size:14px;}
/* v2.3 - Inputs avec contours noirs 2px et police 14px (règles 20-21) */
.rub-inp,.rub-sel,.rub-ta{background:#FFFFFF;border:2px solid var(--rub-ink);border-radius:6px;padding:10px 12px;color:var(--rub-ink);font-family:Arial, Helvetica, sans-serif;font-size:14px;outline:none;width:100%;max-width:100%;transition:border-color .14s, box-shadow .14s;box-sizing:border-box;font-weight:500;}
.rub-inp:focus,.rub-sel:focus,.rub-ta:focus{border-color:var(--rub-text);box-shadow:0 0 0 3px rgba(17,17,17,.25);}
.rub-inp::placeholder,.rub-ta::placeholder{color:var(--rub-text-400);font-weight:400;}
.rub-ta{resize:vertical;min-height:90px;}

.rub-inp.err,.rub-sel.err,.rub-ta.err{border-color:var(--rub-red)!important;background:var(--rub-red-bg)!important;box-shadow:0 0 0 3px rgba(220,38,38,.15)!important;}
.rub-fg .err-msg{display:none;font-size:12px;color:var(--rub-red);font-weight:700;margin-top:4px;font-family:Arial, Helvetica, sans-serif;}
.rub-fg.has-err .err-msg{display:block;}

.rub-retro-alert{display:flex;gap:11px;align-items:flex-start;padding:14px 16px;background:linear-gradient(135deg,rgba(185,28,28,.05),rgba(185,28,28,.02));border:2px solid var(--rub-red);border-radius:10px;margin-bottom:18px;}
.rub-retro-alert-icon{font-size:22px;flex-shrink:0;}
.rub-retro-alert-content{flex:1;min-width:0;}
.rub-retro-alert-title{font-family:Arial, Helvetica, sans-serif;font-size:16px;font-weight:800;letter-spacing:.02em;color:var(--rub-red-text);margin-bottom:4px;}
.rub-retro-alert-text{font-size:13px;color:var(--rub-ink);line-height:1.5;font-family:Arial, Helvetica, sans-serif;}

.rub-counter{display:flex;justify-content:space-between;align-items:center;font-family:Arial, Helvetica, sans-serif;font-size:11px;font-weight:700;color:var(--rub-text-500);margin-top:4px;letter-spacing:.02em;}
.rub-counter.over{color:var(--rub-red);}

.rub-rs-box{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px;margin-top:6px;}
.rub-rs-item{position:relative;}
.rub-rs-item .rub-rs-icone{display:none !important;}
.rub-rs-item .rub-inp{padding-left:32px;}
.rub-rs-counter{display:inline-flex;align-items:center;gap:4px;padding:5px 11px;background:#F3F4F6;border:2px solid var(--rub-ink);border-radius:100px;font-family:Arial, Helvetica, sans-serif;font-size:11px;font-weight:700;letter-spacing:.02em;color:var(--rub-ink);margin-top:8px;}
.rub-rs-counter.ok{background:var(--rub-green-bg);border-color:var(--rub-green);color:var(--rub-green-text);}

.rub-rs-cat{font-family:Arial, Helvetica, sans-serif;font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--rub-ink);margin:12px 0 5px;}

.rub-services-produits-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.rub-services-produits-grid .rub-sp-col{min-width:0;}
@media(max-width:640px){.rub-services-produits-grid{grid-template-columns:1fr !important;}}

.rub-checks{display:flex;flex-wrap:wrap;gap:7px;margin-top:3px;}
.rub-chk{display:inline-flex;align-items:center;gap:5px;padding:6px 11px;border:2px solid var(--rub-ink);border-radius:5px;font-size:13px;cursor:pointer;transition:all .12s;color:var(--rub-ink);background:#FFFFFF;font-family:Arial, Helvetica, sans-serif;font-weight:500;}
.rub-chk input{accent-color:var(--rub-text);width:14px;height:14px;flex-shrink:0;}
.rub-chk.on{background:var(--rub-accent,var(--ru-accent,#1d5c8f));border-color:var(--rub-accent,var(--ru-accent,#1d5c8f));color:var(--rub-accent-ink,#FFFFFF);font-weight:700;}

/* 2026-05 - Autocomplete villes + Code postal feedback */
.rub-autocomplete-wrap{position:relative;}
.rub-ac-results{
    position:absolute;top:calc(100% + 4px);left:0;right:0;
    background:#FFFFFF;border:2px solid var(--rub-ink);border-radius:8px;
    box-shadow:0 8px 24px rgba(0,0,0,.12);
    max-height:280px;overflow-y:auto;z-index:9999;
}
.rub-ac-item{
    padding:10px 14px;cursor:pointer;border-bottom:1px solid #F3F4F6;
    font-family:Arial,Helvetica,sans-serif;transition:background .12s;
}
.rub-ac-item:last-child{border-bottom:none;}
.rub-ac-item:hover{background:#F9FAFB;}
.rub-ac-nom{font-size:14px;font-weight:600;color:var(--rub-ink);display:flex;align-items:center;gap:6px;}
.rub-ac-sub{font-size:12px;color:var(--rub-text-500);margin-top:2px;}
.rub-ac-info{padding:12px 14px;font-family:Arial,Helvetica,sans-serif;font-size:13px;color:var(--rub-text-500);font-style:italic;}
.rub-ac-badge{
    display:inline-block;font-size:9px;font-weight:800;letter-spacing:.05em;
    background:var(--rub-text);color:var(--rub-ink);padding:2px 6px;border-radius:3px;
    text-transform:uppercase;
}
.rub-ac-suggest{padding:6px 14px 12px;border-top:1px dashed var(--rub-border-solid);}
.rub-ac-suggest-btn{
    width:100%;padding:9px 12px;background:var(--rub-accent,var(--ru-accent,#1d5c8f));color:var(--rub-accent-ink,#FFFFFF);
    border:none;border-radius:6px;font-family:Arial,Helvetica,sans-serif;
    font-size:12px;font-weight:700;letter-spacing:.04em;cursor:pointer;
    display:inline-flex;align-items:center;justify-content:center;gap:6px;
    transition:all .15s;
}
.rub-ac-suggest-btn:hover{background:var(--rub-text);color:var(--rub-ink);}
.rub-ac-suggest-info{font-family:Arial,Helvetica,sans-serif;font-size:11px;color:var(--rub-text-500);text-align:center;margin-top:4px;font-style:italic;}
.rub-optional{font-size:11px;color:var(--rub-text-400);font-weight:400;font-style:italic;margin-left:4px;}
.rub-cp-feedback{font-family:Arial,Helvetica,sans-serif;font-size:11px;margin-top:4px;min-height:14px;}
.rub-cp-feedback.rub-cp-ok{color:var(--rub-green);font-weight:600;}
.rub-cp-feedback.rub-cp-err{color:var(--rub-red);font-weight:600;}

.rub-f-msg{display:none;margin-top:10px;padding:10px 13px;border-radius:6px;font-size:13px;line-height:1.5;font-family:Arial, Helvetica, sans-serif;font-weight:500;}
.rub-mb{display:inline-flex;align-items:center;gap:5px;padding:9px 16px;border-radius:6px;font-family:Arial, Helvetica, sans-serif;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;border:2px solid var(--rub-ink);transition:all .15s;}
.rub-mb-dark{background:var(--rub-accent,var(--ru-accent,#1d5c8f));color:var(--rub-accent-ink,#FFFFFF);}
.rub-mb-dark:hover{background:#333;border-color:#333;}
.rub-mb-out{background:#FFFFFF;color:var(--rub-ink);}
.rub-mb-out:hover{background:var(--rub-accent,var(--ru-accent,#1d5c8f));color:var(--rub-accent-ink,#FFFFFF);}
.rub-mb:disabled{opacity:.5;cursor:not-allowed;}

#rub-toasts{position:fixed;bottom:24px;right:24px;z-index:100000;display:flex;flex-direction:column-reverse;gap:12px;pointer-events:none;max-width:420px;}
.rub-toast{display:flex;align-items:center;gap:14px;padding:14px 20px;background:rgba(255,255,255,.98);backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px);border:1px solid rgba(0,0,0,.06);border-radius:16px;font-family:var(--rub-body);font-size:14px;font-weight:500;color:var(--rub-text);line-height:1.3;box-shadow:0 10px 38px rgba(0,0,0,.12),0 4px 12px rgba(0,0,0,.06),0 1px 2px rgba(0,0,0,.04);pointer-events:auto;cursor:pointer;min-width:300px;max-width:420px;animation:rubTIn .28s cubic-bezier(.16,1,.3,1);transition:opacity .2s ease,transform .2s ease;}
.rub-toast:hover{transform:translateY(-1px);box-shadow:0 14px 44px rgba(0,0,0,.14),0 6px 16px var(--rub-border);}
.rub-toast.closing{animation:rubTOut .2s ease forwards;}
.rub-toast-icon{flex:0 0 26px;width:26px;height:26px;border-radius:50%;display:flex;align-items:center;justify-content:center;line-height:1;padding:0;}
.rub-toast-icon svg{display:block;width:14px;height:14px;}
.rub-toast.ok .rub-toast-icon{background:#22C55E;color:#fff;}
.rub-toast.err .rub-toast-icon{background:#EF4444;color:#fff;}
.rub-toast.info .rub-toast-icon{background:#1F2937;color:#fff;}
.rub-toast-msg{flex:1 1 auto;word-break:break-word;display:flex;align-items:center;min-height:26px;}
@keyframes rubTIn{0%{opacity:0;transform:translateX(20px) scale(.96)}100%{opacity:1;transform:translateX(0) scale(1)}}
@keyframes rubTOut{0%{opacity:1;transform:translateX(0) scale(1)}100%{opacity:0;transform:translateX(20px) scale(.96)}}
@media (max-width:520px){#rub-toasts{bottom:16px;right:16px;left:16px;max-width:none;}.rub-toast{min-width:0;max-width:none;}}

.rub-m-body, .rub-f-body { scrollbar-width: thin; scrollbar-color: rgba(17,17,17,.25) transparent; scroll-behavior: smooth; }
.rub-m-body::-webkit-scrollbar, .rub-f-body::-webkit-scrollbar { width: 4px; }
.rub-m-body::-webkit-scrollbar-track, .rub-f-body::-webkit-scrollbar-track { background: transparent; }
.rub-m-body::-webkit-scrollbar-thumb, .rub-f-body::-webkit-scrollbar-thumb { background: rgba(17,17,17,.25); border-radius: 100px; transition: background .2s; }
.rub-m-body:hover::-webkit-scrollbar-thumb, .rub-f-body:hover::-webkit-scrollbar-thumb { background: rgba(17,17,17,.55); }

.rub-scroll-wrap { position: relative; }
.rub-scroll-hint { position: absolute; left: 0; right: 0; bottom: 0; height: 80px; pointer-events: none; background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 75%); opacity: 0; transition: opacity .26s ease; display: flex; align-items: flex-end; justify-content: center; padding-bottom: 6px; }
.rub-scroll-wrap.has-overflow .rub-scroll-hint { opacity: 1; }
.rub-scroll-wrap.scrolled-bottom .rub-scroll-hint { opacity: 0; }
.rub-scroll-arrow { font-family: Arial, Helvetica, sans-serif; font-size: 8px; font-weight: 700; letter-spacing: .2em; text-transform: uppercase; color: rgba(0,0,0,.32); display: inline-flex; align-items: center; gap: 6px; }
.rub-scroll-arrow::before, .rub-scroll-arrow::after { content: ''; width: 14px; height: 1px; background: rgba(0,0,0,.18); }
.rub-scroll-chevron { display: inline-block; font-size: 11px; margin: 0 2px; opacity: .55; }

@media(max-width:640px){
  .rub-ov { padding: 12px 10px; align-items: flex-start; justify-content: center; overflow-y: auto; overflow-x: hidden; -webkit-overflow-scrolling: touch !important; overscroll-behavior: contain; }
  .rub-mbox { border-radius: 14px !important; max-width: 100% !important; width: 100%; margin: 0 auto; max-height: none; min-height: 0; display: block; overflow: visible; }
  .rub-m-head { position: relative; padding: 16px 16px 12px; padding-right: 56px; }
  /* Sur mobile, on masque la croix dans le header (la croix flottante prend le relais) */
  .rub-m-head .rub-m-x { display: none; }
  /* v2.3 - Croix X flottante pour fermer la modale (toujours accessible quand on scroll) */
  .rub-m-floating-close { display: flex; position: fixed; top: 18px; right: 18px; z-index: 10; width: 36px; height: 36px; border-radius: 50% !important; background: rgba(255,255,255,0.95); border: 1px solid var(--rub-border2) !important; box-shadow: 0 2px 8px rgba(0,0,0,0.15); align-items: center; justify-content: center; cursor: pointer; color: var(--rub-text); font-size: 16px; font-weight: 700; backdrop-filter: blur(6px); }
  .rub-m-floating-close:hover { background: var(--rub-red-s) !important; color: var(--rub-red) !important; }
  .rub-m-stripe { display: none; }
  .rub-m-body { max-height: none; overflow: visible; padding: 16px 16px 80px !important; -webkit-overflow-scrolling: touch !important; overscroll-behavior: auto; }
  .rub-m-foot { position: sticky; bottom: 0; z-index: 5; background: var(--rub-surface); box-shadow: 0 -1px 0 var(--rub-border), 0 -2px 8px rgba(0,0,0,0.04); padding: 10px 14px; flex-direction: column-reverse; gap: 8px !important; align-items: stretch; }
  .rub-m-foot-right { width: 100% !important; flex-direction: row !important; gap: 6px !important; margin-left: 0 !important; }
  .rub-m-foot-right .rub-m-foot-primary { flex: 1 1 auto !important; }
  .rub-m-foot-right .rub-m-foot-close { flex: 0 0 auto !important; }
  .rub-m-foot-left { width: 100% !important; justify-content: flex-start !important; }
  .rub-m-share-box { flex-direction: column !important; align-items: stretch !important; gap: 12px !important; text-align: center; }
  .rub-m-share-qr { align-items: center; }
  .rub-m-share-actions > div:last-child { justify-content: center; }
  .rub-m-grid { grid-template-columns: 1fr !important; }
  .rub-f-grid { grid-template-columns: 1fr !important; }
  .rub-fg.s2 { grid-column: 1 !important; }
  .rub-f-body { max-height: none; overflow: visible; padding-bottom: 80px !important; -webkit-overflow-scrolling: touch !important; overscroll-behavior: auto; }
  .rub-f-head { position: relative; padding-right: 56px; }
  /* v2.3 - Sur mobile, on masque la croix interne du formulaire (la croix flottante prend le relais) */
  #rub-form .rub-f-head .rub-m-x { display: none; }
  /* Croix X flottante pour le formulaire (équivalent de .rub-m-floating-close) */
  #rub-form .rub-f-floating-close { display: flex; position: fixed; top: 18px; right: 18px; z-index: 10; width: 36px; height: 36px; border-radius: 50% !important; background: rgba(255,255,255,0.95); border: 1px solid var(--rub-border2) !important; box-shadow: 0 2px 8px rgba(0,0,0,0.15); align-items: center; justify-content: center; cursor: pointer; color: var(--rub-text); font-size: 16px; font-weight: 700; backdrop-filter: blur(6px); }
  #rub-form .rub-f-floating-close:hover { background: var(--rub-red-s) !important; color: var(--rub-red) !important; }
  .rub-f-foot { position: sticky; bottom: 0; z-index: 5; background: var(--rub-surface); box-shadow: 0 -1px 0 var(--rub-border), 0 -2px 8px rgba(0,0,0,0.04); }
  .rub-m-qr-contact-grid { grid-template-columns: 1fr !important; }
  .rub-m-qr-block { display: none !important; }
  .rub-rs-box { grid-template-columns: 1fr !important; }
  .rub-m-reseau-row { flex-wrap: wrap !important; }
  .rub-m-reseau-row .rub-rs-actions { flex-shrink: 0; }
  .rub-m-reseau-row .rub-rs-value { min-width: 0 !important; overflow: hidden; text-overflow: ellipsis; flex: 1 1 100%; }
}

.rub-rs-row, .rub-m-reseau-row { display: flex; align-items: center; gap: 8px; min-width: 0; }
.rub-rs-row > *, .rub-m-reseau-row > * { min-width: 0; }
.rub-rs-actions { display: flex; gap: 4px; flex-shrink: 0; }

.rub-comp-bandeau { background: #FFFFFF; border: 1px solid var(--rub-border); border-radius: 10px; padding: 12px 14px; margin-top: 10px; cursor: pointer; transition: all .15s ease; }
.rub-comp-bandeau:hover { border-color: var(--rub-gold-border, rgba(17,17,17,.35)); box-shadow: 0 2px 8px var(--rub-gold-soft); }
.rub-comp-bandeau-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 6px; }
.rub-comp-bandeau-label { font-family: Arial, Helvetica, sans-serif; font-size: 9px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; color: var(--ru-discret,#6b7280); }
.rub-comp-bandeau-value { font-family: Fraunces, Georgia, serif; font-size: 18px; line-height: 1; }
.rub-comp-bandeau-bar { height: 6px; background: #F0F0F0; border: 1px solid rgba(0,0,0,.05); border-radius: 100px; overflow: hidden; }
.rub-comp-bandeau-fill { height: 100%; border-radius: 100px; transition: width .5s cubic-bezier(.4,0,.2,1); }

.rub-signal-btn { display: inline-flex; align-items: center; gap: 6px; padding: 7px 12px; background: transparent; border: 1px solid var(--rub-border2); border-radius: 7px; font-family: Arial, Helvetica, sans-serif; font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--rub-muted); cursor: pointer; transition: all .14s; }
.rub-signal-btn:hover { border-color: var(--rub-red-text); color: var(--rub-red-text); background: rgba(185,28,28,.04); }

.rub-badge-pro { display: inline-flex; align-items: center; justify-content: center; gap: 4px; max-width: 100%; min-height: 23px; padding: 4px 9px; font-family: Arial, Helvetica, sans-serif; font-size: 10px; font-weight: 700; line-height: 1.35; letter-spacing: .03em; text-align: center; text-transform: uppercase; border-radius: 100px; border: 1px solid; white-space: normal; overflow-wrap: anywhere; vertical-align: middle; box-sizing: border-box; }
.rub-badge-pro.vedette { background: var(--rub-accent,var(--ru-accent,#1d5c8f)); color: var(--rub-accent-ink,#FFFFFF); border-color: var(--rub-accent,var(--ru-accent,#1d5c8f)); }
.rub-badge-pro.nouveau { background: rgba(17,17,17,.12); color: var(--rub-text); border-color: rgba(17,17,17,.4); }
.rub-badge-pro.actif { background: rgba(46,125,50,.08); color: #2E7D32; border-color: rgba(46,125,50,.3); }
.rub-badge-pro.prradio { background: rgba(13,107,102,.08); color: #0D6B66; border-color: rgba(13,107,102,.3); }

.rub-input-error { border-color: var(--rub-red-text) !important; background: rgba(185,28,28,.03) !important; }
.rub-input-error-msg { font-size: 11px; color: var(--rub-red-text); margin-top: 4px; display: flex; align-items: center; gap: 4px; }

.rub-autosave-indicator { position: fixed; top: 16px; right: 16px; background: var(--ru-accent,#1d5c8f); color: var(--ru-sur-accent,#FFFFFF); padding: 7px 12px; border-radius: 8px; font-family: Arial, Helvetica, sans-serif; font-size: 9px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; z-index: 99999; opacity: 0; transform: translateY(-8px); transition: all .25s ease; pointer-events: none; display: flex; align-items: center; gap: 6px; }
.rub-autosave-indicator.visible { opacity: 1; transform: translateY(0); }
.rub-autosave-indicator .dot { width: 6px; height: 6px; border-radius: 50%; background: var(--rub-text); animation: rubPulse 1.4s ease-in-out infinite; }
@keyframes rubPulse { 0%, 100% { opacity: 1; } 50% { opacity: .3; } }

.rub-field-note { font-size: 11px; color: var(--rub-muted); margin-top: 4px; line-height: 1.5; display: flex; align-items: flex-start; gap: 5px; }
.rub-field-note.warn { color: var(--rub-text); background: rgba(17,17,17,.06); border-left: 2px solid rgba(17,17,17,.4); padding: 6px 10px; border-radius: 0 6px 6px 0; }

/* v1.0 : cadre doux (l'ancien cadre noir dur + ombre decalee est retire) */
#rub-form .rub-mbox{background:#fff;border:1px solid #e2e6ec;box-shadow:0 24px 60px -30px rgba(14,36,56,.55);border-radius:14px !important;overflow:hidden;}
/* .rub-f-head / .rub-f-logo / .rub-f-title : voir le bloc v1.0 unique plus bas
   (bande bleue, logo net, titre Arial). L'ancienne version noire est supprimee. */
#rub-form .rub-m-x{background:#fff;color:var(--rub-ink);border:2px solid #fff;border-radius:50% !important;width:32px;height:32px;font-size:18px;font-weight:700;cursor:pointer;transition:all .14s;flex-shrink:0;line-height:1;padding:0;}
#rub-form .rub-m-x:hover{background:transparent !important;color:#fff !important;}
#rub-form, #rub-form * {font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;}
#rub-form .rub-f-body{background:#fff;color:var(--rub-ink);padding:22px;font-size:14px;font-family:Arial, Helvetica, sans-serif;}
#rub-form .rub-flbl{color:var(--rub-ink) !important;font-weight:700 !important;font-size:13px !important;letter-spacing:.02em !important;margin-bottom:6px !important;text-transform:none !important;}
#rub-form .rub-flbl .req{display:inline-block !important;background:var(--rub-red) !important;color:#fff !important;font-size:9px !important;font-weight:800 !important;padding:2px 6px !important;border-radius:3px !important;margin-left:6px !important;letter-spacing:.05em !important;text-transform:uppercase !important;vertical-align:middle !important;line-height:1.4 !important;white-space:nowrap !important;font-family:Arial, Helvetica, sans-serif !important;box-shadow:0 1px 2px rgba(220,38,38,.3) !important;}
#rub-form .rub-flbl .req::after{content:var(--rub-txt-requis);}
#rub-form .rub-flbl .req > *{display:none !important;}
#rub-form .rub-fg.rub-required > .rub-inp,#rub-form .rub-fg.rub-required > .rub-sel,#rub-form .rub-fg.rub-required > .rub-ta{border-left:4px solid var(--rub-red) !important;}
#rub-form .rub-inp,#rub-form .rub-sel,#rub-form .rub-ta,#rub-form input[type="text"],#rub-form input[type="email"],#rub-form input[type="url"],#rub-form input[type="tel"],#rub-form input[type="number"],#rub-form input[type="date"],#rub-form select,#rub-form textarea{border:2px solid var(--rub-ink) !important;background:#fff !important;color:var(--rub-ink) !important;border-radius:6px !important;padding:10px 12px !important;font-size:14px !important;font-family:Arial, Helvetica, sans-serif !important;width:100% !important;box-sizing:border-box !important;}
#rub-form .rub-inp:focus,#rub-form .rub-sel:focus,#rub-form .rub-ta:focus,#rub-form input:focus,#rub-form select:focus,#rub-form textarea:focus{outline:0 !important;border-color:#2c6fb5 !important;box-shadow:0 0 0 3px #e9f1fa !important;}
/* v1.0 : titre de section epure (l'ancienne barre grise en degrade + filet noir est retiree ; voir bloc v1.0 plus bas) */
#rub-form .rub-f-section{font-family:Arial,"Helvetica Neue",Helvetica,sans-serif !important;background:none !important;border-left:0 !important;padding-left:0 !important;border-radius:0 !important;}
/* v2.4 - Cartes radio Type de fiche (Individu / Entreprise) */
.rub-ftype-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px;}
.rub-ftype-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:18px 14px;background:#fff;border:2px solid var(--rub-ink);border-radius:10px;cursor:pointer;transition:all .15s;text-align:center;position:relative;user-select:none;}
.rub-ftype-card input[type=radio]{position:absolute;opacity:0;pointer-events:none;}
.rub-ftype-card:hover{background:#F6F6F4;transform:translateY(-1px);box-shadow:0 2px 8px var(--rub-border);}
.rub-ftype-card.selected{background:linear-gradient(135deg,#F6F6F4,#fff);border-color:var(--rub-text);box-shadow:0 0 0 3px rgba(17,17,17,.15);}
.rub-ftype-card.selected::after{content:'\2713';position:absolute;top:8px;right:10px;width:22px;height:22px;background:#2c6fb5;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700;}
.rub-ftype-card-icon{font-size:32px;line-height:1;margin-bottom:4px;}
.rub-ftype-card-title{font-size:15px;font-weight:700;color:var(--rub-ink);letter-spacing:-.01em;}
.rub-ftype-card-sub{font-size:11.5px;color:var(--ru-discret,#6b7280);font-weight:400;}
@media (max-width:520px){.rub-ftype-cards{grid-template-columns:1fr;gap:8px;}.rub-ftype-card{padding:14px;}.rub-ftype-card-icon{font-size:26px;}}
/* Note d'aide sous champ */
.rub-field-help{font-size:11.5px;color:var(--ru-discret,#6b7280);font-weight:400;margin-top:4px;font-style:italic;line-height:1.4;}
#rub-form .rub-f-body > .rub-f-section:first-child,#rub-form #rub-sec-ind > .rub-f-section:first-child,#rub-form #rub-sec-ent > .rub-f-section:first-child{margin-top:8px !important;}
#rub-form .rub-f-grid{margin-bottom:6px !important;gap:14px !important;}
#rub-form .rub-fg{margin-bottom:4px !important;}
/* v1.0 : couleurs du pied definies dans le bloc v1.0 unique (pied blanc) ; ici seulement la disposition */
#rub-form .rub-f-foot{padding:12px 18px;display:flex;justify-content:flex-end;gap:8px !important;}
/* v1.0 : boutons du pied epures (fini les MAJUSCULES en petit ; casse normale, Arial) */
#rub-form .rub-mb{border:1px solid transparent !important;border-radius:10px !important;padding:9px 16px !important;font-family:Arial,"Helvetica Neue",Helvetica,sans-serif !important;font-size:13px !important;font-weight:700 !important;letter-spacing:.01em !important;text-transform:none !important;cursor:pointer !important;transition:all .14s !important;line-height:1.4 !important;}
#rub-form .rub-mb-out{background:transparent !important;color:#fff !important;}
#rub-form .rub-mb-out:hover{background:#fff !important;color:var(--rub-ink) !important;}
#rub-form .rub-mb-dark{background:#fff !important;color:var(--rub-ink) !important;}
#rub-form .rub-mb-dark:hover{background:transparent !important;color:#fff !important;}
#rub-form .rub-field-note{background:#F9FAFB !important;border-left:3px solid #1E40AF !important;padding:6px 10px !important;margin-bottom:5px !important;border-radius:0 4px 4px 0 !important;font-size:11px !important;color:#1E3A8A !important;font-weight:500 !important;line-height:1.4 !important;font-family:Arial, Helvetica, sans-serif !important;}
#rub-form .rub-field-note.rub-field-note-info{background:#EFF6FF !important;border-left-color:#2563EB !important;color:#1E3A8A !important;}
#rub-form .rub-field-note.rub-field-note-warn{background:#F6F6F4 !important;border-left-color:var(--rub-text) !important;color:var(--rub-amber-text) !important;}
#rub-form .rub-tag-selector{position:relative !important;}
#rub-form .rub-tag-field{display:flex !important;flex-wrap:wrap !important;align-items:center !important;gap:6px !important;border:2px solid var(--rub-ink) !important;border-radius:8px !important;padding:8px !important;background:#FFFFFF !important;min-height:48px !important;cursor:text !important;transition:border-color .15s, box-shadow .15s !important;}
#rub-form .rub-tag-selector.open .rub-tag-field, #rub-form .rub-tag-field:focus-within{border-color:var(--rub-text) !important;box-shadow:0 0 0 3px var(--rub-gold-b) !important;}
#rub-form .rub-tag-hidden-inputs{display:none !important;}
#rub-form .rub-tag-display{display:contents !important;}
#rub-form .rub-tag-display:empty{display:none !important;}
#rub-form .rub-met-aff-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px;}
#rub-form .rub-met-aff-row{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;background:var(--rub-s2,#F0F0F0);border:1px solid var(--rub-border-solid,#E0E0E0);border-radius:100px;font-size:12px;color:var(--rub-text);cursor:pointer;user-select:none;}
#rub-form .rub-met-aff-row input{accent-color:var(--rub-text);cursor:pointer;margin:0;}
#rub-form .rub-tag-empty{font-size:12px !important;color:var(--rub-text-400) !important;font-style:italic !important;padding:4px 2px !important;font-family:Arial, Helvetica, sans-serif !important;}
#rub-form .rub-tag{display:inline-flex !important;align-items:center !important;gap:6px !important;background:var(--rub-accent,var(--ru-accent,#1d5c8f)) !important;color:var(--rub-accent-ink,#FFFFFF) !important;padding:5px 6px 5px 11px !important;border-radius:5px !important;font-size:12px !important;font-weight:600 !important;line-height:1.3 !important;font-family:Arial, Helvetica, sans-serif !important;letter-spacing:.01em !important;transition:background .15s !important;max-width:100% !important;}
#rub-form .rub-tag:hover{background:var(--ru-accent-fonce,#174a73) !important;}
#rub-form .rub-tag-label{overflow:hidden !important;text-overflow:ellipsis !important;white-space:nowrap !important;max-width:240px !important;}
#rub-form .rub-tag-x{background:rgba(255,255,255,.18) !important;color:#FFFFFF !important;border:none !important;border-radius:50% !important;width:18px !important;height:18px !important;font-size:14px !important;line-height:1 !important;padding:0 !important;cursor:pointer !important;display:flex !important;align-items:center !important;justify-content:center !important;font-weight:700 !important;transition:background .15s, transform .15s !important;flex-shrink:0 !important;}
#rub-form .rub-tag-x:hover{background:var(--rub-red) !important;transform:rotate(90deg) !important;}
#rub-form .rub-tag-control{display:block !important;position:relative !important;}
/* Select natif caché - conservé pour compat avec rubTagAdd/Init existants */
#rub-form .rub-tag-add-select{position:absolute !important;opacity:0 !important;pointer-events:none !important;width:1px !important;height:1px !important;overflow:hidden !important;}
/* Bouton custom déclencheur */
#rub-form .rub-tag-trigger{display:flex !important;align-items:center !important;justify-content:space-between !important;width:100% !important;border:1.5px dashed var(--rub-text-500) !important;background:#FAFAFA !important;color:var(--rub-text-700) !important;padding:11px 14px !important;font-size:13px !important;font-weight:600 !important;border-radius:6px !important;cursor:pointer !important;font-family:Arial, Helvetica, sans-serif !important;letter-spacing:.01em !important;transition:all .15s !important;min-height:44px !important;text-align:left !important;}
#rub-form .rub-tag-trigger:hover{border-color:var(--rub-ink) !important;border-style:solid !important;background:#FFFFFF !important;color:var(--rub-ink) !important;}
#rub-form .rub-tag-selector.open .rub-tag-trigger{border-color:var(--rub-text) !important;border-style:solid !important;background:#F6F6F4 !important;color:var(--rub-ink) !important;}
#rub-form .rub-tag-trigger-icon{display:inline-flex !important;align-items:center !important;justify-content:center !important;width:22px !important;height:22px !important;background:var(--rub-accent,var(--ru-accent,#1d5c8f)) !important;color:var(--rub-accent-ink,#FFFFFF) !important;border-radius:50% !important;font-size:14px !important;font-weight:700 !important;line-height:1 !important;margin-right:10px !important;flex-shrink:0 !important;transition:transform .2s !important;}
#rub-form .rub-tag-selector.open .rub-tag-trigger-icon{background:var(--rub-text) !important;transform:rotate(45deg) !important;}
#rub-form .rub-tag-trigger-text{flex:1 !important;}
#rub-form .rub-tag-trigger-chev{font-size:10px !important;color:var(--rub-text-400) !important;margin-left:8px !important;transition:transform .2s !important;}
#rub-form .rub-tag-selector.open .rub-tag-trigger-chev{transform:rotate(180deg) !important;color:var(--rub-ink) !important;}
#rub-form .rub-tag-trigger-count{display:inline-flex !important;align-items:center !important;justify-content:center !important;background:var(--rub-border-solid) !important;color:var(--rub-text-700) !important;font-size:10px !important;font-weight:700 !important;padding:2px 7px !important;border-radius:10px !important;margin-left:auto !important;margin-right:6px !important;line-height:1.4 !important;}
/* Dropdown panel */
#rub-form .rub-tag-dropdown{display:none;position:absolute !important;top:calc(100% + 6px) !important;left:0 !important;right:0 !important;background:#FFFFFF !important;border:2px solid var(--rub-ink) !important;border-radius:8px !important;box-shadow:0 12px 32px rgba(0,0,0,.18) !important;z-index:9999 !important;max-height:320px !important;overflow:hidden !important;font-family:Arial, Helvetica, sans-serif !important;}
#rub-form .rub-tag-selector.open .rub-tag-dropdown{display:flex !important;flex-direction:column !important;animation:rubTagDropIn .18s ease-out !important;}
@keyframes rubTagDropIn{from{opacity:0;transform:translateY(-6px);}to{opacity:1;transform:translateY(0);}}
#rub-form .rub-tag-search-wrap{padding:8px 8px 6px !important;border-bottom:1px solid var(--rub-border-solid) !important;background:#FAFAFA !important;flex-shrink:0 !important;}
#rub-form .rub-tag-search{flex:1 1 140px !important;min-width:120px !important;border:none !important;outline:none !important;background:transparent !important;font-size:14px !important;font-family:Arial, Helvetica, sans-serif !important;color:var(--rub-ink) !important;padding:5px 2px !important;box-sizing:border-box !important;}
#rub-form .rub-tag-search:focus{outline:none !important;box-shadow:none !important;}
#rub-form .rub-tag-search::placeholder{color:var(--rub-text-400) !important;}
#rub-form .rub-tag-options{overflow-y:auto !important;flex:1 !important;-webkit-overflow-scrolling:touch !important;overscroll-behavior:contain !important;padding:4px 0 !important;}
#rub-form .rub-tag-option{display:flex !important;align-items:center !important;padding:10px 14px !important;font-size:13px !important;color:var(--rub-text-700) !important;cursor:pointer !important;font-family:Arial, Helvetica, sans-serif !important;font-weight:500 !important;border:none !important;background:transparent !important;width:100% !important;text-align:left !important;transition:background .12s, color .12s, padding .12s !important;line-height:1.35 !important;}
#rub-form .rub-tag-option:hover, #rub-form .rub-tag-option.focus{background:#F6F6F4 !important;color:var(--rub-ink) !important;padding-left:18px !important;}
#rub-form .rub-tag-option:active{background:var(--rub-text) !important;color:var(--rub-ink) !important;}
#rub-form .rub-tag-option-empty{padding:18px 14px !important;text-align:center !important;font-size:12px !important;color:var(--rub-text-400) !important;font-style:italic !important;font-family:Arial, Helvetica, sans-serif !important;}
@media (max-width:540px){
  #rub-form .rub-tag-trigger{padding:13px 14px !important;font-size:14px !important;min-height:48px !important;}
  #rub-form .rub-tag-trigger-icon{width:24px !important;height:24px !important;font-size:15px !important;}
  #rub-form .rub-tag-dropdown{max-height:60vh !important;}
  #rub-form .rub-tag-option{padding:13px 14px !important;font-size:14px !important;}
  #rub-form .rub-tag-search{padding:10px 12px !important;font-size:14px !important;}
  #rub-form .rub-tag-label{max-width:160px !important;}
  #rub-form .rub-tag{font-size:13px !important;padding:6px 6px 6px 12px !important;}
}
#rub-form .rub-required-notice{background:var(--rub-red-bg) !important;border:2px solid var(--rub-red) !important;border-radius:8px !important;padding:11px 14px !important;margin-bottom:16px !important;font-size:13px !important;font-weight:600 !important;color:var(--rub-red-deep) !important;display:flex !important;align-items:center !important;gap:8px !important;line-height:1.4 !important;font-family:Arial, Helvetica, sans-serif !important;}
#rub-form .rub-required-notice::before{content:"⚠"; color:var(--rub-red); font-size:18px; flex-shrink:0;}
#rub-form .rub-bio-public{background:#F9FAFB !important;border-left:3px solid var(--rub-green) !important;padding:6px 10px !important;margin-bottom:5px !important;border-radius:0 4px 4px 0 !important;font-size:11px !important;color:#166534 !important;font-weight:500 !important;line-height:1.4 !important;font-family:Arial, Helvetica, sans-serif !important;}
/* 2026-09 - Confidentialite etudiant (RU Atelier Phase 5F) : encadre mis en evidence, charte or/noir, aucun mauve. */
#rub-form .rub-etu-visible{background:var(--ru-accent-doux,rgba(44,111,181,.12)) !important;border:1px solid var(--ru-accent-filet,rgba(44,111,181,.45)) !important;border-left:4px solid var(--ru-accent,#1d5c8f) !important;border-radius:8px !important;padding:12px 14px !important;margin:8px 0 6px !important;}
#rub-form .rub-etu-visible-t{font-size:13px !important;font-weight:700 !important;color:var(--ru-texte,#0e2438) !important;margin-bottom:4px !important;font-family:Arial, Helvetica, sans-serif !important;}
#rub-form .rub-etu-visible-s{font-size:11.5px !important;color:#43454a !important;line-height:1.45 !important;margin-bottom:9px !important;font-family:Arial, Helvetica, sans-serif !important;}
#rub-form .rub-bio-membres{background:#F9FAFB !important;border-left:3px solid #1E40AF !important;padding:6px 10px !important;margin-bottom:5px !important;border-radius:0 4px 4px 0 !important;font-size:11px !important;color:#1E3A8A !important;font-weight:500 !important;line-height:1.4 !important;font-family:Arial, Helvetica, sans-serif !important;}
#rub-form .rub-choix-creation{background:#F5F5F5 !important;border:2px solid var(--rub-ink) !important;border-radius:8px !important;padding:14px 16px !important;margin-bottom:14px !important;}
@media (max-width:720px){#rub-form .rub-mbox{margin:8px !important;max-width:calc(100vw - 16px) !important;max-height:none;border-radius:10px !important;display:block;overflow:visible !important;}#rub-form .rub-f-body{padding:14px !important;max-height:none;overflow:visible;}#rub-form .rub-f-grid{grid-template-columns:1fr !important;}#rub-form{overflow-y:auto;-webkit-overflow-scrolling:touch !important;}}

.rub-blur-public { filter: blur(5px); user-select: none; pointer-events: none; background: linear-gradient(90deg, rgba(0,0,0,.04), rgba(0,0,0,.02)); border-radius: 4px; display: inline-block; min-width: 80px; color: transparent !important; }
.rub-blur-overlay { position: relative; }
.rub-blur-overlay::after { content: var(--rub-txt-connecte); position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(255,255,255,.7); font-family: Arial, Helvetica, sans-serif; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; color: var(--ru-discret,#6b7280); pointer-events: none; border-radius: 6px; }

/* ============================================================
   ENCRE & PAPIER - correctifs (lisibilite + titres)  v1.1
   N'altere pas la structure : uniquement contraste et typographie.
   ============================================================ */
.rub-m-section{font-family:Arial,Helvetica,sans-serif;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--rub-muted);margin:18px 0 8px;padding-bottom:0;border-bottom:0;}
.rub-m-nom{letter-spacing:-.01em;font-weight:500;}
.rub-mbox{box-shadow:0 1px 2px rgba(0,0,0,.05),0 10px 30px rgba(0,0,0,.10);}
.rub-m-foot-primary{color:#fff;background:var(--rub-text);border-color:var(--rub-text);box-shadow:none;}
.rub-m-foot-primary:hover{background:var(--ru-accent-fonce,#174a73);color:var(--ru-sur-accent,#FFFFFF);border-color:var(--ru-accent-fonce,#174a73);}
.rub-m-bio-arrow{color:#fff;background:var(--rub-text);border-color:var(--rub-text);box-shadow:0 2px 6px rgba(0,0,0,.25);}
.rub-m-bio-arrow:hover{background:var(--ru-accent,#1d5c8f);color:var(--ru-sur-accent,#FFFFFF);}
.rub-badge-pro.vedette{color:#fff;}
.rub-chk.on{color:#fff;}
.rub-ac-suggest-btn{color:#fff;}
.rub-ac-suggest-btn:hover{background:var(--ru-accent-fonce,#174a73);color:var(--ru-sur-accent,#FFFFFF);}
.rub-ac-badge{color:#fff;}
.rub-m-cta-join-btn{color:#fff;background:var(--rub-text);}
#rub-form .rub-tag-option:active{background:var(--rub-text) !important;color:#fff !important;}
.rub-m-foot-secondary{color:var(--rub-sub);}
.rub-m-foot-secondary:hover{background:var(--rub-text);color:#fff;border-color:var(--rub-text);}
.rub-ipp-badge{font-size:9px;font-weight:600;color:var(--rub-sub);background:var(--rub-s2);border:1px solid var(--rub-border2);border-radius:4px;padding:1px 5px;display:inline-block;}

/* ============================================================
   RU BOTTIN v1.0 - DESIGN BLEU (source unique, modales + formulaire)
   Habille les modales partagees (.rub-f-head/body/foot, .rub-m-*) et
   le formulaire : bande bleue, corps blanc, Arial, boutons bleus.
   Les anciennes couches (look « journal » noir) ont ete retirees ;
   ceci est desormais la seule definition visuelle. Aucun champ ni
   aucune logique n'est touche.
   ============================================================ */
:root{--ruv-band:#0e2438;--ruv-blue:#2c6fb5;--ruv-bsoft:#e9f1fa;--ruv-bline:#bcd4ea;--ruv-ink:#141519;--ruv-ink2:#2a2f39;--ruv-soft:#5a6270;--ruv-line:#e2e6ec;--ruv-line2:#cdd4de;--ruv-ui:Arial,"Helvetica Neue",Helvetica,sans-serif;}
.rub-ov .rub-f-head,#rub-form .rub-f-head{background:var(--ruv-band) !important;color:#fff;border-bottom:0;padding:15px 20px !important;display:flex;align-items:center;gap:13px !important;justify-content:flex-start;}
.rub-ov .rub-f-logo,#rub-form .rub-f-logo{height:26px;max-height:26px;width:auto;max-width:150px;opacity:1;filter:none;animation:none;background:transparent;}
.rub-ov .rub-f-title,#rub-form .rub-f-title{color:#fff;font-family:var(--ruv-ui);font-size:15px;font-weight:700;letter-spacing:.01em;text-transform:none;text-align:left;flex:1;margin:0;}
.rub-ov .rub-f-head .rub-m-x,#rub-form .rub-f-head .rub-m-x{color:#fff !important;background:transparent !important;border:1px solid rgba(255,255,255,.22) !important;border-radius:9px !important;width:32px;height:32px;}
#rub-form .rub-f-body,.rub-ov .rub-f-body{background:#fff;color:var(--ruv-ink) !important;font-family:var(--ruv-ui);}
.rub-ov .rub-f-body,.rub-ov .rub-f-body *,#rub-form .rub-f-body,#rub-form .rub-f-body *{font-family:var(--ruv-ui) !important;}
#rub-form .rub-inp,#rub-form .rub-sel,#rub-form .rub-ta,.rub-ov .rub-inp,.rub-ov .rub-sel,.rub-ov .rub-ta{border:1px solid var(--ruv-line2) !important;border-radius:10px !important;background:#fff;color:var(--ruv-ink);font-size:14px;padding:10px 12px;}
#rub-form .rub-inp:focus,#rub-form .rub-sel:focus,#rub-form .rub-ta:focus,.rub-ov .rub-inp:focus,.rub-ov .rub-sel:focus,.rub-ov .rub-ta:focus{border-color:var(--ruv-blue) !important;box-shadow:0 0 0 3px var(--ruv-bsoft) !important;outline:0 !important;}
#rub-form .rub-flbl,.rub-ov .rub-flbl{font-weight:700;color:var(--ruv-ink2);}
#rub-form .rub-f-section,.rub-ov .rub-f-section{font-size:11px !important;font-weight:700 !important;letter-spacing:.06em !important;text-transform:uppercase !important;color:var(--ruv-soft) !important;border-bottom:1px solid var(--ruv-line) !important;padding-bottom:8px !important;margin:22px 0 12px !important;}
#rub-form .rub-f-group-num{background:var(--ruv-band) !important;color:#fff !important;}
#rub-form .rub-f-group-t{color:var(--ruv-ink) !important;}
#rub-form .rub-ftype-card.selected{border-color:var(--ruv-band) !important;box-shadow:0 0 0 3px var(--ruv-bsoft) !important;}
#rub-form .rub-wiz-dot.is-active .rub-wiz-dot-n{background:var(--ruv-band) !important;color:#fff !important;border-color:var(--ruv-band) !important;}
#rub-form .rub-mb-dark,.rub-ov .rub-mb-dark,#rub-form #rub-wiz-next,#rub-form #rub-save-btn,#rub-form .rub-save-btn{background:var(--ruv-band);color:#fff;border:0;border-radius:10px !important;font-weight:700;}
#rub-form .rub-mb-out,.rub-ov .rub-mb-out,#rub-form #rub-wiz-prev{background:#fff;color:var(--ruv-ink2);border:1px solid var(--ruv-line2);border-radius:10px !important;font-weight:700;}
#rub-form .rub-f-foot,.rub-ov .rub-f-foot{background:#fff;color:var(--ruv-ink);border-top:1px solid var(--ruv-line) !important;}
#rub-form .rub-choix-creation label{gap:13px !important;align-items:flex-start !important;}
#rub-form .rub-choix-creation input[type=radio]{margin-top:3px !important;flex:none !important;accent-color:var(--ruv-band);}
#rub-form .rub-chk.on,.rub-ov .rub-chk.on{background:var(--ruv-band) !important;color:#fff !important;border-color:var(--ruv-band) !important;}
/* Fiche de consultation + modales de gestion (admin) : meme systeme bleu que le formulaire */
.rub-ov .rub-m-head{background:var(--ruv-band) !important;color:#fff;border-bottom:0;padding:18px 20px !important;font-family:var(--ruv-ui);}
.rub-ov .rub-m-head .rub-m-x{color:#fff;border-color:rgba(255,255,255,.28) !important;background:transparent;}
.rub-ov .rub-m-body,.rub-ov .rub-m-body *{font-family:var(--ruv-ui) !important;}
.rub-ov .rub-m-body{background:#fff;color:var(--ruv-ink);}
.rub-ov .rub-m-foot{background:#fff;border-top:1px solid var(--ruv-line) !important;}
.rub-ov .rub-m-foot-primary{background:var(--ruv-band) !important;color:#fff !important;border:0 !important;border-radius:9px !important;font-family:var(--ruv-ui) !important;font-size:12px !important;font-weight:700 !important;letter-spacing:.02em !important;text-transform:none !important;padding:10px 16px !important;box-shadow:none !important;}
.rub-ov .rub-m-foot-close,.rub-ov .rub-m-foot-secondary{background:#fff !important;color:var(--ruv-ink2) !important;border:1px solid var(--ruv-line2) !important;border-radius:9px !important;font-family:var(--ruv-ui) !important;font-size:12px !important;font-weight:700 !important;letter-spacing:.02em !important;text-transform:none !important;}
.rub-ov .rub-m-foot-secondary:hover,.rub-ov .rub-m-foot-close:hover{background:var(--ruv-band) !important;color:#fff !important;border-color:var(--ruv-band) !important;}
/* le nom et les libelles de l'entete restent lisibles (blanc) sur la bande bleue ; les pastilles gardent leurs couleurs */
.rub-ov .rub-m-head h1,.rub-ov .rub-m-head h2,.rub-ov .rub-m-head h3,.rub-ov .rub-m-head h4,.rub-ov .rub-m-head strong,.rub-ov .rub-m-head b{color:#fff !important;}
/* Nom de la fiche en BLANC sur la bande bleue (sinon texte foncé illisible). */
.rub-ov .rub-m-head .rub-m-nom{color:#fff;}
.rub-ov .rub-m-head .rub-m-sub,.rub-ov .rub-m-head .rub-m-numero{color:rgba(255,255,255,.78);}

/* ============================================================
   RU BOTTIN : Badges des CARTES de l'annuaire uniquement (13/10/2026)
   Aucun bouton du Hub, de navigation ou de formulaire n'est cible.
   ============================================================ */
#ru-bottin-app .rub-grid .rub-card .rub-tags {
  align-items: flex-start;
  align-content: flex-start;
  column-gap: 7px;
  row-gap: 7px;
}
#ru-bottin-app .rub-grid .rub-card .rub-tags .rub-tag,
#ru-bottin-app .rub-grid .rub-card .rub-tags .rub-badge-pro {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex: 0 1 auto;
  max-width: 100%;
  min-height: 29px;
  padding: 6px 12px;
  box-sizing: border-box;
  border-radius: 999px;
  font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
  font-size: 10px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: .015em;
  text-align: left;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.55);
}
/* Libellés de profession : doux et bien lisibles, même sur 2 lignes. */
#ru-bottin-app .rub-grid .rub-card .rub-tags .rub-tag.tag-gold,
#ru-bottin-app .rub-grid .rub-card .rub-tags .rub-tag.tag-ind,
#ru-bottin-app .rub-grid .rub-card .rub-tags .rub-tag.tag-ent {
  background: #f2f5f8;
  border-color: #dce4ed;
  color: #293c54;
}
#ru-bottin-app .rub-grid .rub-card .rub-tags .rub-tag.tag-ok,
#ru-bottin-app .rub-grid .rub-card .rub-tags .rub-badge-pro.actif {
  background: #e6f7ec;
  border-color: #b7e9c8;
  color: #127344;
}
#ru-bottin-app .rub-grid .rub-card .rub-tags .rub-badge-pro.prradio {
  background: #e8f1ff;
  border-color: #c9dfff;
  color: #1557a5;
}
/* "Vérifié" : seule l'icône bouclier/coche est visible. */
#ru-bottin-app .rub-grid .rub-card .rub-tags .rub-badge-pro.rub-bdg-verif-icon {
  flex: 0 0 30px;
  width: 30px;
  height: 30px;
  min-height: 30px;
  padding: 0 !important;
  justify-content: center;
  background: #daf6e5 !important;
  border: 1px solid #9eddb5 !important;
  color: #087a42 !important;
  box-shadow: 0 1px 3px rgba(8,122,66,.08);
}
#ru-bottin-app .rub-grid .rub-card .rub-tags .rub-bdg-verif-icon svg {
  display: block;
  flex-shrink: 0;
  width: 17px;
  height: 17px;
}


/* ---- Correctif 70 : règles qui remplacent des styles écrits dans le HTML ---- */
/* Résultat de la recherche de la fenêtre Fusion (survol : fond rose, comme avant). */
.rub-fusion-src{padding:10px 12px;border-bottom:1px solid var(--rub-border-solid);cursor:pointer;background:#fff;border-radius:6px;margin-bottom:4px;transition:background .15s}
.rub-fusion-src:hover{background:#FEE2E2}

/* Correctif 70 (31 octobre 2026) : les attributs style= de la page sont
   devenus ces classes (mêmes déclarations). Préfixe rub-u, une classe par
   ensemble de déclarations. Poids : un identifiant et deux classes, pour
   passer devant les règles de la page comme l'attribut qu'elles remplacent. */
:is(#ru-bottin-app,body) .rub-u1.rub-u1{padding:16px;background:#FEE8E8;border:1px solid #f5c6cb;border-radius:8px;color:#B01C1C;font-size:13px}
:is(#ru-bottin-app,body) .rub-u2.rub-u2{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid rgba(0,0,0,.06);cursor:pointer}
:is(#ru-bottin-app,body) .rub-u3.rub-u3{display:flex;align-items:center;gap:10px}
:is(#ru-bottin-app,body) .rub-u4.rub-u4{font-family:Arial,Helvetica,sans-serif;font-size:8px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--rub-text)}
:is(#ru-bottin-app,body) .rub-u5.rub-u5{font-size:13px;font-weight:600;color:var(--rub-text)}
:is(#ru-bottin-app,body) .rub-u6.rub-u6{font-size:14px;color:var(--rub-text);transition:transform .2s}
:is(#ru-bottin-app,body) .rub-u7.rub-u7{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid rgba(0,0,0,.04)}
:is(#ru-bottin-app,body) .rub-u8.rub-u8{width:42px;height:42px;border-radius:9px;flex-shrink:0;overflow:hidden;font-size:0;line-height:0}
:is(#ru-bottin-app,body) .rub-u9.rub-u9{width:100%;height:100%;object-fit:cover;display:block}
:is(#ru-bottin-app,body) .rub-u10.rub-u10{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:var(--ru-accent-doux,rgba(44,111,181,.12));color:var(--rub-text);font-family:Fraunces,Georgia,serif;font-size:15px;font-weight:700;letter-spacing:.05em}
:is(#ru-bottin-app,body) .rub-u11.rub-u11{flex:1;min-width:0}
:is(#ru-bottin-app,body) .rub-u12.rub-u12{font-size:13px;font-weight:600;color:var(--rub-text);display:flex;align-items:center;gap:6px;flex-wrap:wrap}
:is(#ru-bottin-app,body) .rub-u13.rub-u13{font-family:Arial,Helvetica,sans-serif;font-size:7px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:2px 6px;border-radius:100px;background:#ECEAE4;color:var(--rub-sub);border:1px solid var(--rub-border)}
:is(#ru-bottin-app,body) .rub-u14.rub-u14{font-family:Arial,Helvetica,sans-serif;font-size:7px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:2px 6px;border-radius:100px;background:#F0F0EB;color:#333;border:1px solid var(--rub-border)}
:is(#ru-bottin-app,body) .rub-u15.rub-u15{font-family:Arial,Helvetica,sans-serif;font-size:7px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:2px 6px;border-radius:100px;background:rgba(17,17,17,.1);color:var(--rub-text);border:1px solid rgba(17,17,17,.3)}
:is(#ru-bottin-app,body) .rub-u16.rub-u16{display:flex;gap:6px;flex-shrink:0}
:is(#ru-bottin-app,body) .rub-u17.rub-u17{font-size:9px;padding:6px 10px}
:is(#ru-bottin-app,body) .rub-u18.rub-u18{margin:0;border:none;border-top:1px solid rgba(0,0,0,.06);border-radius:0}
:is(#ru-bottin-app,body) .rub-u19.rub-u19{font-size:20px;flex-shrink:0}
:is(#ru-bottin-app,body) .rub-u20.rub-u20{flex:1;min-width:200px}
:is(#ru-bottin-app,body) .rub-u21.rub-u21{font-family:Arial,Helvetica,sans-serif;font-size:8px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:#92400E;margin-bottom:2px}
:is(#ru-bottin-app,body) .rub-u22.rub-u22{font-size:14px;font-weight:600;color:var(--rub-amber-text)}
:is(#ru-bottin-app,body) .rub-u23.rub-u23{font-size:11px;color:var(--rub-amber-text);margin-top:1px}
:is(#ru-bottin-app,body) .rub-u24.rub-u24{font-size:11px;padding:8px 14px}
:is(#ru-bottin-app,body) .rub-u25.rub-u25{display:flex;align-items:flex-end}
:is(#ru-bottin-app,body) .rub-u26.rub-u26{padding:20px;text-align:center;color:var(--ru-discret,#6b7280)}
:is(#ru-bottin-app,body) .rub-u27.rub-u27{color:var(--rub-text);font-family:Fraunces,sans-serif;font-size:30px;font-weight:700;letter-spacing:.05em}
:is(#ru-bottin-app,body) .rub-u28.rub-u28{padding:6px 8px;font-size:11px;color:var(--ru-discret,#6b7280)}
:is(#ru-bottin-app,body) .rub-u29.rub-u29{margin-left:8px}
:is(#ru-bottin-app,body) .rub-u30.rub-u30{margin-bottom:6px}
:is(#ru-bottin-app,body) .rub-u31.rub-u31{background:rgba(17,17,17,.12);color:var(--rub-text);border-color:rgba(17,17,17,.4)}
:is(#ru-bottin-app,body) .rub-u32.rub-u32{background:var(--rub-green-s);color:var(--rub-green);border-color:var(--rub-green-strong)}
:is(#ru-bottin-app,body) .rub-u33.rub-u33{padding:30px;text-align:center;color:var(--ru-discret,#6b7280);font-family:Arial,Helvetica,sans-serif;font-size:10px}
:is(#ru-bottin-app,body) .rub-u34.rub-u34{padding:16px;color:var(--rub-red-text);font-size:13px}
:is(#ru-bottin-app,body) .rub-u35.rub-u35{font-style:italic}
:is(#ru-bottin-app,body) .rub-u36.rub-u36{min-height:80px}
:is(#ru-bottin-app,body) .rub-u37.rub-u37{filter:blur(6px)}
:is(#ru-bottin-app,body) .rub-u38.rub-u38{margin-top:8px}
:is(#ru-bottin-app,body) .rub-u39.rub-u39{grid-column:1/-1}
:is(#ru-bottin-app,body) .rub-u40.rub-u40{margin-top:3px}
:is(#ru-bottin-app,body) .rub-u41.rub-u41{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--rub-green-s);border:1px solid rgba(22,163,74,.2);border-radius:100px;color:var(--rub-green);font-size:11px;font-weight:700}
:is(#ru-bottin-app,body) .rub-u42.rub-u42{display:flex;flex-direction:column;gap:6px}
:is(#ru-bottin-app,body) .rub-u43.rub-u43{text-decoration:none;display:inline-flex;align-items:center;gap:6px}
:is(#ru-bottin-app,body) .rub-u44.rub-u44{display:flex;flex-direction:column;gap:8px}
:is(#ru-bottin-app,body) .rub-u45.rub-u45{background:linear-gradient(135deg,var(--rub-gold-soft),rgba(17,17,17,.02));border:1px solid rgba(17,17,17,.3);border-radius:8px;padding:14px 16px}
:is(#ru-bottin-app,body) .rub-u46.rub-u46{font-family:var(--rub-mono);font-size:9px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--rub-gold2);margin-bottom:4px}
:is(#ru-bottin-app,body) .rub-u47.rub-u47{font-family:var(--rub-display);font-size:18px;letter-spacing:.04em;color:var(--rub-text);margin-bottom:8px}
:is(#ru-bottin-app,body) .rub-u48.rub-u48{display:flex;gap:6px;flex-wrap:wrap}
:is(#ru-bottin-app,body) .rub-u49.rub-u49{text-decoration:none}
:is(#ru-bottin-app,body) .rub-u50.rub-u50{text-decoration:none;background:var(--rub-text);border-color:var(--rub-text)}
:is(#ru-bottin-app,body) .rub-u51.rub-u51{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#F8F7F4;border:1px solid rgba(0,0,0,.06);border-radius:7px}
:is(#ru-bottin-app,body) .rub-u52.rub-u52{font-family:var(--rub-mono);font-size:10px;font-weight:700;color:var(--rub-muted);min-width:42px}
:is(#ru-bottin-app,body) .rub-u53.rub-u53{font-size:13px;color:var(--rub-text);flex:1;font-weight:500}
:is(#ru-bottin-app,body) .rub-u54.rub-u54{font-family:var(--rub-mono);font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:2px 8px;border-radius:100px;background:var(--rub-gold-soft);color:var(--rub-gold2);border:1px solid var(--rub-gold-b)}
:is(#ru-bottin-app,body) .rub-u55.rub-u55{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#F8F7F4;border:1px solid rgba(0,0,0,.06);border-radius:7px;cursor:pointer}
:is(#ru-bottin-app,body) .rub-u56.rub-u56{width:36px;height:36px;border-radius:8px;flex-shrink:0;overflow:hidden;font-size:0;line-height:0}
:is(#ru-bottin-app,body) .rub-u57.rub-u57{font-size:11px;color:var(--ru-discret,#6b7280)}
:is(#ru-bottin-app,body) .rub-u58.rub-u58{font-family:var(--rub-mono);font-size:8px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:3px 8px;border-radius:100px;background:var(--rub-green-s);color:var(--rub-green);border:1px solid var(--rub-green-strong)}
:is(#ru-bottin-app,body) .rub-u59.rub-u59{font-size:10px;color:var(--rub-text)}
:is(#ru-bottin-app,body) .rub-u60.rub-u60{white-space:pre-wrap}
:is(#ru-bottin-app,body) .rub-u61.rub-u61{font-size:13px;color:var(--rub-text-700);line-height:1.55;padding:2px 0 4px}
:is(#ru-bottin-app,body) .rub-u62.rub-u62{margin-top:24px}
:is(#ru-bottin-app,body) .rub-u63.rub-u63{width:90px;height:90px;border:1px solid var(--rub-border);border-radius:8px;padding:4px;background:#fff;display:block}
:is(#ru-bottin-app,body) .rub-u64.rub-u64{font-size:13px;color:var(--rub-text);font-weight:600;margin-bottom:4px}
:is(#ru-bottin-app,body) .rub-u65.rub-u65{font-size:11px;color:var(--rub-muted);line-height:1.5;margin-bottom:10px}
:is(#ru-bottin-app,body) .rub-u66.rub-u66{display:flex;flex-wrap:wrap;gap:6px}
:is(#ru-bottin-app,body) .rub-u67.rub-u67{font-size:11px;color:var(--rub-green);font-family:Arial,Helvetica,sans-serif;background:var(--rub-green-s);padding:7px 11px;border:1px solid var(--rub-green-strong);border-radius:6px}
:is(#ru-bottin-app,body) .rub-u68.rub-u68{font-size:11px;color:var(--rub-green);font-family:Arial,Helvetica,sans-serif;background:var(--rub-green-s);padding:6px 10px;border:1px solid var(--rub-green-strong);border-radius:6px}
:is(#ru-bottin-app,body) .rub-u69.rub-u69{background:var(--rub-amber);color:#fff;border-color:var(--rub-amber)}
:is(#ru-bottin-app,body) .rub-u70.rub-u70{font-size:11px;color:var(--rub-text);font-family:Arial,Helvetica,sans-serif;background:var(--rub-gold-soft);padding:6px 10px;border:1px solid rgba(17,17,17,.3);border-radius:6px}
:is(#ru-bottin-app,body) .rub-u71.rub-u71{font-size:10px;padding:6px 11px}
:is(#ru-bottin-app,body) .rub-u72.rub-u72{background:var(--rub-green);color:#fff;border-color:var(--rub-green)}
:is(#ru-bottin-app,body) .rub-u73.rub-u73{background:var(--rub-amber-deep);color:#fff;border-color:var(--rub-amber-deep)}
:is(#ru-bottin-app,body) .rub-u74.rub-u74{max-width:500px}
:is(#ru-bottin-app,body) .rub-u75.rub-u75{font-size:24px}
:is(#ru-bottin-app,body) .rub-u76.rub-u76{padding:16px 20px}
:is(#ru-bottin-app,body) .rub-u77.rub-u77{font-size:13px;color:var(--rub-sub);line-height:1.55;margin-bottom:14px}
:is(#ru-bottin-app,body) .rub-u78.rub-u78{display:flex;flex-direction:column;gap:6px;margin-bottom:14px}
:is(#ru-bottin-app,body) .rub-u79.rub-u79{display:block;font-family:Arial,Helvetica,sans-serif;font-size:9px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--rub-muted);margin-bottom:5px}
:is(#ru-bottin-app,body) .rub-u80.rub-u80{width:100%;padding:9px 11px;border:1px solid var(--rub-border2);border-radius:7px;font-size:12px;font-family:Arial,Helvetica,sans-serif;resize:vertical;outline:none}
:is(#ru-bottin-app,body) .rub-u81.rub-u81{margin-left:auto}
:is(#ru-bottin-app,body) .rub-u82.rub-u82{display:flex;align-items:center;gap:8px}
:is(#ru-bottin-app,body) .rub-u83.rub-u83{font-size:18px}
:is(#ru-bottin-app,body) .rub-u84.rub-u84{padding:20px}
:is(#ru-bottin-app,body) .rub-u85.rub-u85{background:rgba(22,163,74,.06);border:1px solid var(--rub-green-strong);border-radius:8px;padding:14px 16px;margin-bottom:16px}
:is(#ru-bottin-app,body) .rub-u86.rub-u86{font-size:14px;font-weight:600;color:var(--rub-green);margin-bottom:6px}
:is(#ru-bottin-app,body) .rub-u87.rub-u87{font-size:13px;line-height:1.55;color:var(--rub-sub)}
:is(#ru-bottin-app,body) .rub-u88.rub-u88{font-size:13px;color:var(--rub-sub);margin-bottom:12px;line-height:1.55}
:is(#ru-bottin-app,body) .rub-u89.rub-u89{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}
:is(#ru-bottin-app,body) .rub-u90.rub-u90{text-align:left;display:flex;align-items:center;gap:10px;padding:11px 14px}
:is(#ru-bottin-app,body) .rub-u91.rub-u91{font-size:15px}
:is(#ru-bottin-app,body) .rub-u92.rub-u92{text-align:left;display:flex;align-items:center;gap:10px;padding:11px 14px;text-decoration:none;color:inherit}
:is(#ru-bottin-app,body) .rub-u93.rub-u93{padding:18px}
:is(#ru-bottin-app,body) .rub-u94.rub-u94{font-size:12px;color:var(--ru-discret,#6b7280);line-height:1.5;margin-bottom:16px}
:is(#ru-bottin-app,body) .rub-u95.rub-u95{background:#F9FAFB;border:1px solid var(--rub-border-solid);border-radius:8px;padding:14px;margin-bottom:14px}
:is(#ru-bottin-app,body) .rub-u96.rub-u96{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid rgba(0,0,0,.06)}
:is(#ru-bottin-app,body) .rub-u97.rub-u97{font-family:Arial,Helvetica,sans-serif;font-size:8px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--rub-text);margin-bottom:2px}
:is(#ru-bottin-app,body) .rub-u98.rub-u98{font-size:14px;font-weight:600;color:var(--rub-text)}
:is(#ru-bottin-app,body) .rub-u99.rub-u99{font-size:9px;padding:5px 9px}
:is(#ru-bottin-app,body) .rub-u100.rub-u100{display:flex;align-items:center;gap:10px;padding:10px;background:#fff;border:1px solid var(--rub-border-solid);border-radius:6px;margin-bottom:6px;flex-wrap:wrap}
:is(#ru-bottin-app,body) .rub-u101.rub-u101{flex:1;min-width:120px}
:is(#ru-bottin-app,body) .rub-u102.rub-u102{font-size:10px;color:var(--ru-discret,#6b7280);font-family:Arial,Helvetica,sans-serif}
:is(#ru-bottin-app,body) .rub-u103.rub-u103{display:flex;gap:5px;flex-shrink:0}
:is(#ru-bottin-app,body) .rub-u104.rub-u104{font-size:9px;padding:5px 11px;background:var(--rub-green);border-color:var(--rub-green);color:#fff}
:is(#ru-bottin-app,body) .rub-u105.rub-u105{font-size:9px;padding:5px 9px;color:var(--rub-red);border-color:var(--rub-red)}
:is(#ru-bottin-app,body) .rub-u106.rub-u106{background:linear-gradient(135deg,rgba(22,163,74,.06),rgba(22,163,74,.02));border:1px solid var(--rub-green-strong);border-radius:8px;padding:13px 15px;margin-bottom:14px}
:is(#ru-bottin-app,body) .rub-u107.rub-u107{font-size:14px;font-weight:700;color:var(--rub-green-text);margin-bottom:5px}
:is(#ru-bottin-app,body) .rub-u108.rub-u108{font-size:12px;line-height:1.55;color:var(--rub-text-700)}
:is(#ru-bottin-app,body) .rub-u109.rub-u109{font-size:13px;color:var(--rub-ink);margin-bottom:8px;font-weight:600}
:is(#ru-bottin-app,body) .rub-u110.rub-u110{margin-bottom:12px}
:is(#ru-bottin-app,body) .rub-u111.rub-u111{font-size:11px;color:var(--rub-text-500);line-height:1.5;background:#F3F4F6;padding:10px 12px;border-radius:6px;border-left:3px solid var(--rub-text-400);font-family:Arial, Helvetica, sans-serif}
:is(#ru-bottin-app,body) .rub-u112.rub-u112{max-width:680px}
:is(#ru-bottin-app,body) .rub-u113.rub-u113{background:var(--rub-amber-deep);color:#fff}
:is(#ru-bottin-app,body) .rub-u114.rub-u114{color:#fff;display:flex;align-items:center;gap:8px}
:is(#ru-bottin-app,body) .rub-u115.rub-u115{color:#fff;border-color:rgba(255,255,255,.3)}
:is(#ru-bottin-app,body) .rub-u116.rub-u116{background:linear-gradient(135deg,var(--rub-red-bg),#FEE2E2);border:2px solid var(--rub-red);border-radius:8px;padding:13px 15px;margin-bottom:16px}
:is(#ru-bottin-app,body) .rub-u117.rub-u117{font-size:14px;font-weight:800;color:var(--rub-red-deep);margin-bottom:5px}
:is(#ru-bottin-app,body) .rub-u118.rub-u118{font-size:12px;line-height:1.55;color:var(--rub-red-deep)}
:is(#ru-bottin-app,body) .rub-u119.rub-u119{background:var(--rub-green-bg);border:1px solid var(--rub-green);border-radius:8px;padding:12px 14px;margin-bottom:14px}
:is(#ru-bottin-app,body) .rub-u120.rub-u120{font-family:Arial,Helvetica,sans-serif;font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--rub-green-text);margin-bottom:4px}
:is(#ru-bottin-app,body) .rub-u121.rub-u121{font-family:Arial, Helvetica, sans-serif;font-size:14px;font-weight:800;color:var(--rub-ink)}
:is(#ru-bottin-app,body) .rub-u122.rub-u122{font-family:Arial, Helvetica, sans-serif;font-size:11px;color:var(--rub-text-500);margin-top:2px}
:is(#ru-bottin-app,body) .rub-u123.rub-u123{display:block;font-family:Arial,Helvetica,sans-serif;font-size:10px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--rub-ink);margin-bottom:6px}
:is(#ru-bottin-app,body) .rub-u124.rub-u124{width:100%;padding:10px 12px;border:2px solid var(--rub-ink);border-radius:8px;font-family:Arial, Helvetica, sans-serif;font-size:14px}
:is(#ru-bottin-app,body) .rub-u125.rub-u125{text-align:center;padding:20px;color:var(--rub-text-500);font-size:12px}
:is(#ru-bottin-app,body) .rub-u126.rub-u126{font-family:Arial,Helvetica,sans-serif;font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:var(--rub-red-deep);margin-bottom:4px}
:is(#ru-bottin-app,body) .rub-u127.rub-u127{display:block;font-family:Arial, Helvetica, sans-serif;font-size:13px;font-weight:700;color:var(--rub-ink);margin-bottom:6px}
:is(#ru-bottin-app,body) .rub-u128.rub-u128{background:#FEE2E2;padding:2px 6px;border-radius:3px;color:var(--rub-red-deep);font-weight:800}
:is(#ru-bottin-app,body) .rub-u129.rub-u129{width:100%;padding:10px 12px;border:2px solid var(--rub-red);border-radius:8px;font-family:Arial, Helvetica, sans-serif;font-size:14px;font-weight:800;text-transform:uppercase}
:is(#ru-bottin-app,body) .rub-u130.rub-u130{text-align:center;padding:20px;color:var(--rub-red);font-size:12px}
:is(#ru-bottin-app,body) .rub-u131.rub-u131{font-family:Arial, Helvetica, sans-serif;font-size:13px;font-weight:700;color:var(--rub-ink)}
:is(#ru-bottin-app,body) .rub-u132.rub-u132{text-align:center;padding:14px;color:var(--rub-green);font-size:12px;font-weight:700}
:is(#ru-bottin-app,body) .rub-u133.rub-u133{color:var(--rub-text-400);font-weight:400;font-size:11px}
:is(#ru-bottin-app,body) .rub-u134.rub-u134{font-size:13px;color:var(--ru-discret,#6b7280);margin-bottom:10px;line-height:1.5}
:is(#ru-bottin-app,body) .rub-u135.rub-u135{display:flex;align-items:flex-start;gap:10px;padding:10px;background:#F3F4F6;border-radius:8px;margin-bottom:8px;border:2px solid transparent;opacity:.55;cursor:not-allowed}
:is(#ru-bottin-app,body) .rub-u136.rub-u136{font-weight:700;font-size:14px;color:var(--ru-discret,#6b7280)}
:is(#ru-bottin-app,body) .rub-u137.rub-u137{font-size:12px;color:var(--ru-discret,#6b7280);margin-top:2px}
:is(#ru-bottin-app,body) .rub-u138.rub-u138{font-weight:700;font-size:14px;color:var(--rub-text)}
:is(#ru-bottin-app,body) .rub-u139.rub-u139{flex:1}
:is(#ru-bottin-app,body) .rub-u140.rub-u140{font-size:12px;color:var(--ru-discret,#6b7280);margin-top:2px;margin-bottom:6px}
:is(#ru-bottin-app,body) .rub-u141.rub-u141{font-size:12px;padding:6px 10px}
:is(#ru-bottin-app,body) .rub-u142.rub-u142{padding-bottom:6px}
:is(#ru-bottin-app,body) .rub-u143.rub-u143{font-size:14px}
:is(#ru-bottin-app,body) .rub-u144.rub-u144{color:var(--rub-green)}
:is(#ru-bottin-app,body) .rub-u145.rub-u145{color:var(--rub-red)}
:is(#ru-bottin-app,body) .rub-u146.rub-u146{display:grid;grid-template-columns:90px 1fr 110px 30px;gap:8px;align-items:center;margin-bottom:8px;padding:8px;background:#F9FAFB;border:1px solid var(--rub-border-solid);border-radius:6px}
:is(#ru-bottin-app,body) .rub-u147.rub-u147{font-size:12px;padding:6px 8px}
:is(#ru-bottin-app,body) .rub-u148.rub-u148{background:transparent;border:1px solid var(--rub-red);color:var(--rub-red);border-radius:4px;width:28px;height:28px;cursor:pointer;font-size:14px;font-weight:700}
:is(#ru-bottin-app,body) .rub-u149.rub-u149{font-size:11px;padding:6px 8px;grid-column:1/-1}
:is(#ru-bottin-app,body) .rub-u150.rub-u150{display:grid;grid-template-columns:140px 1fr 30px;gap:8px;align-items:center;margin-bottom:8px;padding:8px;background:#F9FAFB;border:1px solid var(--rub-border-solid);border-radius:6px}
:is(#ru-bottin-app,body) .rub-u151.rub-u151{position:relative;margin-bottom:10px;padding:12px;background:#F9FAFB;border:1px solid var(--rub-border-solid);border-radius:8px}
:is(#ru-bottin-app,body) .rub-u152.rub-u152{position:absolute;top:8px;right:8px;background:transparent;border:1px solid var(--rub-red);color:var(--rub-red);border-radius:4px;width:26px;height:26px;cursor:pointer;font-size:13px;font-weight:700}
:is(#ru-bottin-app,body) .rub-u153.rub-u153{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:6px;padding-right:32px}
:is(#ru-bottin-app,body) .rub-u154.rub-u154{display:grid;grid-template-columns:1fr 1fr;gap:8px}
:is(#ru-bottin-app,body) .rub-u155.rub-u155{color:var(--ru-discret,#6b7280);font-weight:400;font-size:10px}
:is(#ru-bottin-app,body) .rub-u156.rub-u156{background:var(--rub-amber-bg);border:1px solid var(--rub-amber);border-radius:6px;padding:9px 13px;font-size:12px;color:var(--rub-amber-text)}
:is(#ru-bottin-app,body) .rub-u157.rub-u157{font-size:12px;color:var(--ru-discret,#6b7280);padding:8px}
:is(#ru-bottin-app,body) .rub-u158.rub-u158{margin-top:0}
:is(#ru-bottin-app,body) .rub-u159.rub-u159{display:flex;gap:14px;align-items:flex-start;flex-wrap:wrap}
:is(#ru-bottin-app,body) .rub-u160.rub-u160{width:88px;height:88px;border-radius:12px;flex-shrink:0;overflow:hidden;background:var(--ru-accent-doux,rgba(44,111,181,.12));display:flex;align-items:center;justify-content:center;border:2px solid var(--ru-accent-filet,rgba(44,111,181,.45))}
:is(#ru-bottin-app,body) .rub-u161.rub-u161{margin-top:8px;font-size:10px}
:is(#ru-bottin-app,body) .rub-u162.rub-u162{font-weight:400;color:var(--rub-text-500)}
:is(#ru-bottin-app,body) .rub-u163.rub-u163{font-size:11px;color:var(--rub-text-500);margin-top:4px}
:is(#ru-bottin-app,body) .rub-u164.rub-u164{color:var(--ru-discret,#6b7280);font-weight:400;font-size:11px}
:is(#ru-bottin-app,body) .rub-u165.rub-u165{display:grid;grid-template-columns:2fr 1fr;gap:8px}
:is(#ru-bottin-app,body) .rub-u166.rub-u166{position:relative}
:is(#ru-bottin-app,body) .rub-u167.rub-u167{display:block;margin-bottom:6px}
:is(#ru-bottin-app,body) .rub-u168.rub-u168{font-size:10px}
:is(#ru-bottin-app,body) .rub-u169.rub-u169{margin-top:6px}
:is(#ru-bottin-app,body) .rub-u170.rub-u170{background:var(--ru-accent-doux,rgba(44,111,181,.12));border-left:3px solid var(--ru-accent,#1d5c8f);padding:8px 10px;border-radius:4px}
:is(#ru-bottin-app,body) .rub-u171.rub-u171{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:13px;color:var(--rub-text)}
:is(#ru-bottin-app,body) .rub-u172.rub-u172{text-align:center;margin-top:10px}
:is(#ru-bottin-app,body) .rub-u173.rub-u173{padding:9px 12px}
:is(#ru-bottin-app,body) .rub-u174.rub-u174{margin-top:14px}
:is(#ru-bottin-app,body) .rub-u175.rub-u175{margin:6px 0 0 18px;padding:0}
:is(#ru-bottin-app,body) .rub-u176.rub-u176{padding:30px;text-align:center;color:var(--ru-discret,#6b7280)}
:is(#ru-bottin-app,body) .rub-u177.rub-u177{margin:0 auto 12px}
:is(#ru-bottin-app,body) .rub-u178.rub-u178{padding:20px;color:var(--rub-red-text)}
