/* Signed-in workspace menu, shared by the portal, dashboards and strategy toolkit. */
.ws-side { display: none; }
@media (min-width: 1100px) {
  .ws-side { display: block; position: fixed; top: 69px; left: 0; bottom: 0; width: 240px; overflow-y: auto; z-index: 60; padding: 22px 16px 32px;
    background: #0C1426; border-right: 1px solid rgba(255,255,255,.08); font: 500 14px/1.4 "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif; }
  body.has-ws > *:not(.oms-nav):not(.ws-side):not(script):not(style) { margin-left: 240px !important; }
  body.has-ws .ws-m { display: none; }
}
.ws-h { margin: 18px 8px 8px; color: #D4A843; font-size: 11px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.ws-side .ws-h:first-child { margin-top: 0; }
.ws-side ul, .ws-m ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; }
.ws-side a, .ws-m a { display: block; padding: 8px 10px; border-radius: 8px; color: rgba(255,255,255,.72) !important; text-decoration: none !important; }
.ws-side a:hover, .ws-m a:hover { color: #fff !important; background: rgba(255,255,255,.05); }
.ws-side a[aria-current], .ws-m a[aria-current] { color: #fff !important; background: rgba(79,209,197,.1); box-shadow: inset 2px 0 0 #4FD1C5; }
.ws-m { margin: 12px 16px; font: 500 14px/1.4 "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif; }
.ws-m summary { cursor: pointer; padding: 12px 14px; border: 1px solid rgba(255,255,255,.12); border-radius: 10px; color: #D4A843; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; font-size: 12px; }
.ws-m[open] > :not(summary) { padding: 0 6px; }
/* Text inside cards and panels runs the full width of the card. */
body.has-ws main p, body.has-ws section p, body.has-ws .section p, body.has-ws [class*="card"] p, body.has-ws [class*="body"] p, body.has-ws [class*="panel"] p, body.has-ws [class*="acc"] p { max-width: none !important; }
.ws-profile { display: flex; align-items: center; gap: 10px; padding: 4px 8px 12px; }
.ws-avatar { flex: none; width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: rgba(79,209,197,.15); color: #4FD1C5; font-weight: 700; }
.ws-id { min-width: 0; display: grid; }
.ws-id b { color: #F4F6FA; font-size: 13px; }
.ws-email { color: rgba(255,255,255,.6); font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.ws-signout { display: block; width: calc(100% - 16px); margin: 0 8px 6px; padding: 8px 10px; border-radius: 8px; border: 1px solid rgba(255,255,255,.14); background: transparent; color: #F4F6FA; font: 600 13px/1.2 "DM Sans", system-ui, sans-serif; cursor: pointer; text-align: left; }
.ws-signout:hover { border-color: #4FD1C5; }
.ws-m .ws-profile { padding: 12px 8px 8px; }
.ws-stage { margin: 10px 10px 2px; color: rgba(255,255,255,.45); font-size: 11px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
.ws-dash { display: block; margin: 4px 8px 6px; padding: 11px 14px; border-radius: 10px; background: #6A2BC4; color: #fff !important; font-weight: 700; text-align: center; text-decoration: none !important; }
.ws-dash:hover, .ws-dash[aria-current] { background: #7B3BD8; }
.ws-signout-link { display: block; width: 100%; padding: 8px 10px; border: 0; border-radius: 8px; background: none; color: #D4A843; font: 500 14px/1.4 "DM Sans", system-ui, sans-serif; text-align: left; cursor: pointer; }
.ws-signout-link:hover { background: rgba(255,255,255,.05); }
.ws-side .ws-dash, .ws-m .ws-dash { background: #6A2BC4 !important; color: #fff !important; box-shadow: none !important; } .ws-side .ws-dash[aria-current], .ws-side .ws-dash:hover { background: #7B3BD8 !important; }
/* Signed-in pages: card rows with long text stack one after another; short cards stay side by side. */
body.has-ws .ws-stack { grid-template-columns: 1fr !important; }
body.has-ws .ws-stack > * { grid-column: auto !important; }
