/* Fabronex Hub — Messagerie interne */
.hub-messenger-btn{position:relative}
.hub-messenger-btn .hub-msg-count{position:absolute;right:-4px;top:-4px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#c69a3b;color:#fff;display:grid;place-items:center;font-size:9px;font-weight:900;border:2px solid #fff}
.hub-messenger-btn .hub-msg-count[hidden]{display:none}
.hub-messenger-shell{position:fixed;inset:0;z-index:260;display:none;align-items:center;justify-content:center;padding:18px}
.hub-messenger-shell.open{display:flex}
.hub-messenger-backdrop{position:absolute;inset:0;background:rgba(9,31,50,.38);backdrop-filter:blur(8px)}
.hub-messenger-dialog{position:relative;z-index:1;width:min(1080px,96vw);height:min(720px,90vh);display:grid;grid-template-columns:310px 1fr;overflow:hidden;border:1px solid #dbe4eb;border-radius:22px;background:#fff;box-shadow:0 28px 90px rgba(15,43,66,.24)}
.hub-messenger-list{display:flex;flex-direction:column;min-width:0;background:#103654;color:#fff}
.hub-messenger-list-head{padding:18px 16px 14px;border-bottom:1px solid rgba(255,255,255,.10);display:flex;align-items:flex-start;justify-content:space-between;gap:10px}
.hub-messenger-list-head h2{margin:2px 0 0;font-size:20px}.hub-messenger-list-head .eyebrow{color:#d6b167}
.hub-messenger-new{border:1px solid rgba(214,177,103,.5);background:rgba(214,177,103,.12);color:#f7e4bb;border-radius:10px;width:38px;height:38px;font-size:19px;cursor:pointer}
.hub-conversation-list{padding:10px;overflow:auto;flex:1}
.hub-conversation{width:100%;border:0;border-radius:13px;background:transparent;color:#edf4f8;padding:11px;display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;text-align:left;cursor:pointer}
.hub-conversation:hover,.hub-conversation.active{background:rgba(255,255,255,.09)}
.hub-conversation-avatar,.hub-message-avatar{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#17435f;color:#d6b167;font-weight:900;border:1px solid rgba(214,177,103,.25)}
.hub-conversation-copy{min-width:0}.hub-conversation-copy strong{display:block;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hub-conversation-copy small{display:block;color:#aac2d2;font-size:10px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hub-conversation-meta{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.hub-conversation-meta time{font-size:9px;color:#9db6c8}.hub-conversation-meta b{min-width:18px;height:18px;border-radius:999px;background:#c69a3b;color:#fff;display:grid;place-items:center;font-size:9px}
.hub-conversation-empty{padding:24px 14px;color:#b8ccda;text-align:center;font-size:11px;line-height:1.5}
.hub-messenger-main{display:flex;min-width:0;flex-direction:column;background:#f4f7fa}
.hub-messenger-main-head{height:72px;padding:12px 16px;border-bottom:1px solid #dde6ed;background:#fff;display:flex;align-items:center;justify-content:space-between;gap:12px}
.hub-messenger-peer{display:flex;align-items:center;gap:10px;min-width:0}.hub-messenger-peer strong{display:block;color:#173b57;font-size:13px}.hub-messenger-peer small{display:block;color:#788f9f;font-size:10px;margin-top:2px}
.hub-messenger-close,.hub-messenger-rename{border:1px solid #d7e2ea;background:#fff;color:#35546b;border-radius:10px;height:36px;padding:0 11px;cursor:pointer}.hub-messenger-close{font-size:20px;width:38px;padding:0}
.hub-messenger-messages{flex:1;overflow:auto;padding:18px;display:flex;flex-direction:column;gap:10px}
.hub-message{display:flex;gap:9px;align-items:flex-end;max-width:82%}.hub-message.mine{align-self:flex-end;flex-direction:row-reverse}.hub-message-bubble{background:#fff;border:1px solid #dae5ed;border-radius:16px 16px 16px 5px;padding:9px 11px;box-shadow:0 5px 16px rgba(23,59,87,.05)}
.hub-message.mine .hub-message-bubble{background:#103654;color:#fff;border-color:#103654;border-radius:16px 16px 5px 16px}.hub-message-bubble strong{display:block;font-size:9px;margin-bottom:4px;color:#956d2d}.hub-message.mine .hub-message-bubble strong{color:#e5c981}.hub-message-bubble p{margin:0;font-size:12px;line-height:1.42;white-space:pre-wrap;overflow-wrap:anywhere}.hub-message-bubble time{display:block;margin-top:5px;font-size:8px;opacity:.64;text-align:right}
.hub-messenger-composer{padding:12px 14px calc(12px + env(safe-area-inset-bottom));border-top:1px solid #dce5ec;background:#fff;display:grid;grid-template-columns:1fr auto;gap:9px}.hub-messenger-composer textarea{resize:none;min-height:44px;max-height:120px;border:1px solid #ccdbe6;border-radius:12px;padding:11px 12px;font:inherit;font-size:12px;outline:0}.hub-messenger-composer textarea:focus{border-color:#7eb9d8;box-shadow:0 0 0 3px rgba(94,182,223,.12)}.hub-messenger-composer button{border:0;border-radius:12px;background:#c69a3b;color:#fff;font-weight:900;padding:0 18px;cursor:pointer}
.hub-messenger-placeholder{margin:auto;text-align:center;color:#7b91a1;padding:25px}.hub-messenger-placeholder span{font-size:40px}.hub-messenger-placeholder strong{display:block;color:#173b57;font-size:16px;margin-top:8px}.hub-messenger-placeholder small{display:block;margin-top:5px;line-height:1.5}
.hub-new-conversation{position:absolute;z-index:3;inset:0;display:none;align-items:center;justify-content:center;padding:18px;background:rgba(10,31,49,.32);backdrop-filter:blur(5px)}.hub-new-conversation.open{display:flex}.hub-new-card{width:min(430px,100%);max-height:80vh;overflow:auto;border-radius:18px;background:#fff;border:1px solid #dbe4eb;padding:16px;box-shadow:0 24px 70px rgba(15,43,66,.22)}.hub-new-card h3{margin:2px 0 4px;color:#153b58}.hub-new-card>p{margin:0 0 12px;color:#768d9f;font-size:11px}.hub-new-contacts{display:flex;flex-direction:column;gap:6px}.hub-new-contact{display:flex;align-items:center;gap:9px;border:1px solid #dce5ec;border-radius:11px;padding:9px}.hub-new-contact input{width:17px;height:17px}.hub-new-contact span{width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:#edf4f8;color:#244b68;font-weight:900}.hub-new-contact strong{font-size:11px;color:#1c405c}.hub-new-contact small{display:block;color:#7d92a3;font-size:9px}.hub-new-title{margin-top:10px}.hub-new-title input{width:100%;border:1px solid #d5e1e9;border-radius:10px;padding:10px}.hub-new-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:13px}.hub-new-actions button{border:1px solid #d5e1e9;background:#fff;border-radius:10px;padding:9px 12px;font-weight:800;cursor:pointer}.hub-new-actions .primary{background:#103654;color:#fff;border-color:#103654}
.hub-messenger-mode{padding:8px 14px;border-top:1px solid rgba(255,255,255,.08);color:#9fb8c9;font-size:9px}
@media(max-width:760px){
 .hub-messenger-shell{padding:0;align-items:stretch}.hub-messenger-dialog{width:100%;height:100%;max-height:none;border:0;border-radius:0;grid-template-columns:1fr}.hub-messenger-list{position:absolute;z-index:2;inset:0;background:#103654}.hub-messenger-dialog.conversation-open .hub-messenger-list{display:none}.hub-messenger-main{min-height:0}.hub-messenger-main-head{height:64px;padding:8px 10px}.hub-messenger-messages{padding:12px}.hub-message{max-width:92%}.hub-messenger-composer{padding:8px 8px calc(8px + env(safe-area-inset-bottom))}.hub-messenger-composer button{padding:0 13px}.hub-messenger-close[data-mobile-back]{display:inline-grid;place-items:center}.hub-messenger-rename{max-width:110px;overflow:hidden;text-overflow:ellipsis}
}
@media(min-width:761px){.hub-messenger-close[data-mobile-back]{display:none}}

.hub-messenger-home-back{
  display:none;
  border:0;
  background:transparent;
  color:#eef4f8;
  padding:0;
  margin:0 0 10px;
  font-weight:800;
  font-size:12px;
  align-items:center;
  gap:6px;
  cursor:pointer
}
.hub-messenger-home-back span{font-size:11px}
@media(max-width:760px){
  .hub-messenger-home-back{display:inline-flex}
  .hub-messenger-list-head{align-items:flex-start;padding-top:max(16px,env(safe-area-inset-top))}
  .hub-messenger-list-title{min-width:0}
}
