:root{--tfr-accent:#0ea5e9}.tfr-auth-wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;margin:24px 0}.tfr-card{background:#fff;border:1px solid #e5e7eb;border-radius:22px;padding:24px;box-shadow:0 12px 35px rgba(15,23,42,.08);margin:18px 0}.tfr-card h2{margin-top:0}.tfr-card label{display:block;font-weight:700;margin:12px 0 6px}.tfr-card input,.tfr-card textarea,.tfr-card select{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:12px;padding:12px;background:#fff}.tfr-card textarea{min-height:110px}.tfr-btn{background:var(--tfr-accent);color:#fff;border:none;border-radius:14px;padding:13px 18px;font-weight:800;cursor:pointer;margin-top:14px}.tfr-btn:hover{filter:brightness(.95);transform:translateY(-1px)}.tfr-alert{background:#ecfeff;border:1px solid #67e8f9;border-radius:14px;padding:12px 16px;margin:12px 0}.tfr-role-badge{display:inline-flex;align-items:center;gap:8px;color:#fff;border-radius:999px;padding:7px 13px;font-weight:800;font-size:13px;margin:6px 0}.tfr-role-box{border-left:6px solid var(--tfr-accent);background:#f8fafc;border-radius:16px;padding:15px;margin:16px 0}.tfr-account-head{display:flex;gap:16px;align-items:center;margin-bottom:16px}.tfr-avatar,.tfr-account-head img{width:82px;height:82px;border-radius:999px;object-fit:cover}.tfr-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-top:18px}.tfr-tile{background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;padding:16px}.tfr-tile p{margin-bottom:0;color:#475569}@media(max-width:600px){.tfr-card{padding:18px}.tfr-account-head{align-items:flex-start}}
.tfr-admin-badge{display:inline-block;color:#fff;border-radius:999px;padding:6px 11px;font-weight:800;font-size:13px;margin:6px 0}
.tfr-event-list{display:grid;gap:14px;margin-top:18px}.tfr-event-card{display:grid;grid-template-columns:78px 1fr;gap:16px;border:1px solid #e2e8f0;background:#f8fafc;border-radius:18px;padding:16px}.tfr-event-date{background:var(--tfr-accent);color:#fff;border-radius:16px;min-height:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.tfr-event-date strong{font-size:20px;line-height:1}.tfr-event-date span{font-size:13px;opacity:.95;margin-top:6px}.tfr-event-card h3{margin:.1rem 0 .4rem}.tfr-station-pill{display:inline-block;background:#e0f2fe;color:#075985;border-radius:999px;padding:5px 10px;font-weight:800;font-size:13px}.tfr-event-content p:last-child{margin-bottom:0}.tfr-event-filter{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.tfr-event-filter label{margin:0;font-weight:800}.tfr-event-filter select{min-width:260px}@media(max-width:600px){.tfr-event-card{grid-template-columns:1fr}.tfr-event-date{align-items:flex-start;padding:14px;min-height:auto}.tfr-event-filter select{min-width:100%}}
.tfr-event-image{margin-bottom:14px}.tfr-event-img{width:100%;max-height:260px;object-fit:cover;border-radius:16px;display:block}.tfr-check{display:flex!important;align-items:center;gap:10px}.tfr-check input{width:auto!important}.tfr-danger-btn{background:#dc2626!important;color:#fff!important}.tfr-event-actions-list{display:grid;gap:10px;margin-top:18px}.tfr-traffic-card{display:flex;gap:16px;align-items:flex-start;border-radius:22px;padding:20px;margin:18px 0;border:1px solid #e2e8f0;background:#f8fafc}.tfr-traffic-icon{font-size:34px;line-height:1}.tfr-traffic-label{text-transform:uppercase;font-size:12px;letter-spacing:.08em;font-weight:900;color:#64748b}.tfr-traffic-card h3{margin:.15rem 0 .35rem}.tfr-traffic-card p{margin:.35rem 0;color:#334155}.tfr-traffic-card small{color:#64748b}.tfr-traffic-normal{border-color:#86efac;background:#f0fdf4}.tfr-traffic-info{border-color:#7dd3fc;background:#f0f9ff}.tfr-traffic-perturbed{border-color:#fdba74;background:#fff7ed}.tfr-traffic-interrupted{border-color:#fca5a5;background:#fef2f2}.tfr-ambassadeur-home .tfr-tile strong{display:block;margin-bottom:6px}@media(max-width:600px){.tfr-traffic-card{flex-direction:column}.tfr-event-img{max-height:210px}}

/* V15 improvements */
.tfr-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin:18px 0}.tfr-form-grid>div{border:1px solid #e2e8f0;background:#f8fafc;border-radius:18px;padding:18px}.tfr-traffic-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;margin:18px 0}.tfr-traffic-grid .tfr-traffic-card{margin:0}.tfr-traffic-slow{border-color:#fde68a;background:#fffbeb}.tfr-traffic-danger{border-color:#fca5a5;background:#fef2f2}.tfr-events-home .tfr-event-card-premium{display:grid;grid-template-columns:96px 1fr;gap:20px;align-items:start}.tfr-events-home .tfr-event-card-premium .tfr-event-image{grid-column:1 / -1}.tfr-event-datebox{background:linear-gradient(135deg,var(--tfr-accent),#22c55e);color:#fff;border-radius:18px;min-height:94px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:10px}.tfr-event-day{font-size:28px;font-weight:900;line-height:1}.tfr-event-month{font-size:12px;font-weight:900;letter-spacing:.08em;margin-top:4px}.tfr-event-time{font-size:13px;font-weight:800;margin-top:6px}.tfr-event-main .tfr-event-gare{display:inline-flex;border-radius:999px;padding:6px 11px;font-weight:900;background:#e0f2fe;color:#075985;margin-bottom:10px}.tfr-event-location{margin-top:10px}@media(max-width:600px){.tfr-events-home .tfr-event-card-premium{grid-template-columns:1fr}.tfr-event-datebox{align-items:flex-start;text-align:left;min-height:auto}.tfr-form-grid{grid-template-columns:1fr}.tfr-traffic-grid{grid-template-columns:1fr}}

/* V16 dark ambassador form fix: prevents white textarea/select/input backgrounds */
.tfr-ambassadeur-home,
.tfr-event-create-panel,
.tfr-event-manager-list,
.tfr-traffic-panel,
.tfr-event-panel{
  color:#fff !important;
}

.tfr-ambassadeur-home .tfr-card,
.tfr-ambassadeur-home .tfr-tile,
.tfr-ambassadeur-home .tfr-form-grid>div,
.tfr-ambassadeur-home .tfr-traffic-card,
.tfr-ambassadeur-home .tfr-event-card,
.tfr-event-create-panel,
.tfr-event-manager-list,
.tfr-traffic-panel,
.tfr-event-panel,
.tfr-traffic-panel .tfr-form-grid>div,
.tfr-event-create-panel .tfr-form-grid>div{
  background:linear-gradient(180deg,rgba(5,15,40,.92),rgba(2,8,25,.98)) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 0 30px rgba(0,229,255,.06) !important;
}

.tfr-ambassadeur-home h1,
.tfr-ambassadeur-home h2,
.tfr-ambassadeur-home h3,
.tfr-ambassadeur-home h4,
.tfr-ambassadeur-home label,
.tfr-ambassadeur-home p,
.tfr-ambassadeur-home span,
.tfr-ambassadeur-home small,
.tfr-ambassadeur-home strong,
.tfr-traffic-panel h1,
.tfr-traffic-panel h2,
.tfr-traffic-panel h3,
.tfr-traffic-panel h4,
.tfr-traffic-panel label,
.tfr-traffic-panel p,
.tfr-traffic-panel span,
.tfr-traffic-panel small,
.tfr-traffic-panel strong,
.tfr-event-create-panel h1,
.tfr-event-create-panel h2,
.tfr-event-create-panel h3,
.tfr-event-create-panel h4,
.tfr-event-create-panel label,
.tfr-event-create-panel p,
.tfr-event-create-panel span,
.tfr-event-create-panel small,
.tfr-event-create-panel strong{
  color:#fff !important;
}

.tfr-ambassadeur-home p,
.tfr-traffic-panel p,
.tfr-event-create-panel p{
  color:rgba(255,255,255,.78) !important;
}

.tfr-ambassadeur-home input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.tfr-ambassadeur-home textarea,
.tfr-ambassadeur-home select,
.tfr-traffic-panel input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.tfr-traffic-panel textarea,
.tfr-traffic-panel select,
.tfr-event-create-panel input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.tfr-event-create-panel textarea,
.tfr-event-create-panel select,
.tfr-event-manager-list input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.tfr-event-manager-list textarea,
.tfr-event-manager-list select{
  width:100% !important;
  box-sizing:border-box !important;
  min-height:55px !important;
  background:#071028 !important;
  color:#fff !important;
  border:1px solid rgba(0,229,255,.26) !important;
  border-radius:16px !important;
  padding:12px 18px !important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif !important;
  font-size:16px !important;
  font-weight:700 !important;
  outline:none !important;
  color-scheme:dark !important;
}

.tfr-ambassadeur-home textarea,
.tfr-traffic-panel textarea,
.tfr-event-create-panel textarea,
.tfr-event-manager-list textarea{
  min-height:165px !important;
  resize:vertical !important;
  line-height:1.6 !important;
}

.tfr-ambassadeur-home input::placeholder,
.tfr-ambassadeur-home textarea::placeholder,
.tfr-traffic-panel input::placeholder,
.tfr-traffic-panel textarea::placeholder,
.tfr-event-create-panel input::placeholder,
.tfr-event-create-panel textarea::placeholder{
  color:rgba(255,255,255,.52) !important;
}

.tfr-ambassadeur-home select,
.tfr-traffic-panel select,
.tfr-event-create-panel select,
.tfr-event-manager-list select{
  appearance:none !important;
  -webkit-appearance:none !important;
  -moz-appearance:none !important;
  padding-right:48px !important;
  background-color:#071028 !important;
  background-image:linear-gradient(45deg,transparent 50%,#00e5ff 50%),linear-gradient(135deg,#00e5ff 50%,transparent 50%) !important;
  background-position:calc(100% - 22px) 50%,calc(100% - 15px) 50% !important;
  background-size:7px 7px,7px 7px !important;
  background-repeat:no-repeat !important;
}

.tfr-ambassadeur-home select option,
.tfr-ambassadeur-home select optgroup,
.tfr-traffic-panel select option,
.tfr-traffic-panel select optgroup,
.tfr-event-create-panel select option,
.tfr-event-create-panel select optgroup,
.tfr-event-manager-list select option,
.tfr-event-manager-list select optgroup{
  background:#071028 !important;
  color:#fff !important;
}

.tfr-ambassadeur-home input:focus,
.tfr-ambassadeur-home textarea:focus,
.tfr-ambassadeur-home select:focus,
.tfr-traffic-panel input:focus,
.tfr-traffic-panel textarea:focus,
.tfr-traffic-panel select:focus,
.tfr-event-create-panel input:focus,
.tfr-event-create-panel textarea:focus,
.tfr-event-create-panel select:focus{
  border-color:#00e5ff !important;
  box-shadow:0 0 0 4px rgba(0,229,255,.14) !important;
}

.tfr-ambassadeur-home input[type="file"],
.tfr-event-create-panel input[type="file"]{
  background:rgba(0,229,255,.08) !important;
  border:1px dashed rgba(0,229,255,.35) !important;
}

.tfr-ambassadeur-home input[type="file"]::file-selector-button,
.tfr-event-create-panel input[type="file"]::file-selector-button{
  border:0 !important;
  border-radius:999px !important;
  background:linear-gradient(90deg,#00e5ff,#00d4a3) !important;
  color:#020617 !important;
  font-weight:900 !important;
  padding:10px 16px !important;
  margin-right:14px !important;
  cursor:pointer !important;
}

.tfr-ambassadeur-home .tfr-form-grid,
.tfr-traffic-panel .tfr-form-grid,
.tfr-event-create-panel .tfr-form-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr)) !important;
  gap:18px !important;
}

@media(max-width:600px){
  .tfr-ambassadeur-home .tfr-form-grid,
  .tfr-traffic-panel .tfr-form-grid,
  .tfr-event-create-panel .tfr-form-grid{grid-template-columns:1fr !important;}
}

/* V17 trafic par tronçon, travaux et itinéraire de substitution */
.tfr-route-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr)) !important;
  gap:14px !important;
  margin:12px 0 6px !important;
}
.tfr-traffic-route{
  display:inline-flex !important;
  width:max-content !important;
  max-width:100% !important;
  align-items:center !important;
  gap:8px !important;
  margin:8px 0 12px !important;
  padding:9px 13px !important;
  border-radius:999px !important;
  background:rgba(0,229,255,.10) !important;
  border:1px solid rgba(0,229,255,.24) !important;
  color:#00e5ff !important;
  font-weight:900 !important;
}
.tfr-traffic-extra{
  margin-top:14px !important;
  padding:15px 16px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(255,255,255,.12) !important;
}
.tfr-traffic-extra strong{
  display:block !important;
  margin-bottom:6px !important;
  color:#fff !important;
}
.tfr-traffic-extra p{
  margin:0 !important;
}
.tfr-traffic-works{
  border-color:rgba(255,204,51,.34) !important;
  background:rgba(255,204,51,.08) !important;
}
.tfr-traffic-substitution{
  border-color:rgba(0,229,255,.28) !important;
  background:rgba(0,229,255,.08) !important;
}
.tfr-traffic-panel .tfr-check{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  margin:16px 0 8px !important;
  padding:12px 14px !important;
  border-radius:16px !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(255,255,255,.10) !important;
}
.tfr-traffic-panel .tfr-check input{
  width:auto !important;
  min-height:auto !important;
  margin:0 !important;
  accent-color:#00e5ff !important;
}
@media(max-width:600px){
  .tfr-route-grid{grid-template-columns:1fr !important;}
  .tfr-traffic-route{width:100% !important;}
}

