/*
 * BONJOUR UI CONTRACT 1.20.93
 * En-têtes de pages + Retour canonique.
 * Cette feuille est volontairement chargée EN DERNIER : elle constitue le contrat
 * géométrique et ne doit plus être dupliquée dans styles.css/productivity.css.
 */
:root{
  --bonjour-ui-surface-top:24px;
  --bonjour-ui-return-top:18px;
  --bonjour-ui-return-right:18px;
  --bonjour-ui-return-width:96px;
  --bonjour-ui-return-height:40px;
  --bonjour-ui-return-reserve:124px;
}
@media(max-width:720px){
  :root{
    --bonjour-ui-surface-top:22px;
    --bonjour-ui-return-top:16px;
    --bonjour-ui-return-right:16px;
    --bonjour-ui-return-width:92px;
    --bonjour-ui-return-height:38px;
    --bonjour-ui-return-reserve:120px;
  }
}
@media(max-width:390px){
  :root{
    --bonjour-ui-surface-top:20px;
    --bonjour-ui-return-top:14px;
    --bonjour-ui-return-right:14px;
    --bonjour-ui-return-width:88px;
    --bonjour-ui-return-height:36px;
    --bonjour-ui-return-reserve:112px;
  }
}

/* Le repère du Retour est TOUJOURS la carte/surface de page, jamais un header interne. */
.bonjour-ui-page-surface{
  position:relative!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

/* Surfaces possédant leur propre padding : même respiration haute partout. */
.regions-card.bonjour-ui-page-surface,
.network-card.bonjour-ui-page-surface,
.streaming-shell.bonjour-ui-page-surface,
.transfer-main-card.bonjour-ui-page-surface,
.contact-card-form.bonjour-ui-page-surface,
.join-card.bonjour-ui-page-surface,
.lobby-card.bonjour-ui-page-surface,
.invite-modal.bonjour-ui-page-surface,
.admin-room-modal.bonjour-ui-page-surface,
.schedule-meeting-modal.bonjour-ui-page-surface,
.availability-modal.bonjour-ui-page-surface,
.windows-download-modal.bonjour-ui-page-surface,
.my-bonjour-modal.bonjour-ui-page-surface,
.contribution-modal.bonjour-ui-page-surface,
.whats-new-modal.bonjour-ui-page-surface{
  padding-top:var(--bonjour-ui-surface-top)!important;
}

/* Le bouton lui-même : un seul format, un seul repère, un seul libellé. */
button.bonjour-ui-return,
.bonjour-ui-return{
  position:absolute!important;
  inset:auto var(--bonjour-ui-return-right) auto auto!important;
  top:var(--bonjour-ui-return-top)!important;
  left:auto!important;
  right:var(--bonjour-ui-return-right)!important;
  bottom:auto!important;
  z-index:120!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:var(--bonjour-ui-return-width)!important;
  min-width:var(--bonjour-ui-return-width)!important;
  max-width:var(--bonjour-ui-return-width)!important;
  height:var(--bonjour-ui-return-height)!important;
  min-height:var(--bonjour-ui-return-height)!important;
  max-height:var(--bonjour-ui-return-height)!important;
  margin:0!important;
  padding:0 10px!important;
  transform:none!important;
  border:1px solid rgba(151,202,191,.18)!important;
  border-radius:10px!important;
  background:rgba(8,49,42,.92)!important;
  color:#eef5f2!important;
  font-family:Roboto,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1!important;
  letter-spacing:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  box-shadow:0 8px 22px rgba(0,0,0,.12)!important;
  backdrop-filter:blur(12px)!important;
  -webkit-backdrop-filter:blur(12px)!important;
}
button.bonjour-ui-return:hover,.bonjour-ui-return:hover{background:rgba(13,67,58,.96)!important}
button.bonjour-ui-return::before,.bonjour-ui-return::before{content:none!important;display:none!important}

/* Neutralise définitivement l'ancien Retour en icône de la Carte de visite. */
body[data-bonjour-pwa="1"] .contact-card-view.is-editor .contact-card-back.bonjour-ui-return,
.contact-card-view.is-editor .contact-card-back.bonjour-ui-return{
  font-size:12px!important;
  padding:0 10px!important;
}
body[data-bonjour-pwa="1"] .contact-card-view.is-editor .contact-card-back.bonjour-ui-return::before,
.contact-card-view.is-editor .contact-card-back.bonjour-ui-return::before{content:none!important;display:none!important}
.contact-card-presentation .contact-card-owner-back.bonjour-ui-return{font-size:12px!important}

/* Le header ne positionne plus Retour. Il ne fait que porter titre / sous-titre. */
.bonjour-ui-page-header{
  position:relative!important;
  min-width:0!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.bonjour-ui-header-copy{
  min-width:0!important;
  max-width:100%!important;
  padding-right:var(--bonjour-ui-return-reserve)!important;
  box-sizing:border-box!important;
}
.bonjour-ui-header-copy h1,
.bonjour-ui-header-copy h2,
.bonjour-ui-header-copy h3,
.bonjour-ui-header-copy p{
  max-width:100%!important;
  overflow-wrap:anywhere!important;
}

/* Agenda principal : shell sans padding, donc la respiration appartient au header. */
.productivity-shell.bonjour-ui-page-surface{padding-top:0!important}
.productivity-shell.bonjour-ui-page-surface>.bonjour-ui-page-header{
  display:block!important;
  grid-template-columns:none!important;
  padding:var(--bonjour-ui-surface-top) 20px 17px!important;
  min-height:calc(var(--bonjour-ui-surface-top) + var(--bonjour-ui-return-height) + 12px)!important;
}
.productivity-shell .productivity-page-intro{grid-column:auto!important;max-width:100%!important}

/* Modales Agenda : le header peut rester sticky, mais Retour est ancré à la carte. */
.productivity-modal>section.bonjour-ui-page-surface{position:relative!important}
.productivity-modal>section.bonjour-ui-page-surface>.bonjour-ui-page-header{
  display:block!important;
  margin:0!important;
  padding:var(--bonjour-ui-surface-top) 18px 14px!important;
  min-height:calc(var(--bonjour-ui-surface-top) + var(--bonjour-ui-return-height) + 8px)!important;
  background:linear-gradient(180deg,#08241f 84%,rgba(8,36,31,.95))!important;
  border-bottom:1px solid rgba(255,255,255,.055)!important;
}
@media(max-width:720px){
  .productivity-modal>section.bonjour-ui-page-surface>.bonjour-ui-page-header{
    position:sticky!important;top:0!important;z-index:8!important;
    margin:0 -12px 10px!important;
    padding-left:12px!important;padding-right:12px!important;
  }
}

/* En-têtes classiques : titre à gauche, actions éventuelles en dessous/à côté, sans Retour dans la grille. */
.page-head.bonjour-ui-page-header,
.modal-head.bonjour-ui-page-header,
.regions-page-head.bonjour-ui-page-header,
.network-page-head.bonjour-ui-page-header,
.streaming-head.bonjour-ui-page-header{
  min-height:calc(var(--bonjour-ui-return-height) + 8px)!important;
}

.regions-page-head.bonjour-ui-page-header{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:14px!important;
  align-items:start!important;
}
.regions-page-head .regions-head-actions{min-width:0!important}
@media(max-width:720px){
  .regions-page-head.bonjour-ui-page-header{grid-template-columns:1fr!important;gap:16px!important}
  .regions-page-head .regions-head-actions{
    width:100%!important;display:grid!important;grid-template-columns:1fr!important;gap:8px!important;margin:0!important
  }
  .regions-page-head .regions-head-actions button{width:100%!important;margin:0!important}
}

/* Les surfaces sans wrapper d'en-tête réservent elles-mêmes la zone du Retour. */
.transfer-main-card.bonjour-ui-has-return>.transfer-brand-row,
.transfer-main-card.bonjour-ui-has-return>h2,
.join-card.bonjour-ui-has-return>.eyebrow,
.join-card.bonjour-ui-has-return>h2,
.lobby-card.bonjour-ui-has-return>.eyebrow,
.lobby-card.bonjour-ui-has-return>h2{
  max-width:calc(100% - var(--bonjour-ui-return-reserve))!important;
}

/* Carte de visite : Retour indépendant, en-tête natif unique pleine largeur. */
.contact-card-form.bonjour-ui-page-surface>.contact-card-pagebar{
  display:flex!important;
  flex-direction:column!important;
  gap:0!important;
  grid-template:none!important;
  min-width:0!important;
}
.contact-card-pagebar .contact-card-pagebar-title{grid-area:auto!important}
.contact-card-pagebar .contact-card-pagebar-actions{
  grid-area:auto!important;padding-right:0!important;justify-content:flex-start!important
}

/* Windows / Mon Bonjour : la zone titre est la même que partout ailleurs. */
.windows-download-hero.bonjour-ui-page-header,
.my-bonjour-head.bonjour-ui-page-header{min-width:0!important}
.windows-download-hero .bonjour-ui-header-copy,
.my-bonjour-head .bonjour-ui-header-copy{box-sizing:border-box!important}

/* Contribution / programmation : le sous-titre est sous le header, donc pleine largeur. */
.contribution-modal>.modal-subtitle,
.schedule-meeting-modal>.modal-subtitle{margin-right:0!important;max-width:100%!important}

/* Le mode présentation de la carte emploie lui aussi le même Retour, en haut à droite. */
.contact-card-presentation.bonjour-ui-page-surface{position:relative!important}

/* Mobile : titres propres, jamais collés au bord supérieur et jamais sous Retour. */
@media(max-width:720px){
  .bonjour-ui-header-copy .eyebrow{margin-top:0!important}
  .bonjour-ui-header-copy h1,
  .bonjour-ui-header-copy h2,
  .bonjour-ui-header-copy h3{margin-top:5px!important}
  .modal-head.bonjour-ui-page-header,
  .page-head.bonjour-ui-page-header{align-items:flex-start!important}
  .windows-download-hero.bonjour-ui-page-header,
  .my-bonjour-head.bonjour-ui-page-header{display:block!important}
  .windows-download-hero .windows-logo,
  .my-bonjour-head .my-bonjour-symbol{display:none!important}
}

/* ======================================================================
   BONJOUR UI CONTRACT 1.20.93 — DESKTOP / LAPTOP
   Contrat durable : axe, centrage, textes et couleurs fonctionnelles.
   Cette section est chargée en dernier et neutralise les anciens réglages
   locaux de styles.css sans toucher au moteur métier.
   ====================================================================== */
@media (min-width:1100px) and (pointer:fine){
  :root{
    --bonjour-pc-page-gutter:clamp(42px,5vw,86px);
    --bonjour-pc-surface-radius:20px;
    --bonjour-pc-surface-top:28px;
    --bonjour-pc-return-top:18px;
    --bonjour-pc-return-right:18px;
    --bonjour-pc-accent:#27988f;
    --bonjour-pc-accent-dark:#15564f;
    --bonjour-pc-text:#f1f5f3;
    --bonjour-pc-muted:#9eb3ac;
  }

  /* Un axe de page commun : aucune surface ne se décale à gauche/droite selon son ancien CSS. */
  body[data-bonjour-pwa="1"] .regions-view,
  body[data-bonjour-pwa="1"] .network-view,
  body[data-bonjour-pwa="1"] .streaming-view,
  body[data-bonjour-pwa="1"] .transfer-view,
  body[data-bonjour-pwa="1"] .productivity-view,
  body[data-bonjour-pwa="1"] .contact-card-view.is-editor{
    width:100%!important;
    max-width:100vw!important;
    padding:clamp(34px,4vh,56px) var(--bonjour-pc-page-gutter)!important;
    margin:0!important;
    justify-content:center!important;
    align-items:center!important;
    place-items:center!important;
    box-sizing:border-box!important;
  }

  /* Largeurs de référence : compact, standard, éditeur. */
  body[data-bonjour-pwa="1"] .transfer-page-shell{
    width:min(880px,calc(100vw - (2 * var(--bonjour-pc-page-gutter))))!important;
    max-width:880px!important;
    margin:0 auto!important;
    justify-self:center!important;
  }
  body[data-bonjour-pwa="1"] .regions-card,
  body[data-bonjour-pwa="1"] .productivity-shell{
    width:min(1120px,calc(100vw - (2 * var(--bonjour-pc-page-gutter))))!important;
    max-width:1120px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  body[data-bonjour-pwa="1"] .contact-card-view.is-editor .contact-card-shell{
    width:min(1120px,calc(100vw - (2 * var(--bonjour-pc-page-gutter))))!important;
    max-width:1120px!important;
    margin:0 auto!important;
  }

  /* Modales centrales : même axe, dimensions lisibles, jamais minuscules sur un grand écran. */
  body[data-bonjour-pwa="1"] #windowsDownloadModal,
  body[data-bonjour-pwa="1"] #myBonjourModal,
  body[data-bonjour-pwa="1"] #contributionModal,
  body[data-bonjour-pwa="1"] #scheduleMeetingModal,
  body[data-bonjour-pwa="1"] .productivity-modal{
    padding:clamp(34px,4vh,54px) var(--bonjour-pc-page-gutter)!important;
    place-items:center!important;
    align-items:center!important;
    justify-items:center!important;
  }
  body[data-bonjour-pwa="1"] .windows-download-modal{
    width:min(900px,calc(100vw - (2 * var(--bonjour-pc-page-gutter))))!important;
    max-width:900px!important;
    margin:auto!important;
  }
  body[data-bonjour-pwa="1"] .my-bonjour-modal{
    width:min(820px,calc(100vw - (2 * var(--bonjour-pc-page-gutter))))!important;
    max-width:820px!important;
    margin:auto!important;
  }
  body[data-bonjour-pwa="1"] .contribution-modal,
  body[data-bonjour-pwa="1"] .schedule-meeting-modal,
  body[data-bonjour-pwa="1"] .productivity-modal>section{
    width:min(960px,calc(100vw - (2 * var(--bonjour-pc-page-gutter))))!important;
    max-width:960px!important;
    margin:auto!important;
  }

  /* Retour : mêmes coordonnées PC quel que soit le type de surface. */
  body[data-bonjour-pwa="1"] .bonjour-ui-page-surface>.bonjour-ui-return{
    top:var(--bonjour-pc-return-top)!important;
    right:var(--bonjour-pc-return-right)!important;
  }

  /* Titres et copies : axe gauche commun, jamais centrés par un ancien composant. */
  body[data-bonjour-pwa="1"] .bonjour-ui-header-copy,
  body[data-bonjour-pwa="1"] .regions-page-head>div:first-child,
  body[data-bonjour-pwa="1"] .productivity-page-head>div:first-child,
  body[data-bonjour-pwa="1"] .windows-download-hero>div,
  body[data-bonjour-pwa="1"] .my-bonjour-head>div,
  body[data-bonjour-pwa="1"] .contact-card-pagebar-title{
    text-align:left!important;
    justify-items:start!important;
    align-items:start!important;
  }

  /* Salons permanents : actions alignées sur une seule ligne sans toucher au Retour. */
  body[data-bonjour-pwa="1"] .regions-card{padding:28px!important;border-radius:var(--bonjour-pc-surface-radius)!important}
  body[data-bonjour-pwa="1"] .regions-page-head{
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:start!important;
    gap:20px!important;
  }
  body[data-bonjour-pwa="1"] .regions-page-head .regions-head-actions{
    margin-right:calc(var(--bonjour-ui-return-reserve) - 8px)!important;
    align-self:start!important;
    justify-self:end!important;
  }
  body[data-bonjour-pwa="1"] .regions-page-head h2{margin-top:5px!important}
  body[data-bonjour-pwa="1"] .regions-help{max-width:760px!important}

  /* TRANSFERT : géométrie, typographie et couleurs d'action normalisées. */
  body[data-bonjour-pwa="1"] .transfer-view{display:flex!important}
  body[data-bonjour-pwa="1"] .transfer-main-card.bonjour-ui-page-surface{
    width:100%!important;
    max-width:none!important;
    max-height:84dvh!important;
    margin:0!important;
    padding:28px!important;
    border-radius:var(--bonjour-pc-surface-radius)!important;
    overflow:auto!important;
  }
  body[data-bonjour-pwa="1"] .transfer-brand-row{
    display:block!important;
    width:100%!important;
    margin:0!important;
    padding:0 var(--bonjour-ui-return-reserve) 0 0!important;
    text-align:left!important;
  }
  body[data-bonjour-pwa="1"] .transfer-main-card>h2{
    max-width:700px!important;
    margin:8px var(--bonjour-ui-return-reserve) 10px 0!important;
    font-size:30px!important;
    line-height:1.08!important;
    text-align:left!important;
  }
  body[data-bonjour-pwa="1"] .transfer-lead{
    max-width:760px!important;
    margin:0 0 16px!important;
    font-size:13px!important;
    line-height:1.5!important;
    text-align:left!important;
  }
  body[data-bonjour-pwa="1"] .transfer-privacy-row{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    margin:0 0 15px!important;
  }
  body[data-bonjour-pwa="1"] .transfer-no-storage{
    color:#d8c071!important;
    background:rgba(175,145,55,.06)!important;
    border-color:rgba(207,183,100,.24)!important;
  }
  body[data-bonjour-pwa="1"] .transfer-name-field{text-align:left!important}
  body[data-bonjour-pwa="1"] .transfer-drop-zone{
    min-height:150px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    gap:5px!important;
    border-color:rgba(92,174,162,.34)!important;
    background:linear-gradient(145deg,rgba(11,63,60,.33),rgba(7,29,25,.52))!important;
  }
  body[data-bonjour-pwa="1"] .transfer-drop-zone:hover,
  body[data-bonjour-pwa="1"] .transfer-drop-zone.is-drag,
  body[data-bonjour-pwa="1"] .transfer-drop-zone.dragging{
    border-color:rgba(73,190,177,.62)!important;
    background:rgba(11,63,60,.50)!important;
  }
  body[data-bonjour-pwa="1"] .transfer-drop-icon{
    width:46px!important;
    height:46px!important;
    border-radius:12px!important;
    background:var(--bonjour-pc-accent)!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.10)!important;
    box-shadow:none!important;
  }
  body[data-bonjour-pwa="1"] .transfer-file-type{
    background:rgba(39,152,143,.14)!important;
    border-color:rgba(74,184,173,.24)!important;
    color:#8fd8d0!important;
  }
  body[data-bonjour-pwa="1"] .transfer-file-row button{color:#87d2c9!important}
  body[data-bonjour-pwa="1"] .transfer-limits{
    width:100%!important;
    margin-top:12px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:18px!important;
    text-align:left!important;
  }
  body[data-bonjour-pwa="1"] .transfer-limits>*:last-child{text-align:right!important;margin-left:auto!important}
  body[data-bonjour-pwa="1"] .transfer-primary{
    background:var(--bonjour-pc-accent)!important;
    color:#fff!important;
    border:1px solid rgba(255,255,255,.08)!important;
    box-shadow:none!important;
  }
  body[data-bonjour-pwa="1"] .transfer-primary:hover:not(:disabled){background:#31a69c!important;filter:none!important}

  /* CARTE DE VISITE : le titre rejoint l'axe du formulaire et des sections. */
  body[data-bonjour-pwa="1"] .contact-card-view.is-editor{align-items:flex-start!important}
  body[data-bonjour-pwa="1"] .contact-card-view.is-editor .contact-card-form{
    width:100%!important;
    margin:0 auto!important;
    padding:28px!important;
    border-radius:var(--bonjour-pc-surface-radius)!important;
  }
  body[data-bonjour-pwa="1"] .contact-card-form>.contact-card-pagebar{
    width:100%!important;
    margin:0 0 22px!important;
    padding:0 0 18px 0!important;
    text-align:left!important;
    justify-items:start!important;
    border-bottom:1px solid rgba(255,255,255,.07)!important;
  }
  body[data-bonjour-pwa="1"] .contact-card-pagebar-title h2{
    margin:5px 0 0!important;
    text-align:left!important;
  }
  body[data-bonjour-pwa="1"] .contact-card-pagebar-actions{
    width:auto!important;
    justify-self:start!important;
    justify-content:flex-start!important;
    text-align:left!important;
  }
  body[data-bonjour-pwa="1"] .contact-card-pagebar-actions button{margin:0!important}
  body[data-bonjour-pwa="1"] .contact-card-section-head{text-align:left!important}

  /* WINDOWS : icône discrète, texte calé à gauche, carte réellement centrée. */
  body[data-bonjour-pwa="1"] .windows-download-modal{padding:28px!important;border-radius:var(--bonjour-pc-surface-radius)!important}
  body[data-bonjour-pwa="1"] .windows-download-hero{
    display:grid!important;
    grid-template-columns:48px minmax(0,1fr)!important;
    gap:14px!important;
    align-items:start!important;
    padding:0 var(--bonjour-ui-return-reserve) 0 0!important;
    text-align:left!important;
  }
  body[data-bonjour-pwa="1"] .windows-logo{
    width:44px!important;height:44px!important;
    background:rgba(39,152,143,.12)!important;
    border-color:rgba(89,181,170,.22)!important;
    color:#9edbd4!important;
    box-shadow:none!important;
  }
  body[data-bonjour-pwa="1"] .windows-download-hero h3,
  body[data-bonjour-pwa="1"] .windows-download-hero p{text-align:left!important}

  /* Agenda : conserve la largeur standard et un axe de texte commun. */
  body[data-bonjour-pwa="1"] .productivity-shell{border-radius:var(--bonjour-pc-surface-radius)!important}
  body[data-bonjour-pwa="1"] .productivity-page-head{
    text-align:left!important;
    align-items:start!important;
  }
}

/* ======================================================================
   BONJOUR UI CONTRACT 1.20.93 — FINITIONS SMARTPHONE
   Corrige à la source les trois écrans encore trop contraints sur mobile :
   Programmer une réunion, Bonjour pour Windows et Mon Bonjour.
   Le Retour ne réduit plus toute la copie : seule la première ligne d'identité
   lui réserve une zone. Les contenus reprennent ensuite toute la largeur utile.
   ====================================================================== */
@media (max-width:720px){
  :root{
    --bonjour-ui-return-width:84px;
    --bonjour-ui-return-height:38px;
    --bonjour-ui-return-reserve:98px;
  }

  /* Retour plus discret sans changer son repère ni son rôle tactile. */
  body[data-bonjour-pwa="1"] .bonjour-ui-page-surface>.bonjour-ui-return{
    width:var(--bonjour-ui-return-width)!important;
    min-width:var(--bonjour-ui-return-width)!important;
    max-width:var(--bonjour-ui-return-width)!important;
    height:var(--bonjour-ui-return-height)!important;
    min-height:var(--bonjour-ui-return-height)!important;
    max-height:var(--bonjour-ui-return-height)!important;
    padding:0 8px!important;
    font-size:11.5px!important;
    border-radius:10px!important;
  }

  /* Windows / Mon Bonjour : l'ancien padding-right s'appliquait à tout le
     paragraphe et créait une colonne étroite. Le Retour ne réserve désormais
     que la ligne d'identité située réellement à sa hauteur. */
  body[data-bonjour-pwa="1"] #windowsDownloadModal .windows-download-hero.bonjour-ui-page-header,
  body[data-bonjour-pwa="1"] #myBonjourModal .my-bonjour-head.bonjour-ui-page-header{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    padding-right:0!important;
    gap:0!important;
  }
  body[data-bonjour-pwa="1"] #windowsDownloadModal .windows-download-hero .bonjour-ui-header-copy,
  body[data-bonjour-pwa="1"] #myBonjourModal .my-bonjour-head .bonjour-ui-header-copy{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding-right:0!important;
  }
  body[data-bonjour-pwa="1"] #windowsDownloadModal .windows-download-hero .bonjour-ui-header-copy>.eyebrow,
  body[data-bonjour-pwa="1"] #myBonjourModal .my-bonjour-head .bonjour-ui-header-copy>.eyebrow{
    display:block!important;
    width:fit-content!important;
    max-width:calc(100% - var(--bonjour-ui-return-reserve))!important;
    padding-right:0!important;
    white-space:normal!important;
    overflow-wrap:normal!important;
  }
  body[data-bonjour-pwa="1"] #windowsDownloadModal .windows-download-hero h3,
  body[data-bonjour-pwa="1"] #myBonjourModal .my-bonjour-head h3,
  body[data-bonjour-pwa="1"] #windowsDownloadModal .windows-download-hero p,
  body[data-bonjour-pwa="1"] #myBonjourModal .my-bonjour-head p{
    width:100%!important;
    max-width:100%!important;
    padding-right:0!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  body[data-bonjour-pwa="1"] #windowsDownloadModal .windows-download-hero h3{
    text-wrap:balance!important;
  }
  body[data-bonjour-pwa="1"] #myBonjourModal .my-bonjour-head h3{
    white-space:nowrap!important;
  }
  body[data-bonjour-pwa="1"] #windowsDownloadModal .windows-download-hero p,
  body[data-bonjour-pwa="1"] #myBonjourModal .my-bonjour-head p{
    margin-top:8px!important;
  }

  /* Mon Bonjour : le texte de continuité reste réellement lisible en bas. */
  body[data-bonjour-pwa="1"] #myBonjourModal .my-bonjour-foot{
    margin:14px 4px 2px!important;
    padding-top:2px!important;
    color:rgba(230,239,235,.58)!important;
    font-size:10.5px!important;
    line-height:1.52!important;
  }

  /* Programmer une réunion : même typographie pour datetime-local que pour
     les autres champs, y compris dans les sous-parties natives de WebKit/iOS. */
  body[data-bonjour-pwa="1"] #scheduleMeetingModal .schedule-meeting-form{
    gap:8px!important;
  }
  body[data-bonjour-pwa="1"] #scheduleMeetingModal #scheduleStart,
  body[data-bonjour-pwa="1"] #scheduleMeetingModal #scheduleStart::-webkit-date-and-time-value,
  body[data-bonjour-pwa="1"] #scheduleMeetingModal #scheduleStart::-webkit-datetime-edit,
  body[data-bonjour-pwa="1"] #scheduleMeetingModal #scheduleStart::-webkit-datetime-edit-fields-wrapper,
  body[data-bonjour-pwa="1"] #scheduleMeetingModal #scheduleStart::-webkit-datetime-edit-text,
  body[data-bonjour-pwa="1"] #scheduleMeetingModal #scheduleStart::-webkit-datetime-edit-day-field,
  body[data-bonjour-pwa="1"] #scheduleMeetingModal #scheduleStart::-webkit-datetime-edit-month-field,
  body[data-bonjour-pwa="1"] #scheduleMeetingModal #scheduleStart::-webkit-datetime-edit-year-field,
  body[data-bonjour-pwa="1"] #scheduleMeetingModal #scheduleStart::-webkit-datetime-edit-hour-field,
  body[data-bonjour-pwa="1"] #scheduleMeetingModal #scheduleStart::-webkit-datetime-edit-minute-field{
    font-family:Roboto,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    font-size:var(--bonjour-agenda-field-size)!important;
    font-weight:400!important;
    font-style:normal!important;
    letter-spacing:0!important;
    color:var(--text)!important;
    -webkit-text-fill-color:var(--text)!important;
    font-synthesis:none!important;
  }
  body[data-bonjour-pwa="1"] #scheduleMeetingModal textarea{
    min-height:70px!important;
  }
  body[data-bonjour-pwa="1"] #scheduleMeetingModal .schedule-timezone-note{
    margin-top:1px!important;
  }

  /* Un téléchargement absent ne doit plus ressembler à une action disponible. */
  body[data-bonjour-pwa="1"] #windowsDownloadPrimary.is-unavailable,
  body[data-bonjour-pwa="1"] #windowsDownloadPrimary[aria-disabled="true"]{
    pointer-events:none!important;
    cursor:not-allowed!important;
    color:rgba(238,247,244,.50)!important;
    -webkit-text-fill-color:rgba(238,247,244,.50)!important;
    background:rgba(35,111,102,.28)!important;
    border:1px solid rgba(111,188,178,.12)!important;
    box-shadow:none!important;
    filter:saturate(.55)!important;
  }
}

