/* One control language; sizes and placement remain owned by the existing layout. */
.data-table tr[data-record-href]{cursor:pointer}
.data-table tr[data-record-href]:focus-within{background:var(--surface)}
.field input:where(:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]):not([type=color]):not([type=file])),
.field select,.search-input,.sales-search input,.sales-filters select,.sales-filters input:where(:not([type=checkbox]):not([type=radio])),
.module-filter select,.filter-select,.record-extra-filters select,.record-extra-filters input:where(:not([type=checkbox]):not([type=radio])){
 background:var(--control-bg);border:1px solid var(--control-border);border-radius:999px;
 color:var(--text);min-height:44px;padding:10px 18px;font-weight:var(--weight-body);
 transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.field textarea{background:var(--control-bg);border:1px solid var(--control-border);border-radius:20px;padding:14px 18px;color:var(--text);font-weight:var(--weight-body);transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease}
.field input[type=file]{background:var(--control-bg);border:1px solid var(--control-border);border-radius:20px;color:var(--text);padding:10px;min-height:44px}
.field input[type=file]::file-selector-button{font:inherit;font-weight:var(--weight-medium);background:var(--control-hover-bg);border:1px solid var(--control-hover-border);border-radius:999px;color:var(--text);padding:8px 14px;margin-right:12px;cursor:pointer}
.sales-search input,.search-box .search-input{padding-left:44px;padding-right:18px}
.sales-search>.icon,.search-box>.icon{top:50%;transform:translateY(-50%);left:16px;pointer-events:none}
.field input::placeholder,.field textarea::placeholder,.sales-search input::placeholder,.search-input::placeholder{color:var(--subtle);opacity:1}
.period-control{background:var(--control-bg);border-color:var(--control-border);border-radius:999px;min-height:44px;backdrop-filter:none;-webkit-backdrop-filter:none}
.period-control select,.period-control input{background:transparent;border:0;border-radius:999px;color:var(--text);font:inherit;font-size:14px;min-width:0}
.period-control select{padding:0 18px 0 0}
select option{background:var(--control-bg);color:var(--text)}
.record-control,.record-sort-button,.filter-select,.channel-tab,.client-tab,.attention-tab,.record-status-tabs button,.record-view-switch,.workspace-switch,.nav-btn{
 border-radius:999px;background:var(--control-bg);border:1px solid var(--control-border);
 color:var(--muted);font-weight:var(--weight-medium);letter-spacing:0;
 transition:background-color .18s ease,border-color .18s ease,color .18s ease,box-shadow .18s ease;
}
.record-control,.record-sort-button{min-height:40px}
.record-view-switch{padding:3px;gap:3px}
.record-view-switch .record-control{border-radius:999px;border-color:transparent;background:transparent}
.record-status-tabs button{padding:8px 14px}
.client-tabs{gap:6px;padding-bottom:12px}
.client-tab{padding:10px 16px;min-height:44px;font-size:15px}
.channel-tab,.attention-tab{min-height:40px}
.record-filter-count,.count-badge,.stage-badge{border-radius:999px}
.workspace-switch a{border:1px solid transparent}
.nav-btn{background:transparent;border-color:transparent}
.header-actions .icon-btn,.header-profile .profile-btn,.dialog-head .icon-btn,.mobile-profile-actions .icon-btn{
 border-radius:999px;background:var(--control-bg);border-color:var(--control-border);backdrop-filter:none;-webkit-backdrop-filter:none;
}
.metric.featured .round-arrow,.nav-btn.active,.client-tab.active .count-badge{
 background:var(--control-active-bg);color:var(--accent-ink);border-color:var(--control-active-border);
}
.nav-btn.active{color:var(--nav-active-ink)}
.client-tab.active,.channel-tab.active,.attention-tab.active,.record-control[aria-pressed=true],.record-control[aria-expanded=true],
.record-view-switch .record-control[aria-pressed=true],.record-status-tabs button[aria-pressed=true],.workspace-switch a[aria-current="true"]{
 background:var(--control-active-bg);border-color:var(--control-active-border);color:var(--accent-ink);
}
@media(hover:hover){
 .field input:where(:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=range]):not([type=color])):hover,
 .field select:hover,.field textarea:hover,.sales-search input:hover,.search-input:hover,.sales-filters select:hover,.sales-filters input:hover,
 .module-filter select:hover,.record-extra-filters select:hover,.record-extra-filters input:where(:not([type=checkbox]):not([type=radio])):hover,
 .record-control:where(:not(:disabled)):hover,.record-sort-button:where(:not(:disabled)):hover,.filter-select:hover,.period-control:hover,
 .client-tab:hover,.channel-tab:hover,.attention-tab:hover,.record-status-tabs button:hover,.header-actions .icon-btn:not(:disabled):hover,.profile-btn:hover{
  background:var(--control-hover-bg);border-color:var(--control-hover-border);color:var(--text);
 }
 .nav-btn:hover,.nav-btn[aria-expanded=true]{background:var(--control-hover-bg);border-color:var(--control-hover-border);color:var(--text)}
 .nav-btn.active:hover,.nav-btn.active[aria-expanded=true]{background:var(--control-active-bg);border-color:var(--control-active-border);color:var(--nav-active-ink)}
 .client-tab.active:hover,.channel-tab.active:hover,.attention-tab.active:hover,.record-control[aria-pressed=true]:hover,.record-control[aria-expanded=true]:hover,.record-status-tabs button[aria-pressed=true]:hover{background:var(--control-active-bg);border-color:var(--control-active-border);color:var(--accent-ink)}
}
.field input:where(:not([type=checkbox]):not([type=radio])):focus-visible,.field select:focus-visible,.field textarea:focus-visible,
.sales-search input:focus-visible,.search-input:focus-visible,.sales-filters select:focus-visible,.sales-filters input:focus-visible,
.module-filter select:focus-visible,.record-extra-filters select:focus-visible,.record-extra-filters input:focus-visible,
.record-control:focus-visible,.record-sort-button:focus-visible,.client-tab:focus-visible,.channel-tab:focus-visible,.attention-tab:focus-visible,.nav-btn:focus-visible,.record-status-tabs button:focus-visible{
 border-color:var(--focus-ring);outline:2px solid var(--focus-ring);outline-offset:3px;
}
.field input[aria-invalid=true],.field select[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:var(--red)}
.field input:disabled,.field select:disabled,.field textarea:disabled{color:var(--muted);cursor:not-allowed}
/* Titles establish the page; values and primary record names carry the detail. */
.page-heading h1,.record-heading-bar h1,.client-title h1{color:var(--text);line-height:1.2}
.panel-head h2,.section-title-row h2,.settings-intro h2,.setup-content>h2{color:var(--text);line-height:1.35}
.metric-top{color:var(--muted);font-weight:var(--weight-medium)}
.metric-top .round-arrow{color:var(--muted)}
.metric.featured .metric-top .round-arrow{color:var(--accent-ink)}
.metric-meta,.metric-meta strong,.workspace-stat .metric-meta{color:var(--muted);font-weight:var(--weight-body)}
.data-table th{letter-spacing:0;color:var(--muted);font-weight:var(--weight-medium);line-height:1.4}
.data-table td{color:var(--text);line-height:1.5}
.data-table td strong,.data-table .row-main strong,.data-table .project-name strong,.data-table td:first-child>a,.data-table td:first-child .text-btn{font-weight:var(--weight-medium)}
.cell-sub,.data-table .cell-sub,.data-table .row-main small,.data-table .project-name small{color:var(--muted);font-weight:var(--weight-body)}
.data-table .cell-sub.overdue{color:var(--red)}
.subtitle,.audit-note,.settings-help,.workspace-context-note{color:var(--subtle)}
.field label,.module-filter,.sales-filters>label{font-weight:var(--weight-medium)}
.field small{color:var(--muted);font-weight:var(--weight-body)}
.stage-badge,.health,.due-badge,.count-badge{font-weight:var(--weight-medium);line-height:1.4}
.sales-empty h3,.empty-state h3{color:var(--text);line-height:1.4;margin-bottom:6px}
.sales-empty p,.empty-state p{color:var(--muted);line-height:1.5}
@media(max-width:600px){
 .record-header .sales-search input,.record-extra-filters select,.record-extra-filters input:where(:not([type=checkbox]):not([type=radio])),.field input,.field select,.field textarea{font-size:16px}
 .record-control,.record-sort-button,.record-status-tabs button,.channel-tab,.attention-tab{min-height:44px}
 .record-view-switch .record-control{min-height:40px;min-width:40px}
 .client-tab{min-height:44px;padding:10px 14px}
}
@media(prefers-reduced-motion:reduce){
 .field input,.field select,.field textarea,.search-input,.sales-search input,.record-control,.record-sort-button,.filter-select,.channel-tab,.client-tab,.attention-tab,.record-status-tabs button,.record-view-switch,.workspace-switch,.nav-btn{transition:none}
}
