/* CRM workspace: neutral surfaces and a single scrolling region per pane. */
.crm-workspace{--ink:var(--color-text-primary);--ink-soft:var(--color-text-secondary);--border:var(--color-border);background:var(--color-canvas)}
html[data-theme] .crm-workspace .crm-main{background:var(--color-canvas);min-width:0}
html[data-theme] .crm-workspace :is(.crm-toolbar,.crm-contacts-filter-panel,.crm-view-head,.crm-contacts-filter-primary){background:transparent;box-shadow:none;border-color:var(--color-border)}
.crm-workspace .crm-view-head{padding:22px 24px 16px}.crm-workspace .crm-view-kicker{display:none}.crm-workspace h2{font-size:25px;letter-spacing:-.03em}.crm-workspace .crm-toolbar{padding:14px 20px;gap:12px}
html[data-theme] .crm-workspace :is(.crm-table-shell,.crm-pipeline-card,.crm-organization-detail,.crm-pipeline-stage-editor,.crm-drawer-section,.crm-create-panel){background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:7px;box-shadow:none}
.crm-workspace .crm-table-shell{margin:0 20px;min-height:0;flex:1}.crm-workspace .crm-table th{position:sticky;top:0;background:var(--color-surface-soft);color:var(--color-text-secondary);font-size:11px;font-weight:600;letter-spacing:0;text-transform:none;z-index:1}.crm-workspace .crm-table td{padding:14px 12px;font-size:12px;border-bottom:1px solid var(--color-border-subtle)}.crm-workspace .crm-table [hidden]{display:none}
html[data-theme] .crm-workspace .crm-pipeline-column{background:var(--color-surface-soft);border:1px solid var(--color-border);border-radius:8px;margin-right:12px}
.crm-workspace .crm-pipeline-column-head{padding:14px;background:transparent;border-bottom:1px solid var(--color-border)}.crm-workspace .crm-pipeline-column-title{font-size:13px}.crm-workspace .crm-pipeline-column-body{padding:10px;gap:10px}.crm-workspace .crm-pipeline-stage-strip{display:none}
html[data-theme] .crm-workspace :is(.crm-detail-field input,.crm-detail-field textarea,.crm-note-compose textarea,.crm-search-field,.crm-toolbar input,.crm-directory-views input,.crm-directory-views select){background:var(--color-input);color:var(--color-text-primary);border:1px solid var(--color-border-strong);border-radius:6px;box-shadow:none}
.crm-workspace :is(button,input,select,textarea):focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.crm-workspace .crm-directory-views{display:flex;align-items:end;gap:10px;flex-wrap:wrap;padding:12px 20px}.crm-directory-views>label{display:grid;gap:5px;font-size:11px;color:var(--color-text-secondary)}.crm-directory-views input,.crm-directory-views select{height:36px;padding:7px 10px;font:inherit;font-size:12px}.crm-directory-views details{position:relative}.crm-directory-views summary{padding:9px 12px;font-size:12px;cursor:pointer}.crm-directory-views details[open]{padding:8px;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:6px}.crm-directory-views details label{display:flex;gap:8px;align-items:center;font-size:12px}.crm-directory-views input[type=checkbox]{height:auto}.crm-directory-views [role=status]{font-size:12px}
html[data-theme] .crm-workspace .crm-contact-drawer-panel{display:flex;flex-direction:column;background:var(--color-canvas);border-left:1px solid var(--color-border-strong);box-shadow:-12px 0 35px var(--color-shadow);width:min(620px,100%)}
html[data-theme] .crm-workspace .crm-contact-drawer.is-full-profile .crm-contact-drawer-panel{width:100%}
.crm-workspace .crm-contact-drawer-head{flex:0 0 auto;padding:18px 22px;background:var(--color-surface);gap:12px}.crm-workspace .crm-contact-drawer-head h2{font-size:23px;overflow-wrap:anywhere;margin:0}.crm-workspace .crm-contact-drawer-head p{font-size:12px;margin-top:7px}.crm-workspace .crm-drawer-actions{gap:6px}.crm-workspace .crm-drawer-close,.crm-workspace .crm-drawer-delete{width:34px;height:34px;border-radius:6px}
.crm-workspace .crm-save-status{flex:0 0 auto;margin:0;padding:0 22px;color:var(--color-text-secondary);font-size:11px;line-height:24px;min-height:0}.crm-workspace .crm-save-status:empty{display:none}
html[data-theme] .crm-workspace .crm-drawer-tabs{flex:0 0 auto;display:flex;gap:4px;padding:10px 16px;background:var(--color-surface);border-bottom:1px solid var(--color-border)}
.crm-workspace .crm-contact-tab{flex:1;font-size:12px;font-weight:600;padding:10px 8px;border:0;border-radius:5px;color:var(--color-text-secondary);background:transparent}.crm-workspace .crm-contact-tab.is-active{background:var(--color-hover);color:var(--color-text-primary)}
html[data-theme] .crm-workspace .crm-drawer-body{flex:1;min-height:0;overflow:auto;padding:20px;background:transparent}.crm-workspace .crm-drawer-details{display:grid;gap:16px}.crm-workspace .crm-drawer-section{padding:16px}.crm-workspace .crm-drawer-section h3{font-size:13px;font-weight:650;margin:0 0 14px}.crm-workspace .crm-drawer-detail-list{gap:12px}.crm-workspace .crm-drawer-detail-list>div{padding:0;background:none;border:0}.crm-workspace .crm-drawer-detail-list dt{font-size:11px;color:var(--color-text-secondary)}.crm-workspace .crm-drawer-detail-list dd{font-size:13px;margin:6px 0 0;overflow-wrap:anywhere}
html[data-theme] .crm-workspace :is(.crm-contact-conversation-item,.agents-note-item,.crm-activity-item){background:var(--color-surface);border:1px solid var(--color-border);border-radius:6px;padding:14px;box-shadow:none}.crm-workspace .crm-contact-conversation-item{text-align:left;width:100%}.crm-workspace .crm-contact-conversation-item strong{font-size:13px}.crm-workspace .crm-contact-conversation-item p,.crm-workspace .crm-contact-conversation-item span,.crm-workspace .crm-activity-item time{font-size:11px;color:var(--color-text-secondary)}.crm-workspace .crm-activity-list{display:grid;gap:10px}.crm-workspace .crm-activity-item time{display:block;margin-top:6px}
@media(min-width:1000px){.crm-workspace .is-full-profile .crm-drawer-details{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}
@media(max-width:750px){.crm-workspace .crm-contact-drawer-panel{width:100%!important}.crm-workspace .crm-table-shell{margin-inline:12px}.crm-workspace .crm-directory-views{padding:10px 12px}.crm-workspace .crm-drawer-body{padding:12px}.crm-workspace .crm-drawer-detail-list{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.crm-workspace *{animation:none!important;transition:none!important}}

.crm-duplicate-review{display:flex;gap:8px;align-items:center}.crm-duplicate-review .crm-duplicate-item{flex:1;min-width:0}.crm-merge-dialog{width:min(520px,calc(100vw - 32px));padding:24px;border:1px solid var(--color-border-strong);border-radius:9px;background:var(--color-surface);color:var(--color-text-primary);box-shadow:0 16px 60px var(--color-shadow)}.crm-merge-dialog::backdrop{background:var(--color-overlay)}.crm-merge-dialog h2{font-size:20px;margin:0 0 16px}.crm-merge-dialog p{font-size:13px;line-height:1.6}.crm-merge-dialog form>div{display:flex;justify-content:end;gap:10px}.crm-merge-dialog button{padding:9px 14px;font:inherit;font-size:12px;background:var(--color-surface-soft);border:1px solid var(--color-border-strong);border-radius:6px;color:inherit;cursor:pointer}.crm-merge-dialog [role=alert]{color:var(--color-danger)}
/* Edge-to-edge boards and directories. */
html[data-theme] .crm-workspace .crm-pipeline-board { gap:0; padding:0; }
html[data-theme] .crm-workspace .crm-pipeline-column { margin:0; border-radius:0; border-width:0 1px 0 0; }
html[data-theme] .crm-workspace .crm-pipeline-column-head { border-radius:0; }
html[data-theme] .crm-workspace .crm-table-shell { margin:0; padding:0; border-radius:0; border-width:1px 0 0; min-width:0; min-height:0; }
html[data-theme] .crm-workspace .crm-view-shell-has-footer { gap:0; padding:0; min-height:0; }
html[data-theme] .crm-workspace .tickets-table-pagination { margin:0; border-radius:0; }

/* Search has one border, on its wrapper, with an unboxed input. */
html[data-theme] .crm-workspace .crm-search-field { box-shadow:none; border:1px solid var(--color-border-strong); border-radius:6px; background:var(--color-input); }
html[data-theme] .crm-workspace .crm-search-field input { border:0; border-radius:0; box-shadow:none; background:transparent; color:var(--color-text-primary); min-width:0; }
html[data-theme] .crm-workspace .crm-search-field:focus-within { outline:2px solid var(--color-accent); outline-offset:2px; }
html[data-theme] .crm-workspace .crm-search-field input:focus { outline:none; box-shadow:none; }

/* Saved views live in a toolbar popover instead of an extra row. */
.crm-workspace .crm-directory-menu { position:relative; flex:0 0 auto; align-self:end; }
.crm-workspace .crm-directory-menu>summary { cursor:pointer; list-style:none; white-space:nowrap; }
.crm-workspace .crm-directory-menu>summary::-webkit-details-marker { display:none; }
html[data-theme] .crm-workspace .crm-directory-menu>.crm-directory-views { position:absolute; top:calc(100% + 8px); left:0; z-index:30; width:300px; max-width:calc(100vw - 48px); display:grid; grid-template-columns:1fr 1fr; gap:10px; padding:16px; background:var(--color-surface); border:1px solid var(--color-border-strong); border-radius:7px; box-shadow:0 8px 24px var(--color-shadow); }
.crm-workspace .crm-directory-views>label,.crm-workspace .crm-directory-views>input,.crm-workspace .crm-directory-views>details,.crm-workspace .crm-directory-views>[role=status] { grid-column:1 / -1; min-width:0; }
.crm-workspace .crm-directory-menu:not([open])>.crm-directory-views { display:none!important; }

/* Organization table and profile share all available width. */
html[data-theme] .crm-workspace .crm-organizations-layout { gap:0; margin:0; padding:0; }
html[data-theme] .crm-workspace .crm-organizations-layout.has-detail { grid-template-columns:minmax(0,1fr) minmax(280px,32%); }
html[data-theme] .crm-workspace .crm-organization-detail { border-radius:0; border-width:1px 0 0 1px; padding:20px; min-width:0; }
html[data-theme] .crm-workspace .crm-organization-contact-table-head { gap:10px; padding:12px; flex-wrap:wrap; background:var(--color-surface); }
html[data-theme] .crm-workspace .crm-organization-contacts-table { width:100%; min-width:0; table-layout:fixed; }
html[data-theme] .crm-workspace .crm-organization-contacts-table :is(th,td) { width:auto; min-width:0; padding:12px; white-space:normal; overflow-wrap:anywhere; text-align:left; }
html[data-theme] .crm-workspace .crm-organization-contacts-table th:nth-child(1) { width:32%; }
html[data-theme] .crm-workspace .crm-organization-contacts-table th:nth-child(2) { width:43%; }
.crm-workspace .crm-organization-contacts-table small { display:block; margin-top:5px; color:var(--color-text-secondary); }
.crm-workspace .crm-organization-detail-head p { overflow-wrap:anywhere; }

/* Replace legacy light fills in CRM fields, actions and picker rows. */
html[data-theme] .crm-workspace .crm-drawer-detail-list div { background:transparent; border:0; border-radius:0; box-shadow:none; padding:0; }
html[data-theme] .crm-workspace .crm-drawer-detail-list :is(dt,dd) { background:transparent; }
html[data-theme] .crm-workspace .crm-drawer-detail-list dt { color:var(--color-text-secondary); }
html[data-theme] .crm-workspace .crm-drawer-detail-list dd { color:var(--color-text-primary); }
html[data-theme] .crm-workspace :is(.crm-add-existing-item,.crm-org-add-contact-row,.crm-duplicate-item,.crm-organization-membership-card) { background:var(--color-surface); color:var(--color-text-primary); border:1px solid var(--color-border-strong); border-radius:6px; box-shadow:none; }
html[data-theme] .crm-workspace :is(.crm-add-existing-item,.crm-org-add-contact-row) strong { color:var(--color-text-primary); }
html[data-theme] .crm-workspace :is(.crm-add-existing-item,.crm-org-add-contact-row) :is(p,small,span) { color:var(--color-text-secondary); }
html[data-theme] .crm-workspace .crm-empty-box { background:transparent; color:var(--color-text-secondary); border-color:var(--color-border); }
html[data-theme] .crm-workspace .tickets-filter-button-primary { background:var(--color-accent); border-color:var(--color-accent); color:var(--color-on-accent); box-shadow:none; }
html[data-theme] .crm-workspace .tickets-filter-button-primary:hover { background:var(--color-accent-hover); color:var(--color-on-accent-hover); }
html[data-theme] .crm-workspace .tickets-filter-button-primary :is(svg,i) { color:inherit; }
@media(max-width:800px) {
 html[data-theme] .crm-workspace .crm-organizations-layout.has-detail { grid-template-columns:minmax(0,1fr); overflow:auto; }
 html[data-theme] .crm-workspace .crm-organizations-layout.has-detail>.crm-table-shell { min-height:250px; overflow:visible; }
 html[data-theme] .crm-workspace .crm-organization-detail { border-width:1px 0 0; overflow:visible; }
}

html[data-theme] .crm-workspace .crm-view-shell-has-footer { height:100%; overflow:hidden; }
/* Export formats use the active theme for both resting and hover states. */
html[data-theme] .crm-workspace .contacts-export-option {
  background:var(--color-surface-soft);
  color:var(--color-text-primary);
  border-color:var(--color-border-strong);
  border-radius:8px;
  box-shadow:none;
}
html[data-theme] .crm-workspace .contacts-export-option:hover:not(:disabled) {
  background:var(--color-selected);
  border-color:var(--color-accent-border);
}
html[data-theme] .crm-workspace .contacts-export-option strong { color:var(--color-text-primary); }
html[data-theme] .crm-workspace .contacts-export-option small { color:var(--color-text-secondary); }
html[data-theme] .crm-workspace .contacts-export-option > :is(svg,i) { color:var(--color-accent); }
/* Five toolbar groups: search, filters, sort, views, and actions. */
html[data-theme] .crm-workspace .crm-contacts-list-toolbar {
  grid-template-columns:minmax(180px,1fr) auto minmax(150px,200px) auto auto;
  gap:14px;
}
html[data-theme] .crm-workspace .crm-contacts-list-toolbar .crm-contacts-search { min-width:0; max-width:none; }
html[data-theme] .crm-workspace .crm-contacts-list-toolbar .crm-contacts-actions { flex-wrap:nowrap; grid-column:auto; }
html[data-theme] .crm-workspace .crm-directory-menu>.crm-directory-views { left:auto; right:0; }
.crm-workspace .crm-saved-view-field { grid-column:1 / -1; display:grid; gap:7px; min-width:0; font-size:11px; color:var(--color-text-secondary); }
html[data-theme] .crm-workspace .crm-view-picker { position:relative; padding:0; border:0; background:transparent; }
html[data-theme] .crm-workspace .crm-view-picker>summary { display:flex; align-items:center; justify-content:space-between; gap:8px; list-style:none; padding:9px 11px; border:1px solid var(--color-border-strong); border-radius:6px; background:var(--color-input); color:var(--color-text-primary); font-size:12px; }
.crm-workspace .crm-view-picker>summary::-webkit-details-marker { display:none; }
html[data-theme] .crm-workspace .crm-view-options { position:absolute; top:calc(100% + 5px); left:0; right:0; z-index:2; max-height:200px; overflow:auto; padding:4px; border:1px solid var(--color-border-strong); border-radius:6px; background:var(--color-surface-raised); box-shadow:0 6px 18px var(--color-shadow); }
html[data-theme] .crm-workspace .crm-view-options button { display:block; width:100%; padding:9px; border:0; border-radius:4px; background:transparent; color:var(--color-text-primary); text-align:left; font:inherit; font-size:12px; overflow-wrap:anywhere; cursor:pointer; }
html[data-theme] .crm-workspace .crm-view-options button:hover,html[data-theme] .crm-workspace .crm-view-options button[aria-pressed=true] { background:var(--color-selected); }
.crm-workspace .crm-view-options p { margin:8px; font-size:12px; }
html[data-theme] .crm-workspace .crm-columns-picker { border:0; border-top:1px solid var(--color-border); border-radius:0; background:transparent; padding:8px 0 0; }
.crm-workspace .crm-columns-picker>summary { padding:8px 0; font-size:12px; font-weight:600; color:var(--color-text-primary); }
html[data-theme] .crm-workspace .crm-columns-picker label { padding:8px; gap:10px; border-radius:4px; color:var(--color-text-primary); cursor:pointer; }
.crm-workspace .crm-columns-picker label:hover { background:var(--color-hover); }
html[data-theme] .crm-workspace .crm-columns-picker input[type=checkbox] { appearance:auto; width:16px; height:16px; margin:0; padding:0; accent-color:var(--color-accent); cursor:pointer; }
@media(max-width:950px) {
 html[data-theme] .crm-workspace .crm-contacts-list-toolbar { grid-template-columns:auto minmax(120px,1fr) auto auto; }
 html[data-theme] .crm-workspace .crm-contacts-list-toolbar .crm-contacts-search { grid-column:1 / -1; }
 html[data-theme] .crm-workspace .crm-contacts-list-toolbar .crm-contacts-actions { grid-column:4; grid-row:2; }
}
/* CRM modal dropdowns must not inherit the legacy dark-blue option text. */
html[data-theme] .crm-workspace .contacts-modal .tickets-custom-select-menu {
  background:var(--color-surface-raised);
  border-color:var(--color-border-strong);
  color:var(--color-text-primary);
}
html[data-theme] .crm-workspace .contacts-modal .tickets-custom-select-option {
  background:transparent;
  color:var(--color-text-primary);
}
html[data-theme] .crm-workspace .contacts-modal .tickets-custom-select-option:is(:hover,:focus-visible,.is-selected) {
  background:var(--color-selected);
  color:var(--color-text-primary);
}
html[data-theme] .crm-workspace .contacts-modal .tickets-custom-select-trigger > i,
html[data-theme] .crm-workspace .contacts-modal .tickets-custom-select-trigger > svg {
  color:var(--color-text-secondary);
}
/* Compact, consistently sized directory controls. */
html[data-theme] .crm-workspace .crm-contacts-list-toolbar {
  display:flex; align-items:flex-end; flex-wrap:wrap; gap:12px;
}
html[data-theme] .crm-workspace .crm-contacts-list-toolbar .crm-contacts-search {
  flex:0 1 300px; width:300px; max-width:340px; min-width:200px;
}
html[data-theme] .crm-workspace .crm-contacts-list-toolbar .crm-contacts-sort { flex:0 0 180px; min-width:0; }
html[data-theme] .crm-workspace .crm-contacts-list-toolbar .crm-active-filters {
  flex:1 1 170px; min-width:0; min-height:40px; max-height:80px;
  align-items:center; gap:8px; padding:0; margin:0; overflow:auto;
}
html[data-theme] .crm-workspace .crm-contacts-list-toolbar .crm-contacts-actions { flex:0 0 auto; margin-left:auto; }
html[data-theme] .crm-workspace :is(.crm-contacts-list-toolbar,.crm-organizations-toolbar) .crm-search-field {
  height:40px; box-sizing:border-box; border-radius:8px; overflow:hidden;
}
html[data-theme] .crm-workspace :is(.crm-contacts-list-toolbar,.crm-organizations-toolbar) .crm-search-field input {
  height:100%; box-sizing:border-box; border:0; border-radius:0; background:transparent; box-shadow:none;
}
html[data-theme] .crm-workspace :is(.crm-contacts-list-toolbar,.crm-organizations-toolbar) :is(.tickets-custom-select-trigger,.crm-contact-filter-toggle,.tickets-filter-button,.crm-toolbar-icon-button,.crm-toolbar-field>input) {
  height:40px; min-height:40px; box-sizing:border-box; border-radius:8px;
}
html[data-theme] .crm-workspace .crm-contacts-list-toolbar .crm-directory-menu>summary { height:40px; box-sizing:border-box; display:flex; align-items:center; border-radius:8px; }
html[data-theme] .crm-workspace .tickets-custom-select .tickets-custom-select-menu {
  background:var(--color-surface-raised); border-color:var(--color-border-strong); color:var(--color-text-primary);
}
html[data-theme] .crm-workspace .tickets-custom-select .tickets-custom-select-option { background:transparent; color:var(--color-text-primary); }
html[data-theme] .crm-workspace .tickets-custom-select .tickets-custom-select-option:is(:hover,:focus-visible,.is-selected) { background:var(--color-selected); color:var(--color-text-primary); }
html[data-theme] .crm-workspace .tickets-custom-select-trigger>:is(i,svg) { color:var(--color-text-secondary); }
