/* TradeChambers portal-suite finishing layer.
   Shared UpTrader geometry, interaction states and responsive safeguards. */
:root{--suite-cyan:#27b8dd;--suite-mint:#22d7c6;--suite-navy:#111827;--suite-ink:#202a34;--suite-muted:#707b86;--suite-line:#dfe5e9;--suite-soft:#f5f7f8;--suite-white:#fff;--suite-danger:#b42318;--suite-success:#087a55;--suite-focus:0 0 0 3px rgba(39,184,221,.22)}
html{color-scheme:light;max-width:100%;overflow-x:hidden}body{max-width:100%;overflow-x:hidden;background:var(--suite-soft);color:var(--suite-ink);font-family:Inter,"Segoe UI",Arial,sans-serif}img,svg,video,canvas{max-width:100%}button,input,select,textarea{font:inherit}a,button,input,select,textarea,summary{outline:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{box-shadow:var(--suite-focus)!important;outline:1px solid var(--suite-cyan)!important;outline-offset:1px}.skip-link,.bo-skip{z-index:9999!important}
/* Consistent UpTrader workspace surfaces without changing portal behavior. */
.bo-body,.client-portal-body,body.app.admin,.pp-body,.pbx-nav+main{background:var(--suite-soft)!important}.bo-global,.member-header-top,body.app.admin #header,.pp-header,.topbar{backdrop-filter:saturate(120%);-webkit-backdrop-filter:saturate(120%)}.bo-brand,.member-brand,.crm-sidebar-brand,.pp-logo-name,.topbar h1{letter-spacing:.01em}.bo-page,.member-content,.crm-content,.pp-content,.pbx-nav+main{width:100%;max-width:1680px;margin-inline:auto}.bo-panel,.broker-panel,.panel_s,.pp-panel,.panel,.notice,.queue{border-color:var(--suite-line)!important}.bo-panel h1,.bo-panel h2,.broker-panel h1,.broker-panel h2,.crm-content h1,.crm-content h2,.pp-content h1,.pp-content h2,.section-head h2{color:var(--suite-ink)!important;letter-spacing:-.018em}.bo-btn-primary,.btn-broker,.btn-primary,.account-submit{border-color:var(--suite-cyan)!important;background:linear-gradient(110deg,var(--suite-cyan),var(--suite-mint))!important;color:#fff!important}.bo-btn-primary:hover,.btn-broker:hover,.btn-primary:hover,.account-submit:hover{filter:saturate(115%) brightness(.96)}
.bo-table-wrap,.table-responsive,.crm-table-wrap,.pp-table-wrap,.table-wrap,.broker-table-wrap{max-width:100%;overflow:auto;-webkit-overflow-scrolling:touch}.bo-table,.dt-table,.pp-table,.table-wrap table,.member-content table{font-variant-numeric:tabular-nums}.bo-table th,.dt-table th,.pp-table th,.table-wrap th,.member-content table th{position:sticky;top:0;z-index:2}.bo-card-grid,.crm-cards,.pp-stat-grid,.metrics{align-items:stretch}.bo-card-grid>*,.crm-cards>*,.pp-stat-grid>*,.metrics>*{min-width:0}.badge,.label,.bo-status{white-space:nowrap}
/* Authentication and public pages are code-native. Product screenshots are reference material only. */
.auth-broker-body,.standalone-broker-body{background:linear-gradient(135deg,#f7fafb 0,#eef7f9 48%,#f5f7f8 100%)!important}.auth-broker-body:before,.auth-broker-body:after,.standalone-broker-body:before,.standalone-broker-body:after{content:none!important;display:none!important;background:none!important}.auth-broker-body .auth-shell,.standalone-broker-body .standalone-shell{position:relative;z-index:1}.public-broker-body .public-hero:after{background:rgba(18,183,207,.14)!important}.lead-form{border-top:3px solid var(--suite-cyan)!important;border-radius:0!important}.vault{border-top:3px solid var(--suite-cyan)!important;border-radius:0!important}
/* Mobile: every navigation remains reachable and every action remains tappable. */
@media(max-width:900px){.bo-page,.member-content,.crm-content,.pp-content,.pbx-nav+main{max-width:100%;padding-inline:12px!important}.bo-global,.member-header-top,body.app.admin #header,.pp-header,.topbar{max-width:100vw}.bo-products,.crm-admin-portals,.pp-portal-switcher,.portal-links{overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none}.bo-products::-webkit-scrollbar,.crm-admin-portals::-webkit-scrollbar,.pp-portal-switcher::-webkit-scrollbar,.portal-links::-webkit-scrollbar{display:none}.bo-products a,.crm-admin-portals a,.pp-portal-switcher a,.portal-links a{scroll-snap-align:start}.bo-modules,.member-nav-bar,body.app.admin #menu.sidebar,.pp-sidebar,.pbx-nav{overscroll-behavior-x:contain}.bo-card-grid,.crm-cards,.pp-stat-grid,.metrics{grid-template-columns:repeat(2,minmax(0,1fr))!important}.auth-broker-body:before,.auth-broker-body:after,.standalone-broker-body:before,.standalone-broker-body:after{display:none}.public-broker-body .public-hero:after{width:80vw;opacity:.08}}
@media(max-width:600px){.bo-page,.member-content,.crm-content,.pp-content,.pbx-nav+main{padding-inline:8px!important}.bo-card-grid,.crm-cards,.pp-stat-grid,.metrics{grid-template-columns:minmax(0,1fr)!important}.bo-panel,.broker-panel,.panel_s,.pp-panel,.panel,.notice,.queue{max-width:100%;overflow-wrap:anywhere}.bo-table-wrap,.table-responsive,.crm-table-wrap,.pp-table-wrap,.table-wrap,.broker-table-wrap{margin-inline:0}.modal-dialog{max-width:calc(100vw - 16px)!important;margin:8px!important}.dropdown-menu{max-width:calc(100vw - 16px)!important}.btn,button,[role=button]{min-height:40px}input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select{min-height:40px}.public-broker-body .public-hero:after{display:none}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
