/* Task-oriented workspaces. The legacy stylesheet remains the component library. */
.workspace-authenticated { --sidebar-width:216px; }
.workspace-authenticated .shell { max-width:none; padding-left:calc(var(--sidebar-width) + 28px); }
.workspace-authenticated .app-chrome { top:0; }
.workspace-authenticated .masthead { min-height:0; height:auto; padding:0; border:0; backdrop-filter:none; }
.workspace-authenticated .brand { position:fixed; left:18px; top:22px; width:185px; z-index:65; }
.workspace-authenticated .brand-mark { width:38px; height:38px; font-size:16px; }
.workspace-authenticated .brand strong { font-size:17px; }
.workspace-authenticated .brand small { font-size:9px; }
.workspace-authenticated .app-nav { position:fixed; top:0; left:0; bottom:0; padding:94px 14px 90px; width:var(--sidebar-width); height:100dvh; overflow-y:auto; display:flex; flex-direction:column; align-items:stretch; justify-content:flex-start; gap:6px; background:#091422; border:0; border-right:1px solid var(--line); border-radius:0; z-index:60; box-shadow:none; }
.workspace-authenticated .app-nav.hidden { display:none; }
.workspace-authenticated .nav-tab { flex:0 0 auto; justify-content:flex-start; text-align:left; padding:12px; min-height:46px; white-space:normal; border-radius:8px; font-size:13px; line-height:1.4; }
.workspace-authenticated .nav-tab.active { background:#123352; box-shadow:inset 3px 0 #39b8ff; }
.workspace-authenticated .nav-tab svg { width:18px; height:18px; flex-shrink:0; }
.legacy-nav { display:none!important; }
.nav-group-label { font-size:9px; color:#92a8bf; text-transform:uppercase; letter-spacing:.12em; margin:22px 12px 4px; }
.workspace-authenticated .header-state { position:fixed; left:22px; bottom:20px; z-index:65; }
.workspace-authenticated #mode-pill { display:none; }
.workspace-authenticated #sign-out { font-size:12px; padding:10px; }
.workspace-authenticated .system-ribbon { min-height:80px; padding:12px 0; gap:18px; }
.workspace-authenticated .ribbon-mode { min-width:128px; }
.workspace-authenticated .ribbon-session { min-width:120px; }
.workspace-authenticated .dashboard,.workspace-authenticated .workspace { padding-top:24px; }
.workspace-authenticated .workspace-head { margin-bottom:18px; gap:16px; }
.workspace-authenticated .workspace-head h1 { font-size:28px; }
.workspace-authenticated .workspace-head .muted { max-width:760px; font-size:13px; line-height:1.6; }
.workspace-tabs { display:flex; flex-wrap:wrap; align-items:center; gap:4px; border-bottom:1px solid var(--line); margin-bottom:22px; }
.workspace-tabs>button,.workspace-tabs>.current-subview { padding:12px 14px; min-height:46px; font-size:13px; line-height:1.4; color:#a5b8ce; background:none; border:0; border-bottom:2px solid transparent; box-shadow:none; border-radius:0; }
.workspace-tabs>[aria-selected=true],.workspace-tabs>.current-subview { color:#eff7ff; border-bottom-color:#53b9ff; background:#0f2337; }
.workspace-tabs>button:hover { color:#fff; background:#142a40; transform:none; }
.workspace-tab-panel { min-width:0; }
.workspace-tab-panel:focus-visible { outline:2px solid #7cc8ff; outline-offset:4px; }
.workspace-tab-panel[hidden],.workspace-tabs>[hidden],#workspace-menu[hidden] { display:none!important; }
.workspace-tab-panel>.panel,.workspace-tab-panel>.workspace-details { margin-bottom:18px; }
.workspace-tab-panel .panel { width:100%; min-width:0; }
.workspace-details { border:1px solid var(--line); border-radius:10px; background:#0b1729; }
.workspace-details>summary { padding:16px 20px; min-height:48px; cursor:pointer; font-size:14px; color:#ceddec; }
.workspace-details>.panel { border:0; margin:0; }
.workspace-details>section { padding:0 20px 20px; }
.workspace-details .regime { max-width:none; }
.workspace-authenticated .workspace-switch { padding:0 0 12px; }
.compact-overview-heading { margin:0; padding:0 0 18px; }
.compact-overview-heading .eyebrow,.compact-overview-heading .operator-line { display:none; }
.workspace-authenticated button.console-card { min-height:156px; gap:8px; padding:18px; }
.workspace-authenticated button.console-card>strong { font-size:22px; }
.workspace-authenticated button.console-card>span:not(.console-card-label) { font-size:12px; line-height:1.5; }
.workspace-authenticated .session-state { margin-bottom:18px; }
.workspace-authenticated .status-grid { display:grid; grid-template-columns:1fr 1fr; }
.status-grid>.panel,.status-grid>details { min-width:0; }
.workspace-authenticated .table-wrap { max-width:100%; min-width:0; overflow-x:auto; overscroll-behavior-x:contain; }
.table-wrap:focus-visible { outline:2px solid #7cc8ff; }
.workspace-tab-panel th { position:sticky; top:0; background:#0b1729; z-index:1; }
.workspace-authenticated td { vertical-align:top; line-height:1.5; }
.workspace-authenticated td strong { font-variant-numeric:tabular-nums; }
.workspace-authenticated .panel-head { margin-bottom:14px; }
.workspace-authenticated .panel-head h2 { font-size:19px; }
.workspace-authenticated [data-section],.workspace-authenticated [id$="-panel"],.workspace-tab-panel { scroll-margin-top:100px; }
#research-scan .funnel-lanes { display:block; }
#research-scan>.panel-head { margin-bottom:8px; }
#research-scan .funnel-lane-head { margin:12px 0 4px; }
#research-scan .funnel-lane-head p { margin:0; }
#research-scan .funnel-lane { padding:0; border:0; background:none; }
#research-scan .funnel-lane-head p { font-size:12px; max-width:740px; }
#strict-funnel-stages { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:10px; overflow:visible; padding:12px 0; }
#strict-funnel-stages>i { display:none; }
#strict-funnel-stages>.funnel-stage { width:auto; min-width:0; min-height:100px; margin:0; padding:12px; }
#strict-funnel-stages>.funnel-stage:nth-of-type(-n+3) { grid-column:span 2; min-height:76px; background:#0a1929; }
#strict-funnel-stages>.funnel-stage strong { font-size:24px; }
#strict-funnel-stages>.funnel-stage span { line-height:1.4; }
#strict-funnel-stages .gate-state { line-height:1.4; }
#recorded-funnel>h2 { margin-bottom:12px; }
#recorded-funnel .validation-lane { margin-top:20px; }
#recorded-strict-funnel-stages { overflow:auto; }
#research-controls-status { margin:12px 0; padding:12px 14px; line-height:1.7; font-size:12px; }
.screening-toolbar { display:flex; gap:16px; flex-wrap:wrap; margin-top:18px; }
.screening-toolbar label { display:grid; gap:8px; min-width:190px; font-size:12px; }
.screening-toolbar input,.screening-toolbar select { min-height:42px; }
.screening-table { min-width:640px; }
.screening-table a { color:#83c6ff; font-weight:700; }
.screening-table small { display:block; color:var(--muted); margin-top:4px; }
.screening-table .status-chip { white-space:normal; }
.screening-table th:nth-child(2),.screening-table td:nth-child(2) { text-align:right; }
.screening-summary-stale { color:var(--amber); }
.research-gate-dialog { max-height:90dvh; overflow:auto; }
.research-gate-dialog .gate-actions { position:sticky; bottom:-24px; padding:14px 0; background:#071628; border-top:1px solid var(--line); z-index:2; }
.gate-parameter-section { margin-top:14px; }
.gate-parameter-section legend { font-size:13px; font-weight:700; }
.gate-preview { white-space:pre-line; }
.table-density { display:flex; align-items:center; gap:8px; align-self:end; font-size:12px; padding-block:12px; }
.table-density input { width:18px; height:18px; margin:0; }
#trading-view:not(.expanded-columns) .lifecycle-table :is(th,td):nth-child(3),
#trading-view:not(.expanded-columns) .lifecycle-table :is(th,td):nth-child(5),
#trading-view:not(.expanded-columns) .lifecycle-table :is(th,td):nth-child(8),
#trading-view:not(.expanded-columns) .lifecycle-table :is(th,td):nth-child(9),
#trading-view:not(.expanded-columns) .lifecycle-table :is(th,td):nth-child(10),
#trading-view:not(.expanded-columns) .lifecycle-table :is(th,td):nth-child(12) { display:none; }
#trading-view:not(.expanded-columns) .lifecycle-table { min-width:790px; }
#trading-view-positions .portfolio { max-width:900px; }
#data-system-view .collection-progress dd { max-width:68%; overflow-wrap:anywhere; }
#data-system-view .facts { margin-block:16px; }
.workspace-menu { display:none; }
@media (max-width:1100px) {
  .workspace-authenticated { --sidebar-width:190px; }
  .workspace-authenticated .brand { width:162px; left:14px; }
  .workspace-authenticated .brand strong { font-size:15px; }
  .workspace-authenticated .shell { padding-left:calc(var(--sidebar-width) + 18px); }
  .workspace-authenticated .system-ribbon { flex-wrap:wrap; gap:10px; }
  .workspace-authenticated .console-overview { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #strict-funnel-stages { grid-template-columns:repeat(3,minmax(0,1fr)); }
  #strict-funnel-stages>.funnel-stage:nth-of-type(-n+3) { grid-column:auto; }
}
@media (max-width:780px) {
  .workspace-authenticated .shell { padding-inline:14px; }
  .workspace-authenticated .app-chrome { position:static; }
  .workspace-authenticated .masthead { padding-top:14px; min-height:50px; display:flex; flex-wrap:nowrap; justify-content:space-between; }
  .workspace-authenticated .brand { position:static; width:auto; z-index:auto; }
  .workspace-authenticated .brand small { display:none; }
  .workspace-authenticated .brand-mark { width:30px; height:30px; }
  .workspace-authenticated .header-state { position:static; }
  .workspace-authenticated #sign-out { min-height:40px; }
  .workspace-authenticated #sign-out svg { display:none; }
  .workspace-authenticated .workspace-menu { display:block; min-height:42px; }
  .workspace-authenticated .app-nav { display:none; position:absolute; top:62px; left:14px; bottom:auto; width:min(300px,calc(100vw - 28px)); height:auto; max-height:70dvh; padding:12px; border:1px solid #426382; border-radius:10px; box-shadow:0 20px 60px #0009; }
  .workspace-authenticated .app-nav.menu-open { display:flex; }
  .nav-group-label { margin-top:10px; }
  .workspace-authenticated .system-ribbon { padding:12px 0; min-height:72px; }
  .workspace-authenticated .ribbon-session { flex:1; min-width:135px; }
  .workspace-authenticated .ribbon-connection { flex:1; gap:10px; }
  .workspace-authenticated #refresh-system-status { font-size:11px; }
  .workspace-authenticated .dashboard,.workspace-authenticated .workspace { padding-top:18px; }
  .workspace-authenticated .status-grid { display:block; }
  .workspace-authenticated .status-grid>* { margin-bottom:16px; }
  .workspace-tabs>button,.workspace-tabs>.current-subview { padding:10px; font-size:12px; min-height:44px; }
  .workspace-authenticated .workspace-head h1 { font-size:26px; }
  .workspace-authenticated .workspace-head { flex-wrap:wrap; }
  .workspace-authenticated .workspace-head>.workspace-link { padding:8px; font-size:12px; }
  .workspace-authenticated [data-section],.workspace-authenticated [id$="-panel"],.workspace-tab-panel { scroll-margin-top:14px; }
  #strict-funnel-stages { grid-template-columns:repeat(2,minmax(0,1fr)); }
  #strict-funnel-stages>.funnel-stage:nth-of-type(3) { grid-column:span 2; }
  .screening-toolbar label { flex:1; min-width:130px; }
  .research-gate-dialog .gate-actions { bottom:-18px; }
  #data-system-view .collection-progress dd { max-width:60%; }
}
@media (max-width:440px) {
  .workspace-authenticated .console-overview { grid-template-columns:1fr; }
  .workspace-authenticated button.console-card { min-height:130px; }
  .workspace-authenticated .brand strong { font-size:13px; }
}
/* Context is visually distinct from the three components that calculate regime. */
.treasury-context {margin-top:18px;padding:18px;border:1px solid var(--border,#1b344d);border-radius:12px;background:#071524;}
.treasury-context>div {display:flex;align-items:center;gap:16px;flex-wrap:wrap;}
.treasury-context .eyebrow {margin:0;}
#treasury-yield {font-size:1.7rem;}
.treasury-context p {line-height:1.6;}
.treasury-context a {font-size:.85rem;}
.watchlist-strategy-switch {border-radius:999px;min-height:44px;min-width:150px;white-space:nowrap;}
.watchlist-strategy-switch[aria-checked="true"] {background:#103b48;border-color:#31c7a3;color:#acf4de;}
.watchlist-strategy-switch[aria-checked="false"] {background:#172537;border-color:#53677c;color:#ced8e3;}
.watchlist-checked{display:block;margin-top:.45rem;color:var(--muted,#91a5bb);font-size:.75rem}
.company-symbol-link{text-align:left;white-space:normal;line-height:1.5;text-underline-offset:.2em}
.company-symbol-link:focus-visible{outline:2px solid var(--accent,#35baff);outline-offset:5px;border-radius:2px}
.treasury-market {margin:0 0 24px;border-left:3px solid #52c7ff;padding:24px;}
.treasury-market h2 {font-size:20px;margin:5px 0 0;}
.treasury-market>div:first-child {gap:24px;}
#market-treasury-yield {font-size:2.3rem;color:#b5e8ff;}
#market-treasury-yield[data-state="warning"],#treasury-yield[data-state="warning"] {color:#edc36c;}
.treasury-market .workspace-link {margin-left:auto;font-size:.85rem;}
#open-easy-mode {white-space:nowrap;min-height:44px;}
.easy-return {display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 18px;border:1px solid #295672;border-radius:10px;background:#102336;font-size:.85rem;}
.easy-return[hidden] {display:none;}
.easy-return button {white-space:nowrap;}
.easy-dialog {width:min(800px,calc(100vw - 24px));max-height:90dvh;overflow:auto;box-sizing:border-box;padding:28px;border:1px solid #356783;border-radius:18px;background:#081625;color:#ebf3fc;box-shadow:0 25px 100px #000a;}
.easy-dialog::backdrop {background:#000a;}
.easy-heading {display:flex;justify-content:space-between;align-items:flex-start;gap:18px;}
.easy-heading h2 {font-size:26px;margin:4px 0 8px;}
.easy-heading .eyebrow {margin:0;}
.easy-dialog p {line-height:1.6;}
.easy-steps {display:grid;grid-template-columns:repeat(5,minmax(0,1fr));padding:0;gap:8px;list-style:none;margin:22px 0;}
.easy-steps li {border-top:3px solid #304256;padding:12px 5px;font-size:.8rem;color:#9baec2;line-height:1.5;}
.easy-steps li[data-state="complete"] {border-color:#50d2b0;color:#ace4d4;}
.easy-steps li[data-state="current"] {border-color:#39b9ff;color:#eff8ff;background:#0c2a41;}
.easy-current {border:1px solid #26516e;border-radius:12px;padding:22px;background:#0d2235;}
.easy-current h3 {font-size:23px;margin:6px 0 12px;}
.easy-current .eyebrow {margin:0;}
.easy-actions {display:flex;gap:12px;flex-wrap:wrap;margin-top:20px;position:sticky;bottom:-28px;padding:16px 0;background:#081625;border-top:1px solid #31516d;}
.easy-actions button {min-height:46px;}
.easy-requirements {margin:18px 0;}
.easy-requirements summary {cursor:pointer;padding:10px 0;}
.easy-requirements li {margin:9px 0;line-height:1.5;}
.easy-alternative {padding:18px;border:1px solid #33465a;border-radius:10px;margin:18px 0;}
.easy-alternative p,.easy-footnote,#easy-mode-checked {font-size:.8rem;color:#a6b9cb;}
.easy-footnote {border-top:1px solid #263d53;padding-top:16px;}
#easy-mode-message:empty,#easy-mode-authority:empty {display:none;}
@media(max-width:640px) {
  .screening-table,.screening-monitor-table {min-width:0;width:100%;}
  .screening-table thead,.screening-monitor-table thead {display:none;}
  .screening-table tbody,.screening-monitor-table tbody,.screening-table tr,.screening-monitor-table tr {display:block;}
  .screening-table tr,.screening-monitor-table tr {padding:12px 0;border-bottom:1px solid var(--line);}
  .screening-table td,.screening-monitor-table td {display:block;padding:5px 12px;border:0;white-space:normal;overflow-wrap:anywhere;text-align:left;}
  .screening-table td:nth-child(2) {text-align:left;}
  .screening-table td::before,.screening-monitor-table td::before {font-weight:600;}
  .screening-table td:nth-child(2)::before {content:'Score: ';}
  .screening-table td:nth-child(3)::before {content:'Sector: ';}
  .screening-table td:nth-child(4)::before {content:'Screening: ';}
  .screening-table td:nth-child(5)::before {content:'Entry evidence: ';}
  .screening-monitor-table td:nth-child(2)::before {content:'Membership: ';}
  .screening-monitor-table td:nth-child(3)::before {content:'Candidate source: ';}
  .screening-table td[colspan]::before,.screening-monitor-table td[colspan]::before {content:none;}
  .easy-dialog {padding:18px;}.easy-heading h2 {font-size:21px;}
  .easy-steps {grid-template-columns:1fr;gap:3px;margin:15px 0;}
  .easy-steps li {border-top:0;border-left:3px solid #304256;padding:5px 12px;}
  .easy-current {padding:16px;}.easy-current h3 {font-size:20px;}
  .easy-actions {bottom:-18px;gap:8px;}.easy-actions button {flex:1 1 auto;}.easy-return {flex-wrap:wrap;}
  .treasury-market {padding:18px;}.treasury-market .workspace-link {margin-left:0;}
}