@media (max-width:390px){
  :root{
    --bonjour-ui-return-width:82px;
    --bonjour-ui-return-height:36px;
    --bonjour-ui-return-reserve:94px;
  }
  body[data-bonjour-pwa="1"] #windowsDownloadModal .windows-download-hero h3,
  body[data-bonjour-pwa="1"] #myBonjourModal .my-bonjour-head h3{
    letter-spacing:-.022em!important;
  }
}


/* ======================================================================
   BONJOUR UI CONTRACT 1.20.94 — SALON · INVITATION · DISCUSSIONS
   La scène reste centrale, mais l'invitation et les échanges deviennent des
   actions de premier rang. Couche finale volontairement commune et durable.
   ====================================================================== */

/* Bouton Inviter : plus de gros pavé blanc, même langage que Bonjour. */
body[data-bonjour-pwa="1"] .room-header .invite-button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  min-height:40px!important;height:40px!important;padding:0 11px!important;border-radius:11px!important;
  border:1px solid rgba(91,183,171,.24)!important;background:linear-gradient(145deg,rgba(10,63,56,.82),rgba(7,39,34,.94))!important;
  color:#f4f8f6!important;box-shadow:0 8px 24px rgba(0,0,0,.16)!important;font-size:11.5px!important;font-weight:700!important;
}
body[data-bonjour-pwa="1"] .room-header .invite-button::before{content:none!important;display:none!important}
body[data-bonjour-pwa="1"] .bonjour-invite-link-icon{width:26px;height:26px;display:grid!important;place-items:center;border-radius:8px;background:rgba(228,188,87,.08);border:1px solid rgba(228,188,87,.18);color:#e4bc57;flex:0 0 auto}
body[data-bonjour-pwa="1"] .bonjour-invite-link-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
body[data-bonjour-pwa="1"] .bonjour-invite-link-icon .spark{stroke-width:1.45}
body[data-bonjour-pwa="1"] .bonjour-invite-label{display:inline!important;white-space:nowrap!important}

/* Scène : les textes doivent rester lisibles quelle que soit la photo choisie. */
body[data-bonjour-pwa="1"] .regional-intro{
  position:relative!important;z-index:2!important;padding:7px 10px!important;border-radius:10px!important;
  background:rgba(3,22,19,.66)!important;border:1px solid rgba(207,224,217,.08)!important;
  backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;
}
body[data-bonjour-pwa="1"] .empty-stage{
  align-self:center!important;width:min(92%,660px)!important;min-height:150px!important;padding:22px!important;
  background:linear-gradient(145deg,rgba(3,22,19,.73),rgba(4,31,27,.62))!important;
  border:1px solid rgba(207,224,217,.10)!important;border-radius:18px!important;
  backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important;
  text-align:center!important;box-shadow:0 18px 48px rgba(0,0,0,.18)!important;
}
body[data-bonjour-pwa="1"] .empty-stage strong{font-size:20px!important;color:#f5f8f6!important;text-shadow:0 2px 12px rgba(0,0,0,.35)!important}
body[data-bonjour-pwa="1"] .empty-stage span{max-width:520px!important;color:rgba(231,239,236,.76)!important;line-height:1.48!important;text-shadow:0 2px 10px rgba(0,0,0,.28)!important}

/* Discussions : bulle toujours accessible sur mobile, sans masquer le dock. */
.room-chat-quick{display:none}
body[data-bonjour-pwa="1"] .room-chat-control-icon svg,
body[data-bonjour-pwa="1"] .room-chat-quick-icon svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* Messages : logique de conversation moderne, proche des usages de messagerie. */
body[data-bonjour-pwa="1"] .chat-panel{background:linear-gradient(180deg,#071713 0%,#071411 100%)!important}
body[data-bonjour-pwa="1"] .chat-context-note{background:rgba(11,63,60,.12)!important;border-color:rgba(207,224,217,.06)!important}
body[data-bonjour-pwa="1"] .messages{display:flex!important;flex-direction:column!important;gap:4px!important;padding:14px 12px 18px!important}
body[data-bonjour-pwa="1"] .message{margin:0 0 9px!important;align-items:flex-end!important;gap:8px!important}
body[data-bonjour-pwa="1"] .message>.avatar{width:30px!important;height:30px!important;flex:0 0 30px!important;font-size:10px!important}
body[data-bonjour-pwa="1"] .message-content{flex:0 1 auto!important;max-width:min(82%,520px)!important}
body[data-bonjour-pwa="1"] .message-head{margin:0 4px 4px!important;gap:6px!important;align-items:center!important}
body[data-bonjour-pwa="1"] .message-head strong{font-size:10px!important;color:#b7cec7!important}
body[data-bonjour-pwa="1"] .message-head time{font-size:8.5px!important;color:#687e78!important}
body[data-bonjour-pwa="1"] .message p{
  display:block!important;margin:0!important;padding:9px 11px!important;border:1px solid rgba(207,224,217,.08)!important;
  border-radius:5px 15px 15px 15px!important;background:rgba(14,45,39,.92)!important;color:#eef4f2!important;
  font-size:12px!important;line-height:1.45!important;box-shadow:0 5px 14px rgba(0,0,0,.10)!important;
}
body[data-bonjour-pwa="1"] .message.mine{justify-content:flex-end!important}
body[data-bonjour-pwa="1"] .message.mine>.avatar{display:none!important}
body[data-bonjour-pwa="1"] .message.mine .message-content{margin-left:auto!important}
body[data-bonjour-pwa="1"] .message.mine .message-head{justify-content:flex-end!important}
body[data-bonjour-pwa="1"] .message.mine p{background:linear-gradient(145deg,rgba(20,103,91,.96),rgba(13,77,69,.96))!important;border-color:rgba(81,171,159,.18)!important;border-radius:15px 5px 15px 15px!important}
body[data-bonjour-pwa="1"] .message-private,
body[data-bonjour-pwa="1"] .message-report,
body[data-bonjour-pwa="1"] .message-delete{font-size:8.5px!important;opacity:.75!important}

body[data-bonjour-pwa="1"] .chat-form{
  position:relative!important;align-items:flex-end!important;gap:7px!important;padding:9px 10px max(10px,env(safe-area-inset-bottom))!important;
  border-top:1px solid rgba(207,224,217,.08)!important;background:rgba(4,22,19,.97)!important;
}
body[data-bonjour-pwa="1"] .chat-form textarea{
  flex:1!important;min-width:0!important;min-height:42px!important;max-height:112px!important;resize:none!important;overflow-y:auto!important;
  border:1px solid rgba(111,181,169,.18)!important;border-radius:19px!important;background:rgba(10,42,36,.82)!important;
  color:#f4f8f6!important;padding:11px 14px!important;font:400 12.5px/1.4 Roboto,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  outline:none!important;box-sizing:border-box!important;
}
body[data-bonjour-pwa="1"] .chat-form textarea:focus{border-color:rgba(79,178,165,.48)!important;box-shadow:0 0 0 2px rgba(35,135,126,.08)!important}
body[data-bonjour-pwa="1"] .chat-form button{
  width:42px!important;height:42px!important;min-width:42px!important;border-radius:50%!important;display:grid!important;place-items:center!important;
  background:#278f85!important;color:#fff!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:none!important;
}
body[data-bonjour-pwa="1"] .chat-form button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

/* L'invitation utilise la vignette Bonjour maître, sans second logo reconstruit. */
body[data-bonjour-pwa="1"] .social-invite-preview-wrap{border-color:rgba(91,183,171,.16)!important;background:#061713!important}
body[data-bonjour-pwa="1"] #socialInviteCanvas{display:block!important;width:100%!important;height:auto!important;aspect-ratio:1200/630!important;border-radius:10px!important}

@media (max-width:720px){
  body[data-bonjour-pwa="1"] .room-header{
    min-height:66px!important;padding:8px max(9px,env(safe-area-inset-right)) 8px max(9px,env(safe-area-inset-left))!important;
    padding-top:max(8px,env(safe-area-inset-top))!important;gap:7px!important;background:rgba(4,25,21,.97)!important;
  }
  body[data-bonjour-pwa="1"] .room-identity{min-width:0!important;gap:8px!important}
  body[data-bonjour-pwa="1"] .room-identity>div:last-child{min-width:0!important}
  body[data-bonjour-pwa="1"] .room-identity strong{max-width:min(41vw,174px)!important;font-size:14.5px!important;line-height:1.12!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  body[data-bonjour-pwa="1"] .room-identity small{max-width:min(41vw,174px)!important;font-size:10.5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  body[data-bonjour-pwa="1"] .header-actions{gap:5px!important}
  body[data-bonjour-pwa="1"] .room-header .invite-button{height:40px!important;min-height:40px!important;padding:0 8px!important;gap:6px!important;font-size:10.5px!important}
  body[data-bonjour-pwa="1"] .bonjour-invite-link-icon{width:25px!important;height:25px!important;border-radius:7px!important}
  body[data-bonjour-pwa="1"] .header-actions #toggleParticipantsBtn{height:40px!important;min-height:40px!important;min-width:46px!important;padding:0 8px!important;border-radius:11px!important}

  body[data-bonjour-pwa="1"] .regional-intro{font-size:10px!important;padding:6px 8px!important}
  body[data-bonjour-pwa="1"] .regional-intro strong{font-size:10px!important}
  body[data-bonjour-pwa="1"] .empty-stage{width:94%!important;min-height:132px!important;padding:18px 16px!important;border-radius:15px!important}
  body[data-bonjour-pwa="1"] .empty-stage strong{font-size:17px!important}
  body[data-bonjour-pwa="1"] .empty-stage span{font-size:11px!important;line-height:1.43!important}

  body[data-bonjour-pwa="1"] .room-chat-quick{
    position:absolute!important;right:max(12px,env(safe-area-inset-right))!important;bottom:max(91px,calc(env(safe-area-inset-bottom) + 82px))!important;z-index:33!important;
    display:flex!important;align-items:center!important;gap:9px!important;min-height:48px!important;padding:6px 11px 6px 7px!important;
    border:1px solid rgba(91,183,171,.26)!important;border-radius:15px!important;background:rgba(5,44,38,.94)!important;color:#f5f8f6!important;
    box-shadow:0 12px 28px rgba(0,0,0,.28)!important;backdrop-filter:blur(14px)!important;-webkit-backdrop-filter:blur(14px)!important;cursor:pointer!important;
  }
  html.bonjour-mobile-panel-open body[data-bonjour-pwa="1"] .room-chat-quick{display:none!important}
  body[data-bonjour-pwa="1"] .room-chat-quick-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:rgba(35,135,126,.22);color:#9edbd3;border:1px solid rgba(81,171,159,.17)}
  body[data-bonjour-pwa="1"] .room-chat-quick-copy{display:flex!important;flex-direction:column!important;align-items:flex-start!important;min-width:0!important}
  body[data-bonjour-pwa="1"] .room-chat-quick-copy strong{font-size:11.5px!important;line-height:1.1!important}
  body[data-bonjour-pwa="1"] .room-chat-quick-copy small{font-size:8.5px!important;color:#8fa9a2!important;margin-top:2px!important;white-space:nowrap!important}
  body[data-bonjour-pwa="1"] .room-chat-quick-badge{position:absolute;right:-5px;top:-5px;min-width:20px;height:20px;border-radius:99px;display:grid;place-items:center;padding:0 5px;background:#e45858;color:#fff;font:800 9px/1 system-ui;border:2px solid #07201b;font-style:normal}

  /* Le chat devient un écran de discussion complet : le dock média ne concurrence plus la conversation. */
  body[data-bonjour-pwa="1"] .side-panel.chat-focused{
    position:fixed!important;inset:0!important;width:100%!important;max-width:none!important;height:100dvh!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:0!important;
    border:0!important;background:#071713!important;box-shadow:none!important;z-index:95!important;
  }
  body[data-bonjour-pwa="1"] .side-panel.chat-focused .side-tabs{min-height:54px!important;padding:0 10px!important;background:#0a211d!important;border-bottom:1px solid rgba(207,224,217,.08)!important}
  body[data-bonjour-pwa="1"] .side-panel.chat-focused .side-tabs .side-tab:not(#chatTab){display:none!important}
  body[data-bonjour-pwa="1"] .side-panel.chat-focused #chatTab{display:flex!important;color:#f4f8f6!important;background:transparent!important;border:0!important;font-size:15px!important;font-weight:700!important;padding:0 7px!important;pointer-events:none!important}
  body[data-bonjour-pwa="1"] .side-panel.chat-focused #chatTab::before{content:'◌';color:#79c9bf;font-size:19px;margin-right:2px}
  body[data-bonjour-pwa="1"] .side-panel.chat-focused .panel-close{margin-left:auto!important;width:40px!important;height:40px!important;border-radius:11px!important;background:rgba(11,63,60,.16)!important;color:#dce9e5!important}
  body[data-bonjour-pwa="1"] .side-panel.chat-focused .chat-panel{display:flex!important;min-height:0!important;flex:1!important}
  body[data-bonjour-pwa="1"] .side-panel.chat-focused .chat-experience-tabs{padding:7px 10px!important;background:#081b17!important;gap:6px!important}
  body[data-bonjour-pwa="1"] .side-panel.chat-focused .chat-experience-tab{flex:1!important;justify-content:center!important;min-height:36px!important;border-radius:10px!important;font-size:11px!important}
  body[data-bonjour-pwa="1"] .side-panel.chat-focused .chat-context-note{padding:8px 12px!important}
  body[data-bonjour-pwa="1"] .side-panel.chat-focused .chat-context-note strong{font-size:10px!important}
  body[data-bonjour-pwa="1"] .side-panel.chat-focused .chat-context-note span{font-size:8.8px!important}
  body[data-bonjour-pwa="1"] .side-panel.chat-focused .messages{padding:12px 10px 18px!important}
  body[data-bonjour-pwa="1"] .side-panel.chat-focused .chat-form{padding-bottom:max(10px,env(safe-area-inset-bottom))!important}
}

@media (max-width:390px){
  body[data-bonjour-pwa="1"] .room-identity strong,body[data-bonjour-pwa="1"] .room-identity small{max-width:38vw!important}
  body[data-bonjour-pwa="1"] .room-header .invite-button{padding:0 7px!important}
  body[data-bonjour-pwa="1"] .bonjour-invite-label{font-size:10px!important}
  body[data-bonjour-pwa="1"] .room-chat-quick-copy small{display:none!important}
}


/* ==========================================================
   BONJOUR UI CONTRACT 1.20.95 — CARTE DE VISITE DANS LE SALON
   ========================================================== */
.participant-social-actions{grid-column:2/4;display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:1px}.participant-row>.participant-controls{grid-column:2/4;justify-self:end;margin-left:0}
.salon-contact-card-link{border:1px solid rgba(223,196,116,.20)!important;background:rgba(223,196,116,.07)!important;color:#e8d08a!important;border-radius:8px!important;min-height:29px;padding:5px 8px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;font:800 9.5px/1 system-ui!important;letter-spacing:.01em;cursor:pointer;white-space:nowrap;box-shadow:none!important}
.salon-contact-card-link:hover{background:rgba(223,196,116,.12)!important;border-color:rgba(223,196,116,.30)!important}
.salon-contact-card-link svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.55;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
.salon-contact-card-link.compact{min-height:25px!important;padding:4px 6px!important;font-size:8.5px!important;border-radius:7px!important}
.message-head .salon-contact-card-link{margin-left:1px;min-height:23px!important;padding:3px 6px!important;font-size:8px!important}
.message-head .salon-contact-card-link svg{width:12px;height:12px}
.chat-member-person-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px;border-bottom:1px solid rgba(207,224,217,.07);border-radius:9px}
.chat-member-person-row .chat-member-row{border-bottom:0!important}
.chat-member-person-row .salon-contact-card-link{margin-right:6px}
.salon-contact-card-modal{position:fixed;inset:0;z-index:100090;background:rgba(1,8,7,.82);backdrop-filter:blur(12px);display:flex;justify-content:center;align-items:flex-start;padding:max(18px,env(safe-area-inset-top)) 14px max(18px,env(safe-area-inset-bottom));overflow:auto}
.salon-contact-card-modal.hidden{display:none!important}
.salon-contact-card-sheet{width:min(720px,100%);background:#061411;border:1px solid rgba(207,224,217,.13);border-radius:20px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.46)}
.salon-contact-card-sheet>header{min-height:64px;display:flex;align-items:center;gap:12px;padding:11px 14px 11px 18px;background:#0a211d;border-bottom:1px solid rgba(207,224,217,.08)}
.salon-contact-card-sheet>header>div{min-width:0;flex:1}.salon-contact-card-sheet>header span,.salon-contact-card-sheet>header strong{display:block}.salon-contact-card-sheet>header span{font-size:8px;font-weight:700;letter-spacing:.15em;color:#7dc2b7}.salon-contact-card-sheet>header strong{margin-top:3px;font-size:15px;color:#f4f7f5;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.salon-contact-card-sheet>header button{width:40px;height:40px;border:1px solid rgba(207,224,217,.12);border-radius:11px;background:rgba(11,63,60,.18);color:#dce8e4;font-size:25px;cursor:pointer}
.salon-contact-card-body{background:#020706}.salon-contact-card-render{width:100%!important;min-height:0!important;border-radius:0!important;box-shadow:none!important}.salon-contact-card-modal .contact-card-owner-back{display:none!important}
@media(max-width:680px){
  .participant-social-actions{gap:5px}.salon-contact-card-link{min-height:28px;padding:5px 7px!important}.salon-contact-card-link span{font-size:9px}
  .chat-member-person-row{gap:3px}.chat-member-person-row .salon-contact-card-link{margin-right:3px}.chat-member-person-row .salon-contact-card-link span{display:none}.chat-member-person-row .salon-contact-card-link{width:30px;min-width:30px;padding:0!important}
  .message-head{flex-wrap:wrap}.message-head .salon-contact-card-link span{display:none}.message-head .salon-contact-card-link{width:24px;min-width:24px;padding:0!important}
  .salon-contact-card-modal{padding:0;align-items:stretch}.salon-contact-card-sheet{width:100%;min-height:100dvh;border:0;border-radius:0}.salon-contact-card-sheet>header{padding-top:max(11px,env(safe-area-inset-top))}.salon-contact-card-body{min-height:calc(100dvh - 64px)}
}


/* ================================================================
   BONJOUR UI CONTRACT 1.20.96 — INVITATION MOBILE · HORAIRES
   Correctif structurel Safari/iOS : les deux champs horaires restent
   dans leur colonne, avec la même hauteur et sans largeur intrinsèque.
   ================================================================ */
@media (max-width:720px){
  body[data-bonjour-pwa="1"] .social-invite-schedule{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    column-gap:8px!important;row-gap:8px!important;
    align-items:end!important;
  }
  body[data-bonjour-pwa="1"] .social-invite-schedule>div{grid-column:1/-1!important;min-width:0!important}
  body[data-bonjour-pwa="1"] .social-invite-schedule label{
    display:block!important;min-width:0!important;width:100%!important;max-width:100%!important;
    overflow:hidden!important;box-sizing:border-box!important;
  }
  body[data-bonjour-pwa="1"] .social-invite-schedule input[type="time"]{
    display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;
    height:42px!important;min-height:42px!important;max-height:42px!important;
    margin:5px 0 0!important;padding:0 9px!important;box-sizing:border-box!important;
    border-radius:9px!important;font-size:16px!important;font-weight:500!important;line-height:1!important;
    color:#f4f7f5!important;background:#06110f!important;overflow:hidden!important;
  }
  body[data-bonjour-pwa="1"] .social-invite-schedule input[type="time"]::-webkit-date-and-time-value{
    min-width:0!important;padding:0!important;text-align:left!important;
  }
  body[data-bonjour-pwa="1"] .social-invite-schedule input[type="time"]::-webkit-calendar-picker-indicator{
    margin:0!important;padding:0!important;opacity:.72!important;
  }
}
@media (max-width:380px){
  body[data-bonjour-pwa="1"] .social-invite-schedule{column-gap:6px!important}
  body[data-bonjour-pwa="1"] .social-invite-schedule input[type="time"]{padding-inline:7px!important}
}


/* ======================================================================
   BONJOUR UI CONTRACT 1.20.97 — PARTAGE SOCIAL RÉEL · SCÈNE MOBILE
   - Les réseaux renseignés dans la carte de visite deviennent la source UI.
   - Les actions visent uniquement les parcours réellement disponibles :
     Facebook/LinkedIn via leur partage officiel, X via Web Intent,
     Instagram via la feuille de partage native avec la vignette.
   - Aucun mot de passe réseau n'est collecté ni conservé par Bonjour.
   - La scène et ses fenêtres reprennent un axe mobile commun.
   ====================================================================== */
.social-network-source{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;align-items:center;padding:11px 12px;border:1px solid rgba(207,224,217,.10);border-radius:11px;background:rgba(4,20,17,.62)}
.social-network-source>div:first-child{min-width:0}.social-network-source strong,.social-network-source small{display:block}.social-network-source strong{font-size:12px;color:#eff5f2;margin-top:2px}.social-network-source small{font-size:9px;line-height:1.42;color:#839b93;margin-top:4px;max-width:560px}
.social-network-source-chips{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px;max-width:340px}.social-network-source-chip{display:inline-flex;align-items:center;min-height:26px;padding:0 8px;border:1px solid rgba(91,183,171,.17);border-radius:999px;background:rgba(30,103,92,.14);color:#a9d8cf;text-decoration:none;font:750 8.5px/1 Roboto,system-ui,sans-serif;white-space:nowrap}.social-network-source-chip:hover{background:rgba(30,103,92,.24)}.social-network-source-empty{font-size:8.5px;line-height:1.35;color:#7d948c;text-align:right;max-width:260px}
.social-platform-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.social-platform-grid button{grid-template-rows:auto auto auto!important;align-content:center!important}.social-platform-grid button>span{grid-row:1/4!important}.social-platform-grid button em{grid-column:2;display:block;margin-top:2px;color:#66867e;font-style:normal;font-size:7.3px;line-height:1.2}.social-platform-grid button.has-card-source{border-color:rgba(91,183,171,.22)!important;background:linear-gradient(145deg,rgba(8,35,30,.94),rgba(6,27,24,.98))!important}.social-platform-grid button.has-card-source em{color:#83c9bd}.social-platform-grid button.has-card-source>span{border-color:rgba(228,188,87,.20);color:#efd079}

@media(max-width:720px){
  body[data-bonjour-pwa="1"] .social-network-source{grid-template-columns:1fr!important;gap:8px!important;padding:9px!important}
  body[data-bonjour-pwa="1"] .social-network-source strong{font-size:11px!important}
  body[data-bonjour-pwa="1"] .social-network-source small{font-size:8.5px!important}
  body[data-bonjour-pwa="1"] .social-network-source-chips{justify-content:flex-start!important;max-width:none!important}
  body[data-bonjour-pwa="1"] .social-network-source-empty{text-align:left!important;max-width:none!important}
  body[data-bonjour-pwa="1"] .social-platform-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body[data-bonjour-pwa="1"] .social-platform-grid button{min-height:62px!important;padding:8px 7px!important}
  body[data-bonjour-pwa="1"] .social-platform-grid button em{font-size:7px!important}

  /* Une seule largeur de référence pour toute la scène du salon. */
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .stage-wrap{box-sizing:border-box!important;min-width:0!important;width:calc(100% - 24px)!important;max-width:calc(100% - 24px)!important;margin-left:12px!important;margin-right:12px!important;padding-left:0!important;padding-right:0!important;border-radius:16px!important;overflow:hidden!important}
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .control-bar{left:max(12px,env(safe-area-inset-left))!important;right:max(12px,env(safe-area-inset-right))!important}
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .regional-intro,
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .video-grid,
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .empty-stage,
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .audience-strip{width:100%!important;max-width:100%!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important}
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .empty-stage{align-self:stretch!important}
}


/* ======================================================================
   BONJOUR 1.21.57 — CONTRAT SALON MOBILE STABLE
   Une seule géométrie de viewport pour la scène active. Aucun panneau ne
   peut dépasser horizontalement, et les notifications ne masquent plus
   le centre de la scène.
   ====================================================================== */
@media (max-width:720px){
  html,body{max-width:100%!important;overflow-x:hidden!important}
  body[data-bonjour-pwa="1"] .room-view:not(.hidden){
    position:fixed!important;inset:0!important;width:100dvw!important;max-width:100dvw!important;
    height:100dvh!important;min-height:100dvh!important;overflow:hidden!important;
  }
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .room-header{
    width:100%!important;max-width:100%!important;box-sizing:border-box!important;
    padding-left:max(12px,env(safe-area-inset-left))!important;
    padding-right:max(12px,env(safe-area-inset-right))!important;
  }
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .room-body{
    width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important;
  }
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .stage-wrap{
    width:calc(100% - 24px)!important;max-width:calc(100% - 24px)!important;min-width:0!important;
    margin-left:12px!important;margin-right:12px!important;overflow:hidden!important;
  }
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .video-grid,
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .regional-intro,
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .queue-notice,
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .audience-strip,
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .empty-stage{
    width:100%!important;max-width:100%!important;min-width:0!important;margin-left:0!important;margin-right:0!important;
    box-sizing:border-box!important;transform:none!important;
  }
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .empty-stage{
    min-height:132px!important;padding:18px 14px!important;text-align:center!important;
  }
  body[data-bonjour-pwa="1"] .room-chat-quick{
    right:max(12px,env(safe-area-inset-right))!important;left:auto!important;max-width:calc(100vw - 24px)!important;
  }
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .control-bar{
    left:max(12px,env(safe-area-inset-left))!important;right:max(12px,env(safe-area-inset-right))!important;
    width:auto!important;max-width:none!important;box-sizing:border-box!important;
  }
  body[data-bonjour-pwa="1"] .room-view .side-panel:not(.hidden){
    position:fixed!important;inset:0!important;width:100dvw!important;max-width:100dvw!important;height:100dvh!important;
    transform:none!important;box-sizing:border-box!important;overflow:hidden!important;z-index:100180!important;
  }
  /* Fermeture : information compacte sous l'en-tête, jamais un modal central. */
  body[data-bonjour-pwa="1"] .closing-notice:not(.hidden){
    position:fixed!important;left:12px!important;right:12px!important;top:max(82px,calc(env(safe-area-inset-top) + 68px))!important;
    bottom:auto!important;transform:none!important;width:auto!important;max-width:none!important;
    grid-template-columns:32px minmax(0,1fr)!important;gap:8px!important;padding:10px 38px 10px 10px!important;
    border-radius:13px!important;z-index:100150!important;
  }
  body[data-bonjour-pwa="1"] .closing-notice:not(.hidden) .closing-notice-ack{
    grid-column:1/-1!important;min-height:34px!important;width:100%!important;margin-top:0!important;
  }
  body[data-bonjour-pwa="1"] .closing-notice-copy strong{font-size:11.5px!important}
  body[data-bonjour-pwa="1"] .closing-notice-copy p{font-size:9.5px!important;line-height:1.35!important}
  /* Fight est désactivé : même un ancien événement/caché ne doit jamais créer de panneau. */
  body[data-bonjour-pwa="1"] .fight-notice{display:none!important}
}


/* BONJOUR 1.22.32 — CONTRAT VISUEL UNIQUE DU SALON ET DE LA RÉUNION
   Le bouton constitue le SEUL contenant ; le symbole SVG n'a ni fond ni bordure.
   Chargé après styles.css. Conserver les états JS et l'ergonomie de scène. */
body[data-bonjour-pwa="1"] .room-view{
  --bv-gold:linear-gradient(180deg,#ffe37e 0%,#ffd052 54%,#ffb52f 100%);
  --bv-forest:linear-gradient(180deg,#103e37 0%,#092821 100%);
  --bv-ink:#103a31;
  --bv-gold-text:#ffcc59;
  --bv-stroke:rgba(255,208,95,.74);
}
/* 1. L'intégralité du chrome vient du bouton extérieur. */
body[data-bonjour-pwa="1"] .room-view .control-bar .control-button,
body[data-bonjour-pwa="1"] .room-view .local-media-btn,
body[data-bonjour-pwa="1"] .room-view #roomChatQuickBtn{
  align-items:center!important;justify-content:center!important;
flex-direction:column!important;gap:0!important;
  box-sizing:border-box!important;border:1px solid var(--bv-stroke)!important;
  border-radius:12px!important;min-height:38px!important;
  box-shadow:none!important;text-shadow:none!important;
  background:var(--bv-forest)!important;color:var(--bv-gold-text)!important;
  padding:0!important;cursor:pointer!important;
}
/* Aucun état .hidden n'est remplacé par la charte graphique. */
body[data-bonjour-pwa="1"] .room-view .control-bar .control-button:not(.hidden),
body[data-bonjour-pwa="1"] .room-view .local-media-btn:not(.hidden){display:flex!important}
body[data-bonjour-pwa="1"] .room-view .control-bar .control-button.hidden,
body[data-bonjour-pwa="1"] .room-view .local-media-btn.hidden,
body[data-bonjour-pwa="1"] .room-view #roomChatQuickBtn.hidden{display:none!important}
body[data-bonjour-pwa="1"] .room-view .control-bar .control-button .control-icon,
body[data-bonjour-pwa="1"] .room-view .local-media-btn .local-media-glyph,
body[data-bonjour-pwa="1"] .room-view #roomChatQuickBtn .room-chat-quick-icon{
  display:grid!important;place-items:center!important;flex:0 0 auto!important;
  position:static!important;width:24px!important;height:24px!important;min-width:0!important;min-height:0!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;background-image:none!important;box-shadow:none!important;
  color:inherit!important;font-size:0!important;line-height:1!important;
}
body[data-bonjour-pwa="1"] .room-view .control-bar .control-button .control-icon svg,
body[data-bonjour-pwa="1"] .room-view .local-media-btn svg,
body[data-bonjour-pwa="1"] .room-view #roomChatQuickBtn svg,
body[data-bonjour-pwa="1"] .room-view #toggleParticipantsBtn svg{
  display:block!important;width:20px!important;height:20px!important;
  stroke:currentColor!important;stroke-width:1.8!important;stroke-linecap:round!important;stroke-linejoin:round!important;
  fill:none!important;transform:none!important;vertical-align:middle!important;
}
body[data-bonjour-pwa="1"] .room-view #moreBtn svg circle{fill:currentColor!important;stroke:none!important}
/* Boutons d'action jaunes, pictos sombres, un seul relief sobre. */
body[data-bonjour-pwa="1"] .room-view .control-bar :is(#micBtn,#camBtn,#flipCameraQuickBtn,#castBtn,#broadcastBtn,#roomChatBtn),
body[data-bonjour-pwa="1"] .room-view .local-media-btn,
body[data-bonjour-pwa="1"] .room-view #roomChatQuickBtn{
  background:var(--bv-gold)!important;border-color:rgba(255,223,132,.86)!important;
  color:var(--bv-ink)!important;
}
/* Partage d'écran, fichiers et menus : vert sombre bordure et icône or. */
body[data-bonjour-pwa="1"] .room-view .control-bar :is(#shareBtn,#roomFilesBtn,#inviteFooterBtn,#moreBtn,#raiseHandBtn){
  background:var(--bv-forest)!important;border-color:var(--bv-stroke)!important;color:var(--bv-gold-text)!important;
}
body[data-bonjour-pwa="1"] .room-view .control-bar :is(#micBtn,#camBtn,#shareBtn,#broadcastBtn,#castBtn).off,
body[data-bonjour-pwa="1"] .room-view .control-bar #broadcastBtn.broadcasting,
body[data-bonjour-pwa="1"] .room-view .local-media-btn.off{
  background:var(--bv-forest)!important;border-color:rgba(255,208,95,.50)!important;
  color:var(--bv-gold-text)!important;
}
body[data-bonjour-pwa="1"] .room-view .control-button:disabled,
body[data-bonjour-pwa="1"] .room-view .local-media-btn:disabled{opacity:.42!important;cursor:not-allowed!important}
/* Dock : alignement géométrique stable sans toucher au mécanisme des commandes. */
body[data-bonjour-pwa="1"] .room-view .control-bar{
  align-items:center!important;border-color:rgba(243,205,111,.16)!important;
  background:linear-gradient(180deg,rgba(4,27,23,.97),rgba(3,20,17,.98))!important;
}
body[data-bonjour-pwa="1"] .room-view .control-bar .control-group{align-items:center!important;gap:7px!important}
body[data-bonjour-pwa="1"] .room-view .control-bar .control-button{width:44px!important;min-width:44px!important;height:44px!important;min-height:44px!important}
/* Uniquement le pictogramme est visible dans le dock compact ; le libellé reste sémantique. */
body[data-bonjour-pwa="1"] .room-view .control-bar .control-button>span:not(.control-icon):not(.badge):not(.mini-badge){
  position:absolute!important;width:1px!important;height:1px!important;min-width:1px!important;
  padding:0!important;margin:0!important;overflow:hidden!important;
  white-space:nowrap!important;clip-path:inset(50%)!important;
}
body[data-bonjour-pwa="1"] .room-view .leave-button{
  border:0!important;border-radius:12px!important;background:linear-gradient(180deg,#fff,#e2e8e6)!important;
  color:#123c32!important;box-shadow:none!important;font-weight:750!important;
}
/* Sur la vidéo : les 3 commandes sont identiques et leur groupe est transparent. */
body[data-bonjour-pwa="1"] .room-view .local-media-controls{
  display:flex!important;align-items:center!important;justify-content:center!important;
  gap:5px!important;margin:0!important;padding:0!important;
  border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;
}
body[data-bonjour-pwa="1"] .room-view .local-media-btn{
  width:34px!important;min-width:34px!important;height:34px!important;min-height:34px!important;
  border-radius:10px!important;
}
body[data-bonjour-pwa="1"] .room-view .local-media-btn svg{width:18px!important;height:18px!important}
/* Discussions flottant : accès unique mobile. Aucun bouton géant sur tablette/PC. */
body[data-bonjour-pwa="1"] .room-view #roomChatQuickBtn{display:none!important}
@media(max-width:720px){
  body[data-bonjour-pwa="1"] .room-view .control-bar #roomChatBtn{display:none!important}
  body[data-bonjour-pwa="1"] .room-view #roomChatQuickBtn{position:absolute!important;left:auto!important;right:max(12px,env(safe-area-inset-right))!important;width:max-content!important;max-width:calc(100vw - 24px)!important}

  body[data-bonjour-pwa="1"] .room-view #roomChatQuickBtn:not(.hidden){
    display:inline-flex!important;flex-direction:row!important;gap:7px!important;
    min-height:43px!important;width:auto!important;padding:0 13px!important;
    border-radius:13px!important;
  }
  body[data-bonjour-pwa="1"] .room-view #roomChatQuickBtn .room-chat-quick-icon{width:22px!important;height:22px!important}
  body[data-bonjour-pwa="1"] .room-view #roomChatQuickBtn .room-chat-quick-copy{
    display:flex!important;align-items:center!important;justify-content:center!important;
  }
  body[data-bonjour-pwa="1"] .room-view #roomChatQuickBtn .room-chat-quick-copy strong{
    color:var(--bv-ink)!important;font-size:12px!important;font-weight:750!important;line-height:1!important;
  }
  body[data-bonjour-pwa="1"] .room-view #roomChatQuickBtn .room-chat-quick-copy small{display:none!important}
  body[data-bonjour-pwa="1"] .room-view .control-bar .control-group{gap:4px!important}
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .control-bar #mediaControls .control-button,
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .control-bar .center-controls .control-button{
    width:38px!important;min-width:38px!important;height:40px!important;min-height:40px!important;border-radius:11px!important;
  }
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .control-bar .control-icon{width:22px!important;height:22px!important}
  body[data-bonjour-pwa="1"] .room-view:not(.broadcast-mode) .control-bar .control-button .control-icon svg{width:19px!important;height:19px!important}
  body[data-bonjour-pwa="1"] .room-view .leave-button{height:42px!important;border-radius:12px!important}
}
/* En-tête Inviter/Participants : vert uni, or fin, pictogrammes sans fond. */
body[data-bonjour-pwa="1"] .room-view .room-header :is(#inviteBtn,#toggleParticipantsBtn){
  display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:7px!important;
  border:1px solid rgba(255,205,89,.60)!important;
  background:var(--bv-forest)!important;color:var(--bv-gold-text)!important;
  border-radius:12px!important;box-shadow:none!important;
}
body[data-bonjour-pwa="1"] .room-view .room-header :is(#inviteBtn,#toggleParticipantsBtn) :is(.bonjour-invite-link-icon,.bonjour-header-icon){
  display:grid!important;place-items:center!important;width:22px!important;height:22px!important;
  margin:0!important;padding:0!important;border:0!important;border-radius:0!important;
  background:transparent!important;box-shadow:none!important;color:inherit!important;
}
body[data-bonjour-pwa="1"] .room-view .room-header #toggleParticipantsBtn svg{width:20px!important;height:20px!important}
/* Panneau de droite : moins d'ombres, textes nets, un accent or pour l'élément actif. */
body[data-bonjour-pwa="1"] .room-view .side-panel{
  background:linear-gradient(180deg,#082a25 0%,#051a17 100%)!important;
  border-left:1px solid rgba(255,208,95,.18)!important;
}
body[data-bonjour-pwa="1"] .room-view .side-tabs{background:#082a25!important;border-bottom:1px solid rgba(255,208,95,.15)!important}
body[data-bonjour-pwa="1"] .room-view .side-tab{
  background:transparent!important;border:1px solid transparent!important;color:#c4d8d1!important;
  border-radius:9px!important;box-shadow:none!important;font-weight:700!important;
}
body[data-bonjour-pwa="1"] .room-view .side-tab.active{
  background:var(--bv-forest)!important;border-color:var(--bv-stroke)!important;
  color:var(--bv-gold-text)!important;
}
body[data-bonjour-pwa="1"] .room-view .panel-close{
  color:var(--bv-gold-text)!important;border:1px solid rgba(255,208,95,.38)!important;
  background:var(--bv-forest)!important;border-radius:11px!important;
}
body[data-bonjour-pwa="1"] .room-view .chat-panel{background:transparent!important}
body[data-bonjour-pwa="1"] .room-view .chat-experience-tab.active{
  background:var(--bv-forest)!important;border:1px solid var(--bv-stroke)!important;
  color:var(--bv-gold-text)!important;
}
body[data-bonjour-pwa="1"] .room-view .chat-form textarea{
  border-color:rgba(255,208,95,.20)!important;background:#071f1b!important;color:#f7faf8!important;
}
body[data-bonjour-pwa="1"] .room-view .chat-form button,
body[data-bonjour-pwa="1"] .room-view .chat-members-new,
body[data-bonjour-pwa="1"] .room-view .private-chat-compose button{
  background:var(--bv-gold)!important;color:var(--bv-ink)!important;
  border:1px solid rgba(255,223,132,.85)!important;box-shadow:none!important;
}
body[data-bonjour-pwa="1"] .room-view .chat-form button svg{fill:none!important;stroke:currentColor!important;stroke-width:1.8!important}
body[data-bonjour-pwa="1"] .room-view .participant-row,
body[data-bonjour-pwa="1"] .room-view .request-row{
  background:rgba(4,30,25,.68)!important;border-radius:11px!important;border:1px solid rgba(255,208,95,.09)!important;
}
body[data-bonjour-pwa="1"] .room-view .message p{background:#113a33!important;border:1px solid rgba(255,208,95,.10)!important}
body[data-bonjour-pwa="1"] .room-view .message.mine p{background:linear-gradient(145deg,#16574b,#0e4037)!important;border-color:rgba(255,208,95,.22)!important}
body[data-bonjour-pwa="1"] .room-view .message-private,
body[data-bonjour-pwa="1"] .room-view .private-chat-trigger,
body[data-bonjour-pwa="1"] .room-view .row-actions button{
  background:var(--bv-forest)!important;border:1px solid rgba(255,208,95,.38)!important;
  color:var(--bv-gold-text)!important;
}
/* chat-focused reste plein écran sans masquage d'actions : pas de changement de navigation. */
@media(max-width:720px){
  body[data-bonjour-pwa="1"] .room-view .side-panel.chat-focused{
    background:linear-gradient(180deg,#082a25,#051a17)!important;
  }
  body[data-bonjour-pwa="1"] .room-view .side-panel.chat-focused .side-tabs{background:#082a25!important}
  body[data-bonjour-pwa="1"] .room-view .side-panel.chat-focused #chatTab{
    background:transparent!important;color:var(--bv-gold-text)!important;border:0!important;
  }
}

/* Les conversations privées sont montées hors de roomView ; la charte doit donc
   aussi couvrir leur tiroir autonome, sans modifier leur logique. */
body[data-bonjour-pwa="1"] .private-chat-drawer{
  border:1px solid rgba(255,208,95,.22)!important;
  background:linear-gradient(180deg,#082a25 0%,#051a17 100%)!important;
  box-shadow:0 22px 46px rgba(0,0,0,.35)!important;
}
body[data-bonjour-pwa="1"] .private-chat-head,
body[data-bonjour-pwa="1"] .private-chat-status,
body[data-bonjour-pwa="1"] .private-chat-continuity{background:#082721!important}
body[data-bonjour-pwa="1"] .private-chat-head strong,
body[data-bonjour-pwa="1"] .private-chat-continuity a{color:#ffd05a!important}
body[data-bonjour-pwa="1"] .private-chat-compose textarea{
  border:1px solid rgba(255,208,95,.18)!important;
  background:#061d19!important;color:#f7faf8!important;
}
body[data-bonjour-pwa="1"] .private-chat-compose button,
body[data-bonjour-pwa="1"] .room-view #roomSendFilesBtn{
  background:linear-gradient(180deg,#ffe37e 0%,#ffd052 54%,#ffb52f 100%)!important;
  border:1px solid rgba(255,223,132,.85)!important;color:#103a31!important;box-shadow:none!important;
}
body[data-bonjour-pwa="1"] .room-view .room-header #toggleChatBtn{
  background:linear-gradient(180deg,#ffe37e 0%,#ffd052 54%,#ffb52f 100%)!important;
  color:#103a31!important;border:1px solid rgba(255,223,132,.85)!important;
}
body[data-bonjour-pwa="1"] .room-view .side-panel.chat-focused #chatTab::before{color:#ffd05a!important}
