.messages-workspace{display:grid;grid-template-columns:290px minmax(420px,1fr) 250px;min-height:690px;padding:0;overflow:hidden;border-color:#2a3b52;background:#0b131d}
.messages-sidebar{padding:20px 14px;border-right:1px solid #26364a;background:linear-gradient(180deg,#111b29,#0c141e)}
.messages-sidebar-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:2px 5px 16px}.messages-sidebar-head h2{margin:2px 0 0;font-size:21px}.messages-sidebar>input{width:100%;padding:10px 12px;border:1px solid #293b52;border-radius:11px;background:#0b131d;color:var(--text)}
.conversation-list{display:grid;gap:5px;margin-top:13px}.conversation-section-label{padding:12px 7px 4px;color:#687c96;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.conversation-row{position:relative;display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:10px;align-items:center;width:100%;padding:10px;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--text);text-align:left}.conversation-row:hover{background:#152131;filter:none}.conversation-row.active{border-color:rgba(124,108,255,.35);background:linear-gradient(135deg,rgba(124,108,255,.17),rgba(55,90,138,.11))}.conversation-avatar{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#1e2e43;color:#b8caff;font-size:12px;font-weight:900}.conversation-avatar.direct{border-radius:50%;background:linear-gradient(145deg,#744ee8,#3b76c9);color:#fff}.conversation-avatar.context{background:rgba(245,158,11,.13);color:#fbbf24}.conversation-copy{min-width:0}.conversation-copy strong,.conversation-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.conversation-copy strong{font-size:12px}.conversation-copy small{margin-top:4px;color:#71849c;font-size:10px}.conversation-meta{display:grid;justify-items:end;gap:6px;color:#63758c;font-size:9px}.conversation-unread{min-width:19px;height:19px;display:grid;place-items:center;padding:0 5px;border-radius:999px;background:var(--accent);color:#fff;font-size:9px;font-weight:900}
.chat-panel{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;min-width:0;max-height:calc(100vh - 150px);background:radial-gradient(circle at 50% 0,rgba(45,73,112,.15),transparent 36%),#0c151f}.chat-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:82px;padding:16px 20px;border-bottom:1px solid #26364a;background:rgba(14,23,34,.85);backdrop-filter:blur(12px)}.chat-header h2{margin:2px 0;font-size:18px}.chat-header span{color:var(--muted);font-size:11px}.chat-header .eyebrow{margin:0}.message-list{display:flex;flex-direction:column;gap:5px;min-height:360px;padding:22px 24px;overflow-y:auto;scroll-behavior:smooth}.message-day{align-self:center;margin:9px 0;padding:4px 9px;border:1px solid #2b3c52;border-radius:999px;background:#111d2a;color:#8091a8;font-size:9px}.message-empty{margin:auto;text-align:center;color:var(--muted)}.message-empty span{width:62px;height:62px;display:grid;place-items:center;margin:0 auto 14px;border-radius:20px;background:rgba(124,108,255,.13);color:var(--accent2);font-size:27px}.message-empty h3{margin:0 0 5px;color:#e6edf7}.message-bubble-row{display:flex;align-items:flex-end;gap:8px;max-width:min(78%,680px)}.message-bubble-row.own{align-self:flex-end;flex-direction:row-reverse}.message-author-avatar{flex:0 0 28px;width:28px;height:28px;display:grid;place-items:center;border-radius:50%;background:#24364c;color:#bfcde0;font-size:9px;font-weight:900}.message-bubble{position:relative;min-width:110px;padding:9px 11px;border:1px solid #2a3b51;border-radius:14px 14px 14px 4px;background:#162332;box-shadow:0 7px 20px rgba(0,0,0,.1)}.own .message-bubble{border-color:rgba(124,108,255,.35);border-radius:14px 14px 4px 14px;background:linear-gradient(145deg,#3d3379,#2d3f71)}.message-bubble-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:4px}.message-bubble-head strong{color:#b9caff;font-size:10px}.own .message-bubble-head strong{color:#e3ddff}.message-bubble-head time{color:#7789a0;font-size:8px}.own .message-bubble-head time{color:#aaa6cb}.message-bubble p{margin:0;color:#e5ebf4;font-size:12px;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.message-edited{margin-left:5px;color:#7f91a8;font-size:8px}.message-reply-quote{margin-bottom:7px;padding:6px 8px;border-left:2px solid var(--accent2);border-radius:5px;background:rgba(5,10,17,.22)}.message-reply-quote small,.message-reply-quote span{display:block}.message-reply-quote small{color:#b7aaff;font-size:8px}.message-reply-quote span{max-width:360px;color:#aebbd0;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-attachment{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:8px;padding:8px;border:1px solid rgba(158,177,204,.18);border-radius:9px;background:rgba(5,10,17,.22);color:#dce6f5;text-decoration:none}.message-attachment span{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:rgba(124,108,255,.16);color:#c2b8ff;font-size:10px;font-weight:900}.message-attachment strong,.message-attachment small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-attachment strong{font-size:9px}.message-attachment small{color:#8193aa;font-size:8px}.message-attachment b{font-size:15px}.message-deleted{color:#8191a6!important;font-style:italic}.message-actions{display:flex;gap:2px;opacity:0;transition:opacity .15s}.message-bubble-row:hover .message-actions,.message-bubble-row:focus-within .message-actions{opacity:1}.message-actions button{padding:3px 5px;border:0;background:transparent;color:#7e90a8;font-size:9px}.message-actions button:hover{color:#fff;filter:none}
.message-composer{padding:12px 16px 15px;border-top:1px solid #26364a;background:#101a27}.message-composer textarea{width:100%;min-height:48px;max-height:150px;padding:12px 13px;border:1px solid #31445d;border-radius:13px;background:#0b131d;color:#fff;resize:none;outline:0}.message-composer textarea:focus{border-color:#6559b7;box-shadow:0 0 0 3px rgba(124,108,255,.1)}.message-composer-actions{display:flex;align-items:center;gap:10px;margin-top:8px}.message-composer-actions>small{margin-right:auto;color:#65778f;font-size:9px}.message-composer-actions .primary{padding:8px 13px}.message-attachment-picker{position:relative;color:#91a3b9;font-size:10px;cursor:pointer}.message-attachment-picker select{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}.message-reply-preview{display:flex;align-items:center;justify-content:space-between;margin-bottom:7px;padding:7px 8px;border-left:2px solid var(--accent2);border-radius:7px;background:#172536}.message-reply-preview small,.message-reply-preview strong{display:block}.message-reply-preview small{color:#8f82e4;font-size:8px}.message-reply-preview strong{max-width:600px;color:#b8c5d7;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.chat-details{padding:22px 16px;border-left:1px solid #26364a;background:linear-gradient(180deg,#101a27,#0c141e);overflow-y:auto}.chat-details-visual{height:112px;display:grid;place-items:center;margin-bottom:18px;border:1px solid #2c4058;border-radius:17px;background:radial-gradient(circle,rgba(124,108,255,.22),transparent 62%),#111c29}.chat-details-avatar{width:58px;height:58px;display:grid;place-items:center;border-radius:18px;background:linear-gradient(145deg,#745bea,#386cae);color:#fff;font-size:14px;font-weight:900;box-shadow:0 12px 30px rgba(67,73,160,.3)}.chat-details h3{margin:0 0 5px}.chat-details>p{margin:0 0 24px;color:var(--muted);font-size:11px;line-height:1.45}.chat-details h4{margin:18px 0 9px;color:#7f91a8;font-size:9px;letter-spacing:.08em;text-transform:uppercase}.chat-member-list,.chat-file-list{display:grid;gap:6px}.chat-member-row,.chat-file-row{display:grid;grid-template-columns:27px minmax(0,1fr);align-items:center;gap:8px;padding:6px;border-radius:8px;background:#14202e}.chat-member-row span{width:27px;height:27px;display:grid;place-items:center;border-radius:50%;background:#283b52;color:#c7d3e3;font-size:8px;font-weight:900}.chat-member-row strong,.chat-member-row small,.chat-file-row strong,.chat-file-row small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-member-row strong,.chat-file-row strong{font-size:9px}.chat-member-row small,.chat-file-row small{color:#70839a;font-size:8px}.chat-file-row{grid-template-columns:28px minmax(0,1fr);color:inherit;text-decoration:none}.chat-file-row>span{color:var(--accent2);font-size:15px}.nav-unread-badge{margin-left:auto;min-width:18px;padding:2px 5px;border-radius:999px;background:#e85b78;color:#fff;font-size:8px;text-align:center}
.conversation-dialog fieldset{margin:16px 0 0;padding:0;border:0}.conversation-dialog legend{margin-bottom:8px;color:var(--muted);font-size:12px}.conversation-member-options{display:grid;gap:6px;max-height:220px;overflow:auto}.conversation-member-option{display:grid!important;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px!important;margin:0!important;padding:9px 10px;border:1px solid #293a50;border-radius:10px;background:#101a27}.conversation-member-option input{width:auto!important}.conversation-member-option strong,.conversation-member-option small{display:block}.conversation-member-option small{color:var(--muted);font-size:9px}.conversation-wide-option{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:8px!important}.conversation-wide-option input{width:auto!important}
#load-older-messages{justify-self:center;margin:8px 0 0}
@media(max-width:1150px){.messages-workspace{grid-template-columns:260px minmax(400px,1fr)}.chat-details{position:fixed;right:18px;top:110px;bottom:20px;width:280px;z-index:8;border:1px solid #30445e;border-radius:16px;box-shadow:0 20px 80px rgba(0,0,0,.45)}.chat-details:not(.open){display:none}}
@media(max-width:760px){.messages-workspace{display:block;min-height:calc(100vh - 190px)}.messages-sidebar{border-right:0}.conversation-list{display:flex;overflow-x:auto}.conversation-section-label{display:none}.conversation-row{flex:0 0 220px}.chat-panel{max-height:none;min-height:620px}.message-list{padding:17px 12px}.message-bubble-row{max-width:92%}.message-composer-actions>small{display:none}.chat-header{padding-inline:14px}}
.conversation-member-options.muted{opacity:.45;pointer-events:none}.content-dialog-actions{grid-template-columns:auto 1fr auto auto auto}

.message-attachment-card{width:min(420px,68vw);margin-top:8px;overflow:hidden;border:1px solid rgba(158,177,204,.18);border-radius:12px;background:rgba(5,10,17,.22)}
.message-attachment-card .message-attachment{margin:0;border:0;border-radius:0;background:transparent}
.message-media-preview{display:block;max-height:310px;overflow:hidden;background:#050a11}
.message-media-preview img{display:block;width:100%;max-height:310px;object-fit:contain}
.message-attachment-card video{display:block;width:100%;max-height:310px;background:#050a11}
.message-attachment-card audio{display:block;width:calc(100% - 16px);margin:10px 8px}
.visually-hidden-file{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.message-local-file-picker{color:#b7aaff;font-size:10px;cursor:pointer}
.message-local-file-picker:hover{color:#fff}
.message-pending-files{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.message-pending-file{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1px 8px;align-items:center;max-width:240px;padding:6px 7px;border:1px solid #344b67;border-radius:9px;background:#152334}
.message-pending-file strong,.message-pending-file small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.message-pending-file strong{font-size:9px}
.message-pending-file small{color:#7f91a8;font-size:8px}
.message-pending-file button{grid-column:2;grid-row:1/3;padding:2px 5px;border:0;background:transparent;color:#9badc2}

/* The discussion workspace grows with wide/zoomed-out viewports instead of
   keeping desktop text and columns frozen at their smallest values. */
.workspace-page[data-page="messages"]{width:min(1800px,100%)}
.messages-workspace{
  container-type:inline-size;
  --messages-fs-xs:clamp(9px,.68cqw,12px);
  --messages-fs-sm:clamp(10px,.8cqw,14px);
  --messages-fs-md:clamp(12px,.94cqw,16px);
  --messages-fs-lg:clamp(18px,1.38cqw,25px);
  grid-template-columns:clamp(290px,21%,380px) minmax(420px,1fr) clamp(250px,18%,330px);
}
.messages-sidebar-head h2{font-size:var(--messages-fs-lg)}
.conversation-section-label,.conversation-meta,.conversation-unread,.message-day,.message-bubble-head time,.message-edited,.message-reply-preview small{font-size:var(--messages-fs-xs)}
.conversation-copy small,.chat-header span,.message-bubble-head strong,.message-reply-quote span,.message-actions button,.message-attachment strong,.message-attachment-picker,.message-local-file-picker,.message-composer-actions>small,.chat-details>p,.chat-details h4,.chat-member-row strong,.chat-file-row strong{font-size:var(--messages-fs-sm)}
.conversation-copy strong,.chat-header .eyebrow,.message-bubble p,.message-composer textarea,.message-reply-preview strong,.message-attachment small,.chat-member-row small,.chat-file-row small{font-size:var(--messages-fs-md)}
.chat-header h2{font-size:clamp(18px,1.18cqw,22px)}
.message-empty h3,.chat-details h3{font-size:clamp(16px,1.12cqw,21px)}
.message-composer-actions .primary{font-size:var(--messages-fs-sm)}
.message-pending-file strong{font-size:var(--messages-fs-sm)}
.message-pending-file small{font-size:var(--messages-fs-xs)}
@media(max-width:1150px){
  .messages-workspace{grid-template-columns:260px minmax(400px,1fr)}
}
@media(max-width:760px){
  .workspace-page[data-page="messages"]{width:100%}
  .messages-workspace{display:block}
}
