.workspace-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; margin-bottom:16px; }
.workspace-heading h2,.workspace-heading h3 { margin:0; }
.workspace-tabs { display:flex; flex-wrap:wrap; gap:4px; border-bottom:1px solid #d8dee8; margin:12px 0 20px; }
.workspace-tabs button { background:transparent; border:0; border-bottom:2px solid transparent; padding:12px 14px; color:#526175; font:inherit; cursor:pointer; border-radius:0; }
.workspace-tabs button.active { border-color:#9c2943; color:#812037; font-weight:600; }
.workspace-tabs button:focus-visible { outline:2px solid #247b65; outline-offset:-2px; }
.workspace-toolbar { display:flex; flex-wrap:wrap; align-items:end; gap:16px; margin:16px 0; }
.workspace-toolbar[hidden] { display:none !important; }
.workspace-toolbar label { display:flex; flex-direction:column; gap:6px; font-size:13px; max-width:100%; }
.workspace-toolbar input,.workspace-toolbar select { min-height:38px; padding:8px 10px; border:1px solid #cbd4df; border-radius:4px; max-width:100%; background:white; color:#253344; font:inherit; }
.workspace-actions { display:flex; flex-wrap:wrap; gap:8px; }
.workspace-actions .btn { width:auto; margin:0; }
.broker-workspace-band { padding:20px 0; border-bottom:1px solid #d8dee8; }
.broker-workspace-band:first-child { padding-top:8px; }
.broker-workspace-band > h3 { font-size:18px; margin:0 0 12px; }
.broker-readiness-matrix { min-width:900px; table-layout:fixed; }
.broker-readiness-matrix summary { cursor:pointer; }
.broker-readiness-matrix small { display:block; margin-top:10px; line-height:1.5; }
.broker-connections-table { min-width:1000px; font-size:13px; }
.broker-connections-table th,.broker-connections-table td { min-width:90px; }
.broker-connection-menu { min-width:145px; }
.broker-connection-menu summary { cursor:pointer; font-weight:600; padding:4px 0; }
.broker-connection-menu .workspace-actions { flex-direction:column; margin-top:12px; }
.broker-connection-menu .btn { width:100%; }
.broker-gateway-table { min-width:1100px; font-size:13px; }
.broker-sync-table { min-width:480px; font-size:13px; table-layout:fixed; }
.broker-gateway-table small,.broker-sync-table small { display:block; margin-top:6px; }
.broker-gateway-table summary,.broker-sync-table summary { cursor:pointer; }
.broker-gateway-table details p { min-width:210px; max-width:360px; line-height:1.5; }
.broker-sync-table .workspace-actions { min-width:120px; }
.broker-detail-row[hidden] { display:none !important; }
.broker-expand-button { display:inline-flex; align-items:center; gap:8px; border:0; padding:4px 0; background:transparent; color:inherit; font:inherit; font-weight:600; text-align:left; cursor:pointer; max-width:100%; }
.broker-expand-button:focus-visible { outline:2px solid #2563eb; outline-offset:4px; }
.broker-expand-caret { display:inline-block; flex:none; width:12px; transition:transform 100ms; }
.broker-expand-button[aria-expanded="true"] .broker-expand-caret { transform:rotate(90deg); }
.broker-expanded-content { padding:12px; }
.broker-expanded-content h3 { font-size:16px; margin:0 0 12px; }
.broker-expanded-content .workspace-actions { margin-top:16px; }
.broker-status-badge { display:inline-block; padding:4px 8px; border-radius:4px; font-size:12px; font-weight:600; }
.broker-status-badge.status-ok { background:#dcfce7; color:#166534; }
.broker-status-badge.status-danger { background:#fee2e2; color:#991b1b; }
.broker-status-badge.status-warning { background:#fef3c7; color:#92400e; }
.broker-status-badge.status-info { background:#dbeafe; color:#1e40af; }
.broker-status-badge.status-neutral { background:#e5e7eb; color:#4b5563; }
.broker-status-legend { display:flex; flex-wrap:wrap; gap:6px; }
.broker-sync-table tr[data-sync-tone="danger"] > th { border-left:3px solid #dc2626; }
.broker-sync-table tr[data-sync-tone="warning"] > th { border-left:3px solid #d97706; }
.module-info-tooltip { display:none !important; }
.module-info-btn:focus-visible { outline:2px solid #2563eb; outline-offset:2px; }
.module-help-tooltip { position:fixed; z-index:1000; margin:0; padding:12px 14px; border:1px solid #cbd5e1; border-radius:4px; background:#fff; color:#334155; box-shadow:0 4px 16px #0002; box-sizing:border-box; max-height:calc(100vh - 24px); overflow:auto; overflow-wrap:anywhere; font-size:13px; font-weight:400; line-height:1.5; letter-spacing:0; }
.module-help-tooltip[hidden] { display:none !important; }
#main-screen .tabular-metric-surface { display:block !important; border:0; border-radius:0; padding:0; background:transparent; }
#main-screen .tabular-metric-surface > .tabular-table-wrap { display:block; padding:0; border:0; border-radius:0; background:transparent; }
#main-screen .tabular-form-surface { display:block !important; padding:0; border:0; border-radius:0; background:transparent; }
.tabular-form-surface .tabular-readonly-table input,.tabular-form-surface .tabular-readonly-table select { width:100%; max-width:100%; box-sizing:border-box; }
.tabular-readonly-table { width:100%; min-width:0; font-size:13px; border-collapse:collapse; table-layout:fixed; }
.tabular-readonly-table th,.tabular-readonly-table td { padding:10px 12px; text-align:left; vertical-align:top; border-bottom:1px solid #e0e5ec; overflow-wrap:anywhere; font:inherit; }
.tabular-readonly-table th { font-weight:600; }
.tabular-readonly-table strong { font-size:13px !important; line-height:1.5; }
.tabular-readonly-table small { display:block; font-size:12px; line-height:1.5; }
#broker-workspace-scope { align-items:flex-end; flex-wrap:wrap; }
.workspace-table-scroll { overflow:auto; max-width:100%; }
.workspace-table-scroll table { width:100%; border-collapse:collapse; }
#main-screen #brokers-list table.broker-directory-table { min-width:0; width:100%; table-layout:fixed; }
#main-screen #brokers-list .broker-directory-table td, #main-screen #brokers-list .broker-directory-table th { min-width:0; white-space:normal; }
.workspace-table-scroll th,.workspace-table-scroll td { padding:12px; text-align:left; vertical-align:top; border-bottom:1px solid #e0e5ec; overflow-wrap:anywhere; }
.workspace-facts { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr)); margin:20px 0; gap:0 28px; }
.workspace-facts > div { border-bottom:1px solid #e0e5ec; padding:14px 0; }
.workspace-facts dt { color:#59687a; font-size:12px; }
.workspace-facts dd { margin:6px 0 0; font-size:14px; font-weight:600; overflow-wrap:anywhere; }
.workspace-disclosure { border-top:1px solid #d8dee8; padding:16px 0; margin-top:24px; }
.workspace-disclosure > summary { cursor:pointer; color:#526175; font-weight:600; padding:4px 0 16px; }
.workspace-report-table th:first-child { width:180px; }
.workspace-report-table small { display:block; max-width:720px; margin-top:8px; line-height:1.5; overflow-wrap:anywhere; }
.bridge-account-band { padding:18px 0; border-bottom:1px solid #d8dee8; }
.bridge-account-table { min-width:880px; }
.bridge-finance-table { min-width:1120px; }
.bridge-finance-table td, .bridge-finance-table th { padding:10px 12px; vertical-align:top; }
.bridge-finance-table tr[hidden] { display:none !important; }
.bridge-finance-toggle { border:0; background:transparent; color:inherit; font:inherit; cursor:pointer; text-align:left; padding:0; }
.bridge-finance-toggle:focus-visible { outline:2px solid #1976ff; outline-offset:3px; }
.bridge-finance-status { display:inline-block; padding:3px 7px; border-radius:4px; font-size:13px; font-weight:600; }
.bridge-finance-success { background:#dcfce7; color:#166534; }
.bridge-finance-warning { background:#fff4cc; color:#805500; }
.bridge-finance-danger { background:#fee2e2; color:#991b1b; }
.bridge-finance-neutral { background:#e8edf2; color:#475569; }
.bridge-finance-detail { width:100%; min-width:0; }
.bridge-finance-detail th { width:240px; }
.bridge-account-table small { display:block; margin-top:6px; font-size:12px; }
.broker-settings-form [role="tabpanel"] { padding:8px 0; }
.modal-overlay:has(.broker-settings-form) { z-index:2200; }
.broker-settings-form .form-group { min-width:0; }
.broker-settings-form .broker-service-flag { display:flex; align-items:center; gap:10px; }
.broker-settings-form .broker-service-flag input { width:18px; height:18px; margin:0; flex:none; }
#broker-service-form + h3 { margin-top:24px; }
#broker-service-form ~ .workspace-table-scroll table { min-width:720px; }
#broker-service-form ~ .workspace-table-scroll small { display:block; margin-top:6px; }
.broker-settings-form input,.broker-settings-form textarea,.broker-settings-form select { max-width:100%; box-sizing:border-box; }
.broker-settings-form [hidden], [data-broker-workspace-panel][hidden], .execution-routing-tab-panel[hidden] { display:none !important; }
#view-brokers,#view-execution-routing { min-width:0; letter-spacing:0; }
#view-execution-routing .tabs { flex-wrap:wrap; }
#view-execution-routing .execution-routing-heading h2 { font-size:24px; }
#main-screen #execution-routing-tabs, #main-screen #broker-workspace-tabs { display:flex; flex-wrap:wrap; overflow:visible; white-space:normal; width:auto; max-width:100%; gap:0; }
#main-screen #execution-routing-tabs .tab-btn, #main-screen #broker-workspace-tabs button { flex:0 1 auto; min-width:0; width:auto; max-width:100%; white-space:normal; padding:12px 14px; }
@media(max-width:720px) {
    .workspace-tabs { gap:0; }
    .workspace-tabs button { padding:10px; font-size:13px; }
    #main-screen #execution-routing-tabs .tab-btn, #main-screen #broker-workspace-tabs button { padding:10px; font-size:13px; line-height:1.4; }
    .workspace-toolbar label { flex:1 1 160px; }
    .broker-directory-table thead { display:none; }
    #view-brokers .broker-directory-table, #view-brokers .broker-directory-table tbody { display:block; width:100%; min-width:0; }
    .broker-directory-table tr { display:block; padding:12px 0; border-bottom:1px solid #d8dee8; }
    #main-screen #brokers-list .broker-directory-table td { display:grid; grid-template-columns:96px minmax(0,1fr); gap:12px; padding:6px 0; border:0; width:100%; box-sizing:border-box; }
    #view-brokers .broker-directory-table td .btn { min-width:0; max-width:100%; width:100%; box-sizing:border-box; }
    .broker-directory-table td::before { content:attr(data-label); color:#59687a; font-size:12px; }
    .workspace-report-table th:first-child { width:100px; }
    .workspace-table-scroll th,.workspace-table-scroll td { padding:10px 6px; }
    .workspace-actions .btn { white-space:normal; }
}
