/* Full working surfaces; the sidebar is the only shared desktop navigation. */
.workspace-shell{height:100dvh;min-height:0;overflow:hidden;background:#fff}
.workspace-shell>.topbar,.workspace-shell>.main-footer{display:none}
.workspace-shell>.mobile-nav{flex-shrink:0}
.workspace-shell>#content{padding:0;margin:0;max-width:none;width:100%;min-height:0;flex:1;display:flex;flex-direction:column;overflow:hidden}
.workspace-shell .legacy-frame{flex:1 1 0;height:0;min-height:0;width:100%;border:0;border-radius:0;background:#fff}
.workspace-toolbar{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:8px 18px;border-bottom:1px solid var(--border);flex-shrink:0;background:#fbfcf9}
.workspace-toolbar label{margin:0;font-size:14px}
.workspace-toolbar select{min-height:36px;padding:6px 30px 6px 10px;max-width:320px;font-size:15px}
.chat-workspace .chat-wide{display:flex;flex-direction:column;width:100%;height:100%;min-height:0;max-width:none;border:0;border-radius:0;margin:0;padding:0;box-shadow:none;overflow:hidden}
.chat-workspace .chat-header{position:relative;z-index:5;flex-shrink:0;padding:17px 26px;gap:13px;flex-wrap:nowrap;background:#fff}
.channel-info{min-width:0}
.channel-title{display:flex;align-items:center;gap:7px}
.channel-title>strong{white-space:nowrap}
.chat-header .channel-info>p{margin-top:2px;color:#81917d;font-size:14px}
.chat-header .channel-icon{height:42px;width:42px;border-radius:13px}
.chat-header .sound-toggle{font-size:14px;min-height:39px;padding:9px 13px}
.chat-header .chat-participants{padding:0;border:0;margin:0;color:var(--green);font-size:18px}
.chat-participants>summary{list-style:none;width:28px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:6px;cursor:pointer}
.chat-participants>summary::-webkit-details-marker{display:none}
.chat-participants>summary:hover,.chat-participants[open]>summary{background:#eaf2e5}
.chat-participants[open]>summary>span{transform:rotate(180deg)}
.chat-header .member-list{position:absolute;left:24px;top:calc(100% - 4px);width:420px;max-width:calc(100% - 48px);max-height:min(520px,65dvh);overflow:auto;display:grid;grid-template-columns:1fr;gap:17px;padding:20px;background:#fff;border:1px solid var(--border);border-radius:13px;box-shadow:0 12px 35px #1e493b24}
.chat-participants:not([open])>.member-list{display:none}
.member-list-heading{font-size:14px;font-weight:600;color:#7c8d73;border-bottom:1px solid var(--border);padding-bottom:13px}
.member-list .member>div{min-width:0}
.member-list .member strong{overflow-wrap:anywhere}
.chat-workspace .pinned-messages{flex-shrink:0;padding:12px 26px;background:#fbfcf8;max-height:30dvh;overflow:auto}
.chat-workspace .chat-messages{flex:1 1 0;height:0;min-height:0;max-height:none;padding:24px 26px 6px;background:#f7f9f5;overscroll-behavior:contain;scrollbar-gutter:stable}
.chat-workspace .message{margin-bottom:23px}
.chat-workspace .message>div{max-width:min(780px,85%)}
.chat-workspace .message p{background:#fff;border:1px solid #e7ecdf;line-height:1.65}
.chat-workspace .message.mine p{background:#eaf2e2;border-color:#dfe9d6}
.chat-workspace .attachment-drafts{padding:10px 24px 0;flex-shrink:0;background:#fff;max-height:120px;overflow:auto}
.chat-workspace .attachment-drafts:empty{display:none}
.chat-workspace .chat-compose{flex-shrink:0;margin:14px 24px 7px;padding:9px 12px;border-radius:13px;background:#fbfcf9}
.chat-workspace .chat-compose textarea{padding:9px 6px;min-height:58px}
.chat-workspace .chat-hint{flex-shrink:0;margin:0 24px 10px;color:#98a28e;font-size:12px}
.team-announcement+.team-announcement{border-top:1px solid #dce5d3;margin-top:22px;padding-top:22px}
.team-announcement h3{font-size:18px;line-height:1.4;margin-bottom:10px}
.team-announcement .notice-text{font-size:17px;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 18px}
.team-announcement .notice-signature{margin-top:0}
.notice-signature small{display:block;font-size:12px;margin-top:4px}
.announcements-settings{max-width:920px;margin-bottom:24px}
.announcement-manage{display:flex;gap:22px;justify-content:space-between;border-top:1px solid var(--border);padding:22px 0}
.announcement-manage:last-child{padding-bottom:0}
.announcement-manage>div:first-child{min-width:0;flex:1}
.announcement-manage h3{font-size:18px;margin-bottom:9px;overflow-wrap:anywhere}
.announcement-manage p{font-size:16px;white-space:pre-wrap;overflow-wrap:anywhere;margin-bottom:12px}
.announcement-manage small{font-size:13px}
.announcement-actions{display:flex;gap:14px;align-items:flex-start;flex-shrink:0}
.announcement-actions .text-button{font-size:14px}
.danger-text{color:#a55f4c}
.profile-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.modal:has(#person-form){width:min(760px,100%);max-width:760px}
.person-card{display:flex;flex-direction:column;align-items:flex-start}
.person-card h2{font-size:18px;line-height:1.4;overflow-wrap:anywhere;min-height:0;margin-bottom:10px}
.person-card .person-position{font-size:16px;color:#536e4b;margin:0 0 12px}
.person-card .person-access{font-size:15px;line-height:1.6}
.person-contacts{display:grid;gap:7px;font-size:14px;color:#83907a;margin:0 0 14px;overflow-wrap:anywhere;max-width:100%}
.person-actions{display:flex;flex-direction:column;gap:15px;margin-top:auto;align-items:flex-start;padding-top:8px}
.person-actions .button,.person-actions .text-button{font-size:15px}
.person-inactive{opacity:.65}
.issued-success{display:flex;align-items:center;gap:10px;color:var(--green);font-size:18px;font-weight:600;margin:4px 0 18px}
#issued-credentials{font-size:16px;line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere;background:#f5f8ef}
.copy-fallback{position:fixed;left:-10000px;top:0}
.account-login{margin-top:28px;border:1px solid #dfe6da;border-radius:11px;background:#fff;padding:14px 18px}
.account-login>summary{cursor:pointer;color:var(--green);font-size:16px;font-weight:600}
.account-login form{margin-top:21px}
.account-login label{font-size:15px}
.account-login form>.button{width:100%}
[hidden]{display:none!important}
@media(max-width:700px){
 .workspace-shell{height:100dvh}
 .workspace-shell .mobile-nav{padding:5px 8px 6px;gap:2px}
 .workspace-shell .mobile-nav .nav-item{min-height:57px;padding:7px 9px;gap:5px;min-width:66px}
 .workspace-toolbar{padding:7px 12px;gap:8px}
 .workspace-toolbar label{font-size:12px;white-space:nowrap}
 .workspace-toolbar select{min-width:0;max-width:70%;font-size:14px}
 .chat-workspace .chat-header{padding:12px;gap:9px}
 .chat-header .channel-icon{width:33px;height:36px;border-radius:10px}
 .chat-header .channel-info>p{font-size:12px}
 .chat-header .channel-title>strong{font-size:16px}
 .channel-title{gap:0}
 .chat-header .sound-toggle{font-size:0;gap:0;padding:8px;min-height:36px;min-width:36px;width:36px;overflow:hidden}
 .chat-header .sound-toggle:before{content:'♪';font-size:20px}
 .chat-header .sound-toggle[aria-pressed=false]:before{content:'♩';opacity:.5}
 .chat-header .member-list{left:12px;max-width:calc(100% - 24px);padding:17px;max-height:50dvh}
 .chat-workspace .pinned-messages{padding:11px 13px;font-size:14px}
 .chat-workspace .chat-messages{padding:19px 11px 2px}
 .chat-workspace .message>div{max-width:calc(100% - 36px)}
 .chat-workspace .chat-compose{margin:9px 10px 5px;padding:6px 8px;gap:6px}
 .chat-workspace .chat-compose textarea{min-height:44px;padding:7px 4px;line-height:1.4}
 .chat-workspace .compose-tools{gap:11px;padding-bottom:2px}
 .chat-workspace .compose-tools>span{display:none}
 .chat-workspace .chat-compose>.button{padding:8px 13px;min-height:36px}
 .chat-workspace .chat-hint{font-size:10px;margin:0 12px 6px;padding-bottom:env(safe-area-inset-bottom)}
 .chat-workspace .attachment-drafts{padding:8px 12px 0;max-height:80px}
 .announcement-manage{flex-direction:column;gap:14px}
 .announcement-actions{gap:25px}
 .profile-form-grid{grid-template-columns:1fr;gap:0}
 .person-card h2{font-size:16px;min-height:0}
 .person-actions .button{white-space:normal;text-align:left}
 .person-actions .text-button{font-size:14px}
 .people-grid{grid-template-columns:1fr}
 .account-login{padding:13px;margin-top:23px}
}
