/* Compact three-pane layout used by the Windows WebView2 client. */
.desktop-workspace { min-height:100vh; overflow:hidden; background:#edf2f0; }
.desktop-workspace .shell { width:100%; max-width:none; height:100vh; min-height:580px; margin:0; padding:10px 12px 12px; display:flex; flex-direction:column; gap:8px; }
.desktop-toolbar { flex:none; min-height:42px; display:flex; align-items:center; gap:12px; padding:5px 10px; border:1px solid #d7e2db; border-radius:10px; background:linear-gradient(100deg,#fff,#f3f8f4); box-shadow:0 3px 12px #2648370b; }
.desktop-toolbar strong { color:#236c4d; letter-spacing:.04em; font-size:13px; }
.desktop-toolbar .button { width:auto; margin:0; padding:7px 10px; }
#desktopNetworkStatus { margin-inline-start:auto; color:#748279; font-size:10px; }
.desktop-account-bar { flex:none; min-height:42px; margin:0; padding:4px 6px; border:0; background:transparent; }
.desktop-account-bar .brand-copy span,.desktop-account-bar .privacy-pill { display:none; }
.desktop-account-bar .brand-mark { width:32px; height:32px; border-radius:9px; }
.desktop-account-bar .account-controls { margin-inline-start:auto; }
.desktop-workspace .view { min-height:0; }
.desktop-workspace .group-view { flex:1; min-height:0; display:flex; flex-direction:column; gap:8px; overflow:hidden; }
.desktop-workspace .group-header { flex:none; min-height:42px; padding:0 2px; }
.desktop-workspace .group-title .eyebrow { display:none; }
.desktop-workspace .group-title h1 { font-size:17px; }
.desktop-workspace .group-layout { flex:1; min-height:0; }
.desktop-columns { flex:1; min-height:0; display:grid; grid-template-columns:minmax(190px,220px) minmax(360px,1fr) minmax(220px,270px); gap:9px; direction:ltr; }
.desktop-channel-pane,.desktop-detail-pane { min-width:0; min-height:0; overflow:auto; direction:rtl; padding:10px; border:1px solid #dbe5de; border-radius:12px; background:#f9fbfa; }
.desktop-channel-pane h2,.desktop-selected-profile h2 { margin:0 0 8px; color:#315844; font-size:13px; }
.desktop-detail-pane { display:flex; flex-direction:column; gap:8px; }
.desktop-detail-pane .clan-card,.desktop-detail-pane .members-card,.desktop-selected-profile { flex:none; width:100%; max-height:42%; overflow:auto; margin:0; padding:9px; border-radius:10px; box-shadow:none; }
.desktop-detail-pane .clan-hero { height:80px; }
.desktop-detail-pane .clan-overview { gap:8px; padding:5px 0; }
.desktop-detail-pane .clan-badge { width:42px; height:42px; }
.desktop-detail-pane .clan-copy h2 { font-size:13px; }
.desktop-detail-pane .clan-copy p,.desktop-detail-pane .clan-meta { font-size:10px; }
.desktop-detail-pane .section-heading { margin-bottom:6px; }
.desktop-detail-pane .member-hint { display:none; }
.desktop-selected-profile { min-height:24px; }
.desktop-selected-profile:has(#memberProfileContent:not(:empty)) { max-height:40%; }
.desktop-selected-profile #memberProfileContent { font-size:11px; }
.desktop-selected-profile .profile-modal-header { display:flex; align-items:center; gap:9px; }
.desktop-selected-profile .profile-modal-header h2 { margin:0; }
.desktop-selected-profile .profile-facts { display:grid; grid-template-columns:1fr 1fr; gap:4px 8px; }
.desktop-selected-profile .profile-facts>div { padding:4px; border-radius:7px; background:#f2f6f3; }
.desktop-selected-profile .profile-facts dt,.desktop-selected-profile .profile-facts dd { font-size:10px; }
.desktop-workspace .chat-card { min-height:0; height:100%; }
.desktop-workspace .messages { min-height:80px; max-height:none; }
.desktop-workspace .chat-heading { flex:none; padding:8px 10px; }
.desktop-workspace .message-search { flex:none; }
.desktop-workspace .composer { flex:none; padding:7px 9px 5px; }
.desktop-workspace .composer-tools { gap:6px; }
.desktop-workspace .voice-bar { flex:none; padding:7px 9px; }
.desktop-workspace .talk-button { min-width:125px; height:38px; }
.desktop-workspace .room-tools { flex:none; padding:4px 8px; gap:5px; }
.desktop-workspace .room-tools label { margin:0; }
.desktop-workspace .room-tools .chat-tool-button { padding:5px 8px; }
.desktop-workspace .events-card { flex:none; max-height:96px; overflow:auto; margin:0; padding:8px 10px; }
.desktop-workspace .events-heading { margin:0 0 4px; }
.desktop-workspace .events-heading h2 { font-size:12px; }
.desktop-workspace .events-list { max-height:48px; overflow:auto; }
.desktop-workspace .desktop-channel-pane .room-tools { flex-wrap:wrap; border:0; background:transparent; padding:4px 0; }
.desktop-workspace .desktop-channel-pane .room-tools label { width:100%; }
.desktop-workspace .desktop-channel-pane .room-tools select { width:100%; }
.desktop-tree-item { display:block; width:100%; padding:5px 7px; overflow:hidden; border:0; border-radius:6px; background:transparent; color:#40574a; text-align:right; text-overflow:ellipsis; white-space:nowrap; font:inherit; font-size:11px; cursor:pointer; }
.desktop-tree-item:hover,.desktop-tree-item[aria-pressed="true"] { background:#e5f0e8; color:#1e6846; }
.desktop-tree-item:disabled { color:#9aa59e; cursor:not-allowed; }
.desktop-tree-users { margin-inline-start:10px; border-inline-start:1px solid #dce7df; padding-inline-start:5px; }
.desktop-group-actions { display:flex; gap:6px; margin-bottom:6px; }
.desktop-group-actions .button { width:auto; margin:0; }
.directory-panel { margin-top:14px; padding:14px; }
.directory-panel h2 { margin:0 0 5px; font-size:15px; }
.directory-panel>p { margin:0 0 8px; }
.directory-search { display:grid; grid-template-columns:minmax(140px,1fr) minmax(130px,180px) auto; gap:7px; align-items:center; }
.directory-search select,.directory-search input { min-width:0; height:36px; border:1px solid #d8e2dc; border-radius:8px; padding:0 9px; font:inherit; font-size:11px; background:#fff; }
.directory-search .button { width:auto; margin:0; padding:8px 10px; }
.directory-status { margin-top:8px!important; }
.directory-list { display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:8px; }
.directory-item { display:grid; gap:4px; padding:10px; border:1px solid #e0e9e2; border-radius:9px; background:#fbfdfb; }
.directory-item p,.directory-item small { margin:0; color:#728178; font-size:10px; }
.directory-item .button { margin:4px 0 0; }
.desktop-workspace .card select,.desktop-workspace .card input[type="password"] { width:100%; min-width:0; height:36px; border:1px solid #d8e2dc; border-radius:8px; padding:0 9px; background:#fff; color:#30493b; font:inherit; font-size:11px; }
.desktop-unused-dialog { display:none; }
/* WebView2 has a fixed window viewport. Keep the app chrome fixed, but let the
   lobby itself scroll; previously body overflow was hidden and clipped the
   create/join buttons below the bottom edge at normal Windows zoom. */
body.desktop-workspace { height:100vh; min-height:0; overflow:hidden; }
.desktop-workspace .shell { height:100%; min-height:0; flex:1 1 auto; overflow:hidden; }
.desktop-workspace .lobby-view { flex:1 1 auto; min-height:0; overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; scrollbar-gutter:stable; padding:0 4px 16px; }
.desktop-workspace .lobby-view .welcome { padding:12px 2px 10px; }
.desktop-workspace .lobby-view .welcome h1 { font-size:21px; }
.desktop-workspace .lobby-view .entry-grid { gap:10px; }
.desktop-workspace .lobby-view .entry-grid .card { padding:12px 14px; }
.desktop-workspace .lobby-view .entry-grid .card h2 { margin:7px 0 4px; font-size:14px; }
.desktop-workspace .lobby-view .entry-grid .card p { margin-bottom:7px; font-size:10px; line-height:1.55; }
.desktop-workspace .lobby-view .entry-grid .card label { margin:6px 0 3px; font-size:10px; }
.desktop-workspace .lobby-view .entry-grid .card input:not([type=file]),
.desktop-workspace .lobby-view .entry-grid .card select { height:32px; }
.desktop-workspace .lobby-view .entry-grid .card .button { min-height:36px; margin-top:9px; padding:8px 11px; }
.desktop-workspace .lobby-view .saved-section { margin-top:12px; }
.desktop-workspace .lobby-view .section-heading { margin-bottom:7px; }
.desktop-workspace .lobby-view .privacy-note { margin:10px 0 4px; }
.desktop-workspace .account-dialog { max-height:calc(100vh - 36px); }
@media(max-width:920px) { .desktop-columns { grid-template-columns:180px minmax(300px,1fr); } .desktop-detail-pane { display:none; } }
@media(max-width:640px) { .desktop-workspace { overflow:auto; } .desktop-workspace .shell { height:auto; min-height:100vh; } .desktop-columns { display:flex; flex-direction:column; } .desktop-channel-pane { max-height:160px; } .desktop-workspace .chat-card { min-height:65vh; } .desktop-detail-pane { display:flex; max-height:250px; } .directory-search { grid-template-columns:1fr; } }
@media(prefers-reduced-motion:reduce) { .desktop-workspace * { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; } }