/* V18 temps estimé + sauvegarde front renforcée */
.tfr-traffic-time{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  margin:10px 0 4px !important;
  padding:9px 13px !important;
  border-radius:999px !important;
  background:rgba(0,229,255,.10) !important;
  border:1px solid rgba(0,229,255,.24) !important;
  color:#fff !important;
  font-weight:900 !important;
}
.tfr-traffic-time strong{color:#00e5ff !important;}
.tfr-traffic-panel input[name="estimated_time"],
.tfr-traffic-panel input[name="substitution_time"]{
  background:#071028 !important;
  color:#fff !important;
  border:1px solid rgba(0,229,255,.26) !important;
}

/* V19 confirmation + affichage explicite trafic/affluence */
.tfr-alert{
  background:linear-gradient(135deg,rgba(0,212,163,.20),rgba(0,229,255,.12)) !important;
  color:#fff !important;
  border:1px solid rgba(0,212,163,.38) !important;
  border-radius:22px !important;
  padding:18px 22px !important;
  margin:0 0 22px !important;
  box-shadow:0 0 30px rgba(0,212,163,.14) !important;
  font-weight:900 !important;
  text-align:center !important;
}
.tfr-traffic-state-pill,
.tfr-affluence-state-low,
.tfr-affluence-state-medium,
.tfr-affluence-state-high{
  display:inline-flex !important;
  width:max-content !important;
  max-width:100% !important;
  align-items:center !important;
  gap:8px !important;
  margin:6px 0 12px !important;
  padding:9px 14px !important;
  border-radius:999px !important;
  font-weight:900 !important;
  text-transform:uppercase !important;
  letter-spacing:.03em !important;
  color:#020617 !important;
}
.tfr-traffic-state-normal,
.tfr-affluence-state-low{background:#00d4a3 !important;}
.tfr-traffic-state-slow,
.tfr-affluence-state-medium{background:#ffcc33 !important;}
.tfr-traffic-state-perturbed,
.tfr-traffic-state-interrupted,
.tfr-affluence-state-high{background:#ff4d4d !important;color:#fff !important;}
.tfr-help{
  margin:-10px 0 16px !important;
  color:rgba(255,255,255,.62) !important;
  font-size:.88rem !important;
  line-height:1.45 !important;
}

/* V20 : trafic et affluence séparés + message instantané */
.tfr-separated-panels{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr)) !important;
  gap:24px !important;
  align-items:start !important;
  margin-top:24px !important;
}
.tfr-traffic-live-preview{
  margin:22px 0 !important;
}
.tfr-instant-message{
  display:none;
  margin:0 0 22px !important;
  padding:18px 22px !important;
  border-radius:22px !important;
  background:linear-gradient(135deg,rgba(0,212,163,.22),rgba(0,229,255,.12)) !important;
  border:1px solid rgba(0,212,163,.40) !important;
  color:#fff !important;
  font-weight:900 !important;
  text-align:center !important;
  box-shadow:0 0 30px rgba(0,212,163,.16) !important;
}
.tfr-instant-message.is-visible{display:block !important;}
.tfr-instant-message.tfr-instant-error{
  background:rgba(255,77,77,.12) !important;
  border-color:rgba(255,77,77,.38) !important;
}
.tfr-traffic-edit-form,
.tfr-affluence-edit-form{
  margin:0 !important;
}
.tfr-traffic-edit-form button[disabled],
.tfr-affluence-edit-form button[disabled]{
  opacity:.72 !important;
  cursor:wait !important;
  transform:none !important;
}
@media(max-width:720px){
  .tfr-separated-panels{grid-template-columns:1fr !important;}
}

/* V21 Actualités */
.tfr-news-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:18px}
.tfr-news-card{position:relative;padding:28px;border-radius:26px;background:linear-gradient(180deg,#071328,#020817);border:1px solid rgba(255,255,255,.12);color:#fff;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.24)}
.tfr-news-card:before{content:"";position:absolute;top:0;left:0;right:0;height:5px;background:linear-gradient(90deg,#00e5ff,#00d4a3)}
.tfr-news-top{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.tfr-news-date{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border-radius:999px;background:linear-gradient(135deg,#00e5ff,#00d4a3);color:#020617;font-weight:900}
.tfr-news-date:before{content:"📅"}
.tfr-news-tag{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(0,229,255,.10);border:1px solid rgba(0,229,255,.22);color:#00e5ff;font-weight:900;font-size:.8rem;text-transform:uppercase;letter-spacing:.06em}
.tfr-news-card h3{font-size:1.35rem;margin:0 0 12px;color:#fff!important}
.tfr-news-card p{color:rgba(255,255,255,.78);line-height:1.75}
.tfr-news-status{margin-top:18px;font-weight:900;color:#00d4a3}
.tfr-news-status.warning{color:#ffcc33}.tfr-news-status.info{color:#00e5ff}.tfr-news-status.important{color:#00d4a3}
.tfr-no-news{max-width:900px;margin:0 auto;padding:34px;border-radius:24px;text-align:center;background:linear-gradient(180deg,#071328,#020817);color:rgba(255,255,255,.72)}
@media(max-width:700px){.tfr-news-grid{grid-template-columns:1fr}.tfr-news-card{padding:22px}}

/* V23 : visuel fallback quand un événement n'a pas d'image */
.tfr-event-brand-fallback{
  min-height:230px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:28px !important;
  background:
    radial-gradient(circle at 20% 18%, rgba(0,229,255,.28), transparent 34%),
    radial-gradient(circle at 82% 72%, rgba(0,212,163,.20), transparent 36%),
    linear-gradient(135deg,#071028,#020617) !important;
}
.tfr-event-brand-fallback::before{
  content:"" !important;
  position:absolute !important;
  inset:18px !important;
  border-radius:28px !important;
  border:1px solid rgba(255,255,255,.11) !important;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015)) !important;
  pointer-events:none !important;
}
.tfr-event-brand-fallback-inner{
  position:relative !important;
  z-index:4 !important;
  width:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:24px !important;
  flex-wrap:wrap !important;
  text-align:center !important;
}
.tfr-event-brand-line{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
  padding:14px 18px !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.06) !important;
  border:1px solid rgba(0,229,255,.22) !important;
  box-shadow:0 0 30px rgba(0,229,255,.12) !important;
}
.tfr-event-brand-text{
  font-family:Orbitron,Inter,system-ui,sans-serif !important;
  font-size:clamp(2rem,4vw,4.8rem) !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:.02em !important;
  color:#fff !important;
  text-shadow:0 0 24px rgba(0,229,255,.38) !important;
}
.tfr-event-brand-l18{
  display:block !important;
  width:clamp(54px,8vw,115px) !important;
  height:clamp(54px,8vw,115px) !important;
  flex:0 0 auto !important;
  background:url('https://upload.wikimedia.org/wikipedia/commons/8/8f/Paris_transit_icons_-_M%C3%A9tro_18.svg') center/contain no-repeat !important;
  filter:drop-shadow(0 0 18px rgba(0,229,255,.38)) !important;
}
.tfr-event-brand-x{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:52px !important;
  height:52px !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#00e5ff,#00d4a3) !important;
  color:#020617 !important;
  font-family:Orbitron,Inter,system-ui,sans-serif !important;
  font-size:2rem !important;
  font-weight:900 !important;
  box-shadow:0 0 26px rgba(0,229,255,.28) !important;
}
.tfr-event-brand-keolis{
  display:block !important;
  width:clamp(120px,17vw,240px) !important;
  height:clamp(52px,7vw,92px) !important;
  flex:0 0 auto !important;
  background:url('https://i.postimg.cc/KcdS9kKQ/Logo-Keolis.png') center/contain no-repeat !important;
  filter:drop-shadow(0 0 18px rgba(255,255,255,.16)) !important;
}
@media(max-width:600px){
  .tfr-event-brand-fallback{min-height:190px !important;padding:22px !important;}
  .tfr-event-brand-fallback-inner{gap:14px !important;}
  .tfr-event-brand-line{gap:10px !important;padding:12px 14px !important;}
  .tfr-event-brand-x{width:42px !important;height:42px !important;font-size:1.55rem !important;}
}

/* V29 : espace ambassadeur propre en panneaux */
.tfr-ambassadeur-app{
  overflow:hidden;
}
.tfr-ambassadeur-actions{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:16px;
  margin:26px 0 20px;
}
.tfr-ambassadeur-actions button{
  text-align:left;
  border:1px solid rgba(255,255,255,.12);
  border-radius:22px;
  padding:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025));
  color:#fff;
  cursor:pointer;
  transition:.25s ease;
  min-height:118px;
  box-shadow:0 18px 45px rgba(0,0,0,.18);
}
.tfr-ambassadeur-actions button strong{
  display:block;
  font-size:1.05rem;
  margin-bottom:10px;
}
.tfr-ambassadeur-actions button span{
  display:block;
  color:rgba(255,255,255,.68);
  line-height:1.45;
}
.tfr-ambassadeur-actions button:hover,
.tfr-ambassadeur-actions button.active{
  transform:translateY(-4px);
  border-color:rgba(0,229,255,.45);
  box-shadow:0 24px 60px rgba(0,0,0,.26),0 0 34px rgba(0,229,255,.14);
}
.tfr-ambassadeur-actions button.active{
  background:radial-gradient(circle at top left,rgba(0,229,255,.22),transparent 38%),linear-gradient(180deg,rgba(0,229,255,.11),rgba(255,255,255,.035));
}
.tfr-ambassadeur-stats{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin:0 0 24px;
}
.tfr-ambassadeur-stats span{
  display:inline-flex;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(0,229,255,.09);
  border:1px solid rgba(0,229,255,.22);
  color:#00e5ff;
  font-weight:900;
}
.tfr-ambassadeur-panels [data-tfr-panel]{
  display:none;
}
.tfr-ambassadeur-panels [data-tfr-panel].active{
  display:block;
  animation:tfrPanelIn .35s ease both;
}
.tfr-home-manager textarea{
  min-height:92px;
}
@keyframes tfrPanelIn{
  from{opacity:0;transform:translateY(18px) scale(.985)}
  to{opacity:1;transform:translateY(0) scale(1)}
}

/* V33 Global navbar injected by plugin */
.tfr-global-navbar.navbar{position:fixed !important;top:18px !important;left:50% !important;transform:translateX(-50%) !important;z-index:999999 !important;width:calc(100vw - 76px) !important;height:82px !important;padding:0 28px !important;display:flex !important;align-items:center !important;justify-content:space-between !important;border-radius:26px !important;background:rgba(4,10,30,0.78) !important;border:1px solid rgba(255,255,255,0.12) !important;backdrop-filter:blur(22px) !important;box-shadow:0 20px 60px rgba(0,0,0,0.35) !important;font-family:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important}.tfr-global-navbar .nav-left{display:flex !important;align-items:center !important;gap:14px !important;z-index:1002 !important}.tfr-global-navbar .nav-title{font-family:'Orbitron',system-ui,sans-serif !important;font-weight:900 !important;letter-spacing:.08em !important;color:#fff !important}.tfr-global-navbar .nav-logo{width:45px !important;height:45px !important;object-fit:contain !important;filter:drop-shadow(0 0 16px rgba(0,229,255,.4)) !important;animation:tfrLogoFloat 3.8s ease-in-out infinite !important}.tfr-global-navbar .nav-toggle{display:none !important}.tfr-global-navbar .nav-burger{display:none;color:white;font-size:2rem;cursor:pointer;z-index:1002}.tfr-global-navbar .nav-links{display:flex !important;align-items:center !important;gap:20px !important}.tfr-global-navbar .nav-links a,.tfr-global-navbar .stations-btn,.tfr-global-navbar .account-btn{position:relative !important;color:white !important;text-decoration:none !important;font-weight:800 !important;font-size:.88rem !important;opacity:.76 !important;transition:.3s ease !important;cursor:pointer !important;line-height:1.2 !important}.tfr-global-navbar .nav-links a:hover,.tfr-global-navbar .nav-links a.active,.tfr-global-navbar .stations-btn:hover,.tfr-global-navbar .account-btn:hover{opacity:1 !important;color:#00e5ff !important}.tfr-global-navbar .nav-links a::after,.tfr-global-navbar .stations-btn::after,.tfr-global-navbar .account-btn::after{content:"";position:absolute;left:0;right:0;bottom:-8px;height:2px;border-radius:999px;background:linear-gradient(90deg,#00e5ff,#00d4a3);transform:scaleX(0);transform-origin:left;transition:.3s ease}.tfr-global-navbar .nav-links a:hover::after,.tfr-global-navbar .nav-links a.active::after,.tfr-global-navbar .stations-btn:hover::after,.tfr-global-navbar .account-btn:hover::after{transform:scaleX(1)}.tfr-global-navbar .stations-dropdown,.tfr-global-navbar .account-dropdown{position:relative !important}.tfr-global-navbar .stations-menu,.tfr-global-navbar .account-menu{position:absolute !important;top:48px !important;right:0 !important;width:320px !important;padding:15px !important;display:flex !important;flex-direction:column !important;gap:10px !important;border-radius:24px !important;background:rgba(4,10,30,.97) !important;border:1px solid rgba(255,255,255,.12) !important;backdrop-filter:blur(24px) !important;opacity:0 !important;visibility:hidden !important;transform:translateY(12px) !important;transition:.35s ease !important;box-shadow:0 0 35px rgba(0,229,255,.16) !important}.tfr-global-navbar .stations-dropdown:hover .stations-menu,.tfr-global-navbar .account-dropdown:hover .account-menu{opacity:1 !important;visibility:visible !important;transform:translateY(0) !important}.tfr-global-navbar .stations-menu a,.tfr-global-navbar .account-menu a{padding:13px 16px !important;border-radius:16px !important;text-decoration:none !important;color:white !important;font-weight:800 !important;transition:.3s ease !important;opacity:1 !important}.tfr-global-navbar .stations-menu a:hover,.tfr-global-navbar .account-menu a:hover{background:rgba(0,229,255,.08) !important;color:#00e5ff !important;transform:translateX(5px) !important}.tfr-global-navbar .register-btn{background:rgba(255,255,255,.06) !important}.tfr-global-navbar .login-btn{background:linear-gradient(90deg,rgba(0,229,255,.14),rgba(0,212,163,.12)) !important}.tfr-global-navbar .account-btn-main{background:linear-gradient(90deg,rgba(0,212,163,.14),rgba(0,229,255,.10)) !important}@keyframes tfrLogoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}@media(max-width:1180px){.tfr-global-navbar .nav-links{gap:14px !important}.tfr-global-navbar .nav-links a,.tfr-global-navbar .stations-btn,.tfr-global-navbar .account-btn{font-size:.78rem !important}}@media(max-width:950px){.tfr-global-navbar.navbar{top:12px !important;width:94vw !important;height:70px !important;padding:0 18px !important}.tfr-global-navbar .nav-burger{display:block !important}.tfr-global-navbar .nav-logo{width:40px !important;height:40px !important}.tfr-global-navbar .nav-title{font-size:.9rem !important}.tfr-global-navbar .nav-links{position:absolute !important;top:82px !important;left:0 !important;right:0 !important;max-height:calc(100vh - 105px) !important;overflow:auto !important;display:none !important;flex-direction:column !important;align-items:stretch !important;padding:16px !important;border-radius:24px !important;background:rgba(4,10,30,.98) !important;border:1px solid rgba(255,255,255,.12) !important;backdrop-filter:blur(24px) !important;box-shadow:0 25px 70px rgba(0,0,0,.45) !important}.tfr-global-navbar .nav-toggle:checked ~ .nav-links{display:flex !important}.tfr-global-navbar .nav-links>a,.tfr-global-navbar .stations-btn,.tfr-global-navbar .account-btn{width:100% !important;padding:15px 18px !important;border-radius:16px !important;background:rgba(255,255,255,.045) !important;opacity:1 !important;font-size:.92rem !important}.tfr-global-navbar .stations-dropdown,.tfr-global-navbar .account-dropdown{width:100% !important}.tfr-global-navbar .stations-menu,.tfr-global-navbar .account-menu{position:static !important;width:100% !important;opacity:1 !important;visibility:visible !important;transform:none !important;margin-top:10px !important;background:rgba(255,255,255,.035) !important;box-shadow:none !important}}

/* =========================
V34 — Espace ambassadeur fluide et compréhensible
========================= */
.tfr-ambassadeur-v34{
  position:relative !important;
  overflow:hidden !important;
  padding:0 !important;
  border-radius:34px !important;
  background:radial-gradient(circle at 10% 0%,rgba(0,229,255,.18),transparent 34%),linear-gradient(180deg,rgba(5,15,40,.96),rgba(2,8,25,.99)) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 35px 110px rgba(0,0,0,.45),0 0 60px rgba(0,229,255,.12) !important;
  color:#fff !important;
}
.tfr-ambassadeur-v34 *{box-sizing:border-box !important}
.tfr-amb-hero{
  display:grid !important;
  grid-template-columns:1fr auto !important;
  gap:28px !important;
  align-items:center !important;
  padding:34px !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  background:linear-gradient(90deg,rgba(0,229,255,.10),rgba(255,255,255,.025)) !important;
}
.tfr-chip{
  display:inline-flex !important;
  width:max-content !important;
  max-width:100% !important;
  margin-bottom:14px !important;
  padding:9px 14px !important;
  border-radius:999px !important;
  background:rgba(0,229,255,.10) !important;
  border:1px solid rgba(0,229,255,.25) !important;
  color:#00e5ff !important;
  font-weight:950 !important;
  text-transform:uppercase !important;
  letter-spacing:.12em !important;
  font-size:.78rem !important;
}
.tfr-amb-hero h2,
.tfr-section-hero h2{
  margin:0 0 10px !important;
  font-family:Orbitron,Inter,system-ui,sans-serif !important;
  font-size:clamp(2rem,4vw,3.6rem) !important;
  line-height:1.05 !important;
  background:linear-gradient(90deg,#fff,#00e5ff,#00d4a3) !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
}
.tfr-amb-hero p,.tfr-section-hero p{margin:0 !important;color:rgba(255,255,255,.72) !important;line-height:1.7 !important;font-size:1.05rem !important}
.tfr-amb-hero-logo{
  min-width:150px !important;
  min-height:120px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:10px !important;
  border-radius:28px !important;
  background:rgba(255,255,255,.065) !important;
  border:1px solid rgba(255,255,255,.12) !important;
}
.tfr-amb-hero-logo img{width:64px !important;height:64px !important;filter:drop-shadow(0 0 22px rgba(0,229,255,.42)) !important;animation:tfrLogoFloat 3.8s ease-in-out infinite !important}
.tfr-amb-hero-logo span{font-weight:950 !important;text-transform:uppercase !important;letter-spacing:.10em !important}
.tfr-amb-dashboard{
  display:grid !important;
  grid-template-columns:repeat(auto-fit,minmax(230px,1fr)) !important;
  gap:18px !important;
  padding:26px 34px 18px !important;
}
.tfr-dash-card{
  position:relative !important;
  min-height:142px !important;
  overflow:hidden !important;
  text-align:left !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:26px !important;
  padding:22px !important;
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.028)) !important;
  color:#fff !important;
  cursor:pointer !important;
  transition:.28s ease !important;
  box-shadow:0 18px 45px rgba(0,0,0,.20) !important;
}
.tfr-dash-card::before{
  content:"" !important;
  position:absolute !important;
  inset:0 auto 0 0 !important;
  width:5px !important;
  background:linear-gradient(180deg,#00e5ff,#00d4a3) !important;
  opacity:.0 !important;
  transition:.28s ease !important;
}
.tfr-dash-card strong{display:block !important;font-size:1.05rem !important;margin-bottom:10px !important;color:#fff !important}
.tfr-dash-card span{display:block !important;margin-bottom:8px !important;color:#00e5ff !important;font-weight:950 !important}
.tfr-dash-card em{display:block !important;font-style:normal !important;color:rgba(255,255,255,.62) !important;line-height:1.45 !important;font-weight:750 !important}
.tfr-dash-card:hover,.tfr-dash-card.active{transform:translateY(-5px) !important;border-color:rgba(0,229,255,.42) !important;box-shadow:0 28px 70px rgba(0,0,0,.32),0 0 42px rgba(0,229,255,.14) !important}
.tfr-dash-card.active{background:radial-gradient(circle at top left,rgba(0,229,255,.24),transparent 38%),linear-gradient(180deg,rgba(0,229,255,.12),rgba(255,255,255,.035)) !important}
.tfr-dash-card.active::before{opacity:1 !important}
.tfr-amb-quickbar,.tfr-amb-guide{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:12px !important;
  padding:0 34px 22px !important;
}
.tfr-amb-quickbar span,.tfr-amb-guide span,.tfr-amb-guide strong{
  display:inline-flex !important;
  align-items:center !important;
  padding:10px 14px !important;
  border-radius:999px !important;
  background:rgba(0,229,255,.09) !important;
  border:1px solid rgba(0,229,255,.22) !important;
  color:#00e5ff !important;
  font-weight:900 !important;
}
.tfr-amb-guide strong{background:rgba(255,255,255,.065) !important;color:#fff !important;border-color:rgba(255,255,255,.12) !important}
.tfr-ambassadeur-panels{padding:0 34px 34px !important}
.tfr-ambassadeur-panels [data-tfr-panel]{display:none !important}
.tfr-ambassadeur-panels [data-tfr-panel].active{display:block !important;animation:tfrPanelIn .38s ease both !important}
.tfr-panel-head{
  margin:16px 0 18px !important;
  padding:22px !important;
  border-radius:24px !important;
  background:rgba(255,255,255,.055) !important;
  border:1px solid rgba(255,255,255,.10) !important;
}
.tfr-panel-head h3{margin:0 0 8px !important;color:#fff !important;font-size:1.35rem !important}
.tfr-panel-head p{margin:0 !important;color:rgba(255,255,255,.68) !important;line-height:1.6 !important}
.tfr-section-hero.compact{
  display:grid !important;
  grid-template-columns:1fr auto !important;
  gap:18px !important;
  align-items:center !important;
  margin-bottom:20px !important;
}
.tfr-hero-metric{
  min-width:145px !important;
  padding:18px !important;
  border-radius:22px !important;
  background:rgba(0,229,255,.10) !important;
  border:1px solid rgba(0,229,255,.22) !important;
  text-align:center !important;
}
.tfr-hero-metric strong{display:block !important;font-family:Orbitron,Inter,sans-serif !important;font-size:2rem !important;color:#00e5ff !important}
.tfr-hero-metric span{display:block !important;color:rgba(255,255,255,.70) !important;font-weight:850 !important}
.tfr-editor-toolbar{
  display:grid !important;
  grid-template-columns:minmax(260px,1fr) auto !important;
  gap:14px !important;
  align-items:center !important;
  margin:18px 0 20px !important;
}
.tfr-field-search{min-height:54px !important;border-radius:999px !important;background:#071028 !important;border:1px solid rgba(0,229,255,.26) !important;color:#fff !important;padding:0 20px !important;font-weight:850 !important}
.tfr-editor-help{color:rgba(255,255,255,.62) !important;font-weight:750 !important}
.tfr-editor-grid{display:grid !important;gap:16px !important}
.tfr-field-group{
  border-radius:24px !important;
  overflow:hidden !important;
  border:1px solid rgba(255,255,255,.12) !important;
  background:rgba(255,255,255,.045) !important;
}
.tfr-field-group summary{
  cursor:pointer !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  padding:18px 20px !important;
  color:#fff !important;
  font-weight:950 !important;
  list-style:none !important;
}
.tfr-field-group summary::-webkit-details-marker{display:none !important}
.tfr-field-group summary small{color:#00e5ff !important;font-weight:900 !important}
.tfr-field-list{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(280px,1fr)) !important;gap:16px !important;padding:0 18px 18px !important}
.tfr-edit-field{padding:16px !important;border-radius:18px !important;background:rgba(2,8,25,.70) !important;border:1px solid rgba(255,255,255,.09) !important}
.tfr-edit-field label{display:flex !important;flex-direction:column !important;gap:8px !important;margin:0 0 10px !important;color:#fff !important}
.tfr-edit-field code{width:max-content !important;max-width:100% !important;padding:5px 8px !important;border-radius:999px !important;background:rgba(0,229,255,.10) !important;color:#00e5ff !important;white-space:normal !important}
.tfr-edit-field.is-hidden{display:none !important}
.tfr-field-group.is-empty{display:none !important}
.tfr-sticky-save{position:sticky !important;bottom:12px !important;z-index:5 !important;margin-top:20px !important;padding:14px !important;border-radius:24px !important;background:rgba(4,10,30,.82) !important;border:1px solid rgba(255,255,255,.12) !important;backdrop-filter:blur(18px) !important;text-align:right !important}
.tfr-ideas-grid{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr)) !important;gap:16px !important}
.tfr-ideas-grid article{padding:20px !important;border-radius:22px !important;background:rgba(255,255,255,.055) !important;border:1px solid rgba(255,255,255,.10) !important}
.tfr-ideas-grid strong{display:block !important;margin-bottom:8px !important;color:#00e5ff !important}
.tfr-ideas-grid span{display:block !important;color:rgba(255,255,255,.70) !important;line-height:1.55 !important}
@media(max-width:850px){
  .tfr-amb-hero,.tfr-section-hero.compact,.tfr-editor-toolbar{grid-template-columns:1fr !important}
  .tfr-ambassadeur-panels,.tfr-amb-dashboard,.tfr-amb-quickbar,.tfr-amb-guide,.tfr-amb-hero{padding-left:18px !important;padding-right:18px !important}
  .tfr-sticky-save{text-align:center !important}
}


/* =========================
V35 — Espace ambassadeur plus clair, moins chargé
========================= */
.tfr-ambassadeur-v35{
  position:relative !important;
  overflow:hidden !important;
  padding:0 !important;
  border-radius:34px !important;
  background:linear-gradient(180deg,rgba(5,15,40,.97),rgba(2,8,25,.99)) !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 30px 90px rgba(0,0,0,.40),0 0 45px rgba(0,229,255,.10) !important;
  color:#fff !important;
}
.tfr-ambassadeur-v35 *{box-sizing:border-box !important}
.tfr-amb-simple-head{
  display:grid !important;
  grid-template-columns:1fr auto !important;
  gap:24px !important;
  align-items:center !important;
  padding:30px !important;
  border-bottom:1px solid rgba(255,255,255,.10) !important;
  background:radial-gradient(circle at top left,rgba(0,229,255,.14),transparent 38%),rgba(255,255,255,.025) !important;
}
.tfr-amb-simple-head h2{
  margin:0 0 10px !important;
  font-family:Orbitron,Inter,sans-serif !important;
  font-size:clamp(2rem,4vw,3.35rem) !important;
  line-height:1.05 !important;
  background:linear-gradient(90deg,#fff,#00e5ff) !important;
  -webkit-background-clip:text !important;
  -webkit-text-fill-color:transparent !important;
}
.tfr-amb-simple-head p{margin:0 !important;color:rgba(255,255,255,.70) !important;line-height:1.65 !important;font-weight:750 !important}
.tfr-amb-simple-logo{display:flex !important;align-items:center !important;gap:12px !important;padding:14px 18px !important;border-radius:22px !important;background:rgba(255,255,255,.055) !important;border:1px solid rgba(255,255,255,.10) !important}
.tfr-amb-simple-logo img{width:54px !important;height:54px !important;filter:drop-shadow(0 0 18px rgba(0,229,255,.35)) !important}
.tfr-amb-simple-logo strong{font-family:Orbitron,Inter,sans-serif !important;letter-spacing:.08em !important}
.tfr-amb-priority-row{
  display:grid !important;
  grid-template-columns:repeat(4,1fr) !important;
  gap:14px !important;
  padding:20px 30px !important;
  border-bottom:1px solid rgba(255,255,255,.08) !important;
}
.tfr-priority-card{
  text-align:left !important;
  min-height:86px !important;
  padding:16px 18px !important;
  border-radius:20px !important;
  border:1px solid rgba(255,255,255,.10) !important;
  background:rgba(255,255,255,.045) !important;
  color:#fff !important;
  cursor:pointer !important;
  transition:.22s ease !important;
}
.tfr-priority-card strong{display:block !important;margin-bottom:6px !important;color:#fff !important;font-size:1rem !important}
.tfr-priority-card span{display:block !important;color:rgba(255,255,255,.62) !important;font-weight:750 !important;font-size:.88rem !important}
.tfr-priority-card:hover{transform:translateY(-3px) !important;border-color:rgba(0,229,255,.38) !important;background:rgba(0,229,255,.09) !important}
.tfr-amb-layout{
  display:grid !important;
  grid-template-columns:290px minmax(0,1fr) !important;
  gap:22px !important;
  padding:26px 30px 30px !important;
}
.tfr-amb-side{
  position:sticky !important;
  top:115px !important;
  align-self:start !important;
  display:grid !important;
  gap:12px !important;
  padding:16px !important;
  border-radius:26px !important;
  background:rgba(255,255,255,.035) !important;
  border:1px solid rgba(255,255,255,.10) !important;
}
.tfr-side-title{color:#00e5ff !important;font-weight:950 !important;text-transform:uppercase !important;letter-spacing:.12em !important;font-size:.78rem !important;margin:4px 4px 2px !important}
.tfr-ambassadeur-v35 .tfr-dash-card{
  min-height:0 !important;
  display:block !important;
  padding:14px 16px !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.045) !important;
  box-shadow:none !important;
}
.tfr-ambassadeur-v35 .tfr-dash-card strong{font-size:.98rem !important;margin:0 0 5px !important;color:#fff !important}
.tfr-ambassadeur-v35 .tfr-dash-card span{font-size:.82rem !important;margin:0 !important;color:rgba(255,255,255,.62) !important;font-weight:800 !important}
.tfr-ambassadeur-v35 .tfr-dash-card em{display:none !important}
.tfr-ambassadeur-v35 .tfr-dash-card:hover,
.tfr-ambassadeur-v35 .tfr-dash-card.active{transform:none !important;border-color:rgba(0,229,255,.45) !important;background:linear-gradient(90deg,rgba(0,229,255,.18),rgba(0,212,163,.08)) !important;box-shadow:0 0 28px rgba(0,229,255,.10) !important}
.tfr-amb-mini-stats{display:grid !important;gap:8px !important;margin-top:8px !important;padding-top:12px !important;border-top:1px solid rgba(255,255,255,.09) !important}
.tfr-amb-mini-stats span{display:block !important;padding:10px 12px !important;border-radius:14px !important;background:rgba(0,229,255,.075) !important;color:#00e5ff !important;font-weight:900 !important;font-size:.86rem !important}
.tfr-amb-main{min-width:0 !important}
.tfr-ambassadeur-v35 .tfr-ambassadeur-panels{padding:0 !important}
.tfr-ambassadeur-v35 .tfr-panel-head{margin:0 0 16px !important;padding:18px 20px !important;border-radius:22px !important;background:rgba(255,255,255,.045) !important;border:1px solid rgba(255,255,255,.10) !important}
.tfr-ambassadeur-v35 .tfr-panel-head h3{font-size:1.25rem !important;margin:0 0 6px !important;color:#fff !important}
.tfr-ambassadeur-v35 .tfr-panel-head p{margin:0 !important;color:rgba(255,255,255,.62) !important;line-height:1.55 !important}
.tfr-ambassadeur-v35 .tfr-card{border-radius:24px !important}
.tfr-ambassadeur-v35 .tfr-section-hero.compact{display:block !important;margin-bottom:14px !important}
.tfr-ambassadeur-v35 .tfr-section-hero.compact h2{font-size:1.65rem !important}
.tfr-ambassadeur-v35 .tfr-hero-metric{display:none !important}
.tfr-ambassadeur-v35 .tfr-editor-toolbar{grid-template-columns:1fr !important;margin:14px 0 !important}
.tfr-ambassadeur-v35 .tfr-editor-help{display:none !important}
.tfr-ambassadeur-v35 .tfr-field-group{border-radius:18px !important;background:rgba(255,255,255,.035) !important}
.tfr-ambassadeur-v35 .tfr-field-group summary{padding:15px 16px !important}
.tfr-ambassadeur-v35 .tfr-field-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr)) !important;padding:0 14px 14px !important}
.tfr-ambassadeur-v35 .tfr-edit-field{padding:14px !important;border-radius:16px !important}
.tfr-ideas-clean{grid-template-columns:repeat(auto-fit,minmax(220px,1fr)) !important}
@media(max-width:1050px){
  .tfr-amb-priority-row{grid-template-columns:repeat(2,1fr) !important}
  .tfr-amb-layout{grid-template-columns:1fr !important}
  .tfr-amb-side{position:relative !important;top:auto !important;grid-template-columns:repeat(2,1fr) !important}
  .tfr-side-title,.tfr-amb-mini-stats{grid-column:1/-1 !important}
}
@media(max-width:700px){
  .tfr-amb-simple-head{grid-template-columns:1fr !important;padding:22px !important}
  .tfr-amb-priority-row,.tfr-amb-side{grid-template-columns:1fr !important}
  .tfr-amb-layout{padding:18px !important}
}

/* V36 — Mon compte lisible */
.tfr-account-modern{
  max-width:1180px!important;
  margin:110px auto 70px!important;
  padding:0!important;
  color:#fff!important;
}
.tfr-account-hero{
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  gap:26px!important;
  align-items:center!important;
  padding:34px!important;
  border-radius:34px!important;
  background:radial-gradient(circle at top left,rgba(0,229,255,.18),transparent 38%),linear-gradient(180deg,rgba(5,15,40,.96),rgba(2,8,25,.99))!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 30px 90px rgba(0,0,0,.38),0 0 45px rgba(0,229,255,.10)!important;
  overflow:hidden!important;
}
.tfr-account-avatar-wrap{width:112px;height:112px;border-radius:28px;overflow:hidden;border:1px solid rgba(0,229,255,.28);box-shadow:0 0 35px rgba(0,229,255,.18)}
.tfr-account-avatar-wrap img,.tfr-account-avatar{width:112px!important;height:112px!important;object-fit:cover!important;border-radius:28px!important;display:block!important}
.tfr-account-titlebox h2{font-family:Orbitron,Inter,sans-serif!important;font-size:clamp(2rem,4vw,3.4rem)!important;line-height:1.05!important;margin:10px 0 10px!important;background:linear-gradient(90deg,#fff,#00e5ff)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important}
.tfr-account-titlebox p{color:rgba(255,255,255,.72)!important;font-size:1.05rem!important;line-height:1.7!important;margin:0 0 14px!important}
.tfr-account-badges{display:flex!important;flex-wrap:wrap!important;gap:10px!important;align-items:center!important}
.tfr-account-summary{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:18px!important;margin:22px 0!important}
.tfr-account-summary-card{padding:22px!important;border-radius:24px!important;background:linear-gradient(180deg,rgba(5,15,40,.92),rgba(2,8,25,.98))!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 18px 55px rgba(0,0,0,.24)!important;overflow:hidden!important}
.tfr-account-summary-card small{display:block!important;margin-bottom:8px!important;color:#00e5ff!important;text-transform:uppercase!important;letter-spacing:.12em!important;font-size:.74rem!important;font-weight:900!important}
.tfr-account-summary-card strong{display:block!important;color:#fff!important;font-size:1.02rem!important;word-break:break-word!important}
.tfr-account-form{display:grid!important;gap:22px!important}
.tfr-account-section{padding:30px!important;border-radius:30px!important;background:radial-gradient(circle at top left,rgba(0,229,255,.10),transparent 38%),linear-gradient(180deg,rgba(5,15,40,.94),rgba(2,8,25,.99))!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 24px 70px rgba(0,0,0,.30)!important}
.tfr-account-section-head{margin-bottom:22px!important}
.tfr-account-section-head h3{font-family:Orbitron,Inter,sans-serif!important;font-size:1.45rem!important;margin:0 0 8px!important;color:#fff!important}
.tfr-account-section-head p{margin:0!important;color:rgba(255,255,255,.65)!important;line-height:1.7!important}
.tfr-account-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:18px!important}
.tfr-account-grid label,.tfr-account-alerts label{display:block!important;color:#fff!important;font-weight:850!important;line-height:1.5!important}
.tfr-account-modern input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.tfr-account-modern textarea,
.tfr-account-modern select{
  width:100%!important;min-height:55px!important;margin-top:8px!important;padding:12px 16px!important;border-radius:16px!important;background:#071028!important;color:#fff!important;border:1px solid rgba(0,229,255,.26)!important;outline:none!important;font-weight:750!important;box-sizing:border-box!important;color-scheme:dark!important
}
.tfr-account-modern textarea{min-height:130px!important;resize:vertical!important}
.tfr-account-modern input:focus,.tfr-account-modern textarea:focus,.tfr-account-modern select:focus{border-color:#00e5ff!important;box-shadow:0 0 0 4px rgba(0,229,255,.14)!important}
.tfr-account-modern input[type="file"]{padding:14px!important;background:rgba(0,229,255,.08)!important;border:1px dashed rgba(0,229,255,.35)!important}
.tfr-account-modern input[type="file"]::file-selector-button{border:0!important;border-radius:999px!important;background:linear-gradient(90deg,#00e5ff,#00d4a3)!important;color:#020617!important;font-weight:900!important;padding:10px 16px!important;margin-right:14px!important;cursor:pointer!important}
.tfr-account-alerts .tfr-alert-preferences-box{margin:0!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:22px!important;box-shadow:none!important}
.tfr-account-actions{position:sticky!important;bottom:16px!important;z-index:10!important;display:flex!important;justify-content:flex-end!important;padding:16px!important;border-radius:24px!important;background:rgba(4,10,30,.78)!important;border:1px solid rgba(255,255,255,.12)!important;backdrop-filter:blur(16px)!important;box-shadow:0 18px 55px rgba(0,0,0,.28)!important}
.tfr-account-actions .tfr-btn{margin:0!important}
@media(max-width:760px){
  .tfr-account-modern{margin:95px 14px 50px!important}
  .tfr-account-hero{grid-template-columns:1fr!important;text-align:center!important;justify-items:center!important;padding:26px!important}
  .tfr-account-summary,.tfr-account-grid{grid-template-columns:1fr!important}
  .tfr-account-actions{justify-content:stretch!important}
  .tfr-account-actions .tfr-btn{width:100%!important}
}

/* V36 — Footer global modifiable */
.tfr-global-footer{
  position:relative!important;
  overflow:hidden!important;
  padding:145px 38px!important;
  background:linear-gradient(180deg,#071028 0%,#020617 100%)!important;
  text-align:center!important;
  color:#fff!important;
}
.tfr-global-footer:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 0%,rgba(0,229,255,.18),transparent 34%);pointer-events:none}
.tfr-global-footer>*{position:relative;z-index:2}
.tfr-global-footer-logo{display:block!important;width:300px!important;max-width:85%!important;margin:0 auto 38px!important;filter:drop-shadow(0 0 18px rgba(0,229,255,.22))!important;animation:tfrLogoFloat 3.8s ease-in-out infinite!important}
.tfr-global-footer-title{font-family:Orbitron,Inter,sans-serif!important;font-size:clamp(2.3rem,5vw,3.5rem)!important;margin:0 0 18px!important;background:linear-gradient(90deg,#fff,#00e5ff)!important;-webkit-background-clip:text!important;-webkit-text-fill-color:transparent!important}
.tfr-global-footer-subtitle{color:rgba(255,255,255,.68)!important;font-size:1.1rem!important;line-height:1.8!important;margin:0 auto!important;max-width:920px!important}
.tfr-global-values-grid{max-width:1500px!important;margin:70px auto 0!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:30px!important}
.tfr-global-value-card{position:relative!important;padding:38px!important;border-radius:34px!important;overflow:hidden!important;background:radial-gradient(circle at top left,rgba(0,229,255,.14),transparent 36%),linear-gradient(180deg,rgba(5,15,40,.96),rgba(2,8,25,.99))!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 28px 80px rgba(0,0,0,.34),0 0 38px rgba(0,229,255,.08)!important;transition:.35s ease!important}
.tfr-global-value-card:before{content:"";position:absolute;top:0;left:0;right:0;height:6px;background:linear-gradient(90deg,#00e5ff,#00d4a3)}
.tfr-global-value-card:hover{transform:translateY(-8px)!important;border-color:rgba(0,229,255,.35)!important;box-shadow:0 38px 95px rgba(0,0,0,.46),0 0 58px rgba(0,229,255,.15)!important}
.tfr-global-value-icon{font-size:3.3rem!important;margin-bottom:24px!important}
.tfr-global-value-card h3{font-size:1.8rem!important;color:#00e5ff!important;margin:0 0 16px!important}
.tfr-global-value-card p{color:rgba(255,255,255,.74)!important;line-height:1.8!important;margin:0!important}
.tfr-global-footer-note{max-width:880px!important;margin:36px auto 0!important;color:rgba(255,255,255,.52)!important;line-height:1.8!important}
.tfr-global-newsletter{max-width:1500px!important;margin:80px auto 0!important;padding:36px!important;border-radius:34px!important;background:radial-gradient(circle at top left,rgba(0,229,255,.16),transparent 36%),linear-gradient(180deg,rgba(5,15,40,.96),rgba(2,8,25,.99))!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 28px 80px rgba(0,0,0,.34),0 0 38px rgba(0,229,255,.08)!important;display:grid!important;grid-template-columns:1fr minmax(320px,.9fr)!important;gap:30px!important;align-items:center!important;text-align:left!important}
.tfr-global-newsletter-kicker{display:inline-flex!important;margin-bottom:14px!important;padding:9px 14px!important;border-radius:999px!important;background:rgba(0,229,255,.10)!important;border:1px solid rgba(0,229,255,.22)!important;color:#00e5ff!important;text-transform:uppercase!important;letter-spacing:.12em!important;font-weight:900!important;font-size:.78rem!important}
.tfr-global-newsletter h3{font-family:Orbitron,Inter,sans-serif!important;font-size:2rem!important;margin:0 0 12px!important;color:#fff!important}
.tfr-global-newsletter p{color:rgba(255,255,255,.72)!important;line-height:1.75!important;margin:0!important}
.tfr-global-newsletter-form{display:flex!important;gap:12px!important}
.tfr-global-newsletter-form input[type="email"]{flex:1!important;min-height:58px!important;padding:0 18px!important;border-radius:999px!important;border:1px solid rgba(255,255,255,.12)!important;background:rgba(255,255,255,.075)!important;color:white!important;outline:none!important;font-weight:800!important}
.tfr-global-newsletter-form button{min-height:58px!important;padding:0 24px!important;border:0!important;border-radius:999px!important;background:linear-gradient(90deg,#00e5ff,#00d4a3)!important;color:#020617!important;font-weight:900!important;cursor:pointer!important;transition:.25s ease!important}
.tfr-global-newsletter-form button:hover{transform:translateY(-3px)!important;box-shadow:0 18px 45px rgba(0,229,255,.25)!important}
.tfr-global-privacy{margin-top:14px!important;color:rgba(255,255,255,.48)!important;font-size:.88rem!important;line-height:1.6!important}
@keyframes tfrLogoFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@media(max-width:900px){.tfr-global-values-grid,.tfr-global-newsletter{grid-template-columns:1fr!important}.tfr-global-newsletter{text-align:center!important}.tfr-global-newsletter-form{flex-direction:column!important}.tfr-global-newsletter-form button{width:100%!important}}

/* V37 — Footer premium, propre et lisible */
.tfr-global-footer.tfr-footer-v37,
.footer-keolis{
  position:relative!important;
  isolation:isolate!important;
  overflow:hidden!important;
  width:100%!important;
  max-width:100%!important;
  margin:0!important;
  padding:96px 28px 34px!important;
  background:
    radial-gradient(circle at 15% 0%,rgba(0,229,255,.22),transparent 30%),
    radial-gradient(circle at 86% 25%,rgba(0,212,163,.16),transparent 34%),
    linear-gradient(180deg,#071028 0%,#020617 72%,#01040e 100%)!important;
  color:#fff!important;
  text-align:left!important;
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}

.tfr-footer-grid-bg,
.tfr-global-footer.tfr-footer-v37:before,
.footer-keolis:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:-2!important;
  background-image:
    linear-gradient(rgba(0,229,255,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(0,229,255,.045) 1px,transparent 1px)!important;
  background-size:78px 78px!important;
  mask-image:linear-gradient(180deg,transparent,black 12%,black 88%,transparent)!important;
  pointer-events:none!important;
}

.tfr-footer-glow,
.footer-keolis:after{
  content:""!important;
  position:absolute!important;
  width:420px!important;
  height:420px!important;
  border-radius:50%!important;
  filter:blur(34px)!important;
  opacity:.18!important;
  z-index:-1!important;
  pointer-events:none!important;
}
.tfr-footer-glow-one{left:-120px!important;top:60px!important;background:#00e5ff!important}
.tfr-footer-glow-two{right:-140px!important;bottom:40px!important;background:#00d4a3!important}
.footer-keolis:after{right:-140px!important;bottom:40px!important;background:#00d4a3!important}

.tfr-footer-shell,
.footer-keolis > *{
  position:relative!important;
  z-index:2!important;
}

.tfr-footer-shell{
  width:min(1500px,100%)!important;
  margin:0 auto!important;
}

.tfr-footer-top-card,
.footer-keolis > .footer-logo,
.footer-keolis > .footer-title,
.footer-keolis > .footer-subtitle{
  position:relative!important;
}

.tfr-footer-top-card{
  display:grid!important;
  grid-template-columns:1.1fr .9fr!important;
  gap:34px!important;
  align-items:center!important;
  padding:34px!important;
  border-radius:34px!important;
  background:linear-gradient(135deg,rgba(255,255,255,.105),rgba(255,255,255,.045))!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 34px 95px rgba(0,0,0,.36),0 0 60px rgba(0,229,255,.08)!important;
  backdrop-filter:blur(18px)!important;
}

.tfr-footer-brand-block{
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  gap:28px!important;
  align-items:center!important;
}

.tfr-global-footer-logo,
.footer-logo{
  display:block!important;
  width:210px!important;
  max-width:70vw!important;
  height:auto!important;
  margin:0!important;
  filter:drop-shadow(0 0 18px rgba(0,229,255,.22))!important;
}

.footer-keolis .footer-logo{margin:0 auto 22px!important;width:220px!important}

.tfr-footer-kicker,
.newsletter-kicker{
  display:inline-flex!important;
  width:max-content!important;
  margin:0 0 12px!important;
  padding:8px 14px!important;
  border-radius:999px!important;
  color:#00e5ff!important;
  background:rgba(0,229,255,.10)!important;
  border:1px solid rgba(0,229,255,.24)!important;
  text-transform:uppercase!important;
  letter-spacing:.13em!important;
  font-size:.76rem!important;
  font-weight:950!important;
}

.tfr-global-footer-title,
.footer-title{
  font-family:Orbitron,Inter,sans-serif!important;
  font-size:clamp(2.1rem,4.2vw,4.2rem)!important;
  line-height:1.04!important;
  margin:0 0 14px!important;
  background:linear-gradient(90deg,#fff,#00e5ff,#00d4a3)!important;
  background-size:220% 100%!important;
  -webkit-background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
  color:#fff!important;
  text-align:left!important;
  animation:tfrFooterTitle 6s ease-in-out infinite!important;
}
.footer-keolis .footer-title{text-align:center!important;margin-bottom:14px!important}

.tfr-global-footer-subtitle,
.footer-subtitle{
  color:rgba(255,255,255,.74)!important;
  font-size:1.05rem!important;
  line-height:1.75!important;
  margin:0!important;
  max-width:920px!important;
  text-align:left!important;
}
.footer-keolis .footer-subtitle{text-align:center!important;margin:0 auto!important}

.tfr-footer-quicklinks{
  display:flex!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:12px!important;
}
.tfr-footer-quicklinks a{
  display:inline-flex!important;
  min-height:44px!important;
  align-items:center!important;
  padding:0 16px!important;
  border-radius:999px!important;
  color:#fff!important;
  text-decoration:none!important;
  font-weight:900!important;
  font-size:.84rem!important;
  letter-spacing:.02em!important;
  background:rgba(255,255,255,.065)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  transition:.25s ease!important;
}
.tfr-footer-quicklinks a:hover{transform:translateY(-3px)!important;color:#020617!important;background:linear-gradient(90deg,#00e5ff,#00d4a3)!important;box-shadow:0 18px 40px rgba(0,229,255,.18)!important}

.tfr-global-values-grid,
.keolis-values-grid{
  width:100%!important;
  max-width:1500px!important;
  margin:34px auto 0!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:20px!important;
}

.tfr-global-value-card,
.keolis-value-card{
  position:relative!important;
  min-height:190px!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  gap:18px!important;
  align-items:flex-start!important;
  padding:28px!important;
  border-radius:28px!important;
  background:linear-gradient(180deg,rgba(9,24,58,.92),rgba(4,13,34,.96))!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 22px 65px rgba(0,0,0,.30),0 0 40px rgba(0,229,255,.055)!important;
  overflow:hidden!important;
  text-align:left!important;
  transition:.28s ease!important;
}
.tfr-global-value-card:before,
.keolis-value-card:before{content:""!important;position:absolute!important;left:0!important;top:0!important;bottom:0!important;width:6px!important;height:auto!important;background:linear-gradient(180deg,#00e5ff,#00d4a3)!important}
.tfr-global-value-card:hover,
.keolis-value-card:hover{transform:translateY(-6px)!important;border-color:rgba(0,229,255,.32)!important;box-shadow:0 30px 82px rgba(0,0,0,.40),0 0 52px rgba(0,229,255,.12)!important}
.tfr-global-value-icon,
.keolis-value-icon{font-size:2.4rem!important;margin:0!important;line-height:1!important;filter:drop-shadow(0 0 15px rgba(0,229,255,.16))!important}
.tfr-global-value-card h3,
.keolis-value-card h3{font-size:1.35rem!important;line-height:1.2!important;margin:0 0 10px!important;color:#00e5ff!important;font-weight:950!important}
.tfr-global-value-card p,
.keolis-value-card p{font-size:.98rem!important;color:rgba(255,255,255,.74)!important;line-height:1.7!important;margin:0!important}

.tfr-global-newsletter,
.newsletter-footer{
  width:100%!important;
  max-width:1500px!important;
  margin:30px auto 0!important;
  padding:28px!important;
  border-radius:30px!important;
  display:grid!important;
  grid-template-columns:1fr minmax(360px,.82fr)!important;
  gap:28px!important;
  align-items:center!important;
  background:
    radial-gradient(circle at top left,rgba(0,229,255,.14),transparent 34%),
    linear-gradient(135deg,rgba(255,255,255,.095),rgba(255,255,255,.045))!important;
  border:1px solid rgba(255,255,255,.14)!important;
  box-shadow:0 28px 80px rgba(0,0,0,.34),0 0 46px rgba(0,229,255,.07)!important;
  text-align:left!important;
}
.newsletter-content{display:contents!important}
.tfr-global-newsletter h3,
.newsletter-content h3{font-family:Orbitron,Inter,sans-serif!important;font-size:clamp(1.55rem,2.2vw,2.25rem)!important;line-height:1.15!important;margin:0 0 12px!important;color:#fff!important}
.tfr-global-newsletter p,
.newsletter-content p{color:rgba(255,255,255,.72)!important;line-height:1.7!important;margin:0!important}
.tfr-global-newsletter-form,
.newsletter-form{display:flex!important;gap:12px!important;width:100%!important}
.tfr-global-newsletter-form input[type="email"],
.newsletter-form input[type="email"]{flex:1!important;min-height:58px!important;padding:0 18px!important;border-radius:999px!important;border:1px solid rgba(255,255,255,.14)!important;background:rgba(2,6,23,.72)!important;color:white!important;outline:none!important;font-weight:850!important;box-shadow:inset 0 0 22px rgba(0,229,255,.04)!important}
.tfr-global-newsletter-form input[type="email"]::placeholder,
.newsletter-form input[type="email"]::placeholder{color:rgba(255,255,255,.46)!important}
.tfr-global-newsletter-form button,
.newsletter-form button{min-height:58px!important;padding:0 24px!important;border:0!important;border-radius:999px!important;background:linear-gradient(90deg,#00e5ff,#00d4a3)!important;color:#020617!important;font-weight:950!important;cursor:pointer!important;transition:.25s ease!important;box-shadow:0 16px 42px rgba(0,229,255,.16)!important}
.tfr-global-newsletter-form button:hover,
.newsletter-form button:hover{transform:translateY(-3px)!important;box-shadow:0 22px 55px rgba(0,229,255,.28)!important}
.tfr-global-privacy,
.newsletter-privacy{margin-top:12px!important;color:rgba(255,255,255,.48)!important;font-size:.88rem!important;line-height:1.6!important}

.tfr-footer-bottom{
  width:100%!important;
  max-width:1500px!important;
  margin:28px auto 0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:20px!important;
  padding-top:22px!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
}
.tfr-global-footer-note,
.footer-note{max-width:980px!important;margin:0!important;color:rgba(255,255,255,.52)!important;line-height:1.65!important;font-size:.94rem!important;text-align:left!important}
.footer-keolis .footer-note{margin:24px auto 0!important;text-align:center!important}
.tfr-footer-badge{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:38px!important;padding:0 14px!important;border-radius:999px!important;background:rgba(0,229,255,.10)!important;border:1px solid rgba(0,229,255,.24)!important;color:#00e5ff!important;font-weight:950!important;white-space:nowrap!important}

@keyframes tfrFooterTitle{0%,100%{background-position:0 50%}50%{background-position:100% 50%}}

@media(max-width:1020px){
  .tfr-footer-top-card{grid-template-columns:1fr!important;text-align:center!important}
  .tfr-footer-brand-block{grid-template-columns:1fr!important;justify-items:center!important;text-align:center!important}
  .tfr-global-footer-title,.tfr-global-footer-subtitle{text-align:center!important}
  .tfr-footer-quicklinks{justify-content:center!important}
  .tfr-global-values-grid,.keolis-values-grid{grid-template-columns:1fr!important}
  .tfr-global-newsletter,.newsletter-footer{grid-template-columns:1fr!important;text-align:center!important}
  .tfr-global-newsletter-form,.newsletter-form{max-width:680px!important;margin:0 auto!important}
  .tfr-footer-bottom{flex-direction:column!important;text-align:center!important}
  .tfr-global-footer-note{text-align:center!important}
}
@media(max-width:620px){
  .tfr-global-footer.tfr-footer-v37,.footer-keolis{padding:72px 16px 28px!important}
  .tfr-footer-top-card,.tfr-global-value-card,.keolis-value-card,.tfr-global-newsletter,.newsletter-footer{padding:22px!important;border-radius:24px!important}
  .tfr-global-footer-logo,.footer-logo{width:175px!important}
  .tfr-footer-quicklinks a{width:100%!important;justify-content:center!important}
  .tfr-global-value-card,.keolis-value-card{grid-template-columns:1fr!important;text-align:center!important;justify-items:center!important}
  .tfr-global-newsletter-form,.newsletter-form{flex-direction:column!important}
  .tfr-global-newsletter-form button,.newsletter-form button{width:100%!important}
}


/* =========================
V38 — Tableau de bord ambassadeur lisible
========================= */
.tfr-ambassadeur-v38{
  --amb-bg:#020617;
  --amb-card:#071028;
  --amb-card2:#0b1734;
  --amb-line:rgba(255,255,255,.10);
  --amb-text:#ffffff;
  --amb-muted:rgba(255,255,255,.67);
  --amb-cyan:#00e5ff;
  --amb-green:#00d4a3;
  position:relative!important;
  overflow:hidden!important;
  padding:0!important;
  margin:18px auto!important;
  max-width:1500px!important;
  border-radius:36px!important;
  color:var(--amb-text)!important;
  background:
    radial-gradient(circle at 0% 0%,rgba(0,229,255,.18),transparent 32%),
    radial-gradient(circle at 100% 25%,rgba(0,212,163,.12),transparent 30%),
    linear-gradient(180deg,#06112b 0%,#020617 100%)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 34px 100px rgba(0,0,0,.45),0 0 54px rgba(0,229,255,.10)!important;
}
.tfr-ambassadeur-v38 *{box-sizing:border-box!important}
.tfr-ambassadeur-v38::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  pointer-events:none!important;
  background-image:linear-gradient(rgba(0,229,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,229,255,.035) 1px,transparent 1px)!important;
  background-size:72px 72px!important;
  opacity:.65!important;
}
.tfr-amb38-hero,.tfr-amb38-stats,.tfr-amb38-layout{position:relative!important;z-index:1!important}
.tfr-amb38-hero{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 360px!important;
  gap:24px!important;
  align-items:stretch!important;
  padding:34px!important;
  border-bottom:1px solid var(--amb-line)!important;
}
.tfr-amb38-eyebrow{
  display:inline-flex!important;
  width:max-content!important;
  max-width:100%!important;
  margin-bottom:14px!important;
  padding:9px 14px!important;
  border-radius:999px!important;
  color:var(--amb-cyan)!important;
  background:rgba(0,229,255,.10)!important;
  border:1px solid rgba(0,229,255,.24)!important;
  text-transform:uppercase!important;
  letter-spacing:.12em!important;
  font-size:.76rem!important;
  font-weight:950!important;
}
.tfr-amb38-hero h2{
  margin:0 0 12px!important;
  font-family:Orbitron,Inter,sans-serif!important;
  font-size:clamp(2.1rem,4.4vw,4.2rem)!important;
  line-height:1.02!important;
  color:#fff!important;
  letter-spacing:-.04em!important;
  background:linear-gradient(90deg,#fff,var(--amb-cyan))!important;
  -webkit-background-clip:text!important;
  -webkit-text-fill-color:transparent!important;
}
.tfr-amb38-hero p{max-width:800px!important;margin:0!important;color:var(--amb-muted)!important;line-height:1.75!important;font-weight:750!important;font-size:1.02rem!important}
.tfr-amb38-workflow{display:flex!important;flex-wrap:wrap!important;gap:10px!important;margin-top:22px!important}
.tfr-amb38-workflow span{display:inline-flex!important;align-items:center!important;gap:9px!important;padding:10px 13px!important;border-radius:999px!important;background:rgba(255,255,255,.055)!important;border:1px solid rgba(255,255,255,.10)!important;color:#fff!important;font-weight:850!important;font-size:.9rem!important}
.tfr-amb38-workflow b{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:25px!important;height:25px!important;border-radius:50%!important;background:linear-gradient(90deg,var(--amb-cyan),var(--amb-green))!important;color:#020617!important;font-weight:950!important}
.tfr-amb38-hero-card{
  display:flex!important;
  gap:18px!important;
  align-items:center!important;
  padding:24px!important;
  min-height:180px!important;
  border-radius:30px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035))!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 22px 60px rgba(0,0,0,.28)!important;
}
.tfr-amb38-hero-card img{width:78px!important;height:78px!important;filter:drop-shadow(0 0 22px rgba(0,229,255,.45))!important}
.tfr-amb38-hero-card span{display:block!important;margin-bottom:8px!important;color:var(--amb-muted)!important;font-weight:900!important;text-transform:uppercase!important;letter-spacing:.10em!important;font-size:.72rem!important}
.tfr-amb38-hero-card strong{display:block!important;margin-bottom:5px!important;color:#fff!important;font-size:1.55rem!important;line-height:1.1!important}
.tfr-amb38-hero-card small{display:block!important;color:var(--amb-cyan)!important;font-weight:850!important;line-height:1.4!important}
.tfr-amb38-stats{
  display:grid!important;
  grid-template-columns:repeat(4,1fr)!important;
  gap:14px!important;
  padding:20px 34px!important;
  border-bottom:1px solid var(--amb-line)!important;
}
.tfr-amb38-stat{
  display:grid!important;
  grid-template-columns:42px 1fr!important;
  gap:6px 12px!important;
  align-items:center!important;
  text-align:left!important;
  min-height:86px!important;
  padding:15px!important;
  border-radius:22px!important;
  color:#fff!important;
  background:rgba(255,255,255,.045)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  cursor:pointer!important;
  transition:.22s ease!important;
}
.tfr-amb38-stat span{grid-row:1/3!important;display:flex!important;align-items:center!important;justify-content:center!important;width:42px!important;height:42px!important;border-radius:15px!important;background:rgba(0,229,255,.10)!important;font-size:1.35rem!important}
.tfr-amb38-stat strong{display:block!important;color:#fff!important;font-size:.98rem!important;margin:0!important}
.tfr-amb38-stat em{display:block!important;color:var(--amb-muted)!important;font-style:normal!important;font-weight:800!important;font-size:.82rem!important}
.tfr-amb38-stat:hover,.tfr-amb38-stat.active{transform:translateY(-3px)!important;border-color:rgba(0,229,255,.42)!important;background:linear-gradient(90deg,rgba(0,229,255,.16),rgba(0,212,163,.06))!important;box-shadow:0 18px 45px rgba(0,229,255,.10)!important}
.tfr-amb38-layout{
  display:grid!important;
  grid-template-columns:280px minmax(0,1fr)!important;
  gap:24px!important;
  padding:28px 34px 34px!important;
}
.tfr-amb38-sidebar{
  position:sticky!important;
  top:112px!important;
  align-self:start!important;
  display:grid!important;
  gap:10px!important;
  padding:16px!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.045)!important;
  border:1px solid rgba(255,255,255,.10)!important;
}
.tfr-amb38-sidebar-title{padding:6px 7px!important;color:var(--amb-cyan)!important;font-size:.76rem!important;font-weight:950!important;text-transform:uppercase!important;letter-spacing:.12em!important}
.tfr-amb38-nav{
  display:grid!important;
  grid-template-columns:40px 1fr!important;
  gap:2px 12px!important;
  align-items:center!important;
  text-align:left!important;
  min-height:68px!important;
  padding:12px!important;
  border-radius:20px!important;
  color:#fff!important;
  background:transparent!important;
  border:1px solid transparent!important;
  cursor:pointer!important;
  transition:.2s ease!important;
}
.tfr-amb38-nav span{grid-row:1/3!important;display:flex!important;align-items:center!important;justify-content:center!important;width:40px!important;height:40px!important;border-radius:14px!important;background:rgba(255,255,255,.06)!important;font-size:1.18rem!important}
.tfr-amb38-nav strong{display:block!important;margin:0!important;color:#fff!important;font-size:.96rem!important;line-height:1.15!important}
.tfr-amb38-nav small{display:block!important;margin:2px 0 0!important;color:var(--amb-muted)!important;font-weight:750!important;line-height:1.25!important}
.tfr-amb38-nav:hover,.tfr-amb38-nav.active{background:rgba(0,229,255,.10)!important;border-color:rgba(0,229,255,.26)!important;transform:none!important}
.tfr-amb38-main{min-width:0!important}
.tfr-ambassadeur-v38 .tfr-ambassadeur-panels{padding:0!important}
.tfr-ambassadeur-v38 .tfr-ambassadeur-panels [data-tfr-panel]{display:none!important}
.tfr-ambassadeur-v38 .tfr-ambassadeur-panels [data-tfr-panel].active{display:block!important;animation:tfrPanelIn .28s ease both!important}
.tfr-amb38-panel-head{
  display:flex!important;
  align-items:flex-start!important;
  gap:15px!important;
  margin:0 0 16px!important;
  padding:18px!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.05)!important;
  border:1px solid rgba(255,255,255,.10)!important;
}
.tfr-amb38-panel-head>span{display:flex!important;align-items:center!important;justify-content:center!important;width:46px!important;height:46px!important;border-radius:16px!important;background:linear-gradient(135deg,rgba(0,229,255,.18),rgba(0,212,163,.08))!important;font-size:1.4rem!important;flex:0 0 auto!important}
.tfr-amb38-panel-head h3{margin:0 0 5px!important;color:#fff!important;font-size:1.35rem!important;line-height:1.15!important}
.tfr-amb38-panel-head p{margin:0!important;color:var(--amb-muted)!important;line-height:1.55!important;font-weight:750!important}
.tfr-ambassadeur-v38 .tfr-card:not(.tfr-ambassadeur-v38){
  margin:0 0 18px!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,rgba(7,16,40,.94),rgba(3,9,27,.98))!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 22px 60px rgba(0,0,0,.26)!important;
}
.tfr-ambassadeur-v38 .tfr-card:not(.tfr-ambassadeur-v38) h2,
.tfr-ambassadeur-v38 .tfr-card:not(.tfr-ambassadeur-v38) h3,
.tfr-ambassadeur-v38 .tfr-card:not(.tfr-ambassadeur-v38) h4,
.tfr-ambassadeur-v38 .tfr-card:not(.tfr-ambassadeur-v38) label,
.tfr-ambassadeur-v38 .tfr-card:not(.tfr-ambassadeur-v38) strong{color:#fff!important}
.tfr-ambassadeur-v38 .tfr-card:not(.tfr-ambassadeur-v38) p,
.tfr-ambassadeur-v38 .tfr-card:not(.tfr-ambassadeur-v38) small,
.tfr-ambassadeur-v38 .tfr-card:not(.tfr-ambassadeur-v38) span{color:rgba(255,255,255,.72)!important}
.tfr-ambassadeur-v38 input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.tfr-ambassadeur-v38 textarea,
.tfr-ambassadeur-v38 select{
  min-height:52px!important;
  border-radius:16px!important;
  border:1px solid rgba(0,229,255,.24)!important;
  background:#06112b!important;
  color:#fff!important;
  font-weight:750!important;
}
.tfr-ambassadeur-v38 textarea{line-height:1.55!important}
.tfr-ambassadeur-v38 .tfr-btn{
  border-radius:999px!important;
  background:linear-gradient(90deg,var(--amb-cyan),var(--amb-green))!important;
  color:#020617!important;
  font-weight:950!important;
  box-shadow:0 18px 45px rgba(0,229,255,.14)!important;
}
.tfr-ambassadeur-v38 .tfr-form-grid{gap:16px!important}
.tfr-ambassadeur-v38 .tfr-form-grid>div,
.tfr-ambassadeur-v38 .tfr-tile,
.tfr-ambassadeur-v38 .tfr-event-card,
.tfr-ambassadeur-v38 .tfr-traffic-card{
  border-radius:20px!important;
  background:rgba(255,255,255,.045)!important;
  border:1px solid rgba(255,255,255,.10)!important;
}
.tfr-ambassadeur-v38 .tfr-section-hero.compact{display:none!important}
.tfr-ambassadeur-v38 .tfr-editor-toolbar{grid-template-columns:1fr!important;margin:0 0 14px!important}
.tfr-ambassadeur-v38 .tfr-editor-help{display:none!important}
.tfr-ambassadeur-v38 .tfr-field-group{border-radius:20px!important;background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.10)!important;margin-bottom:12px!important}
.tfr-ambassadeur-v38 .tfr-field-group summary{padding:16px 18px!important;color:#fff!important;font-weight:950!important}
.tfr-ambassadeur-v38 .tfr-field-list{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))!important;padding:0 14px 14px!important}
.tfr-ambassadeur-v38 .tfr-edit-field{padding:14px!important;border-radius:16px!important;background:rgba(255,255,255,.035)!important}
.tfr-amb38-ideas{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;gap:16px!important}
.tfr-amb38-ideas article{display:grid!important;gap:8px!important;padding:18px!important;border-radius:22px!important;background:rgba(255,255,255,.05)!important;border:1px solid rgba(255,255,255,.10)!important}
.tfr-amb38-ideas strong{color:#fff!important;font-size:1.02rem!important}
.tfr-amb38-ideas span{color:var(--amb-muted)!important;line-height:1.55!important;font-weight:750!important}
@media(max-width:1100px){
  .tfr-amb38-hero{grid-template-columns:1fr!important}
  .tfr-amb38-stats{grid-template-columns:repeat(2,1fr)!important}
  .tfr-amb38-layout{grid-template-columns:1fr!important}
  .tfr-amb38-sidebar{position:relative!important;top:auto!important;grid-template-columns:repeat(2,1fr)!important}
  .tfr-amb38-sidebar-title{grid-column:1/-1!important}
}
@media(max-width:700px){
  .tfr-ambassadeur-v38{border-radius:24px!important;margin:12px 0!important}
  .tfr-amb38-hero,.tfr-amb38-stats,.tfr-amb38-layout{padding-left:18px!important;padding-right:18px!important}
  .tfr-amb38-stats,.tfr-amb38-sidebar{grid-template-columns:1fr!important}
  .tfr-amb38-hero-card{min-height:0!important;align-items:flex-start!important}
  .tfr-amb38-hero-card img{width:62px!important;height:62px!important}
}


/* V39 — Footer supprimé partout */
.tfr-global-footer,
.footer-keolis,
#tfr-global-footer,
#keolis-values{display:none!important;visibility:hidden!important;height:0!important;min-height:0!important;padding:0!important;margin:0!important;overflow:hidden!important;}

/* V40 — Tableau ambassadeur simplifié */
.tfr-ambassadeur-v40 .tfr-amb40-tools{
  display:grid!important;
  grid-template-columns:repeat(4,1fr)!important;
  gap:14px!important;
  padding:0 34px 24px!important;
  border-bottom:1px solid var(--amb-line)!important;
}
.tfr-ambassadeur-v40 .tfr-amb40-tools button,
.tfr-ambassadeur-v40 .tfr-amb40-preset,
.tfr-ambassadeur-v40 .tfr-amb40-quick-form button{
  display:grid!important;
  grid-template-columns:48px 1fr!important;
  gap:3px 13px!important;
  align-items:center!important;
  text-align:left!important;
  width:100%!important;
  min-height:92px!important;
  padding:18px!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.05)!important;
  border:1px solid rgba(255,255,255,.11)!important;
  color:#fff!important;
  cursor:pointer!important;
  transition:.22s ease!important;
}
.tfr-ambassadeur-v40 .tfr-amb40-tools button:hover,
.tfr-ambassadeur-v40 .tfr-amb40-tools button.active,
.tfr-ambassadeur-v40 .tfr-amb40-preset:hover,
.tfr-ambassadeur-v40 .tfr-amb40-quick-form button:hover{
  transform:translateY(-3px)!important;
  border-color:rgba(0,229,255,.38)!important;
  background:linear-gradient(90deg,rgba(0,229,255,.16),rgba(0,212,163,.07))!important;
  box-shadow:0 20px 52px rgba(0,229,255,.10)!important;
}
.tfr-ambassadeur-v40 .tfr-amb40-tools span,
.tfr-ambassadeur-v40 .tfr-amb40-preset span,
.tfr-ambassadeur-v40 .tfr-amb40-quick-form button span{
  grid-row:1/3!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:48px!important;
  height:48px!important;
  border-radius:17px!important;
  background:rgba(0,229,255,.12)!important;
  font-size:1.45rem!important;
}
.tfr-ambassadeur-v40 .tfr-amb40-tools strong,
.tfr-ambassadeur-v40 .tfr-amb40-preset strong,
.tfr-ambassadeur-v40 .tfr-amb40-quick-form button strong{display:block!important;color:#fff!important;margin:0!important;font-size:1rem!important;line-height:1.15!important}
.tfr-ambassadeur-v40 .tfr-amb40-tools small,
.tfr-ambassadeur-v40 .tfr-amb40-preset small,
.tfr-ambassadeur-v40 .tfr-amb40-quick-form button small{display:block!important;color:var(--amb-muted)!important;font-weight:800!important;line-height:1.35!important}
.tfr-amb40-panel-box{padding:24px!important}
.tfr-amb40-panel-box>h3{margin:0 0 8px!important;color:#fff!important;font-size:1.4rem!important}
.tfr-amb40-panel-box>p{margin:0 0 20px!important;color:var(--amb-muted)!important;font-weight:750!important;line-height:1.6!important}
.tfr-amb40-history-list{display:grid!important;gap:12px!important}
.tfr-amb40-history-item{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:14px!important;
  align-items:center!important;
  padding:16px!important;
  border-radius:20px!important;
  background:rgba(255,255,255,.045)!important;
  border:1px solid rgba(255,255,255,.10)!important;
}
.tfr-amb40-history-item strong{display:block!important;margin:7px 0 5px!important;color:#fff!important;font-size:1rem!important}
.tfr-amb40-history-item p{margin:0 0 7px!important;color:rgba(255,255,255,.72)!important;line-height:1.45!important}
.tfr-amb40-history-item small{color:var(--amb-muted)!important;font-weight:750!important}
.tfr-amb40-tag{display:inline-flex!important;width:max-content!important;padding:6px 10px!important;border-radius:999px!important;background:rgba(0,229,255,.10)!important;border:1px solid rgba(0,229,255,.22)!important;color:var(--amb-cyan)!important;font-weight:950!important;font-size:.72rem!important;text-transform:uppercase!important;letter-spacing:.08em!important}
.tfr-amb40-secondary-btn{min-height:42px!important;padding:0 15px!important;border-radius:999px!important;border:1px solid rgba(0,229,255,.28)!important;background:rgba(0,229,255,.10)!important;color:#fff!important;font-weight:900!important;cursor:pointer!important}
.tfr-amb40-muted{color:var(--amb-muted)!important;font-weight:800!important}
.tfr-amb40-empty{padding:18px!important;border-radius:18px!important;background:rgba(255,255,255,.045)!important;color:var(--amb-muted)!important;font-weight:800!important}
.tfr-amb40-preview-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}
.tfr-amb40-preview-grid>article{min-width:0!important;padding:18px!important;border-radius:22px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.10)!important;overflow:auto!important}
.tfr-amb40-preview-grid h4{margin:0 0 14px!important;color:var(--amb-cyan)!important;font-size:1rem!important}
.tfr-amb40-mail-preview{padding:18px!important;border-radius:18px!important;background:#fff!important;color:#0f172a!important}
.tfr-amb40-mail-preview strong,.tfr-amb40-mail-preview p,.tfr-amb40-mail-preview small{color:#0f172a!important}
.tfr-amb40-preset-grid,.tfr-amb40-field-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;gap:14px!important}
.tfr-amb40-quick-form{margin:0!important}
.tfr-amb40-note{margin:16px 0 0!important;color:var(--amb-muted)!important;font-weight:800!important}
@media(max-width:1100px){.tfr-ambassadeur-v40 .tfr-amb40-tools{grid-template-columns:repeat(2,1fr)!important}}
@media(max-width:700px){.tfr-ambassadeur-v40 .tfr-amb40-tools{grid-template-columns:1fr!important;padding-left:18px!important;padding-right:18px!important}.tfr-amb40-preview-grid{grid-template-columns:1fr!important}.tfr-amb40-history-item{grid-template-columns:1fr!important}}

/* V41 — Gestion utilisateurs, autorisations et mode terrain guidé */
.tfr-front-search{display:flex!important;gap:10px!important;margin:18px 0!important;background:rgba(255,255,255,.04)!important;border:1px solid rgba(255,255,255,.10)!important;border-radius:20px!important;padding:12px!important}
.tfr-front-search input{flex:1!important;min-height:48px!important;border-radius:999px!important;background:#071028!important;color:#fff!important;border:1px solid rgba(255,255,255,.12)!important;padding:0 16px!important;font-weight:800!important}
.tfr-front-search button,.tfr-front-user-row button,.tfr-save-perms,.tfr-field-situation button{min-height:48px!important;border:0!important;border-radius:999px!important;background:linear-gradient(90deg,var(--amb-cyan,#00e5ff),var(--amb-green,#00d4a3))!important;color:#020617!important;font-weight:950!important;padding:0 18px!important;cursor:pointer!important}
.tfr-front-users-list{display:grid!important;gap:12px!important;margin-top:14px!important}
.tfr-front-user-row{display:grid!important;grid-template-columns:minmax(240px,.8fr) minmax(0,1.2fr)!important;gap:14px!important;align-items:center!important;padding:16px!important;border-radius:22px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.10)!important}
.tfr-front-user-id strong{display:block!important;color:#fff!important;font-size:1rem!important;margin-bottom:4px!important}
.tfr-front-user-id span,.tfr-front-user-id small{display:block!important;color:rgba(255,255,255,.68)!important;font-weight:750!important;line-height:1.45!important}
.tfr-front-user-row form{display:grid!important;grid-template-columns:1fr 1fr auto!important;gap:10px!important;align-items:end!important;margin:0!important;background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}
.tfr-front-user-row label,.tfr-field-situation label{display:grid!important;gap:6px!important;color:#fff!important;font-weight:900!important;font-size:.86rem!important}
.tfr-front-user-row select,.tfr-field-situation select,.tfr-field-situation input,.tfr-field-situation textarea{width:100%!important;min-height:46px!important;border-radius:15px!important;background:#071028!important;color:#fff!important;border:1px solid rgba(255,255,255,.12)!important;padding:0 14px!important;font-weight:800!important}
.tfr-field-situation textarea{min-height:92px!important;padding:12px 14px!important;resize:vertical!important}
.tfr-permissions-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))!important;gap:14px!important;margin:18px 0!important}
.tfr-permissions-grid article{padding:16px!important;border-radius:22px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.10)!important}
.tfr-permissions-grid h4{margin:0 0 4px!important;color:#fff!important;font-size:1.05rem!important}
.tfr-permissions-grid small{display:block!important;color:var(--amb-muted,rgba(255,255,255,.68))!important;margin-bottom:12px!important;font-weight:800!important}
.tfr-permissions-grid label{display:flex!important;align-items:center!important;gap:8px!important;margin:8px 0!important;color:rgba(255,255,255,.84)!important;font-weight:850!important;line-height:1.35!important}
.tfr-permissions-grid input{accent-color:var(--amb-cyan,#00e5ff)!important}
.tfr-field-situation{border-radius:24px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.11)!important;overflow:hidden!important}
.tfr-field-situation summary{list-style:none!important;cursor:pointer!important;min-height:92px!important;padding:18px!important;display:grid!important;gap:6px!important;align-content:center!important}
.tfr-field-situation summary::-webkit-details-marker{display:none!important}
.tfr-field-situation summary span{font-size:2rem!important;line-height:1!important}
.tfr-field-situation summary strong{color:#fff!important;font-size:1.08rem!important}
.tfr-field-situation summary small{color:var(--amb-muted,rgba(255,255,255,.68))!important;font-weight:800!important;line-height:1.4!important}
.tfr-field-situation[open]{border-color:rgba(0,229,255,.34)!important;box-shadow:0 0 34px rgba(0,229,255,.10)!important}
.tfr-field-situation form{display:grid!important;gap:12px!important;padding:0 18px 18px!important;background:transparent!important;border:0!important;margin:0!important;box-shadow:none!important}
@media(max-width:800px){.tfr-front-search{flex-direction:column!important}.tfr-front-user-row{grid-template-columns:1fr!important}.tfr-front-user-row form{grid-template-columns:1fr!important}.tfr-front-search button,.tfr-front-user-row button,.tfr-save-perms,.tfr-field-situation button{width:100%!important}.tfr-permissions-grid{grid-template-columns:1fr!important}}

/* V42 — Catégories masquées, création utilisateurs et rôles côté ambassadeur */
.tfr-ambassadeur-v42 .tfr-amb40-tools:empty,
.tfr-ambassadeur-v42 .tfr-amb38-stats:empty{display:none!important}
.tfr-front-create-box{
  margin:18px 0!important;
  padding:18px!important;
  border-radius:24px!important;
  background:rgba(0,229,255,.055)!important;
  border:1px solid rgba(0,229,255,.18)!important;
}
.tfr-front-create-box h4{margin:0 0 14px!important;color:#fff!important;font-size:1.08rem!important}
.tfr-front-create-box form{margin:0!important;background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important;display:grid!important;gap:12px!important}
.tfr-front-create-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;gap:12px!important}
.tfr-front-create-box label,.tfr-front-perm-mini label,.tfr-front-check{color:#fff!important;font-weight:900!important;font-size:.86rem!important;line-height:1.35!important}
.tfr-front-create-box input,.tfr-front-create-box select{
  width:100%!important;
  min-height:48px!important;
  margin-top:6px!important;
  border-radius:16px!important;
  background:#071028!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.13)!important;
  padding:0 14px!important;
  font-weight:850!important;
}
.tfr-front-create-box input[type="color"]{padding:6px!important}
.tfr-front-create-box button,.tfr-front-role-row button{
  width:max-content!important;
  min-height:48px!important;
  border:0!important;
  border-radius:999px!important;
  padding:0 18px!important;
  background:linear-gradient(90deg,var(--amb-cyan,#00e5ff),var(--amb-green,#00d4a3))!important;
  color:#020617!important;
  font-weight:950!important;
  cursor:pointer!important;
}
.tfr-front-check{display:flex!important;gap:9px!important;align-items:center!important;color:rgba(255,255,255,.82)!important}
.tfr-front-perm-mini{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;gap:8px 14px!important;margin-top:6px!important;padding:14px!important;border-radius:18px!important;background:rgba(255,255,255,.04)!important;border:1px solid rgba(255,255,255,.10)!important}
.tfr-front-perm-mini strong{grid-column:1/-1!important;color:var(--amb-cyan,#00e5ff)!important;margin-bottom:4px!important}
.tfr-front-perm-mini label{display:flex!important;gap:8px!important;align-items:center!important;color:rgba(255,255,255,.84)!important}
.tfr-front-roles-list{display:grid!important;gap:12px!important;margin-top:16px!important}
.tfr-front-role-row{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:14px!important;align-items:center!important;padding:16px!important;border-radius:22px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.10)!important}
.tfr-front-role-row strong{display:block!important;color:#fff!important;font-size:1rem!important;margin-bottom:3px!important}
.tfr-front-role-row small,.tfr-front-role-row p{display:block!important;color:rgba(255,255,255,.66)!important;margin:3px 0 0!important;font-weight:800!important}
.tfr-front-role-row form{margin:0!important;background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}
.tfr-danger-btn{background:rgba(255,77,77,.14)!important;color:#fff!important;border:1px solid rgba(255,77,77,.35)!important}
.tfr-instant-message{margin:0 0 14px!important;padding:14px 16px!important;border-radius:18px!important;background:rgba(0,212,163,.12)!important;border:1px solid rgba(0,212,163,.28)!important;color:#fff!important;font-weight:900!important;line-height:1.55!important}
.tfr-instant-message.tfr-instant-error{background:rgba(255,77,77,.12)!important;border-color:rgba(255,77,77,.32)!important}
@media(max-width:800px){.tfr-front-create-grid,.tfr-front-perm-mini{grid-template-columns:1fr!important}.tfr-front-role-row{grid-template-columns:1fr!important}.tfr-front-create-box button,.tfr-front-role-row button{width:100%!important}}

/* V43 — Espace ambassadeur plus clean + configuration */
.tfr-ambassadeur-v43{
  --amb-panel:rgba(2,8,25,.72);
  --amb-panel-2:rgba(7,16,40,.82);
  overflow:hidden!important;
  border-radius:34px!important;
}
.tfr-ambassadeur-v43 .tfr-amb38-hero{
  border-radius:30px!important;
  background:
    radial-gradient(circle at 10% 0%,rgba(0,229,255,.22),transparent 34%),
    radial-gradient(circle at 90% 10%,rgba(0,212,163,.13),transparent 32%),
    linear-gradient(135deg,rgba(7,16,40,.96),rgba(2,8,25,.98))!important;
  border:1px solid rgba(255,255,255,.13)!important;
}
.tfr-ambassadeur-v43 .tfr-amb38-hero h2{letter-spacing:-.035em!important}
.tfr-amb43-rolebar{
  width:max-content!important;
  max-width:100%!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  margin-top:18px!important;
  padding:9px 13px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.11)!important;
}
.tfr-amb43-rolebar span{color:var(--amb-muted,rgba(255,255,255,.68))!important;font-weight:900!important;font-size:.76rem!important;text-transform:uppercase!important;letter-spacing:.1em!important}
.tfr-amb43-rolebar strong{color:#fff!important;font-weight:950!important}
.tfr-ambassadeur-v43 .tfr-amb38-stats,
.tfr-ambassadeur-v43 .tfr-amb40-tools{
  gap:14px!important;
}
.tfr-ambassadeur-v43 .tfr-amb38-stat,
.tfr-ambassadeur-v43 .tfr-amb40-tools button,
.tfr-ambassadeur-v43 .tfr-amb38-nav{
  border-radius:20px!important;
  background:rgba(255,255,255,.045)!important;
}
.tfr-ambassadeur-v43 .tfr-amb38-stat.active,
.tfr-ambassadeur-v43 .tfr-amb40-tools button.active,
.tfr-ambassadeur-v43 .tfr-amb38-nav.active{
  background:linear-gradient(135deg,rgba(0,229,255,.16),rgba(0,212,163,.075))!important;
  border-color:rgba(0,229,255,.32)!important;
}
.tfr-ambassadeur-v43 .tfr-amb38-layout{
  align-items:start!important;
}
.tfr-ambassadeur-v43 .tfr-amb38-sidebar,
.tfr-ambassadeur-v43 .tfr-amb38-main > section.active{
  background:rgba(2,8,25,.44)!important;
  border:1px solid rgba(255,255,255,.10)!important;
  border-radius:28px!important;
  box-shadow:0 24px 80px rgba(0,0,0,.24)!important;
}
.tfr-ambassadeur-v43 .tfr-amb38-main > section.active{
  padding:18px!important;
}
.tfr-ambassadeur-compact .tfr-amb38-hero,
.tfr-ambassadeur-compact .tfr-amb38-stats,
.tfr-ambassadeur-compact .tfr-amb40-tools,
.tfr-ambassadeur-compact .tfr-amb38-layout{
  padding-left:18px!important;
  padding-right:18px!important;
}
.tfr-ambassadeur-compact .tfr-amb38-hero{padding-top:22px!important;padding-bottom:22px!important}
.tfr-ambassadeur-compact .tfr-amb38-workflow{display:none!important}
.tfr-front-config form{display:grid!important;gap:18px!important;margin:0!important;background:transparent!important;border:0!important;padding:0!important;box-shadow:none!important}
.tfr-config-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;gap:14px!important}
.tfr-config-wide{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important}
.tfr-front-config label{display:grid!important;gap:7px!important;color:#fff!important;font-weight:900!important;font-size:.88rem!important;line-height:1.35!important}
.tfr-front-config input,
.tfr-front-config select,
.tfr-front-config textarea{
  width:100%!important;
  min-height:48px!important;
  border-radius:16px!important;
  background:#071028!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.13)!important;
  padding:0 14px!important;
  font-weight:850!important;
}
.tfr-front-config textarea{min-height:120px!important;padding:12px 14px!important;resize:vertical!important;font-family:inherit!important}
.tfr-front-config small{color:var(--amb-muted,rgba(255,255,255,.68))!important;font-weight:750!important;line-height:1.45!important}
.tfr-config-checks{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(230px,1fr))!important;gap:10px!important;padding:14px!important;border-radius:20px!important;background:rgba(255,255,255,.04)!important;border:1px solid rgba(255,255,255,.10)!important}
.tfr-config-checks label{display:flex!important;align-items:center!important;gap:9px!important;color:rgba(255,255,255,.84)!important}
.tfr-config-checks input,.tfr-front-config input[type="checkbox"]{accent-color:var(--amb-cyan,#00e5ff)!important;width:auto!important;min-height:0!important}
.tfr-role-cleaner{
  margin:18px 0!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:14px!important;
  align-items:center!important;
  padding:16px!important;
  border-radius:22px!important;
  background:rgba(255,204,51,.075)!important;
  border:1px solid rgba(255,204,51,.22)!important;
  box-shadow:none!important;
}
.tfr-role-cleaner strong{display:block!important;color:#fff!important;margin-bottom:4px!important}
.tfr-role-cleaner span{display:block!important;color:rgba(255,255,255,.72)!important;font-weight:800!important;line-height:1.45!important}
.tfr-role-cleaner button{min-height:46px!important;border:0!important;border-radius:999px!important;padding:0 18px!important;background:linear-gradient(90deg,#ffcc33,#00e5ff)!important;color:#020617!important;font-weight:950!important;cursor:pointer!important}
@media(max-width:900px){
  .tfr-ambassadeur-v43 .tfr-amb38-main > section.active{padding:12px!important}
  .tfr-role-cleaner{grid-template-columns:1fr!important}
  .tfr-role-cleaner button{width:100%!important}
}

/* =========================
V45 — Panel ambassadeur clean + mobile
========================= */
.tfr-login-required{max-width:760px!important;margin:40px auto!important;text-align:center!important;padding:34px!important;border-radius:28px!important;background:linear-gradient(180deg,rgba(5,15,40,.96),rgba(2,8,25,.99))!important;border:1px solid rgba(255,255,255,.12)!important;box-shadow:0 28px 80px rgba(0,0,0,.34)!important}
.tfr-login-required h2{margin:0 0 10px!important;color:#fff!important;font-size:2rem!important}
.tfr-login-required p{margin:0 0 22px!important;color:rgba(255,255,255,.7)!important;font-weight:750!important;line-height:1.6!important}
.tfr-login-required-actions{display:flex!important;gap:12px!important;justify-content:center!important;flex-wrap:wrap!important}
.tfr-btn-secondary{background:rgba(255,255,255,.08)!important;color:#fff!important;border:1px solid rgba(255,255,255,.14)!important}

.tfr-ambassadeur-v45{--amb-bg:#020617;--amb-card:rgba(255,255,255,.055);--amb-line:rgba(255,255,255,.11);--amb-cyan:#00e5ff;--amb-green:#00d4a3;--amb-muted:rgba(255,255,255,.66)}
.tfr-ambassadeur-v45 .tfr-amb38-hero{padding:26px!important;border-radius:28px!important;display:grid!important;grid-template-columns:1fr auto!important;gap:18px!important;align-items:center!important}
.tfr-ambassadeur-v45 .tfr-amb38-eyebrow{font-size:.72rem!important;letter-spacing:.14em!important}
.tfr-ambassadeur-v45 .tfr-amb38-hero h2{font-size:clamp(1.8rem,4vw,3.1rem)!important;line-height:1.05!important;margin:8px 0!important}
.tfr-ambassadeur-v45 .tfr-amb38-hero p{max-width:760px!important;margin:0!important;color:var(--amb-muted)!important;line-height:1.55!important}
.tfr-ambassadeur-v45 .tfr-amb38-workflow{display:none!important}
.tfr-ambassadeur-v45 .tfr-amb43-rolebar{margin-top:14px!important;width:max-content!important;max-width:100%!important}
.tfr-ambassadeur-v45 .tfr-amb38-stats{grid-template-columns:repeat(auto-fit,minmax(165px,1fr))!important;padding:16px!important;gap:10px!important}
.tfr-ambassadeur-v45 .tfr-amb38-stat{min-height:86px!important;border-radius:20px!important;padding:14px!important;text-align:left!important}
.tfr-ambassadeur-v45 .tfr-amb38-stat span{font-size:1.45rem!important}
.tfr-ambassadeur-v45 .tfr-amb38-stat strong{font-size:.95rem!important}
.tfr-ambassadeur-v45 .tfr-amb38-stat em{font-size:.76rem!important}
.tfr-ambassadeur-v45 .tfr-amb40-tools{display:none!important}
.tfr-ambassadeur-v45 .tfr-amb38-layout{grid-template-columns:250px minmax(0,1fr)!important;gap:18px!important;padding:18px!important;border-radius:30px!important}
.tfr-ambassadeur-v45 .tfr-amb38-sidebar{position:sticky!important;top:92px!important;align-self:start!important;padding:12px!important;border-radius:24px!important;background:rgba(255,255,255,.045)!important}
.tfr-ambassadeur-v45 .tfr-amb38-sidebar-title{display:none!important}
.tfr-ambassadeur-v45 .tfr-amb38-nav{min-height:58px!important;border-radius:17px!important;padding:12px!important;grid-template-columns:34px 1fr!important;gap:10px!important;text-align:left!important}
.tfr-ambassadeur-v45 .tfr-amb38-nav span{font-size:1.25rem!important}.tfr-ambassadeur-v45 .tfr-amb38-nav strong{font-size:.95rem!important}.tfr-ambassadeur-v45 .tfr-amb38-nav small{font-size:.74rem!important}
.tfr-ambassadeur-v45 .tfr-amb38-main>section.active{padding:14px!important;border-radius:24px!important;background:rgba(255,255,255,.035)!important;border:1px solid rgba(255,255,255,.08)!important}
.tfr-ambassadeur-v45 .tfr-amb38-panel-head{margin:0 0 14px!important;padding:16px!important;border-radius:20px!important;background:rgba(0,229,255,.07)!important;border:1px solid rgba(0,229,255,.14)!important}
.tfr-ambassadeur-v45 .tfr-amb38-panel-head>span{font-size:1.7rem!important}.tfr-ambassadeur-v45 .tfr-amb38-panel-head h3{font-size:1.25rem!important;margin:0!important}.tfr-ambassadeur-v45 .tfr-amb38-panel-head p{margin:4px 0 0!important;color:var(--amb-muted)!important;line-height:1.4!important}
.tfr-v45-stack{display:grid!important;gap:16px!important}.tfr-v45-block{display:grid!important;gap:12px!important}.tfr-v45-block>h3{margin:0!important;color:#fff!important;font-size:1.25rem!important}.tfr-v45-admin-page{display:grid!important;gap:16px!important}.tfr-v45-admin-head{padding:22px!important;border-radius:24px!important;background:linear-gradient(135deg,rgba(0,229,255,.12),rgba(0,212,163,.08))!important;border:1px solid rgba(0,229,255,.18)!important}.tfr-v45-admin-head h3{margin:0 0 6px!important;color:#fff!important;font-size:1.6rem!important}.tfr-v45-admin-head p{margin:0!important;color:var(--amb-muted)!important}.tfr-v45-admin-section{display:grid!important;gap:12px!important}.tfr-v45-admin-section>h4{margin:0!important;color:var(--amb-cyan)!important;font-size:1.1rem!important}
.tfr-v45-mail-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}.tfr-v45-mail-grid section{padding:18px!important;border-radius:22px!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(255,255,255,.10)!important}.tfr-v45-mail-grid h4{margin:0 0 14px!important;color:var(--amb-cyan)!important}.tfr-v45-mail-grid label{display:grid!important;gap:7px!important;color:#fff!important;font-weight:900!important;margin-bottom:12px!important}.tfr-v45-mail-grid input,.tfr-v45-mail-grid textarea{width:100%!important;border-radius:15px!important;border:1px solid rgba(255,255,255,.12)!important;background:#071028!important;color:#fff!important;padding:12px 14px!important;font-weight:800!important}.tfr-v45-mail-grid textarea{min-height:130px!important;resize:vertical!important}.tfr-v45-vars{margin:12px 0 18px!important;color:var(--amb-muted)!important;line-height:1.55!important}.tfr-v45-phone-note p{color:var(--amb-muted)!important;line-height:1.6!important;margin:0 0 12px!important}
.tfr-ambassadeur-v45 .tfr-front-create-grid,.tfr-ambassadeur-v45 .tfr-config-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important}.tfr-ambassadeur-v45 .tfr-front-user-row{border-radius:20px!important}.tfr-ambassadeur-v45 .tfr-front-user-id small{display:block!important;color:var(--amb-muted)!important;margin-top:4px!important}

@media(max-width:980px){
  .tfr-ambassadeur-v45{border-radius:0!important;margin-left:-12px!important;margin-right:-12px!important;padding:0!important}
  .tfr-ambassadeur-v45 .tfr-amb38-hero{grid-template-columns:1fr!important;margin:0!important;border-radius:0 0 26px 26px!important;padding:22px 16px!important}
  .tfr-ambassadeur-v45 .tfr-amb38-hero-card{width:100%!important}
  .tfr-ambassadeur-v45 .tfr-amb38-stats{display:flex!important;overflow-x:auto!important;gap:10px!important;padding:14px 12px!important;scroll-snap-type:x mandatory!important}
  .tfr-ambassadeur-v45 .tfr-amb38-stat{min-width:150px!important;scroll-snap-align:start!important}
  .tfr-ambassadeur-v45 .tfr-amb38-layout{display:block!important;padding:12px!important;border-radius:0!important;background:transparent!important}
  .tfr-ambassadeur-v45 .tfr-amb38-sidebar{position:sticky!important;top:0!important;z-index:50!important;display:flex!important;overflow-x:auto!important;gap:8px!important;margin:0 -12px 12px!important;padding:10px 12px!important;border-radius:0!important;background:rgba(2,6,23,.96)!important;backdrop-filter:blur(18px)!important;border-left:0!important;border-right:0!important}
  .tfr-ambassadeur-v45 .tfr-amb38-nav{min-width:max-content!important;grid-template-columns:auto auto!important;min-height:44px!important;border-radius:999px!important;padding:0 13px!important}.tfr-ambassadeur-v45 .tfr-amb38-nav small{display:none!important}.tfr-ambassadeur-v45 .tfr-amb38-nav span{font-size:1.05rem!important}.tfr-ambassadeur-v45 .tfr-amb38-main>section.active{padding:10px!important;border-radius:22px!important}
  .tfr-v45-mail-grid{grid-template-columns:1fr!important}.tfr-v45-admin-head{padding:18px!important}.tfr-login-required{margin:20px 12px!important;padding:24px!important}.tfr-login-required-actions{display:grid!important}.tfr-login-required-actions a{width:100%!important}
}
@media(max-width:600px){
  .tfr-ambassadeur-v45 .tfr-amb38-stats{grid-template-columns:none!important}.tfr-ambassadeur-v45 .tfr-amb38-panel-head{grid-template-columns:1fr!important;text-align:left!important}.tfr-ambassadeur-v45 .tfr-route-grid,.tfr-ambassadeur-v45 .tfr-separated-panels{grid-template-columns:1fr!important}.tfr-ambassadeur-v45 input,.tfr-ambassadeur-v45 select,.tfr-ambassadeur-v45 textarea{font-size:16px!important}.tfr-v45-mail-grid section{padding:14px!important;border-radius:18px!important}
}
