/* Staff workspace: viewport reflow and independently scrollable navigation. */
[hidden]{display:none!important}
aside{height:100dvh;max-height:100dvh;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable;min-height:0}
aside .brand,aside .aside-bottom{flex-shrink:0}.nav{margin-top:24px}.aside-bottom{padding-top:20px}.me{overflow-wrap:anywhere;min-width:0}
header,main{min-width:0}main{max-width:none}header{height:auto;min-height:60px;flex-wrap:wrap}.header-right{min-width:0;flex-wrap:wrap}
.hero,.collection-heading,.panel-head,.offer-heading,.offer-actions{flex-wrap:wrap;min-width:0}.hero>div,.collection-heading>div,.offer-heading>div{min-width:0}
h1,h2,h3,p,.card-description,.attention-copy{overflow-wrap:anywhere}.two-col,.messages-layout{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}
.panel,.stat,.collection-table,.thread-view,.thread-list{min-width:0}.table-wrap,.collection-table{max-width:100%;overflow-x:auto}.tabs{max-width:100%;overflow-x:auto}.tabs button{flex-shrink:0}.toolbar input{min-width:0;max-width:100%}
.drawer{max-width:100vw;max-height:100dvh}.drawer-body{min-width:0;overflow-x:hidden}.drawer-body input,.drawer-body select,.drawer-body textarea{max-width:100%;min-width:0}.selection-row{flex-wrap:wrap}.selection-row label{min-width:0}.row-actions{flex-wrap:wrap}
@media(max-width:1050px){.two-col,.messages-layout{grid-template-columns:1fr}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.collection-heading{gap:16px}.hero h1{font-size:30px}}
@media(max-width:760px){aside{width:min(280px,85vw);transform:translateX(-100%);transition:transform .15s}.nav-open aside{transform:translateX(0)}header,main{margin-left:0!important}header{padding:12px 16px}.menu{display:block}.nav-open .mobile-shade{display:block;position:fixed;inset:0;background:#0006;z-index:29}main{padding:22px 16px}.preview-label{white-space:normal}.crumb{white-space:normal}.collection-heading h1{font-size:30px}.drawer{width:100vw;margin:0 0 0 auto}.directory-grid,.campaign-grid,.opportunity-grid{grid-template-columns:minmax(0,1fr)!important}.thread-actions{flex-wrap:wrap}}
@media(max-width:400px){.stats{grid-template-columns:1fr}.header-right{gap:8px}.btn{white-space:normal;max-width:100%}.offer-actions .btn{flex:1 1 auto}.subtitle{font-size:16px}}
@media(max-height:650px){aside{padding-top:14px;padding-bottom:14px}.nav{margin-top:16px;gap:2px}.nav button{padding-top:10px;padding-bottom:10px}.settings{padding-top:12px;padding-bottom:12px}.me{padding-top:12px}}
.workspace-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 24px;border-bottom:1px solid var(--line);padding:0 0 12px}
.workspace-tabs button{border:0;background:transparent;color:var(--muted);padding:10px 16px;border-radius:8px;font:inherit;font-size:14px;cursor:pointer}
.workspace-tabs button.active{background:#f9e9ed;color:#a5243e;font-weight:650}
.workspace-tabs+ .workspace-tabs{margin-top:-12px;padding-left:16px;border-left:2px solid #e9c9d0}
.staff-messages{grid-template-columns:minmax(230px,.8fr) minmax(0,2fr);min-height:560px}
.staff-monogram{display:grid;place-items:center;width:42px;height:42px;flex-shrink:0;border-radius:50%;background:#f6e5ea;color:#a5243e;font-weight:650}
.message-empty-icon{font-size:38px;color:#a5243e;display:block;margin-bottom:20px}.unread-dot{width:8px;height:8px;border-radius:50%;background:#c91f40;flex-shrink:0}
#staff-inbox{margin-top:20px}#staff-message-list{min-height:250px;max-height:50vh;overflow:auto}
@media(max-width:850px){.staff-messages{grid-template-columns:1fr}.workspace-tabs{gap:4px}.workspace-tabs button{padding:9px 12px}}
#staff-message-form textarea{width:100%;min-height:90px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#f9fafc;font:inherit;font-size:14px;line-height:1.5;resize:vertical;color:var(--ink)}
#staff-message-form textarea:focus{outline:2px solid #dba4b0;outline-offset:2px}
/* One icon grid and one text baseline for every sidebar action. */
aside .sidebar-icon{display:block;width:20px;height:20px;flex:0 0 20px}
aside .nav button,aside .settings{display:flex;align-items:center;gap:12px;width:100%;min-height:46px;margin:0;padding:12px;border:0;border-radius:9px;text-align:left;font-size:14px;line-height:20px;font-weight:500}
aside .sidebar-label{display:block;min-width:0;overflow-wrap:normal}
aside .nav{display:grid;gap:6px}
aside .nav button.active{font-weight:650}
aside .aside-bottom{display:flex;flex-direction:column;gap:4px;margin-top:auto;padding:16px 0 0;border-top:1px solid var(--line)}
aside .me{display:flex;align-items:center;gap:10px;margin:0 0 10px;padding:8px 10px 12px;min-width:0;border:0}
aside .staff-avatar{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border:1px solid #e2d2d8;border-radius:50%;background:#f7e9ee;color:#92263d;font-size:12px;font-weight:700;letter-spacing:.02em}
aside .staff-identity{display:grid;gap:3px;min-width:0}
aside .staff-identity strong{font-size:13px;line-height:18px;font-weight:650;color:#263143;overflow-wrap:anywhere}
aside .staff-identity small{font-size:11px;line-height:16px;color:#6d7785;overflow-wrap:anywhere}
aside .settings:hover{background:#e8edf1}
aside #sidebar-signout{color:#657181}
aside #sidebar-signout:hover{color:#a5243e;background:#f5e5e9}
aside button:focus-visible{outline:2px solid #a5243e;outline-offset:2px}
#menu .sidebar-icon{width:20px;height:20px;display:block}
@media(max-height:650px){aside .aside-bottom{padding-top:12px}aside .me{margin-bottom:4px}aside .nav{gap:3px}}
