/* TM WORK OS Messenger – staging candidate M2 / strictly namespaced */
#tmchat-root{position:fixed;z-index:9990;inset:0;pointer-events:none;font-family:inherit;color:#f4eddd}#tmchat-root *{box-sizing:border-box}
#tmchat-root[hidden],#tmchat-root [hidden]{display:none!important}
.tmchat-launch{pointer-events:auto;position:absolute;bottom:24px;right:24px;border:1px solid rgba(255,215,137,.36);background:linear-gradient(135deg,#3a2b18,#121116 62%);color:#f6e1b6;box-shadow:0 18px 45px rgba(0,0,0,.3),0 0 28px rgba(208,160,80,.16);border-radius:50px;padding:15px 19px;font-weight:760;letter-spacing:.3px;display:flex;align-items:center;gap:10px;transition:transform .2s}
.tmchat-launch:hover{transform:translateY(-3px)}.tmchat-launch span{font-size:17px}
.tmchat-shade{pointer-events:auto;position:absolute;inset:0;background:rgba(3,4,7,.56);backdrop-filter:blur(9px)}
.tmchat-pane{pointer-events:auto;position:absolute;right:22px;bottom:18px;width:min(940px,calc(100vw - 44px));height:min(740px,calc(100dvh - 38px));background:linear-gradient(145deg,#1e1c21 0%,#101216 50%,#18171b 100%);border:1px solid rgba(230,191,120,.32);border-radius:24px;box-shadow:0 35px 95px rgba(0,0,0,.62), inset 0 1px 0 rgba(255,238,205,.07);overflow:hidden;display:flex}
.tmchat-list{width:288px;flex:none;background:rgba(13,13,17,.7);border-right:1px solid rgba(226,188,130,.15);display:flex;flex-direction:column;min-width:0}
.tmchat-list-head{padding:23px 19px 14px;border-bottom:1px solid rgba(255,255,255,.06)}.tmchat-eyebrow{letter-spacing:2.6px;text-transform:uppercase;color:#bd9862;font-size:10px;font-weight:800}.tmchat-list h2{font-size:23px;letter-spacing:-.5px;margin:7px 0 15px}.tmchat-tools{display:flex;gap:7px;flex-wrap:wrap}
.tmchat-btn{border:1px solid rgba(224,186,119,.26);border-radius:10px;color:#ead0a3;background:rgba(222,179,104,.09);padding:8px 11px;font-size:12px;font-weight:700}.tmchat-btn:hover{background:rgba(215,168,92,.2)}.tmchat-btn:disabled{opacity:.4;cursor:default}.tmchat-btn.primary{background:linear-gradient(120deg,#cba364,#9e733a);color:#17120d;border:none}.tmchat-close{margin-left:auto;background:transparent;border:none;color:#eee4d4;font-size:23px;padding:0 5px}
.tmchat-entries{flex:1;overflow:auto;padding:9px}.tmchat-entry{width:100%;display:flex;gap:10px;align-items:center;text-align:left;color:#eae1d4;border:1px solid transparent;background:transparent;padding:11px 10px;border-radius:12px;cursor:pointer}.tmchat-entry:hover,.tmchat-entry.active{background:rgba(216,172,102,.12);border-color:rgba(220,176,110,.13)}.tmchat-avatar{width:36px;height:36px;border-radius:13px;display:grid;place-items:center;background:linear-gradient(130deg,#3e3430,#89663d);font-weight:900;color:#fff2d9;flex:none}.tmchat-entry strong,.tmchat-entry small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:185px}.tmchat-entry strong{font-size:13px}.tmchat-entry small{color:#a49887;font-size:11px;margin-top:3px}
.tmchat-stage{min-width:0;flex:1;display:flex;flex-direction:column}.tmchat-head{flex:none;display:flex;align-items:center;gap:13px;padding:17px 20px;border-bottom:1px solid rgba(228,187,115,.14);background:rgba(232,178,82,.035)}.tmchat-head b{font-size:16px}.tmchat-head p{margin:3px 0 0;font-size:11px;color:#a59b8e}.tmchat-title{flex:1;min-width:0}.tmchat-mobileback{display:none}
.tmchat-feed{flex:1;overflow-y:auto;padding:23px 20px;display:flex;flex-direction:column;gap:12px;scrollbar-color:#544638 transparent;overscroll-behavior:contain}.tmchat-bubble{align-self:flex-start;max-width:80%;border:1px solid rgba(225,189,127,.12);padding:11px 14px;border-radius:16px 16px 16px 5px;background:rgba(231,225,206,.075);white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.5;font-size:13px}.tmchat-bubble.mine{align-self:flex-end;background:linear-gradient(130deg,rgba(174,125,57,.29),rgba(96,64,34,.4));border-radius:16px 16px 5px 16px}.tmchat-bubble small{display:block;font-size:10px;color:#b7a996;margin-top:5px}.tmchat-empty{padding:24px;color:#b7a996;font-size:13px;text-align:center;margin:auto;max-width:320px;line-height:1.65}.tmchat-error{color:#ffb2a7;font-size:12px;padding:0 16px 9px;min-height:13px}.tmchat-compose{display:flex;align-items:flex-end;gap:10px;padding:13px 16px 15px;border-top:1px solid rgba(225,186,118,.13);background:rgba(0,0,0,.14)}.tmchat-compose textarea{flex:1;resize:none;min-height:45px;max-height:140px;background:rgba(255,255,255,.05);color:#f8f3eb;border:1px solid rgba(226,185,120,.19);border-radius:12px;padding:12px;font-size:13px}.tmchat-compose textarea::placeholder{color:#8d8173}.tmchat-compose button{height:42px}
.tmchat-chooser{position:absolute;inset:0;background:rgba(7,6,9,.82);display:grid;place-items:center;padding:24px}.tmchat-chooser-box{background:#1d1a1d;border:1px solid rgba(227,184,117,.25);width:min(480px,100%);max-height:80vh;overflow:auto;border-radius:20px;padding:22px}.tmchat-chooser-box h3{margin:0 0 15px}.tmchat-people{display:grid;gap:8px}.tmchat-person{display:block;text-align:left;width:100%;padding:12px;border:1px solid rgba(227,184,117,.18);border-radius:11px;background:rgba(255,255,255,.04);color:#f5eddc}.tmchat-person small{display:block;color:#a39b8a;margin-top:3px}.tmchat-input{width:100%;padding:12px;border:1px solid rgba(227,184,117,.21);background:#151419;color:white;border-radius:11px;margin-bottom:12px}
@media(max-width:720px){.tmchat-pane{inset:0;width:100%;height:100dvh;border-radius:0;border:0}.tmchat-list{width:100%}.tmchat-pane.has-active .tmchat-list{display:none}.tmchat-stage{display:none}.tmchat-pane.has-active .tmchat-stage{display:flex}.tmchat-mobileback{display:inline-flex}.tmchat-feed{padding:16px}.tmchat-launch{right:18px;bottom:calc(18px + env(safe-area-inset-bottom));padding:15px}.tmchat-compose{padding-bottom:calc(14px + env(safe-area-inset-bottom))}}
@media(prefers-reduced-motion:reduce){#tmchat-root *{transition:none!important;animation:none!important}}

/* M2 MOBILE HOTFIX 2026-10-18: float above TM WORK OS mobile bottom navigation.
   Navigation renders at <= 880px; include device safe-area inset (iPhone).
   Isolated to chat launcher; does not affect existing dashboard nav. */
@media (max-width:880px){
  #tmchat-root .tmchat-launch{
    right:18px;
    bottom:calc(88px + env(safe-area-inset-bottom, 0px));
  }
}
