#office-chat-launcher{position:fixed;right:24px;bottom:24px;z-index:55;display:flex;align-items:center;gap:10px;min-height:52px;padding:12px 18px;border:1px solid var(--line);border-radius:18px;background:var(--card);color:var(--fg);font-family:inherit;font-size:16px;font-weight:600;box-shadow:0 4px 16px #30251b12}#office-chat-launcher svg{width:22px;height:22px}[data-office-unread]{border-radius:100px;padding:2px 7px;font-size:14px;background:var(--action);color:white}[data-office-unread][hidden]{display:none}
.office-chat,.office-avatar-picker{color:var(--fg);background:var(--card);border:1px solid var(--line);font-size:16px;box-shadow:0 16px 60px #32261825}.office-chat{position:fixed;inset:12px 12px 12px auto;margin:0;width:min(440px,calc(100vw - 24px));max-width:none;height:calc(100dvh - 24px);max-height:none;border-radius:24px;padding:0}.office-chat[open]{display:flex;flex-direction:column}.office-chat::backdrop,.office-avatar-picker::backdrop{background:#33291e33}.office-chat header,.office-avatar-picker header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px;border-bottom:1px solid var(--line)}.office-chat h2,.office-avatar-picker h2{margin:0;font-size:23px;line-height:1.3}.office-chat header p{margin:5px 0 0;color:var(--muted);font-size:14px}.office-chat header button,.office-avatar-picker header button{display:grid;place-items:center;flex:none;width:44px;height:44px;background:transparent;border:1px solid var(--line);border-radius:14px;color:inherit}.office-chat button,.office-avatar-picker button{cursor:pointer;font-size:16px}.office-chat button:focus-visible,.office-avatar-picker button:focus-visible,#office-chat-launcher:focus-visible,.office-member:focus-visible{outline:3px solid var(--action);outline-offset:3px}.office-chat button:disabled,.office-avatar-picker button:disabled{opacity:.6;cursor:wait}
.office-chat-options{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line)}.office-chat-options button{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:inherit;min-height:44px;padding:0}.office-chat-options .office-avatar{width:36px;height:36px}.office-chat-options label{display:flex;align-items:center;gap:6px;min-height:44px;font-size:14px;cursor:pointer}.office-chat-options input{width:18px;height:18px;accent-color:var(--action)}.office-messages{flex:1;overflow:auto;min-height:0;padding:20px;overscroll-behavior:contain}.office-message{display:flex;align-items:flex-start;gap:10px;margin-bottom:24px}.office-message>.office-avatar{width:40px;height:40px}.office-message-content{min-width:0;flex:1}.office-message-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.office-message-meta strong{font-size:16px}.office-message-meta time{font-size:14px;color:var(--muted)}.office-message p{margin:8px 0 0;padding:12px 14px;border-radius:4px 16px 16px 16px;background:var(--soft);line-height:1.55;white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px}.office-message.mine p{background:var(--soft)}.office-message em{color:var(--muted);font-size:16px}.office-retract{border:0;background:transparent;color:var(--muted);min-height:44px;padding:8px 0;font-size:14px!important;text-decoration:underline;text-underline-offset:3px}.office-chat-empty{padding:30px 10px;text-align:center;line-height:1.6}.office-chat-empty strong{font-size:19px}.office-chat-empty p{color:var(--muted)}.office-chat form{padding:16px 20px 20px;border-top:1px solid var(--line);background:var(--card)}.office-chat form label{display:block;font-size:16px;font-weight:600;margin-bottom:8px}.office-chat textarea{display:block;width:100%;resize:vertical;max-height:160px;min-height:80px;border:1px solid var(--line);border-radius:14px;padding:12px;color:var(--fg);background:var(--field);font:inherit;line-height:1.5}.office-chat textarea:focus{outline:2px solid var(--action);outline-offset:2px}.office-send-row{display:flex;gap:12px;justify-content:space-between;align-items:center}.office-send-row span{font-size:14px;color:var(--muted)}.office-send-row button{min-height:44px;border:0;border-radius:14px;padding:10px 22px;background:var(--action);color:var(--action-text);font-weight:600}.office-chat #office-chat-error,.office-avatar-picker #office-avatar-error{margin:8px 0;color:#a33224;font-size:14px;line-height:1.5}.office-chat #office-chat-error:empty{margin:4px 0}
.office-avatar-picker{padding:0;border-radius:24px;max-width:430px;width:calc(100vw - 32px)}.office-avatar-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;padding:24px}.office-avatar-grid button{padding:4px;border:2px solid transparent;border-radius:18px;background:transparent;min-height:52px}.office-avatar-grid button[aria-pressed=true]{border-color:var(--action);background:var(--soft)}.office-avatar-picker #office-avatar-error{padding:0 24px}.office-member{position:relative;display:flex;align-items:center;gap:12px;min-width:64px;padding:10px;border:0;background:transparent;color:inherit;cursor:pointer;font-size:16px;text-align:left}.office-presence{flex:none;margin-left:auto;width:12px;height:12px;border-radius:50%;border:2px solid var(--card);background:var(--muted)}.office-presence.online{background:#528064}
@media(max-width:600px){.office-chat{inset:0;width:100%;height:100dvh;border-radius:0;border:0}.office-chat header{padding:16px}.office-messages{padding:16px}.office-chat-options{padding:8px 16px}.office-chat form{padding:12px 16px max(16px,env(safe-area-inset-bottom))}.office-send-row span{display:none}#office-chat-launcher{right:14px;bottom:16px;padding:10px 14px;min-height:48px}.office-avatar-grid{gap:5px;padding:16px}.office-avatar-grid .office-avatar{width:44px;height:44px}.office-chat-options button span:not(.office-avatar){font-size:14px}}
@media(prefers-reduced-motion:reduce){.office-chat *,.office-avatar-picker *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.office-member-name{min-width:0;flex:1}.office-member-name strong{display:block;font-size:16px;overflow-wrap:anywhere}.office-member-name small{display:block;font-size:14px;color:var(--muted);margin-top:4px}
#office-chat{z-index:80}

/* Corporate portrait atlas: six women followed by six men, four by three. */
.workspace .office-avatar{background-image:url('corporate-team-avatars-3d.png')!important;background-size:400% 300%!important;background-repeat:no-repeat!important}
.workspace .office-avatar[data-avatar=avatar-1]{background-position:0% 0%!important}
.workspace .office-avatar[data-avatar=avatar-2]{background-position:33.333333% 0%!important}
.workspace .office-avatar[data-avatar=avatar-3]{background-position:66.666667% 0%!important}
.workspace .office-avatar[data-avatar=avatar-4]{background-position:100% 0%!important}
.workspace .office-avatar[data-avatar=avatar-5]{background-position:0% 50%!important}
.workspace .office-avatar[data-avatar=avatar-6]{background-position:33.333333% 50%!important}
.workspace .office-avatar[data-avatar=avatar-7]{background-position:66.666667% 50%!important}
.workspace .office-avatar[data-avatar=avatar-8]{background-position:100% 50%!important}
.workspace .office-avatar[data-avatar=avatar-9]{background-position:0% 100%!important}
.workspace .office-avatar[data-avatar=avatar-10]{background-position:33.333333% 100%!important}
.workspace .office-avatar[data-avatar=avatar-11]{background-position:66.666667% 100%!important}
.workspace .office-avatar[data-avatar=avatar-12]{background-position:100% 100%!important}
.office-avatar-grid{grid-template-columns:repeat(4,1fr)}
#office-chat-launcher{border-radius:100px;gap:12px;padding:12px 18px}
.office-launcher-copy{display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.office-launcher-copy strong{font-size:16px}
.office-launcher-copy small{font-size:14px;font-weight:400;color:var(--muted)}
#office-launcher-faces{display:flex;padding-left:5px}
#office-launcher-faces:empty{display:none}
.workspace #office-launcher-faces .office-avatar{width:30px;height:30px;margin-left:-5px;box-shadow:0 0 0 2px var(--card)}
.office-chat-team{padding:0 18px;border-bottom:1px solid var(--line);flex:none;max-height:220px;overflow:auto}
.office-chat-team summary{cursor:pointer;padding:12px 0;min-height:44px;font-size:14px;color:var(--muted)}
.office-roster-member{display:flex;align-items:center;gap:10px;padding:9px 0}
.office-roster-member>.office-avatar{width:36px;height:36px}
.office-roster-member>span:not(.office-avatar):not(.office-presence){flex:1;min-width:0}
.office-roster-member strong{display:block;font-size:15px;overflow-wrap:anywhere}
.office-roster-member small{display:block;margin-top:3px;font-size:14px;color:var(--muted)}
@media(max-width:600px){#office-chat-launcher{max-width:calc(100vw - 28px);bottom:max(16px,env(safe-area-inset-bottom));padding:10px 14px}.office-launcher-copy small{font-size:13px}.workspace #office-launcher-faces .office-avatar{width:26px;height:26px}.office-chat-team{max-height:170px}}
#office-chat-launcher{background:#0758ff;color:#fff;border-color:#0758ff;box-shadow:0 6px 24px #0758ff30}
#office-chat-launcher .office-launcher-copy small{color:#eef3ff}
#office-chat-launcher:hover{background:#0048d9;border-color:#0048d9}
#office-chat-launcher [data-office-unread]{background:#fff;color:#0758ff}
.workspace #office-launcher-faces .office-avatar{box-shadow:0 0 0 2px #0758ff}

/* Keep the composer and avatar choices reachable on short mobile screens. */
.office-chat #office-chat-error,.office-avatar-picker #office-avatar-error{color:var(--red)}
.office-avatar-picker{max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain}
.office-avatar-picker header{position:sticky;top:0;z-index:1;background:var(--card)}
.office-chat header,.office-chat-options,.office-chat form{flex:none}
.office-chat header>div{min-width:0}
.office-chat h2,.office-avatar-picker h2{overflow-wrap:anywhere}
.office-chat-options{flex-wrap:wrap}
.office-chat-options label{font-size:14px!important}
.office-chat-options input[type=checkbox]{min-height:20px!important;width:20px;height:20px;flex:none}
.office-chat-team{max-height:min(220px,28dvh)}
.office-avatar-grid button:focus-visible{outline-color:var(--accent)}
.office-avatar-grid button[aria-pressed=true]{border-color:var(--accent)}
.office-presence.online{background:var(--success)}
.office-chat button:focus-visible,.office-avatar-picker button:focus-visible,.office-member:focus-visible{outline-color:var(--accent)}
.office-launcher-copy small{font-size:14px!important}
@media(max-width:600px){
  .office-chat header{padding-top:max(12px,env(safe-area-inset-top))}
  .office-chat-team{max-height:min(170px,24dvh)}
  .office-chat-options{gap:4px 12px}
  .office-chat form{padding-bottom:max(16px,env(safe-area-inset-bottom))}
  .office-chat textarea{resize:none;min-height:64px!important;max-height:120px}
  .office-avatar-grid .office-avatar{width:48px;height:48px}
}
@media(max-height:600px){
  .office-chat header{padding-block:10px}
  .office-chat-options{padding-block:4px}
  .office-chat-team{max-height:22dvh}
  .office-chat form{padding-top:8px}
  .office-chat form label{margin-bottom:4px}
  .office-chat textarea{min-height:48px!important;max-height:80px}
}
@media(max-width:380px){#office-chat-launcher{min-width:56px;min-height:56px;justify-content:center;padding:12px;border-radius:100px;gap:8px}#office-chat-launcher .office-launcher-copy{display:none}}
