/* Working surfaces share materials, but retain their layout and business colors. */
@media screen {
.crm-ui .iv-selection { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; min-width: 0; }
.crm-ui .iv-selection .btn { white-space: normal; max-width: 100%; }

.crm-ui .topbar .global-search { height: 44px; min-height: 44px; padding: 0 12px; gap: 8px; }
.crm-ui .topbar .global-search input { flex: 1; min-width: 0; height: 40px; min-height: 0; padding: 0; border: 0; border-radius: 0; background: transparent; box-shadow: none; }
.crm-ui .topbar .global-search input:focus { outline: 0; box-shadow: none; }
.crm-ui .topbar .global-search:focus-within { outline: 3px solid var(--accent); outline-offset: 2px; }

.crm-ui :is(.ct-switch,.task-segment) { display: flex; flex-wrap: wrap; gap: 4px; padding: 4px; border-radius: 14px; background: #edf1f6; }
.crm-ui :is(.ct-switch,.task-segment) button { margin: 0; border: 1px solid transparent; border-radius: 10px; min-height: 40px; padding: 8px 14px; background: transparent; color: var(--text-secondary); box-shadow: none; }
.crm-ui :is(.ct-switch,.task-segment) button:is(.on,.selected,.active) { background: #fff; color: var(--accent); border-color: #c5d1e0; box-shadow: 0 2px 5px #253d5810; }
.crm-ui .ord-contact-field > .btn { display: inline-flex; align-items: center; min-height: 32px; padding: 6px 0; font-size: 13px; margin-right: 12px; margin-top: 4px; }
.crm-ui .ord-intake-fields .field > span,.crm-ui .ord-contact-summary dt { color: var(--text-secondary); }
/* Controls determine the tab strip height; legacy 35px clips 40px buttons. */
.crm-ui .ord-card-tabs { height: auto; min-height: 44px; max-height: none; flex: 0 0 auto; flex-wrap: wrap; overflow: visible; padding: 0; gap: 4px; }
.crm-ui .ord-card-tabs .btn { flex: 0 0 auto; min-height: 44px; padding: 10px 12px; }
.crm-ui .ord-card-actions .ord-status { min-height: 40px; padding: 8px 12px; }

.crm-ui :is(.page-tabs,.module-tabs) { background: var(--surface-panel); border-radius: 14px; }
.crm-ui .co-donut-legend span,.crm-ui .co-chart-legend { -webkit-text-fill-color: var(--text-secondary); }
.crm-ui .ord-table .btn.link { color: var(--accent); }
.crm-ui .ord-table th [data-sort],.crm-ui .ord-table th>span { color: var(--text-secondary); }
/* Same local environment and glass hierarchy as the monitoring panel. */
.crm-ui :is(.panel,.co-chart,.co-metric,.profile-card,.ct-summary-card) { background: var(--surface-panel); backdrop-filter: blur(22px) saturate(1.08); }

.crm-ui .fn-income { color: var(--success); }
.crm-ui .fn-expense { color: var(--danger); }
.crm-ui .sidebar .profile-button > :is(span,img) { display: grid; place-items: center; flex: 0 0 36px; width: 36px; height: 36px; min-width: 36px; border-radius: 11px; font-size: 16px; object-fit: cover; }
.crm-ui :is(.help-link,.ord-training,.sale-training,.page-heading p,.stat p,.note) { color: var(--text-secondary); }
.crm-ui .ct-name { color: var(--accent); }
.crm-ui .co-training summary { color: var(--text-secondary); }
.crm-ui .co-bars i { background: var(--accent); }
.crm-ui .co-metric[class] small { background: #edf2f7; color: var(--text-secondary); border-radius: 8px; }
.crm-ui .pipeline span { color: var(--text-secondary); }
.crm-ui .ord-status { background: color-mix(in srgb, var(--st, #888) 14%, white); color: var(--text-primary); border-left: 3px solid var(--st, #888); }
.crm-ui .iv-segment { display: flex; flex-wrap: wrap; gap: 4px; padding: 4px; border-radius: 14px; background: #edf1f6; }
.crm-ui .iv-segment button { flex: 1; margin: 0; border: 1px solid transparent; border-radius: 10px; background: transparent; color: var(--text-secondary); font: inherit; min-height: 40px; box-shadow: none; }
.crm-ui .iv-segment button:is(.selected,.on,.active) { background: #fff; border-color: #c5d1e0; color: var(--accent); box-shadow: 0 2px 5px #253d5810; }
.crm-ui .iv-mobile-tabs .btn { border-radius: 0; border: 0; border-bottom: 2px solid transparent; background: transparent; box-shadow: none; }
.crm-ui .iv-mobile-tabs .btn.selected { border-bottom-color: var(--accent); color: var(--accent); background: var(--accent-soft); }
.crm-ui input::file-selector-button { border: 0; border-radius: 8px; background: #eaf1fb; color: #24558d; padding: 8px 12px; margin-right: 10px; font: inherit; cursor: pointer; }
.crm-ui .btn.link { border: 0; background: none; box-shadow: none; color: var(--accent); padding: 2px 0; min-height: 24px; }
.crm-ui .ord-board [data-oa=open] { border: 0; background: none; box-shadow: none; color: var(--accent); min-height: 32px; padding: 0; }
.crm-ui :is(.co-card-tabs,.ct-card-tabs,.fn-form-tabs,.wh-form-tabs,.iv-tabs) button { border: 0; border-bottom: 2px solid transparent; border-radius: 10px 10px 0 0; box-shadow: none; background: transparent; }
.crm-ui :is(.co-card-tabs,.ct-card-tabs,.fn-form-tabs,.wh-form-tabs,.iv-tabs) button:is(.on,.active) { background: #eaf3ff; color: var(--accent); border-bottom-color: var(--accent); }

.crm-ui :is(.field,.ord-field,.co-field,.fn-field,.wh-field,.ct-field,.lead-field,.iv-field,.task-field) :is(input,select,textarea):not([type=checkbox],[type=radio]) { border-radius: 12px; min-height: 40px; border-color: #8291a4; padding: 9px 12px; font-family: inherit; }
.crm-ui .crm-validation-summary { padding: 16px; margin: 16px; border: 1px solid #dcabb4; border-radius: 12px; background: #fff2f4; color: var(--danger); font-size: 13px; }
.crm-ui .crm-validation-summary ul { margin: 8px 0 0; padding-left: 20px; }
.crm-ui .crm-validation-summary a { border: 0; background: none; color: var(--danger); text-align: left; padding: 6px 0; font: inherit; cursor: pointer; text-decoration: underline; display: inline-block; }
.crm-ui .crm-field-error { display: block; grid-column: 2; color: var(--danger); font-size: 12px; line-height: 1.5; }
.crm-ui :is(input,select,textarea):user-invalid { border-color: var(--danger); }

.crm-ui :is(.builder-row,.builder-preview,.builder-options) { min-width: 0; }
.crm-ui .builder-options { flex-wrap: wrap; }
.crm-ui :is(.builder-options button,.lead-card h4 button,.warehouse-cell-list [data-cell-edit]) { display: inline-flex; align-items: center; justify-content: center; min-height: 32px; min-width: 32px; padding: 6px 8px; border-radius: 8px; }
.crm-ui .lead-filter > summary { min-height: 40px; display: flex; align-items: center; padding: 8px; }
.crm-ui .lead-status { min-height: 32px; padding: 6px 8px; }
.crm-ui .builder-preview { border: 1px solid #d4dce6; border-radius: 14px; background: var(--surface-data); }

.crm-ui #finance-module { font-family: inherit; }
.crm-ui #finance-module .btn { min-height: 40px; border-radius: 12px; }
.crm-ui #finance-module .success { background: var(--accent); border-color: var(--accent); }
.crm-ui #public-order { background: var(--surface-data); border: 1px solid var(--border-glass); border-radius: 22px; box-shadow: var(--shadow-panel); }
.crm-ui #public-order button { border-radius: 12px; }
.crm-ui .public-gallery { border-radius: 22px; background: var(--surface-overlay); box-shadow: var(--shadow-panel); }

.crm-ui .ord-empty:has(.ord-empty-icon)::before { content: none; }
.crm-ui .fn-toolbar .fn-field { display: flex; flex-direction: column; align-items: stretch; min-width: 145px; gap: 6px; }
.crm-ui .fn-toolbar { align-items: flex-end; }
.crm-ui .co-toolbar { height: auto; min-height: 40px; }

.crm-ui .status-settings { max-width: 100%; overflow-x: auto; background: var(--surface-data); border: 1px solid #d4dce6; border-radius: 16px; }
.crm-ui .page-tabs { overflow-x: auto; max-width: 100%; }
.crm-ui .page-tabs button { white-space: nowrap; flex-shrink: 0; }
.crm-ui .profile-section { background: var(--surface-data); padding: 24px; border: 1px solid #d4dce6; border-radius: 18px; margin-bottom: 16px; }
.crm-ui :is(.integration-settings button,.standalone-ui button) { background: var(--accent); border-radius: 12px; }
.crm-ui .integration-settings input:not([type=checkbox]) { border-radius: 12px; border-color: #8291a4; }
.crm-ui .standalone-ui { padding: 24px; }
.crm-ui.standalone-ui { max-width: 960px; margin: auto; padding: 24px; }
.crm-ui.standalone-ui main { max-width: 800px; }
.crm-ui :is(.sale-training,.iv-training) { background: #ffffffb3; color: var(--text-secondary); border: 1px solid #cbd6e4; border-radius: 999px; }

.crm-ui .workspace-mark { color: white; }
.crm-ui .ord-table td { padding: 8px 10px; line-height: 1.4; }
.crm-ui .ord-table th { padding: 10px; }
.crm-ui .ord-table small { line-height: 1.4; }
.crm-ui :is(.ord-select-trigger,.co-select-trigger,.co-combo-trigger,.ct-select-trigger) { border: 1px solid #8291a4; border-radius: 12px; min-height: 40px; background: #fff; padding: 9px 12px; font: inherit; }
.crm-ui :is(.ord-select-options,.co-select-options,.co-combo-options) { border: 1px solid #c5d1df; border-radius: 14px; background: var(--surface-overlay); box-shadow: 0 14px 38px #26364d24; }
.crm-ui .ord-card-tabs .btn { border: 0; border-radius: 10px 10px 0 0; background: transparent; box-shadow: none; }
.crm-ui .ord-card-tabs .btn.active { background: #eaf3ff; border-bottom: 2px solid var(--accent); color: var(--accent); }

.crm-ui :is(#invoices-module,.iv-backdrop,.iv-popover,.sale-drawer,.sale-popover,.sale-table,.sale-lines-table,.sale-toolbar .btn,.sale-card-footer .btn) { font-family: 'Golos Text',sans-serif; }
.crm-ui :is(.co-catalog,.fn-layout,.tasks-page,.ct-page,.chats-layout) { border-radius: 22px; }
.crm-ui :is(.co-category-panel,.fn-accounts,.salary-people,.task-history,.ct-feed,.lead-history,.iv-feed,.wh-feed) { background: #f1f5f9b8; border-color: var(--separator); }
.crm-ui :is(.co-category,.fn-account,.salary-people button) { border-radius: 10px; }
.crm-ui :is(.co-category.on,.fn-account.selected) { color: var(--accent); background: #ffffffea; box-shadow: 0 2px 6px #26364d08; }
.crm-ui :is(.co-category-head,.co-actions,.co-catalog-main,.co-total,.co-pagination,.fn-list-footer,.wh-footer,.ct-bottom,.task-pagination,.ord-pagination,.iv-list-footer,.sale-list-footer) { border-color: var(--separator); }
.crm-ui :is(.co-metrics,.co-charts,.co-bottom-metrics) { gap: 16px; }
.crm-ui .co-metric { border: 1px solid var(--border-glass); background: var(--surface-panel); border-radius: 18px; box-shadow: var(--shadow-panel); color: var(--text-primary); }
.crm-ui .co-metric :is(small,span) { color: var(--text-secondary); }
.crm-ui .co-chart { padding: 24px; }
.crm-ui :is(.co-chart h3,.co-dashboard-caption) { font-weight: 500; }
.crm-ui :is(.co-preview,.co-product-photo,.co-schedule-scroll,.ord-filter-box,.fn-filters,.ct-filters) { border: 1px solid var(--separator); border-radius: 14px; background: #f7f9fc; }
.crm-ui :is(.co-schedule .today,.ord-calendar .today) { background: #edf5ff; }
.crm-ui :is(.co-schedule .chosen,.co-segments .on,.ord-views .selected) { background: #e6f0ff; color: var(--accent); }
.crm-ui :is(.ord-top,.ord-toolbar,.ord-items-toolbar,.lead-toolbar,.sale-toolbar,.iv-toolbar,.task-toolbar) { gap: 10px; }
.crm-ui :is(.ord-badges,.lead-badges,.iv-badges) { gap: 10px; }
.crm-ui :is(.ord-badges button,.lead-badges button,.iv-badges .btn) { border-radius: 14px; border: 1px solid #d2dce8; background: #ffffffd9; min-height: 44px; }
.crm-ui :is(.ord-badges .selected,.lead-badges .active,.iv-badges .selected) { border-color: #7baae6; background: #eaf3ff; }
.crm-ui :is(.ord-selection,.iv-selection,.lead-bulk,.wh-selection,.ct-selection) { border-radius: 12px; background: #eaf3ff; border: 1px solid #b9d1ef; }
.crm-ui :is(.ord-status,.lead-status,.iv-status,.wh-status) { border-radius: 7px; font-size: 12px; }
.crm-ui :is(.ord-card-head,.task-drawer-head,.sale-card-head,.iv-header,.lead-editor>header) { min-height: 72px; height: auto; padding: 16px 24px; background: var(--surface-overlay); border-bottom: 1px solid var(--separator); gap: 12px; }
.crm-ui :is(.ord-card-head h2,.sale-card-head h2,.iv-header h2) { font-size: 22px; font-weight: 600; }
.crm-ui :is(.ord-card-content,.task-fields,.co-form-body,.lead-fields,.iv-fields) { padding: 24px; }
.crm-ui :is(.ord-history,.task-history,.ct-feed,.iv-feed,.lead-history) { border-left: 1px solid var(--separator); }
.crm-ui :is(.ord-events,.task-event,.ct-journal-entry,.wh-feed article) { font-size: 13px; line-height: 1.6; }
.crm-ui :is(.ord-comment,.task-comment,.ct-compose) { border-color: #c5d1df; border-radius: 12px; background: #fff; }
.crm-ui :is(.ord-totals,.co-bundle-total,.wh-total,.iv-total,.sale-list-total) { background: #eef3f9; border-radius: 12px; color: var(--text-primary); }
.crm-ui :is(.ord-board,.lead-board) { gap: 16px; }
.crm-ui :is(.ord-board-column,.lead-column) { border: 1px solid #d3dde9; background: #f1f5f9c7; border-radius: 18px; }
.crm-ui :is(.lead-card,.ord-board-card) { border: 1px solid #d6e0eb; border-radius: 12px; box-shadow: 0 2px 5px #26364d08; }
.crm-ui :is(.lead-card dt,.lead-table small,.iv-table td small,.sale-table small,.sale-lines-table small) { color: var(--text-muted); font-size: 12px; }
.crm-ui :is(.lead-table-wrap,.iv-table-scroll,.sale-table-wrap,.task-list,.ord-lines-scroll,.ct-related-scroll,.co-price-table) { background: var(--surface-data); border: 1px solid #d4dce6; border-radius: 16px; }
.crm-ui :is(.lead-table,.iv-table,.sale-table,.sale-lines-table) { font-family: inherit; border-collapse: separate; border-spacing: 0; }
.crm-ui :is(.lead-table,.iv-table,.sale-table) th { background: #f1f4f8; color: #526174; font-weight: 500; }
.crm-ui :is(.lead-backdrop,.sale-backdrop,.iv-backdrop) { background: #26364d35; }
.crm-ui :is(.lead-drawer,.sale-drawer,.iv-drawer) { background: var(--surface-overlay); border: 1px solid var(--border-glass); border-radius: 24px 0 0 24px; box-shadow: 0 28px 80px #18283e2e; overflow: hidden; }
.crm-ui :is(.lead-filter>div,.sale-popover,.iv-popover,.wh-suggestions,.ord-catalog-results) { background: var(--surface-overlay); border: 1px solid #d7dfe9; border-radius: 14px; box-shadow: 0 14px 38px #26364d24; }
.crm-ui :is(.sale-popover,.iv-popover)>.btn { border-radius: 8px; min-height: 40px; padding: 10px 14px; }
.crm-ui :is(.lead-field,.sale-field,.iv-field) { gap: 7px; font-size: 13px; color: var(--text-secondary); }
.crm-ui :is(.lead-field>span,.iv-field>span) { color: var(--text-secondary); }
.crm-ui :is(.sale-card-footer,.iv-footer,.lead-editor footer) { background: var(--surface-overlay); border-top: 1px solid var(--separator); padding: 16px 24px; }
.crm-ui :is(.sale-toolbar .btn,.sale-card-footer .btn,.iv-toolbar .btn) { min-height: 40px; height: auto; border-radius: 12px; padding: 9px 14px; }
.crm-ui :is(.task-row,.task-group,.task-row-date,.task-row-people) { border-color: var(--separator); }
.crm-ui .task-row { padding: 16px; }
.crm-ui .task-row:hover { background: #edf4fc; }
.crm-ui .task-group { background: #f1f4f8; color: var(--text-secondary); }
.crm-ui :is(.task-avatar,.ct-avatar) { border-radius: 12px; }
.crm-ui :is(.task-tabs button.active,.task-segment button.active) { color: var(--accent); background: #fff; border-color: #b3c8e0; }
.crm-ui :is(.wh-details,.ct-section,.co-section,.ord-section) { border-color: var(--separator); }
.crm-ui :is(.fn-amount,.wh-total,.iv-total,.sale-col-amount,.ct-stat) { font-variant-numeric: tabular-nums; }
.crm-ui :is(.profile-card,.profile-security-card,.profile-salary-card) { padding: 24px; }
.crm-ui #auth-password { display: grid; gap: 16px; justify-items: start; }
.crm-ui #auth-password .field { width: 100%; }
.crm-ui #auth-password .auth-error:empty { display: none; }
.crm-ui :is(.request-card,.public-order-card,.mail-card,.telegram-card) { background: var(--surface-data); border: 1px solid var(--border-glass); border-radius: 22px; box-shadow: var(--shadow-panel); }
@media(max-width:760px) {
 .crm-ui .wh-table-wrap .wh-empty { width: min(100%,calc(100vw - 88px)); }
 .crm-ui .fn-table td.fn-empty { text-align: left; }
 .crm-ui :is(.builder-options button,.lead-card h4 button,.warehouse-cell-list [data-cell-edit],.lead-filter > summary,.lead-status) { min-height: 44px; min-width: 44px; }
 .crm-ui .iv-toolbar { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
 .crm-ui .iv-toolbar .btn { min-width: 0; width: 100%; white-space: normal; padding: 8px; }
 .crm-ui .iv-toolbar :is(.iv-divider,.iv-spacer) { display: none; }

 .crm-ui :is(.ct-switch,.task-segment) button,.crm-ui .ord-contact-field > .btn { min-height: 44px; }

 .crm-ui .ord-card-tabs { flex-wrap: nowrap; overflow-x: auto; overflow-y: hidden; scrollbar-width: thin; min-height: 54px; padding-bottom: 8px; }

 .crm-ui .iv-segment button { min-height: 44px; }
 .crm-ui .btn.link,.crm-ui .ord-board [data-oa=open] { min-height: 44px; }
 .crm-ui .crm-field-error { grid-column: auto; }
 .crm-ui .crm-validation-summary a { min-height: 44px; }
 .crm-ui :is(.checkbox-field,.co-check,.fn-check,.ct-check,.ord-check,.wh-check) { min-height: 44px; }
 .crm-ui :is(.field,.ord-field,.co-field,.fn-field,.wh-field,.ct-field,.lead-field,.iv-field,.task-field) :is(input,select,textarea):not([type=checkbox],[type=radio]) { min-height: 44px; }

 .crm-ui :is(.ord-card-head,.task-drawer-head,.sale-card-head,.iv-header,.lead-editor>header) { padding: 16px; flex-wrap: wrap; }
 .crm-ui :is(.ord-card-content,.task-fields,.co-form-body,.lead-fields,.iv-fields) { padding: 18px 16px; }
 .crm-ui :is(.lead-drawer,.sale-drawer,.iv-drawer) { border-radius: 20px 20px 0 0; max-width: 100%; }
 .crm-ui :is(.sale-toolbar .btn,.sale-card-footer .btn,.iv-toolbar .btn) { min-height: 44px; }
 .crm-ui :is(.co-metrics,.co-charts,.co-bottom-metrics) { gap: 12px; }
 .crm-ui :is(.co-chart,.profile-card) { padding: 20px 16px; }
 .crm-ui :is(.sale-card-footer,.iv-footer,.lead-editor footer) { padding: 14px 16px max(14px,env(safe-area-inset-bottom)); }
}
@media(prefers-reduced-transparency:reduce), (forced-colors:active) {
 .crm-ui :is(.panel,.co-chart,.co-metric,.profile-card,.ct-summary-card,.chat-workspace) { backdrop-filter: none; }
}
}
