/* TASK-365B: doctor-calendar legacy foundation is bound in place to the exact component root. */
/* Canonical CRM stylesheet: behavior-preserving core plus the scoped 2026 refinement layer. */
/* Core rules stay first; visual refinements are isolated by body.crm-v2026. */

:root { color-scheme: light; font-family: system-ui, sans-serif; background: #f3f6fa; color: #1d2735; }
body { min-height: 100vh; margin: 0; }
.container { max-width: 1180px; margin: 0 auto; padding: 2rem; }
.workspace-shell { padding-left: 76px; }
.workspace-shell .container { max-width: none; margin: 0; padding: 1.25rem 2.5rem 3rem; }
.app-sidebar { position: fixed; z-index: 30; inset: 0 auto 0 0; display: flex; width: 76px; flex-direction: column; box-sizing: border-box; padding: 1.25rem .85rem; overflow: visible; background: #163b64; color: #fff; box-shadow: 5px 0 20px #10243d1f; transition: width .18s ease; }
.app-sidebar:hover, .app-sidebar:focus-within { width: 264px; }
.workspace-brand { display: flex; align-items: center; gap: .7rem; margin: 0 .4rem 1.7rem; color: #fff; font-size: 1.1rem; font-weight: 800; letter-spacing: -.01em; text-decoration: none; white-space: nowrap; }
.workspace-brand-mark { display: inline-grid; width: 2.15rem; height: 2.15rem; place-items: center; border-radius: 8px; background: #2f80ed; color: #fff; font-size: 1.2rem; }
.workspace-navigation { display: grid; flex: 1 1 auto; min-height: 0; gap: .3rem; overflow-x: hidden; overflow-y: auto; overscroll-behavior: contain; }
.app-sidebar > .workspace-navigation { -ms-overflow-style: none; scrollbar-width: none; }.app-sidebar > .workspace-navigation::-webkit-scrollbar { display: none; }
.workspace-navigation-label { margin: 0 0 .35rem; padding: 0 .6rem; color: #bcd4ef; font-size: .72rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; white-space: nowrap; }
.workspace-link { position: relative; display: grid; grid-template-columns: 48px minmax(0, 1fr) auto; align-items: center; width: 100%; min-height: 44px; box-sizing: border-box; padding: .55rem 0; border-radius: 8px; color: #eaf3ff; font-weight: 700; line-height: 1.2; text-decoration: none; white-space: normal; overflow: hidden; }
.workspace-link:hover, .workspace-link.active { background: #fff; color: #163b64; }
.workspace-link-icon { display: inline-grid; width: 1.25rem; place-items: center; justify-self: center; color: currentColor; font-size: 1.05rem; }
.app-sidebar .workspace-brand-label, .app-sidebar .workspace-link-label, .app-sidebar .workspace-navigation-label, .app-sidebar .workspace-account-name, .app-sidebar .workspace-logout-label, .app-sidebar .workspace-sidebar-note { display: none; min-width: 0; overflow: hidden; overflow-wrap: anywhere; text-overflow: ellipsis; opacity: 0; transform: translateX(-6px); pointer-events: none; transition: opacity .12s ease, transform .12s ease; }
.workspace-link-badge { position: absolute; top: .1rem; right: .05rem; display: grid; min-width: 1.15rem; min-height: 1.15rem; place-items: center; padding: .05rem; border-radius: 999px; background: #d85567; color: #fff; font-size: .68rem; line-height: 1; }
.app-sidebar:hover .workspace-brand-label, .app-sidebar:hover .workspace-link-label, .app-sidebar:hover .workspace-navigation-label, .app-sidebar:hover .workspace-account-name, .app-sidebar:hover .workspace-logout-label, .app-sidebar:hover .workspace-sidebar-note, .app-sidebar:focus-within .workspace-brand-label, .app-sidebar:focus-within .workspace-link-label, .app-sidebar:focus-within .workspace-navigation-label, .app-sidebar:focus-within .workspace-account-name, .app-sidebar:focus-within .workspace-logout-label, .app-sidebar:focus-within .workspace-sidebar-note { display: block; opacity: 1; transform: translateX(0); pointer-events: auto; }
.app-sidebar:hover .workspace-link, .app-sidebar:focus-within .workspace-link { grid-template-columns: 48px minmax(0, 1fr) auto; }
.app-sidebar:hover .workspace-link-badge, .app-sidebar:focus-within .workspace-link-badge { position: static; margin-left: auto; }
.workspace-sidebar-footer { display: grid; flex: 0 0 auto; gap: .65rem; min-width: 0; margin-top: auto; padding: .9rem 0 .1rem; color: #c9def4; font-size: .82rem; }
.workspace-account { display: flex; align-items: center; justify-content: center; min-width: 0; min-height: 38px; gap: .7rem; }.workspace-account-avatar { display: inline-grid; width: 1.9rem; height: 1.9rem; place-items: center; flex: 0 0 1.9rem; overflow: hidden; border-radius: 50%; background: #2f80ed; color: #fff; font-weight: 800; }.workspace-account-avatar img { width: 100%; height: 100%; object-fit: cover; }.workspace-account-name { overflow: hidden; text-overflow: ellipsis; }.workspace-sidebar-actions { display: grid; grid-template-columns: 1fr; width: 100%; gap: .45rem; }.workspace-sidebar-actions .notification-toggle, .workspace-sidebar-actions .workspace-logout { box-sizing: border-box; width: 100%; }.workspace-sidebar-actions .notification-toggle { background: #2a5d91; color: #fff; }.workspace-sidebar-actions .workspace-logout { min-height: 38px; padding: .35rem; background: #fff; color: #163b64; }.app-sidebar:hover .workspace-account, .app-sidebar:focus-within .workspace-account { justify-content: flex-start; }.app-sidebar:hover .workspace-sidebar-actions, .app-sidebar:focus-within .workspace-sidebar-actions { display: flex; align-items: center; }.app-sidebar:hover .workspace-sidebar-actions .notification-toggle, .app-sidebar:focus-within .workspace-sidebar-actions .notification-toggle { flex: 0 0 38px; width: 38px; }.app-sidebar:hover .workspace-sidebar-actions .workspace-logout, .app-sidebar:focus-within .workspace-sidebar-actions .workspace-logout { flex: 1; width: auto; padding: .35rem .65rem; }
.workspace-utility-bar { display: none; }
.workspace-user { padding: .45rem .15rem; color: #405a73; font-weight: 700; }
.workspace-logout { display: inline-flex; align-items: center; min-height: 38px; padding: .35rem .7rem; border: 1px solid #b8c8d7; border-radius: 7px; background: #fff; color: #163b64; font-weight: 700; text-decoration: none; }
.mobile-brand, .mobile-navigation-toggle, .mobile-navigation { display: none; }
.public-header { padding: 1rem 2rem; background: #163b64; color: #fff; }
.public-navigation { display: flex; max-width: 1180px; align-items: center; gap: 1rem; margin: auto; }
.public-navigation .spacer { flex: 1; }.public-navigation a { color: #fff; text-decoration: none; }
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(310px, 1fr)); gap: 1.25rem; }
.card { background: #fff; border-radius: 10px; padding: 1.25rem; box-shadow: 0 3px 12px #163b6414; }
label { display: block; font-weight: 600; margin-top: .75rem; }
input, select, textarea { box-sizing: border-box; width: 100%; padding: .55rem; margin-top: .25rem; border: 1px solid #aebdca; border-radius: 5px; }
input[type="checkbox"], input[type="radio"] { width: auto; }
button, .button { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; margin-top: 1rem; background: #0b6e69; color: #fff; border: 0; border-radius: 6px; padding: .65rem 1rem; cursor: pointer; text-decoration: none; }
table { width: 100%; border-collapse: collapse; background: #fff; }
th, td { padding: .65rem; border-bottom: 1px solid #dde5ed; text-align: left; }
.available { color: #087b4f; font-weight: 600; }
.reserved { color: #8d5b00; font-weight: 600; }
.booked { color: #163b64; font-weight: 600; }
.messages { position: fixed; z-index: 10050; top: 1rem; right: 1rem; display: grid; width: min(390px, calc(100vw - 2rem)); gap: .65rem; margin: 0; padding: 0; list-style: none; pointer-events: none; }
.messages li { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: start; gap: .7rem; box-sizing: border-box; padding: .85rem .9rem; border: 1px solid #9bd8bd; border-left: 5px solid #168a5b; border-radius: 12px; background: #effaf5; color: #075c3b; box-shadow: 0 16px 40px rgba(14, 49, 78, .18); pointer-events: auto; animation: crm-toast-in .18s ease-out; }
.messages li::before { content: '✓'; display: grid; width: 1.35rem; height: 1.35rem; place-items: center; border-radius: 50%; background: #168a5b; color: #fff; font-size: .78rem; font-weight: 900; }
.messages li.info { border-color: #a9cae6; border-left-color: #236fa5; background: #f1f7fc; color: #164f78; }.messages li.info::before { content: 'i'; background: #236fa5; }
.messages li.error { border-color: #e6afb7; border-left-color: #bd2335; background: #fff0f2; color: #8b1726; }.messages li.error::before { content: '!'; background: #bd2335; }
.messages li.warning { border-color: #efcf70; border-left-color: #d18a00; background: #fff8df; color: #715200; }.messages li.warning::before { content: '!'; background: #d18a00; }
.messages li.crm-toast-leaving { opacity: 0; transform: translateX(18px); transition: opacity .16s ease, transform .16s ease; }
.crm-toast-close { display: grid; width: 1.8rem; height: 1.8rem; min-height: 1.8rem; place-items: center; margin: -.25rem -.25rem 0 0; padding: 0; border: 0; border-radius: 8px; background: transparent; color: currentColor; font-size: 1.15rem; line-height: 1; }
.crm-toast-close:hover { background: rgba(18, 63, 104, .08); }.crm-toast-close:focus-visible { outline: 3px solid rgba(35, 111, 165, .28); outline-offset: 1px; }
@keyframes crm-toast-in { from { opacity: 0; transform: translateX(18px); } }
@media (max-width: 640px) { .messages { top: .65rem; right: .65rem; width: calc(100vw - 1.3rem); } }
@media (prefers-reduced-motion: reduce) { .messages li { animation: none; }.messages li.crm-toast-leaving { transition: none; } }
.preview-banner { background: #fff3cd; border: 1px solid #efcf70; color: #664d03; padding: .8rem 1rem; border-radius: 8px; }
.errorlist { color: #a82323; margin: .3rem 0; padding-left: 1.2rem; }
.hint { color: #536476; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-toolbar { display: flex; align-items: end; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: 1rem; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-toolbar label { margin-top: 0; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-controls { display: flex; align-items: center; justify-content: end; gap: .65rem; flex-wrap: wrap; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-navigation,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .view-switcher {  align-items: center; gap: .35rem; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-nav-button,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .today-link,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .view-switcher a,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .view-switcher button { display: inline-flex; align-items: center; justify-content: center;        text-decoration: none; }

:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-date-picker input { margin: 0; min-height: 40px; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .today-link { font-weight: 600; }



.calendar-actions { display: flex; gap: .65rem; align-items: center; flex-wrap: wrap; margin-bottom: .7rem; }

:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-more-actions > summary {    cursor: pointer; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-more-actions > summary::marker { color: #1f5ea8; }

:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-more-actions > :not(summary) { margin-left: .9rem; margin-right: .9rem; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-more-actions > .calendar-filter-wrap { margin-bottom: .9rem; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-advanced-view-settings { display: flex; align-items: center;   border-top: 1px solid #e1e9f0; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-advanced-view-settings .checkbox-field[hidden] { display: none !important; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-past-time-status { margin: -.25rem 0 1rem; color: #536476; font-size: .88rem; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-past-time-status button { margin: 0; padding: 0; border: 0; background: transparent; color: #0b6e66; text-decoration: underline; font: inherit; font-weight: 700; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-views-wrap { position: relative; display: inline-flex; align-items: center; gap: .45rem; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-active-view { color: #405a73; font-size: .84rem; font-weight: 700; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-view-dirty { padding: .14rem .42rem; border-radius: 999px; background: #fff1c7; color: #7b5600; font-size: .75rem; font-weight: 700; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-views-panel { position: absolute; z-index: 25; top: calc(100% + .45rem); right: 0; width: min(320px, calc(100vw - 2rem)); padding: .55rem;     }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-views-panel > button { display: block; width: 100%;   border: 0;  background: transparent; color: #163b64; text-align: left; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-views-panel > button:hover { background: #edf4fb; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-views-actions { display: flex; gap: .45rem; margin-top: .55rem; padding-top: .55rem; border-top: 1px solid #e1e9f0; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-views-actions button { flex: 1;     }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-empty-range {  border: 1px dashed #b8c8d7; border-radius: 8px;  }
.settings-advanced-options { margin-top: .9rem; padding-top: .8rem; border-top: 1px solid #e1e9f0; }
.settings-advanced-options summary { color: #163b64; font-weight: 700; cursor: pointer; }


:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-wrap { position: relative; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-toggle {    border: 1px solid #b8c8d7; background: #fff; color: #163b64; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-toggle[aria-expanded="true"] { background: #163b64; color: #fff; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-toggle span { display: inline-grid; min-width: 1.2rem; min-height: 1.2rem; place-items: center; margin-left: .25rem; border-radius: 999px; background: #d85567; color: #fff; font-size: .72rem; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-panel { position: absolute; z-index: 20; top: calc(100% + .45rem); left: 0; width: min(340px, calc(100vw - 2rem));  padding: .85rem;     }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-heading { display: flex; align-items: center; justify-content: space-between; gap: .65rem; margin-top: .65rem; color: #163b64; font-size: .88rem; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-heading:first-child { margin-top: 0; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-heading div { display: flex; gap: .35rem; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-heading button,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-reset {    border: 1px solid #b8c8d7; background: #fff; color: #163b64;  }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-options { display: grid; gap: .25rem; margin-top: .45rem; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-options label { display: flex; align-items: center; gap: .45rem;  padding: .25rem .15rem;  font-weight: 500; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-options input { margin: 0; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-reset { width: 100%;  }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-cell.filtered-out,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar-cell.filtered-out { background: #eef2f6; color: #65778a; cursor: not-allowed; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-cell.filtered-out:hover,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar-cell.filtered-out:hover { background: #eef2f6; filter: none; transform: none; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-wrap:has(.calendar-filter-toggle[aria-expanded="true"])::before { content: ""; position: fixed; z-index: 400; inset: 0; background: #10243d80; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-panel { position: fixed; z-index: 401; top: 50%; left: 50%; width: min(820px, calc(100vw - 2rem)); max-height: min(620px, calc(100vh - 2rem)); padding: 1.35rem; transform: translate(-50%, -50%); display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .55rem 1.25rem; overflow: auto;    }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-panel[hidden] { display: none !important; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-heading { margin: 0; padding: 0 .15rem .55rem; border-bottom: 1px solid #e1e9f0; font-size: 1rem; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-heading:first-child,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-options:nth-of-type(1) { grid-column: 2; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-heading:nth-of-type(2),
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-options:nth-of-type(2) { grid-column: 1; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-heading:nth-of-type(2) { grid-row: 1; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-options:nth-of-type(2) { grid-row: 2; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-heading:first-child { grid-row: 1; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-options:nth-of-type(1) { grid-row: 2; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-options { align-content: start; min-height: 150px; margin: 0; padding: .45rem; border: 1px solid #dce6ef; border-radius: 10px; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-options label { padding: .45rem .35rem; border-radius: 7px; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-options label:hover { background: #eef5fb; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-reset,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-apply { grid-column: span 1; width: 100%;     }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-apply { border: 1px solid #087c73; background: #087c73; color: #fff; }
@media (max-width: 640px) { :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-panel { grid-template-columns: 1fr; padding: 1rem; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-heading:first-child,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-options:nth-of-type(1),
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-heading:nth-of-type(2),
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-options:nth-of-type(2) { grid-column: 1; grid-row: auto; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-options { min-height: auto; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-reset,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-apply { grid-column: 1; } }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-panel > .calendar-filter-heading:nth-of-type(1),
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-panel > .calendar-filter-options:nth-of-type(2) { grid-column: 2; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-panel > .calendar-filter-heading:nth-of-type(3),
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-panel > .calendar-filter-options:nth-of-type(4) { grid-column: 1; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-panel > .calendar-filter-heading:nth-of-type(3) { grid-row: 1; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-panel > .calendar-filter-options:nth-of-type(4) { grid-row: 2; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-panel > .calendar-filter-heading:nth-of-type(1) { grid-row: 1; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-filter-panel > .calendar-filter-options:nth-of-type(2) { grid-row: 2; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-expand-hours {    background: #fff; border: 1px solid #b8c8d7; color: #163b64; }

:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-edit-toggle {    background: #fff; border: 1px solid #b8c8d7; color: #163b64; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-mode-switcher button {    border: 0; border-right: 1px solid #b8c8d7;    }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .day-calendar.planning-mode .calendar-cell.unavailable,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar.planning-mode .week-calendar-cell.unavailable { border-style: dashed;   cursor: crosshair; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .day-calendar.planning-mode .calendar-cell.booked,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar.planning-mode .week-calendar-cell.booked { opacity: .8; cursor: default; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-more-actions:not(.planning-mode) label:has(#calendar-selected-hours) { display: none; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-more-actions.planning-mode .calendar-filter-wrap,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-more-actions.planning-mode .calendar-views-wrap { display: none; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .day-calendar.planning-mode .calendar-cell.past,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar.planning-mode .week-calendar-cell.past { background: #eef1f4; color: #65778a; cursor: not-allowed; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-edit-toggle.active { background: #163b64; border-color: #163b64; color: #fff; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .day-calendar {   overflow: hidden;  overflow-y: auto; overscroll-behavior: contain; user-select: none; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-row { display: grid;  min-height: 34px; border-bottom: 1px solid #e6edf3; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-time { padding: .35rem .6rem;   background: #f8fafc; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-location-header { display: grid;  align-items: center; min-height: 54px; padding: .45rem 0; border-bottom: 1px solid #d6e0e9; background: #eef4fa; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-location-header > div { display: flex; align-items: center; gap: .7rem; flex-wrap: wrap; padding: .15rem .8rem; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-location-header .calendar-location { padding: .25rem .65rem;  }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-location-time { color: #405a73; font-size: .95rem; font-weight: 700; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-booking-policy { display: inline-block; padding: .16rem .5rem; border-radius: 999px; background: #d8f3e7; color: #075d3c; font-size: .75rem; font-weight: 700; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-cell { display: block; width: 100%;  border: 0;  text-align: left; cursor: crosshair; touch-action: pan-y; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-cell:hover { background: #dfeeff; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-cell.available {  cursor: pointer; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-cell.continuation {  cursor: default;  }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-cell.booked {  border-left: 4px solid #b5455d; padding: .35rem .6rem; cursor: pointer;  }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-cell.unavailable {  cursor: crosshair; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-patient { display: block; font-weight: 700; line-height: 1.1; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-appointment-info { display: flex; align-items: center; gap: .35rem; flex-wrap: wrap; margin-top: .25rem; }

:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-location,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-location { display: inline-block;  padding: .12rem .42rem;  font-weight: 700;  }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-location.clinic,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-location.clinic { background: #dce8f7; color: #163b64; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-location.online,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-location.online { background: #e5dcf8; color: #563b93; }

:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-booking-meta { display: block; color: #536476; font-size: .77rem; margin-top: .12rem; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-collapsed-row { display: grid; grid-template-columns: 78px 1fr; align-items: center; min-height: 44px; border-bottom: 1px solid #e6edf3; background: #f8fafc; color: #65778a; font-size: .82rem; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-collapsed-row > span { padding: .35rem .6rem; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-expand-gap { justify-self: start; min-height: 32px; margin: 0; padding: .25rem .65rem; background: transparent; border: 1px dashed #aebdca; color: #536476; }


.legend-free::before { background: #d8f3e7; }.legend-booked::before { background: #f4d7df; }.legend-missed::before { background: #eef1f4; border: 1px solid #d9e3ed; box-sizing: border-box; }.legend-unavailable::before { background: #f4f7fa; border: 1px solid #d9e3ed; box-sizing: border-box; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar {   overflow: auto;  overscroll-behavior: contain; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-range-block + .week-range-block { margin-top: 1.25rem; }

:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-grid { display: grid; grid-template-columns: 64px repeat(7, minmax(130px, 1fr)); min-width: 980px; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-day-heading {
 position: sticky; top: 0; z-index: 1; margin: 0; padding: .6rem; background: #f8fafc; border: 0; border-bottom: 1px solid #d9e3ed; border-radius: 0; color: #163b64; font-weight: 700; text-align: center; text-decoration: none; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-time-heading { position: sticky; top: 0; z-index: 1; margin: 0; padding: .6rem; background: #f8fafc; border: 0; border-bottom: 1px solid #d9e3ed; border-radius: 0;  font-weight: 700; text-align: center; text-decoration: none; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-time-heading,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-time { position: sticky; left: 0; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-time-heading { z-index: 3; box-shadow: 1px 0 0 #d9e3ed; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-day-heading { display: block; min-height: 48px; line-height: 1.25; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-day-heading > span:first-child { display: block; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-time { z-index: 2; padding: .35rem .45rem; background: #f8fafc;   border-bottom: 1px solid #e6edf3; box-shadow: 1px 0 0 #d9e3ed; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar-cell { display: block;  margin: 0; padding: .35rem .45rem; border: 0; border-left: 1px solid #e6edf3; border-bottom: 1px solid #e6edf3;    text-align: left; text-decoration: none; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar-cell.booked {   font-weight: 700; white-space: normal; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar-cell.continuation {  cursor: default;  }

:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-patient { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-location { max-width: 100%; margin-top: .2rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
dialog { position: fixed; inset: 0; margin: auto; max-height: calc(100dvh - 2rem); overflow-y: auto; border: 0; border-radius: 12px; box-shadow: 0 16px 48px #10243d66; max-width: 420px; width: calc(100% - 2rem); }
dialog::backdrop { background: #12263d80; }
.dialog-close { position:absolute; z-index:1; top:.7rem; right:.7rem; display:inline-grid; width:42px; height:42px; min-width:42px; min-height:42px; box-sizing:border-box; place-items:center; margin:0; padding:0 0 2px; border:1px solid #b8c8d7; border-radius:50%; background:#fff; color:#163b64; font-family:Arial,sans-serif; font-size:1.45rem; font-weight:700; line-height:1; text-align:center; }
.crm-confirm-dialog { width:min(520px,calc(100vw - 2rem)); box-sizing:border-box; padding:0; border:0; border-radius:20px; background:#fff; box-shadow:0 24px 70px #102f5066; }
.crm-confirm-dialog::backdrop { background:#102f5073; backdrop-filter:blur(4px); }
.crm-confirm-dialog__content { padding:1.55rem; }
.crm-confirm-dialog__content h2 { margin:.2rem 3rem .55rem 0; color:#173d62; }
.crm-confirm-dialog__content p { line-height:1.5; }
.crm-confirm-dialog__actions { display:flex; justify-content:flex-end; gap:.65rem; margin-top:1.2rem; }
.crm-confirm-dialog__actions button { margin:0; }
dialog h2 { padding-right: 2.5rem; }
.dialog-actions { display: flex; gap: .75rem; justify-content: end; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-policy-fields { display: grid; gap: .55rem; margin: 1rem 0; padding: .8rem; border: 1px solid #dbe4ed; border-radius: 8px; background: #f8fafc; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-policy-fields h3 { margin: 0; font-size: 1rem; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-policy-fields label { margin-top: 0; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-policy-fields .hint { margin: 0; font-size: .86rem; }
.dialog-actions .secondary { background: #e5eaf0; color: #263545; }
.dialog-actions .danger { background: #b5455d; }.dialog-actions .danger:disabled { cursor: not-allowed; opacity: .5; }
.danger-outline { min-height: 36px; margin: .75rem 0 0; padding: .35rem .7rem; background: #fff; border: 1px solid #b5455d; color: #963549; }
.danger-outline:disabled { cursor: not-allowed; opacity: .5; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .availability-selection-panel { position: fixed; z-index: 4;         }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .availability-selection-panel p { margin: 0 0 .45rem; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .availability-quick-actions { display: flex; gap: .45rem; overflow-x: auto; padding-bottom: .15rem; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .availability-quick-actions button { flex: 0 0 auto; min-height: 38px; margin: 0; padding: .35rem .65rem; background: #eaf1f8; color: #163b64; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .availability-selection-panel .secondary { margin: .65rem 0 0; background: #e5eaf0; color: #263545; }
.appointment-cards { display: grid; gap: .75rem; }
.appointment-card { padding: 1rem; border: 1px solid #dbe4ed; border-radius: 8px; background: #fff; }
.appointment-card h3 { margin: 0 0 .45rem; font-size: 1rem; }.appointment-card p { margin: .25rem 0; }
.status { display: inline-flex; align-items: center; border-radius: 999px; padding: .18rem .55rem; font-size: .82rem; font-weight: 700; }
.status-planned { background: #fff2cc; color: #765600; }.status-confirmed { background: #dce8f7; color: #163b64; }.status-completed { background: #d8f3e7; color: #087b4f; }.status-cancelled { background: #f4d7df; color: #8b3042; }.status-no_show { background: #eceff3; color: #536476; }
.section-heading { margin: 1.75rem 0 .75rem; }.empty-state { color: #536476; padding: 1.1rem; border: 1px dashed #b8c8d7; border-radius: 8px; background: #fff; }
.inline-status-form { display: flex; align-items: center; gap: .55rem; flex-wrap: wrap; margin-top: .75rem; }.inline-status-form button { min-height: 34px; margin: 0; padding: .35rem .65rem; background: #163b64; }.inline-status-form button[data-status="cancelled"] { background: #b5455d; }
.activity-filter { display: flex; align-items: end; gap: .75rem; flex-wrap: wrap; }.activity-filter > div { min-width: min(100%, 180px); flex: 1; }.activity-filter button { margin: 0; }.activity-list { display: grid; gap: .75rem; }.activity-item { display: grid; grid-template-columns: auto 1fr; gap: .85rem; padding: 1rem; border: 1px solid #dbe4ed; border-radius: 9px; background: #fff; }.activity-time { min-width: 116px; color: #536476; font-size: .86rem; }.activity-item h3 { margin: 0 0 .35rem; font-size: 1rem; }.activity-item p { margin: .2rem 0; }.pagination { display: flex; justify-content: center; gap: .5rem; margin-top: 1rem; }.pagination a { color: #163b64; }
.operational-heading, .patient-registry-heading { display: flex; align-items: start; justify-content: space-between; gap: 1rem; margin-bottom: 1rem; }.operational-heading h1, .patient-registry-heading h1 { margin: 0 0 .25rem; }.operational-heading .hint, .patient-registry-heading .hint { margin: 0; }.operational-count { display: grid; min-width: 2.5rem; min-height: 2.5rem; place-items: center; border-radius: 999px; background: #dce8f7; color: #163b64; font-weight: 800; }.operational-table-wrap, .patient-registry-table-wrap { overflow-x: auto; }.operational-table { min-width: 760px; }.operational-table small { display: block; margin-top: .25rem; color: #65778a; }.operational-actions { display: flex; gap: .5rem; align-items: center; }.operational-actions button, .operational-actions form { margin: 0; }.operational-actions button { min-height: 36px; padding: .4rem .65rem; white-space: nowrap; }.operational-actions .secondary { background: #e5eaf0; color: #263545; }.operational-actions .danger { background: #a8234a; }.empty-work-state { padding: 1.25rem; text-align: center; }.empty-work-state strong { color: #087b4f; font-size: 1.1rem; }.visually-hidden { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; clip-path: inset(50%); }
.notification-wrap { position: relative; }.notification-toggle { position: relative; min-height: 38px; min-width: 38px; margin: 0; padding: .35rem .65rem; background: #fff; color: #163b64; }.notification-count { position: absolute; top: -.45rem; right: -.45rem; min-width: 1.15rem; padding: .1rem; border-radius: 999px; background: #d85567; color: #fff; font-size: .7rem; line-height: 1; }.notification-panel { position: fixed; z-index: 1000; box-sizing: border-box; width: min(390px, calc(100vw - 2rem)); max-height: min(520px, calc(100dvh - 2rem)); overflow: hidden auto; padding: .65rem; border-radius: 10px; background: #fff; color: #1d2735; box-shadow: 0 16px 48px #10243d55; }.notification-panel h2 { margin: .3rem .45rem .65rem; font-size: 1rem; }.notification-panel-state { margin: .45rem; color: #536476; }.notification-panel-state.error { color: #a82323; }.notification-list { min-height: 1px; }.notification-item { display: grid; width: 100%; min-height: 0; margin: 0; padding: .75rem; border: 0; border-top: 1px solid #e1e8ef; border-radius: 0; background: #fff; color: #1d2735; text-align: left; }.notification-item.unread { background: #eef5ff; }.notification-item strong, .notification-item span { display: block; }.notification-item span { margin-top: .2rem; color: #536476; font-size: .84rem; }.notification-item time { margin-top: .3rem; color: #65778a; font-size: .78rem; }.notification-empty { margin: .75rem; color: #536476; }
.settings-heading { display: flex; justify-content: space-between; align-items: start; gap: 1rem; margin-bottom: 1rem; }.settings-heading h1 { margin-bottom: .25rem; }.settings-heading .hint { margin-top: 0; }.settings-layout { display: grid; grid-template-columns: minmax(210px, 264px) minmax(0, 1fr); gap: 1rem; align-items: start; }.settings-tabs { display: grid; gap: .2rem; position: sticky; top: 1rem; max-height: calc(100dvh - 2rem); overflow: auto; padding: .7rem; border-radius: 14px; background: #163b64; }.settings-tab { display: block; padding: .67rem .8rem; border-radius: 8px; color: #eef6ff; font-weight: 700; text-decoration: none; }.settings-tab:hover, .settings-tab.active { background: #fff; color: #163b64; }.settings-tab-group { margin: .85rem .8rem .14rem; color: #a9c8e7; font-size: .72rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }.settings-tab-group:first-child { margin-top: .2rem; }.settings-panel { min-width: 0; }.settings-form { display: grid; gap: 1rem; max-width: 820px; }.settings-section-stack { display: grid; gap: 1rem; }.settings-section h2 { margin-top: 0; }.profile-photo-editor { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1rem; align-items: center; margin: 1rem 0 1.25rem; padding: 1rem; border: 1px solid #dbe4ed; border-radius: 10px; background: #f8fafc; }.profile-photo-preview { display: grid; width: 112px; height: 112px; place-items: center; overflow: hidden; border-radius: 50%; background: #2f80ed; color: #fff; font-size: 2.2rem; font-weight: 800; }.profile-photo-preview img { width: 100%; height: 100%; object-fit: cover; }.profile-photo-editor h3 { margin: 0; }.profile-photo-editor .hint { margin: .35rem 0 .7rem; }.profile-photo-actions { display: flex; flex-wrap: wrap; gap: .5rem; }.profile-photo-actions button { margin: 0; }.profile-photo-remove { border: 1px solid #e6afb7; background: #fff0f1; color: #a82323; }.avatar-form-error { margin: .6rem 0 0; color: #a82323; }.profile-avatar-dialog { max-width: 590px; padding: 1.25rem; }.avatar-crop-stage { width: min(100%, 360px); aspect-ratio: 1; margin: 1rem auto; overflow: hidden; border-radius: 10px; background: #10243d; touch-action: none; }.avatar-crop-stage canvas { display: block; width: 100%; height: 100%; cursor: grab; }.avatar-crop-stage canvas:active { cursor: grabbing; }.avatar-zoom-control { display: grid; gap: .35rem; margin: 0 auto 1rem; max-width: 360px; }.avatar-zoom-control input { margin: 0; }.settings-pipeline { padding: 1rem 0; border-top: 1px solid #dbe4ed; }.settings-pipeline:first-of-type { padding-top: 0; border-top: 0; }.settings-inline-form { display: flex; align-items: end; gap: .65rem; flex-wrap: wrap; }.settings-inline-form label { display: grid; gap: .3rem; flex: 1 1 180px; margin: 0; }.settings-inline-form button { margin: 0; }.settings-pipeline-lifecycle { display: flex; align-items: end; justify-content: space-between; gap: .65rem; margin-top: .75rem; padding: .75rem; border: 1px solid #dbe4ed; border-radius: 8px; background: #f8fafc; }.settings-pipeline-lifecycle .hint { margin: 0; }.settings-pipeline-lifecycle .danger { background: #a8234a; }.settings-stage-list, .settings-category-list { display: grid; gap: .6rem; margin-top: .75rem; }.settings-stage-form { padding: .7rem; border: 1px solid #dbe4ed; border-radius: 8px; background: #f8fafc; }.settings-stage-form label:nth-of-type(2) { flex: 0 1 86px; }.settings-stage-form small { flex: 1 1 150px; color: #536476; }.settings-stage-create { margin-top: .75rem; padding-top: .75rem; border-top: 1px dashed #b8c8d7; }.compact-form { max-width: 620px; }.checkbox-field { display: flex !important; align-items: center; gap: .6rem; padding: .75rem; border: 1px solid #dbe4ed; border-radius: 7px; cursor: pointer; }.checkbox-field input { flex: 0 0 auto; margin: 0; }.checkbox-field span { display: grid; gap: .15rem; }.checkbox-field small { color: #536476; font-weight: 400; }.notification-category-group { display: grid; gap: .6rem; margin: 1rem 0 0; padding: 1rem; border: 1px solid #dbe4ed; border-radius: 8px; }.notification-category-group legend { padding: 0 .35rem; color: #405a73; font-weight: 700; }.settings-actions button { margin-top: 0; }.integration-status-list { display: grid; gap: .7rem; margin: 1rem 0; }.integration-status-list div { display: grid; grid-template-columns: minmax(180px, .8fr) minmax(0, 1.6fr); gap: 1rem; padding: .7rem; border: 1px solid #dbe4ed; border-radius: 8px; background: #f8fafc; }.integration-status-list dt { color: #536476; font-weight: 700; }.integration-status-list dd { margin: 0; }.integration-steps { display: grid; gap: .65rem; padding-left: 1.3rem; }.integration-steps li { padding-left: .2rem; }.integration-status-card code { overflow-wrap: anywhere; }.workspace-menu-editor { display: grid; gap: .5rem; }.workspace-menu-editor-item { display: grid; grid-template-columns: auto minmax(0, 1fr) auto auto auto; gap: .55rem; align-items: center; padding: .65rem .75rem; border: 1px solid #dbe4ed; border-radius: 9px; background: #fff; cursor: grab; }.workspace-menu-editor-item.is-hidden { opacity: .58; }.workspace-menu-editor-item.is-dragging { opacity: .35; }.workspace-menu-editor-handle { color: #6c8298; font-size: 1.15rem; }.workspace-menu-editor-lock, .session-current { padding: .25rem .45rem; border-radius: 999px; background: #e6f1ff; color: #164f8d; font-size: .78rem; font-weight: 700; }.workspace-menu-visibility { display: flex; align-items: center; gap: .35rem; margin: 0; font-size: .86rem; }.workspace-menu-visibility input { margin: 0; }.session-list { display: grid; gap: .55rem; }.session-row { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: .8rem; border: 1px solid #dbe4ed; border-radius: 9px; background: #f8fafc; }.session-row strong, .session-row small { display: block; }.session-row small { margin-top: .25rem; color: #536476; overflow-wrap: anywhere; }.session-row form, .session-row button { margin: 0; }
.communication-list { display: grid; gap: 0; padding: 0; overflow: hidden; }.communication-list-item { display: flex; justify-content: space-between; gap: 1rem; padding: 1rem 1.15rem; border-bottom: 1px solid #dbe4ed; color: inherit; text-decoration: none; }.communication-list-item:last-child { border-bottom: 0; }.communication-list-item:hover { background: #f4f8fc; }.communication-list-item span { display: grid; gap: .2rem; }.communication-list-item small, .communication-list-item time, .communication-message time { color: #536476; }.communication-thread { display: grid; gap: .75rem; background: #edf3f7; }.communication-message { max-width: min(78%, 700px); padding: .85rem 1rem; border-radius: 12px; background: #fff; box-shadow: 0 1px 2px rgba(21, 48, 74, .08); }.communication-message.is-outbound { justify-self: end; background: #dff2e6; }.communication-message header { display: flex; justify-content: space-between; gap: 1rem; font-size: .82rem; }.communication-message p { margin-bottom: 0; white-space: pre-wrap; overflow-wrap: anywhere; }
/* TASK-365A: active messaging presentation is owned by messaging_workspace.css. */
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-cell.missed,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar-cell.missed {   cursor: not-allowed; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-cell.missed:hover,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar-cell.missed:hover { filter: none; transform: none; }.notification-task-count { margin: 0 0 .65rem; padding: .55rem .65rem; border-radius: 7px; background: #fff2cc; color: #765600; font-size: .86rem; font-weight: 700; }

.lead-toolbar { display: flex; align-items: start; justify-content: space-between; gap: 1rem; flex-wrap: wrap; margin-bottom: 1rem; }.lead-toolbar h1 { margin: 0 0 .25rem; }.lead-toolbar .hint { margin: 0; }.lead-toolbar-actions { display: flex; gap: .6rem; flex-wrap: wrap; }.lead-toolbar-actions button { margin: 0; }.lead-toolbar-actions .secondary { background: #e5eaf0; color: #263545; }.lead-board { display: grid; gap: 1.25rem; }.lead-pipeline { overflow: hidden; border: 1px solid #d9e3ed; border-radius: 12px; background: #fff; }.lead-pipeline-heading { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding: .9rem 1rem; background: #f8fafc; border-bottom: 1px solid #d9e3ed; }.lead-pipeline-heading h2 { margin: 0; font-size: 1.1rem; }.lead-pipeline-heading p { margin: .2rem 0 0; color: #536476; font-size: .88rem; }.lead-columns { display: flex; min-width: max-content; overflow-x: auto; }.lead-stage { width: min(290px, 78vw); min-height: 245px; padding: .75rem; border-right: 1px solid #e1e8ef; background: #f5f7fa; }.lead-stage:last-child { border-right: 0; }.lead-stage-heading { display: flex; align-items: center; justify-content: space-between; gap: .5rem; padding: .1rem .15rem .6rem; border-top: 4px solid var(--stage-color); font-weight: 700; }.lead-stage-count { display: inline-grid; min-width: 1.5rem; min-height: 1.5rem; place-items: center; border-radius: 999px; background: #e0e7ef; color: #405a73; }.lead-stage-cards { display: grid; gap: .6rem; min-height: 170px; }.lead-stage-empty { margin: .4rem 0; color: #738495; font-size: .88rem; }.lead-card { display: block; width: 100%; min-height: 0; margin: 0; padding: .8rem; border: 1px solid #d6e0e9; border-left: 4px solid #2f80ed; border-radius: 8px; background: #fff; color: #1d2735; text-align: left; box-shadow: 0 2px 5px #163b6412; cursor: pointer; }.lead-card[draggable="true"] { cursor: grab; }.lead-card.dragging { opacity: .45; }.lead-card-booked { border-left-color: #27ae60; }.lead-card strong, .lead-card span, .lead-card small, .lead-card time { display: block; }.lead-card span { margin-top: .3rem; color: #405a73; }.lead-card small { margin-top: .35rem; color: #536476; }.lead-card time { margin-top: .45rem; color: #738495; font-size: .75rem; }.lead-dialog { max-width: 500px; }.lead-detail-dialog { max-width: 1100px; }.lead-detail-dialog > section { min-width: min(100%, 860px); }.lead-detail-heading { display: flex; gap: 1rem; padding-right: 2.5rem; }.lead-detail-heading h2 { margin: .2rem 0; }.lead-stage-label { margin: 0; color: #405a73; font-weight: 700; }.lead-detail-grid { display: grid; grid-template-columns: minmax(270px, .85fr) minmax(340px, 1.15fr); gap: 1rem; margin-top: 1rem; }.lead-detail-section { padding: 1rem; border: 1px solid #dbe4ed; border-radius: 9px; }.lead-detail-section h3, .lead-detail-section h4 { margin-top: 0; }.lead-detail-section dl { display: grid; grid-template-columns: minmax(110px, auto) 1fr; gap: .35rem .75rem; }.lead-detail-section dt { color: #536476; }.lead-detail-section dd { margin: 0; }.lead-inline-action { display: flex; align-items: end; gap: .5rem; }.lead-inline-action select { flex: 1; }.lead-inline-action button { flex: 0 0 auto; margin: 0; }.lead-detail-tabs { display: flex; gap: .45rem; margin: -.15rem 0 1rem; padding-bottom: .75rem; border-bottom: 1px solid #dbe4ed; }.lead-detail-tab { display: grid; width: 2.55rem; min-height: 2.55rem; place-items: center; margin: 0; padding: .35rem; border: 1px solid #b8c8d7; border-radius: 8px; background: #fff; color: #405a73; font-size: 1.1rem; }.lead-detail-tab:hover, .lead-detail-tab:focus-visible, .lead-detail-tab.active { border-color: #1f5ea8; background: #1f5ea8; color: #fff; }.lead-comment, .lead-activity { padding: .65rem 0; border-top: 1px solid #e1e8ef; }.lead-comment:first-child, .lead-activity:first-child { border-top: 0; }.lead-comment strong, .lead-comment small, .lead-activity strong, .lead-activity small { display: block; }.lead-comment small, .lead-activity small { margin-top: .15rem; color: #65778a; }.lead-comment p, .lead-activity p { margin: .35rem 0 0; }.lead-appointment-list { margin: 0; padding-left: 1.2rem; }.lead-appointment-list li { margin: .5rem 0; }.lead-book-form { margin-top: 1rem; padding-top: 1rem; border-top: 1px solid #dbe4ed; }
@media (max-width: 899px) {
    .workspace-shell { padding-left: 0; }
    .app-sidebar { display: none; }
    .workspace-shell .container { padding: 1.2rem 1rem 2rem; }
    .workspace-utility-bar { position: sticky; top: 0; right: auto; display: flex; width: 100%; min-height: 58px; box-sizing: border-box; padding: .65rem 1rem; background: #163b64; color: #fff; box-shadow: 0 2px 10px #10243d1f; }
    .mobile-brand { display: flex; align-items: center; gap: .45rem; min-width: 0; margin-right: auto; color: #fff; font-weight: 800; text-decoration: none; }
    .mobile-brand .workspace-brand-mark { width: 1.9rem; height: 1.9rem; font-size: 1rem; }
    .mobile-navigation-toggle { position: relative; display: block; }
    .mobile-navigation-toggle summary { display: inline-flex; min-height: 38px; align-items: center; justify-content: center; padding: .35rem .65rem; border: 1px solid #a8c3df; border-radius: 7px; color: #fff; cursor: pointer; font-weight: 700; list-style: none; }
    .mobile-navigation-toggle summary::-webkit-details-marker { display: none; }
    .mobile-navigation { position: absolute; top: calc(100% + .65rem); right: 0; display: block; width: min(330px, calc(100vw - 2rem)); max-height: calc(100dvh - 5.5rem); overflow-y: auto; padding: .75rem; border: 1px solid #b8c8d7; border-radius: 10px; background: #fff; box-shadow: 0 16px 48px #10243d55; }
    .mobile-navigation .workspace-navigation { display: grid; }.mobile-navigation .workspace-navigation-label, .mobile-navigation .workspace-link-label { opacity: 1; transform: none; pointer-events: auto; }.mobile-navigation .workspace-navigation-label { color: #65778a; }.mobile-navigation .workspace-link { justify-content: flex-start; color: #163b64; }.mobile-navigation .workspace-link:hover, .mobile-navigation .workspace-link.active { background: #eaf2fb; }.mobile-navigation .workspace-link-badge { position: static; margin-left: auto; }
    .mobile-account { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: .65rem; margin-top: .75rem; padding: .8rem .65rem .15rem; border-top: 1px solid #dbe4ed; color: #405a73; font-size: .86rem; font-weight: 700; }.mobile-account .workspace-logout { display: inline-flex; min-height: 38px; }
    .mobile-account .notification-toggle { background: #eaf2fb; }

}

@media (max-width: 640px) { .container { padding: 1rem; } .public-header { padding: .75rem 1rem; } .card { padding: 1rem; } :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-toolbar { align-items: stretch; } :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-toolbar form,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-toolbar > div { width: 100%; } :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-controls { justify-content: start; } :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-navigation { width: 100%; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-date-picker { flex: 1; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-date-picker input { width: 100%; } :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-row,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-location-header { grid-template-columns: 64px 1fr; } th, td { font-size: .85rem; padding: .5rem; } :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .day-calendar,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar { max-height: 62vh; } dialog { position: fixed; inset: auto 0 0; box-sizing: border-box; width: 100%; max-width: none; margin: 0; border-radius: 16px 16px 0 0; padding: 1.25rem; } .profile-avatar-dialog { max-height: calc(100dvh - .5rem); }.profile-photo-editor { grid-template-columns: 1fr; }.profile-photo-preview { width: 94px; height: 94px; }.dialog-actions { position: sticky; bottom: 0; background: #fff; padding-top: .5rem; } .dialog-actions button { flex: 1; } /* TASK-113: mobile selection panel stays below the calendar grid. */ :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .availability-selection-panel { position: static; inset: auto; width: auto; max-width: none; margin: .85rem 0 0; box-sizing: border-box; border-color: #dbe4ed; background: #f8fafc; box-shadow: none; } .clinic-schedule, .clinic-schedule tbody, .clinic-schedule tr, .clinic-schedule td { display: block; width: 100%; box-sizing: border-box; } .clinic-schedule tr:first-child { display: none; } .clinic-schedule tr { margin-top: .65rem; border: 1px solid #dde5ed; border-radius: 8px; overflow: hidden; } .clinic-schedule td { border: 0; } .clinic-schedule td:first-child { color: #536476; background: #f8fafc; font-weight: 600; } .activity-item { grid-template-columns: 1fr; gap: .4rem; }.activity-time { min-width: 0; }.operational-actions { align-items: stretch; flex-direction: column; }.operational-actions button { width: 100%; }.lead-toolbar-actions { width: 100%; }.lead-toolbar-actions button { flex: 1; }.lead-columns { min-width: 100%; }.lead-stage { width: 82vw; }.lead-detail-grid { grid-template-columns: 1fr; }.lead-inline-action { align-items: stretch; flex-direction: column; }.lead-inline-action button { width: 100%; }.settings-layout { grid-template-columns: 1fr; }.settings-tabs { position: static; display: flex; overflow-x: auto; padding: .45rem; }.settings-tab { white-space: nowrap; }.settings-tab-group { align-self: center; margin: 0 .25rem 0 .45rem; white-space: nowrap; }.settings-inline-form { align-items: stretch; }.settings-inline-form button { width: 100%; }.integration-status-list div { grid-template-columns: 1fr; gap: .25rem; } }
.service-publication-form { border-top: 1px solid #dbe4ed; }.service-publication-form fieldset { display: grid; gap: .65rem; padding: 1rem; border: 1px solid #dbe4ed; border-radius: 9px; background: #fff; }.service-publication-form legend { padding: 0 .35rem; color: #163b64; font-weight: 800; }.service-publication-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(210px, .72fr); gap: .65rem; }.service-publication-row .checkbox-field { margin: 0; }.service-publication-row input:disabled + span { color: #8291a0; }@media (max-width: 640px) { .service-publication-row { grid-template-columns: 1fr; } }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar-cell-placeholder { display: block; min-height: 34px; border-left: 1px solid #e6edf3; border-bottom: 1px solid #e6edf3; background: transparent; pointer-events: none; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .week-calendar .week-grid { min-width: max-content; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-dialog { width: min(520px, calc(100vw - 2rem)); }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-values { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .65rem; margin: .85rem 0; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-values p { display: grid; gap: .2rem; margin: 0; padding: .65rem; border: 1px solid #dbe4ed; border-radius: 8px; background: #f8fafc; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-month-navigation { display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: .65rem; margin: 1rem 0 .65rem; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-month-navigation h3 { margin: 0; text-align: center; color: #163b64; font-size: 1rem; text-transform: capitalize; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-weekdays,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-month-grid { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: .25rem; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-weekdays { margin-bottom: .25rem; color: #65778a; font-size: .75rem; text-align: center; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-day,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-empty { aspect-ratio: 1; min-height: 34px; margin: 0; padding: .2rem; border-radius: 7px; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-empty { display: block; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-day { border: 1px solid transparent; background: #fff; color: #163b64; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-day:hover,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-day.today { border-color: #1f5ea8; background: #eaf2fb; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-day.in-range { background: #d8f3e7; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-day.range-start,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-day.range-end { background: #087b4f; color: #fff; font-weight: 700; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-day.range-start { border-radius: 7px 2px 2px 7px; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-day.range-end { border-radius: 2px 7px 7px 2px; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-range-day.range-start.range-end { border-radius: 7px; }
.settings-inline-actions { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }.settings-inline-actions form { margin: 0; }.settings-inline-actions .button { margin: 0; }
.workspace-logout-form { margin: 0; width: 100%; }.app-sidebar:hover .workspace-sidebar-actions .workspace-logout-form, .app-sidebar:focus-within .workspace-sidebar-actions .workspace-logout-form { flex: 1; }.workspace-logout { cursor: pointer; justify-content: center; font: inherit; }.notification-panel { z-index: 10020; overflow: hidden; background: #2f66a7; color: #fff; box-shadow: 0 18px 46px rgba(10, 38, 73, .32); }.notification-panel-header { display: flex; align-items: center; justify-content: space-between; gap: .75rem; padding-bottom: .75rem; border-bottom: 1px solid rgba(255,255,255,.25); }.notification-panel h2 { margin: 0; color: #fff; }.notification-mark-all { display: inline-grid; width: 2.2rem; height: 2.2rem; place-items: center; margin: 0; padding: 0; border: 1px solid rgba(255,255,255,.5); border-radius: 50%; background: transparent; color: #fff; font-size: 1rem; }.notification-tabs { display: flex; gap: .25rem; margin: .7rem 0 .4rem; border-bottom: 1px solid rgba(255,255,255,.25); }.notification-tabs button { margin: 0; padding: .55rem .7rem; border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: transparent; color: #dfeeff; font: inherit; font-weight: 800; }.notification-tabs button.active { border-color: #fff; color: #fff; }.notification-list { max-height: min(360px, 55dvh); overflow: auto; }.notification-item { border-color: rgba(255,255,255,.18); background: transparent; color: #fff; }.notification-item:hover { background: rgba(255,255,255,.11); }.notification-item span, .notification-item time, .notification-empty, .notification-panel-state { color: #e1eeff; }.notification-item.unread::after { background: #ff7585; }.notification-task-count { color: #fff4cc; }.workspace-menu-editor-item button { min-width: 2.5rem; margin: 0; padding: .45rem; }.settings-tab-group { position: sticky; top: 0; z-index: 1; padding-top: .45rem; background: #163b64; }.settings-section { padding: clamp(1rem, 2vw, 1.5rem); }.settings-section h2 { color: #163b64; }.session-row .danger { margin: 0; }.settings-tabs { scrollbar-width: thin; }
@media (max-width: 700px) { .workspace-menu-editor-item { grid-template-columns: auto minmax(0, 1fr) auto auto; }.workspace-menu-visibility { grid-column: 2 / -1; }.session-row { align-items: flex-start; flex-direction: column; }.session-row form, .session-row button { width: 100%; }.notification-panel { border-radius: 14px; } }
/* TASK-106: finance dashboard — read-only premium overview and analytics. */
/* TASK-245: additive finance pulse; legacy overview and analytics remain intact. */
/* TASK-107 — patient registry and profile */.field-error{margin:.3rem 0;color:#a22b3a;font-size:.85rem;font-weight:650}
/* TASK-110: shared premium visual system and resilient responsive shell. */
:root { --crm-ink:#173854; --crm-primary:#1a4f78; --crm-primary-strong:#123b60; --crm-secondary:#3c628c; --crm-accent:#7a97b8; --crm-accent-soft:#eaf2f8; --crm-surface:#fff; --crm-surface-muted:#f5f8fb; --crm-border:#d6e1eb; --crm-text-muted:#61778d; --crm-radius-sm:10px; --crm-radius:16px; --crm-shadow:0 10px 28px rgba(26,79,120,.10); --crm-shadow-raised:0 18px 46px rgba(18,59,96,.22); }
body { background:#f4f7fa; color:var(--crm-ink); font-family:Manrope,"Segoe UI",system-ui,sans-serif; font-size:16px; line-height:1.5; }
.workspace-shell .container,.workspace-shell .container > * { min-width:0; }
.workspace-shell h1 { color:var(--crm-primary-strong); font-size:clamp(1.8rem,3vw,2.55rem); line-height:1.12; letter-spacing:-.045em; }
.workspace-shell h2 { color:var(--crm-primary); line-height:1.25; letter-spacing:-.022em; }
.hint,small { color:var(--crm-text-muted); } a { color:var(--crm-primary); }
button,.button { min-height:44px; border-radius:var(--crm-radius-sm); background:var(--crm-primary); font:inherit; font-weight:750; transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease; }
button:hover,.button:hover { background:var(--crm-primary-strong); } button:active,.button:active { transform:translateY(1px); }
button.secondary,.button.secondary { border:1px solid var(--crm-border); background:var(--crm-surface); color:var(--crm-primary); }
button.secondary:hover,.button.secondary:hover { border-color:var(--crm-accent); background:var(--crm-accent-soft); }
button:focus-visible,.button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible { outline:3px solid rgba(122,151,184,.62); outline-offset:2px; }
input,select,textarea { min-height:44px; border-color:#b9cad9; border-radius:var(--crm-radius-sm); color:var(--crm-ink); font:inherit; } textarea { min-height:96px; }
input:focus,select:focus,textarea:focus { border-color:var(--crm-primary); box-shadow:0 0 0 3px rgba(122,151,184,.22); outline:0; }
.card,.settings-section,.finance-panel,.appointment-card { border:1px solid var(--crm-border); border-radius:var(--crm-radius); box-shadow:var(--crm-shadow); }
.app-sidebar { background:linear-gradient(180deg,#123b60 0%,#1a4f78 100%); box-shadow:5px 0 24px rgba(18,59,96,.16); }
.workspace-brand-mark,.workspace-account-avatar { background:#3c628c; }.workspace-link:hover,.workspace-link.active { color:var(--crm-primary-strong); }
.workspace-link-badge,.notification-count { background:#b54d65; }.workspace-utility-bar,.public-header { background:linear-gradient(100deg,#123b60,#1a4f78); }
.status-confirmed { background:#e3eef8; color:var(--crm-primary); }.card,.patient-profile-card,.consultation-card,.finance-kpi { background:var(--crm-surface); }
.patient-eyebrow,.finance-eyebrow,.consultation-eyebrow { color:var(--crm-secondary); }.patient-profile-hero,.consultation-hero,.finance-kpi-primary { background:linear-gradient(135deg,#123b60,#1a4f78); }
.patient-detail-tabs,.finance-tabs { background:var(--crm-accent-soft); border-color:var(--crm-border); }.patient-detail-tabs a.active,.finance-tabs a.active { color:var(--crm-primary-strong); }
.settings-tabs { background:linear-gradient(180deg,#123b60,#1a4f78); }
/* TASK-117: inverse CRM surfaces keep their content readable after global typography rules. */
.workspace-shell :is(.app-sidebar,.workspace-utility-bar,.patient-profile-hero,.consultation-hero,.finance-kpi-primary,.notification-panel,.settings-tabs) :is(h1,h2,h3) { color:#fff; }
.workspace-shell .app-sidebar .workspace-link:not(.active):not(:hover) { color:#eaf3ff; }
.workspace-shell .app-sidebar .workspace-link.active,.workspace-shell .app-sidebar .workspace-link:hover { color:var(--crm-primary-strong); }
.workspace-shell .settings-tabs .settings-tab { color:#eef6ff; }
.workspace-shell .settings-tabs .settings-tab:hover,.workspace-shell .settings-tabs .settings-tab.active { color:#163b64; }
/* TASK-246: stable settings navigation and compact secondary selectors. */
.settings-tabs { align-content:start; grid-auto-rows:max-content; scrollbar-gutter:stable; }
.settings-tab-group { position:static; top:auto; z-index:auto; display:block; min-height:1.2rem; box-sizing:border-box; margin:1rem .8rem .2rem; padding:0; line-height:1.2; background:transparent; }
.settings-tab-group:first-child { margin-top:.25rem; }
.settings-tab { position:relative; display:flex; min-height:44px; box-sizing:border-box; align-items:center; }
.settings-context-tabs { display:flex; flex-wrap:wrap; gap:.45rem; margin:0 0 1rem; padding:.4rem; border:1px solid var(--crm-border); border-radius:var(--crm-radius-sm); background:var(--crm-surface-muted); }
.settings-context-tabs a { display:inline-flex; min-height:40px; box-sizing:border-box; align-items:center; padding:.45rem .75rem; border-radius:8px; color:var(--crm-primary); text-decoration:none; font-weight:750; }
.settings-context-tabs a:hover,.settings-context-tabs a.active { background:var(--crm-surface); box-shadow:0 2px 10px rgba(18,59,96,.1); color:var(--crm-primary-strong); }

@media (max-width:899px) {
    .workspace-utility-bar { z-index:10010; align-items:center; gap:.65rem; padding:.65rem max(1rem,env(safe-area-inset-right)) .65rem max(1rem,env(safe-area-inset-left)); box-shadow:0 4px 18px rgba(18,59,96,.22); }
    .mobile-brand { overflow:hidden; font-size:.95rem; text-overflow:ellipsis; white-space:nowrap; }.mobile-navigation-toggle { z-index:10011; margin-left:auto; isolation:isolate; }
    .mobile-navigation-toggle summary { min-height:42px; border-color:rgba(255,255,255,.62); border-radius:10px; }.mobile-navigation-toggle[open] summary { background:rgba(255,255,255,.14); }
    .mobile-navigation { position:fixed; top:calc(58px + .65rem); right:max(.75rem,env(safe-area-inset-right)); width:min(390px,calc(100vw - 1.5rem)); max-height:calc(100dvh - 74px); box-sizing:border-box; padding:.85rem; border-color:var(--crm-border); border-radius:var(--crm-radius); box-shadow:var(--crm-shadow-raised); overscroll-behavior:contain; }
    .mobile-navigation .workspace-link { grid-template-columns:42px minmax(0,1fr) auto; min-height:46px; padding:.5rem .15rem; border-radius:10px; }.mobile-navigation .workspace-link:hover,.mobile-navigation .workspace-link.active { background:var(--crm-accent-soft); color:var(--crm-primary-strong); }
    .mobile-account { grid-template-columns:minmax(0,1fr) auto; gap:.55rem; padding:.9rem .2rem .1rem; }.mobile-account > span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.mobile-account .workspace-logout-form { grid-column:1/-1; }.mobile-account .workspace-logout { width:100%; min-height:42px; }.mobile-account .notification-toggle { min-height:42px; background:var(--crm-accent-soft); color:var(--crm-primary); }
    .settings-layout,.patient-profile-grid,.appointment-detail-layout,.consultation-grid,.finance-overview-grid,.finance-analytics-grid { grid-template-columns:1fr; }.settings-tabs { position:static; max-height:none; }.settings-tab-group { position:static; }.lead-detail-dialog > section { min-width:0; }
}
@media (max-width:640px) {
    .workspace-shell .container { padding:1rem .85rem calc(1.5rem + env(safe-area-inset-bottom)); }.workspace-shell h1 { font-size:clamp(1.7rem,9vw,2.1rem); }.workspace-shell h2 { font-size:1.2rem; }.card,.settings-section { border-radius:14px; }
    :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-toolbar,
.finance-period-controls,
.settings-heading,
.finance-heading,
.operational-heading,
.lead-toolbar { gap:.75rem; }:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-toolbar > *,
.finance-period-controls > *,
.settings-heading > *,
.finance-heading > *,
.operational-heading > *,
.lead-toolbar > * { min-width:0; }
    .finance-tabs,
.patient-detail-tabs,
.designer-tabs {
 max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-navigation,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .view-switcher { max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; }.finance-control,.patient-search-panel,.patient-registry-results-header { padding-left:1rem; padding-right:1rem; }
    .finance-kpi,.patient-profile-card,.consultation-card { min-width:0; }.finance-period-form,.consultation-switcher,.preflight-action,.template-option { align-items:stretch; }.finance-period-form label,.consultation-switcher label,.finance-period-form input,.consultation-switcher select { min-width:0; }
    .lead-pipeline { overflow-x:auto; }.lead-columns { min-width:max-content; }.communication-list-item { gap:.65rem; padding:.85rem; }.communication-list-item time { flex:0 0 auto; font-size:.75rem; }
    .template-designer,.smart-field-page,.pdf-mapper-shell,.communication-template-page,.document-editor-shell { min-width:0; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; } }        /* TASK-111: reusable schedule templates stay actionable on touch screens. */
.schedule-template-list { display:grid; gap:.7rem; margin:1rem 0 0; padding:0; list-style:none; }
.schedule-template-list > li { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.9rem 1rem; border:1px solid var(--crm-border); border-radius:var(--crm-radius-sm); background:var(--crm-surface-muted); color:var(--crm-ink); }
.schedule-template-list > li > div:first-child { min-width:0; line-height:1.55; overflow-wrap:anywhere; }
.settings-template-actions { display:flex; flex-wrap:wrap; align-items:center; gap:.55rem; }
.settings-template-actions form, .settings-template-actions a, .settings-template-actions button { margin:0; }
.settings-template-actions .secondary-link { display:inline-flex; min-height:44px; box-sizing:border-box; align-items:center; padding:.45rem .8rem; border:1px solid var(--crm-border); border-radius:var(--crm-radius-sm); background:var(--crm-surface); text-decoration:none; font-weight:750; }
@media (max-width:640px) { .schedule-template-list > li { align-items:stretch; flex-direction:column; gap:.7rem; }.schedule-template-list .settings-template-actions { display:grid; grid-template-columns:1fr 1fr; width:100%; }.schedule-template-list .settings-template-actions form { display:contents; }.schedule-template-list .settings-template-actions .secondary-link, .schedule-template-list .settings-template-actions button { width:100%; justify-content:center; }.settings-template-actions { align-items:stretch; }.settings-template-actions .secondary-link { justify-content:center; } }        /* TASK-112: calendar controls must stay inside the mobile viewport. */
@media (max-width:640px) {
    :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-toolbar,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-controls { min-width:0; max-width:100%; }
    :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-controls { display:grid; grid-template-columns:minmax(0,1fr); justify-content:stretch; width:100%; }
    :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-mode-switcher,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-navigation,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .view-switcher { min-width:0; max-width:100%; }
    :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-mode-switcher,
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .view-switcher { overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; }
    :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-navigation { display:grid; grid-template-columns:44px minmax(0,1fr) 44px; }
    :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-navigation .calendar-date-picker { min-width:0; }
    :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-navigation .calendar-date-picker input { box-sizing:border-box; width:100%; min-width:0; }
    .calendar-actions {
 min-width:0; max-width:100%; }
:where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-views-wrap { min-width:0; max-width:100%; }
    :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-views-wrap { flex-wrap:wrap; }
    :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-advanced-view-settings { display:grid; grid-template-columns:minmax(0,1fr); align-items:stretch; gap:.55rem; }
    :where(.crm-v2026 [data-crm-component="doctor-calendar"]) .calendar-advanced-view-settings .checkbox-field { box-sizing:border-box; width:100%; min-width:0; }
    .totp-setup { overflow:hidden; border:1px solid var(--crm-border); border-radius:var(--crm-radius-sm); background:var(--crm-surface-muted); }
    .totp-setup summary { padding:.85rem 1rem; color:var(--crm-primary-strong); font-weight:800; cursor:pointer; }
    .totp-setup-body { display:grid; gap:1rem; padding:0 1rem 1rem; }
    .totp-setup-code { display:grid; grid-template-columns:180px minmax(0,1fr); gap:1rem; align-items:center; }
    .totp-setup-code img { width:180px; height:180px; border-radius:12px; background:#fff; }
    .totp-setup-code code { display:block; margin-top:.5rem; overflow-wrap:anywhere; user-select:all; }
    @media(max-width:640px) { .totp-setup-code { grid-template-columns:1fr; }.totp-setup-code img { width:min(180px,100%); height:auto; aspect-ratio:1; } }
}

/* TASK-136: compact permission-derived desktop rail and mobile bottom navigation. */
.workspace-icon { display:block; width:1.25rem; height:1.25rem; flex:0 0 auto; }
.mobile-bottom-navigation { display:none; }
.workspace-shell { padding-left:72px; }
.app-sidebar { width:72px; padding:.75rem .65rem; overflow:visible; border-right:1px solid rgba(255,255,255,.1); box-shadow:3px 0 18px rgba(18,59,96,.12); transition:none; }
.app-sidebar:hover,.app-sidebar:focus-within { width:72px; }
.workspace-brand { width:44px; height:44px; justify-content:center; margin:0 auto 1rem; }
.workspace-brand-mark { width:2.35rem; height:2.35rem; border-radius:11px; font-size:1rem; }
.app-sidebar .workspace-brand-label,.app-sidebar .workspace-link-label,.app-sidebar .workspace-navigation-label,.app-sidebar .workspace-account-name,.app-sidebar .workspace-logout-label,.app-sidebar .workspace-sidebar-note { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; opacity:1; transform:none; }
.app-sidebar .workspace-navigation { gap:.28rem; overflow-x:hidden; overflow-y:auto; padding:.1rem 0; }
.app-sidebar .workspace-link,.app-sidebar:hover .workspace-link,.app-sidebar:focus-within .workspace-link { display:grid; width:44px; height:44px; min-height:44px; grid-template-columns:1fr; place-items:center; margin:0 auto; padding:0; overflow:visible; border:1px solid transparent; border-radius:12px; color:#d9e9f7; }
.app-sidebar .workspace-link:hover { border-color:rgba(255,255,255,.16); background:rgba(255,255,255,.1); color:#fff; }
.app-sidebar .workspace-link.active { border-color:rgba(255,255,255,.72); background:#fff; color:var(--crm-primary-strong); box-shadow:0 7px 18px rgba(5,26,48,.2); }
.app-sidebar .workspace-link.active::before { content:""; position:absolute; left:-11px; width:3px; height:22px; border-radius:0 3px 3px 0; background:#fff; }
.workspace-link-icon { display:grid; width:24px; height:24px; place-items:center; justify-self:center; }
.workspace-link-icon .workspace-icon { width:21px; height:21px; }
.app-sidebar .workspace-link-badge { top:-.18rem; right:-.2rem; min-width:1.1rem; min-height:1.1rem; border:2px solid #16476e; font-size:.62rem; }
.app-sidebar:hover .workspace-link-badge,.app-sidebar:focus-within .workspace-link-badge { position:absolute; top:-.18rem; right:-.2rem; margin-left:0; }
.workspace-sidebar-footer { gap:.42rem; padding:.65rem 0 0; }
.workspace-account { min-height:42px; justify-content:center; }
.workspace-account-avatar { width:2rem; height:2rem; flex-basis:2rem; background:#386c9c; }
.workspace-sidebar-actions { display:grid; gap:.35rem; }
.workspace-sidebar-actions .notification-toggle,.workspace-sidebar-actions .workspace-logout { display:grid; width:44px; height:44px; min-height:44px; place-items:center; margin:0 auto; padding:0; border:1px solid transparent; border-radius:12px; background:transparent; color:#d9e9f7; }
.workspace-sidebar-actions .notification-toggle:hover,.workspace-sidebar-actions .workspace-logout:hover { border-color:rgba(255,255,255,.16); background:rgba(255,255,255,.1); color:#fff; }
.workspace-sidebar-actions .workspace-logout-form { width:100%; }
.workspace-sidebar-actions .notification-toggle .workspace-icon,.workspace-sidebar-actions .workspace-logout .workspace-icon { width:20px; height:20px; }
.app-sidebar:hover .workspace-account,.app-sidebar:focus-within .workspace-account { justify-content:center; }
.app-sidebar:hover .workspace-sidebar-actions,.app-sidebar:focus-within .workspace-sidebar-actions { display:grid; }
.app-sidebar:hover .workspace-sidebar-actions .notification-toggle,.app-sidebar:focus-within .workspace-sidebar-actions .notification-toggle,.app-sidebar:hover .workspace-sidebar-actions .workspace-logout,.app-sidebar:focus-within .workspace-sidebar-actions .workspace-logout { width:44px; padding:0; }

@media (max-width:899px) {
    .workspace-shell { padding:0 0 calc(72px + env(safe-area-inset-bottom)); }
    .app-sidebar { display:none; }
    .workspace-utility-bar { position:sticky; z-index:10010; top:0; display:flex; min-height:56px; align-items:center; gap:.65rem; padding:.5rem max(.8rem,env(safe-area-inset-right)) .5rem max(.8rem,env(safe-area-inset-left)); border-bottom:1px solid var(--crm-border); background:rgba(255,255,255,.96); color:var(--crm-primary-strong); box-shadow:0 4px 16px rgba(18,59,96,.08); backdrop-filter:blur(14px); }
    .mobile-brand { display:flex; align-items:center; gap:.55rem; min-width:0; margin-right:auto; overflow:hidden; color:var(--crm-primary-strong); font-size:.9rem; font-weight:800; text-decoration:none; text-overflow:ellipsis; white-space:nowrap; }
    .mobile-brand .workspace-brand-mark { width:2rem; height:2rem; flex:0 0 2rem; border-radius:9px; }
    .mobile-utility-actions { display:flex; align-items:center; gap:.35rem; }
    .mobile-utility-actions .notification-toggle { display:grid; width:40px; height:40px; min-height:40px; place-items:center; margin:0; padding:0; border:1px solid var(--crm-border); border-radius:11px; background:#fff; color:var(--crm-primary); }
    .mobile-utility-actions .notification-toggle .workspace-icon { width:20px; height:20px; }
    .mobile-utility-actions .workspace-account-avatar { width:2rem; height:2rem; flex-basis:2rem; }
    .workspace-shell .container { padding:1.15rem 1rem 2rem; }
    .mobile-bottom-navigation { position:fixed; z-index:10020; right:0; bottom:0; left:0; display:grid; grid-template-columns:repeat(auto-fit,minmax(58px,1fr)); min-height:64px; padding:4px max(6px,env(safe-area-inset-right)) max(4px,env(safe-area-inset-bottom)) max(6px,env(safe-area-inset-left)); border-top:1px solid var(--crm-border); background:#fff; box-shadow:0 -8px 24px rgba(18,59,96,.12); }
    .mobile-navigation-toggle { position:static; display:block; min-width:0; }
    .mobile-bottom-link { position:relative; display:grid; width:100%; min-width:0; min-height:56px; grid-template-rows:28px auto; place-items:center; align-content:center; gap:.08rem; box-sizing:border-box; margin:0; padding:.25rem .12rem; border:0; border-radius:11px; background:transparent; color:#71869a; font-size:.65rem; font-weight:750; line-height:1.05; text-align:center; text-decoration:none; list-style:none; cursor:pointer; }
    .mobile-bottom-link:hover,.mobile-bottom-link.active,.mobile-navigation-toggle.is-open>.mobile-bottom-link { background:var(--crm-accent-soft); color:var(--crm-primary-strong); }
    .mobile-bottom-link.active::before,.mobile-navigation-toggle.is-open>.mobile-bottom-link::before { content:""; position:absolute; top:0; width:26px; height:3px; border-radius:0 0 3px 3px; background:var(--crm-primary); }
    .mobile-bottom-icon { display:grid; width:28px; height:28px; place-items:center; }
    .mobile-bottom-icon .workspace-icon { width:21px; height:21px; }
    .mobile-bottom-label { display:block; width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .mobile-bottom-link .workspace-link-badge { top:.05rem; right:calc(50% - 22px); border:2px solid #fff; }
    .mobile-navigation-backdrop { position:fixed; z-index:10011; inset:0 0 calc(64px + env(safe-area-inset-bottom)); display:block; width:auto; min-height:0; margin:0; padding:0; border:0; border-radius:0; background:rgba(9,30,50,.42); backdrop-filter:blur(2px); }
    .mobile-navigation { position:fixed; z-index:10012; top:auto; right:auto; bottom:calc(64px + env(safe-area-inset-bottom)); left:50%; display:block; width:min(520px,calc(100vw - 1rem)); max-height:min(72dvh,620px); box-sizing:border-box; padding:.9rem; overflow-y:auto; overscroll-behavior:contain; transform:translateX(-50%); border:1px solid var(--crm-border); border-radius:22px 22px 14px 14px; background:#fff; color:var(--crm-ink); box-shadow:0 -18px 52px rgba(9,30,50,.24); }
    .mobile-navigation-backdrop[hidden],.mobile-navigation[hidden] { display:none!important; }
    .mobile-navigation-header { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding:.15rem .15rem .8rem; }
    .mobile-navigation-header div { display:grid; min-width:0; gap:.12rem; }
    .mobile-navigation-header span { color:var(--crm-text-muted); font-size:.7rem; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
    .mobile-navigation-header strong { overflow:hidden; color:var(--crm-primary-strong); text-overflow:ellipsis; white-space:nowrap; }
    .mobile-navigation-close { display:grid; width:38px; height:38px; min-height:38px; place-items:center; margin:0; padding:0; border:1px solid var(--crm-border); border-radius:11px; background:var(--crm-surface-muted); color:var(--crm-primary); font-size:1.35rem; }
    .mobile-navigation .workspace-navigation { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.45rem; overflow:visible; }
    .mobile-navigation .workspace-navigation-label { display:none; }
    .mobile-navigation .workspace-link { display:grid; width:100%; min-height:52px; grid-template-columns:36px minmax(0,1fr) auto; align-items:center; box-sizing:border-box; margin:0; padding:.45rem .55rem; overflow:hidden; border:1px solid #e4ebf1; border-radius:12px; background:#f7f9fb; color:var(--crm-primary-strong); font-size:.78rem; font-weight:750; text-decoration:none; }
    .mobile-navigation .workspace-link:hover,.mobile-navigation .workspace-link.active { border-color:#c5d9e8; background:var(--crm-accent-soft); color:var(--crm-primary-strong); }
    .mobile-navigation .workspace-link-icon { width:28px; height:28px; }
    .mobile-navigation .workspace-link-icon .workspace-icon { width:19px; height:19px; }
    .mobile-navigation .workspace-link-label { position:static; display:block; min-width:0; overflow:hidden; opacity:1; transform:none; pointer-events:auto; text-overflow:ellipsis; white-space:nowrap; }
    .mobile-navigation .workspace-link-badge { position:static; margin-left:auto; }
    .mobile-account { display:grid; grid-template-columns:40px minmax(0,1fr) auto; align-items:center; gap:.65rem; margin-top:.75rem; padding:.75rem .1rem .05rem; border-top:1px solid var(--crm-border); color:var(--crm-primary-strong); }
    .mobile-account-name { min-width:0; overflow:hidden; font-size:.82rem; font-weight:750; text-overflow:ellipsis; white-space:nowrap; }
    .mobile-account .workspace-logout-form { width:auto; grid-column:auto; }
    .mobile-account .workspace-logout { display:flex; width:auto; min-height:38px; align-items:center; gap:.35rem; margin:0; padding:.35rem .6rem; border:1px solid var(--crm-border); border-radius:10px; background:#fff; color:var(--crm-primary); font-size:.76rem; }
    .mobile-account .workspace-logout .workspace-icon { width:17px; height:17px; }
    .mobile-account-menu { position:relative; }
    .mobile-account-toggle { display:grid; width:40px; height:40px; min-height:40px; place-items:center; margin:0; padding:0; border:1px solid var(--crm-border); border-radius:50%; background:#fff; color:var(--crm-primary); cursor:pointer; }
    .mobile-account-toggle .workspace-account-avatar { width:2rem; height:2rem; flex-basis:2rem; }
    .mobile-account-popover { position:fixed; z-index:10030; top:64px; right:max(.7rem,env(safe-area-inset-right)); display:grid; width:min(310px,calc(100vw - 1.4rem)); gap:.35rem; padding:.75rem; border:1px solid var(--crm-border); border-radius:16px; background:#fff; color:var(--crm-ink); box-shadow:0 18px 46px rgba(10,38,73,.24); }
    .mobile-account-popover[hidden] { display:none!important; }
    .mobile-account-summary { display:grid; gap:.15rem; padding:.35rem .45rem .65rem; border-bottom:1px solid var(--crm-border); }
    .mobile-account-summary strong { overflow:hidden; color:var(--crm-primary-strong); text-overflow:ellipsis; white-space:nowrap; }
    .mobile-account-summary span { overflow:hidden; color:var(--crm-text-muted); font-size:.76rem; text-overflow:ellipsis; white-space:nowrap; }
    .mobile-account-link,.mobile-account-popover .workspace-logout { display:flex; width:100%; min-height:44px; box-sizing:border-box; align-items:center; gap:.65rem; margin:0; padding:.65rem .7rem; border:0; border-radius:10px; background:transparent; color:var(--crm-primary-strong); font:inherit; font-weight:750; text-align:left; text-decoration:none; cursor:pointer; }
    .mobile-account-link:hover,.mobile-account-popover .workspace-logout:hover { background:var(--crm-accent-soft); }
    .mobile-account-link .workspace-icon,.mobile-account-popover .workspace-icon { width:19px; height:19px; }
    .mobile-account-popover .workspace-logout-form { width:100%; }
    .mobile-utility-actions .notification-panel { position:fixed!important; top:64px!important; right:max(.7rem,env(safe-area-inset-right))!important; bottom:auto!important; left:max(.7rem,env(safe-area-inset-left))!important; width:auto!important; max-width:none!important; max-height:calc(100dvh - 76px)!important; }
    .mobile-utility-actions .notification-tabs { width:100%; overflow:hidden; }
    .mobile-utility-actions .notification-tabs button { min-width:0; flex:1 1 0; padding:.55rem .3rem; overflow:hidden; text-overflow:ellipsis; }
    .mobile-utility-actions .notification-list { max-height:calc(100dvh - 205px); }
    body.mobile-menu-open { overflow:hidden; }
}
@media (max-width:420px) {
    .mobile-navigation { width:calc(100vw - .65rem); padding:.75rem; }
    .mobile-navigation .workspace-navigation { gap:.35rem; }
    .mobile-navigation .workspace-link { min-height:50px; padding:.4rem; font-size:.72rem; }
    .mobile-bottom-link { font-size:.61rem; }
}
@media (max-height:720px) and (min-width:900px) {
    .app-sidebar { padding-top:.55rem; padding-bottom:.55rem; }
    .workspace-brand { margin-bottom:.55rem; }
    .app-sidebar .workspace-navigation { gap:.12rem; }
    .app-sidebar .workspace-link,.app-sidebar:hover .workspace-link,.app-sidebar:focus-within .workspace-link { width:40px; height:40px; min-height:40px; }
    .workspace-sidebar-footer { padding-top:.35rem; }
}
/* TASK-138: explicit patient registry actions. */.form-errors{margin-bottom:1rem;padding:.75rem;border-radius:10px;background:#fff0f2;color:#a42b3a}.form-errors ul{margin:0;padding-left:1.2rem}

/* TASK-264: premium clinical category/field library with inline ICD tokens. */




/* TASK-265: draggable clinical tokens and user-defined category colors. */


/* TASK-266: inherited premium ICD display preferences. */

/* TASK-154: readable, brand-independent notification surface. */
.notification-panel{border:1px solid var(--crm-border)!important;border-radius:16px!important;background:#fff!important;color:var(--crm-ink)!important;box-shadow:0 22px 58px rgba(10,38,73,.24)!important}
.notification-panel-header{padding:.2rem .25rem .8rem;border-bottom:1px solid var(--crm-border)!important}.notification-panel h2{color:var(--crm-primary-strong)!important;font-size:1.15rem!important}.notification-mark-all{border-color:var(--crm-border)!important;background:var(--crm-accent-soft)!important;color:var(--crm-primary)!important}.notification-tabs{border-bottom:1px solid var(--crm-border)!important}.notification-tabs button{color:var(--crm-text-muted)!important}.notification-tabs button.active{border-color:var(--crm-primary)!important;color:var(--crm-primary-strong)!important}.notification-task-count{margin:.7rem 0!important;padding:.65rem .75rem!important;border:1px solid #efd99d;border-radius:10px!important;background:#fff7dc!important;color:#745300!important}.notification-list{display:grid;gap:.45rem;padding:.35rem 0}.notification-item{position:relative;border:1px solid var(--crm-border)!important;border-radius:11px!important;background:#fff!important;color:var(--crm-ink)!important}.notification-item:hover{border-color:#9abbd6!important;background:#f7fbff!important}.notification-item.unread{padding-left:1rem;border-color:#a9c8e7!important;background:#edf6ff!important}.notification-item.unread::before{position:absolute;top:1rem;left:.38rem;width:6px;height:6px;border-radius:50%;background:#2f80ed;content:''}.notification-item strong{color:var(--crm-primary-strong)!important;line-height:1.35}.notification-item span,.notification-item time,.notification-empty,.notification-panel-state{color:var(--crm-text-muted)!important;line-height:1.42}.notification-panel-state.error{color:#a82323!important}
@media(max-width:700px){.mobile-utility-actions .notification-panel{top:64px!important;right:max(.5rem,env(safe-area-inset-right))!important;bottom:auto!important;left:max(.5rem,env(safe-area-inset-left))!important;width:auto!important;max-height:calc(100dvh - 76px)!important;border-radius:16px!important;padding:1rem!important}.mobile-utility-actions .notification-list{max-height:calc(100dvh - 245px)!important}}

/* CRM 2026 visual refinements integrated from d117463^..08a37be. */
/* CRM 2026 visual foundations. */

body.crm-v2026 {
    --neu-navy-950: #173f5f;
    --neu-navy-900: #1c506f;
    --neu-navy-850: #236480;
    --neu-navy-800: #2b7890;
    --neu-cyan: #4bd5dc;
    --neu-cyan-strong: #139fb0;
    --neu-violet: #9688ed;
    --neu-mint: #55dfb2;
    --neu-rose: #f3708b;
    --neu-amber: #f3b95f;
    --neu-ink: #12233a;
    --neu-muted: #68788d;
    --neu-canvas: #eef3f8;
    --neu-surface: rgba(255, 255, 255, .92);
    --neu-surface-solid: #fff;
    --neu-border: rgba(84, 112, 143, .18);
    --neu-border-strong: rgba(61, 91, 126, .28);
    --neu-shadow-sm: 0 8px 24px rgba(18, 42, 73, .07);
    --neu-shadow: 0 18px 48px rgba(18, 42, 73, .10);
    --neu-shadow-float: 0 28px 72px rgba(25, 66, 94, .18);
    --neu-radius-sm: 12px;
    --neu-radius: 18px;
    --neu-radius-lg: 26px;
    --crm-ink: var(--neu-ink);
    --crm-primary: #174f7a;
    --crm-primary-strong: #0d3154;
    --crm-secondary: #4a6f95;
    --crm-accent: #79a8c4;
    --crm-accent-soft: #e8f4f7;
    --crm-surface: var(--neu-surface-solid);
    --crm-surface-muted: #f3f7fa;
    --crm-border: var(--neu-border);
    --crm-text-muted: var(--neu-muted);
    --crm-radius-sm: var(--neu-radius-sm);
    --crm-radius: var(--neu-radius);
    --crm-shadow: var(--neu-shadow-sm);
    --crm-shadow-raised: var(--neu-shadow-float);
    background-color: var(--neu-canvas);
    color: var(--neu-ink);
    font-family: "Aptos", "Segoe UI Variable Text", "Segoe UI", system-ui, sans-serif;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

body.crm-v2026.workspace-shell {
    --neu-sidebar-width: 70px;
    position: relative;
    padding-left: calc(var(--neu-sidebar-width) + 34px);
    background:
        radial-gradient(circle at 9% 3%, rgba(53, 215, 231, .11), transparent 24rem),
        radial-gradient(circle at 91% 8%, rgba(139, 124, 255, .10), transparent 28rem),
        linear-gradient(145deg, #f5f8fb 0%, #edf3f8 46%, #f8fafc 100%);
    background-attachment: fixed;
}

body.crm-v2026.workspace-shell::before {
    position: fixed;
    z-index: -1;
    inset: 0;
    background-image: radial-gradient(rgba(28, 70, 108, .11) .65px, transparent .65px);
    background-size: 22px 22px;
    content: "";
    mask-image: linear-gradient(to bottom, #000, transparent 72%);
    pointer-events: none;
}

.crm-v2026 .workspace-shell .container,
.crm-v2026.workspace-shell .container {
    width: 100%;
    max-width: 1660px;
    box-sizing: border-box;
    margin-inline: auto;
    padding: 1.7rem 2.4rem 3.5rem;
}

.crm-v2026 #crm-main > * {
    animation: neu-surface-enter .28s cubic-bezier(.2, .75, .25, 1) both;
}

@keyframes neu-surface-enter {
    from { opacity: .35; transform: translateY(7px); }
}

/* Floating desktop navigation rail */
.crm-v2026 .app-sidebar {
    inset: 16px auto 16px 16px;
    width: var(--neu-sidebar-width);
    height: auto;
    padding: .8rem .65rem;
    overflow: visible;
    box-sizing: border-box;
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 25px;
    background:
        radial-gradient(circle at 50% 2%, rgba(92, 227, 225, .28), transparent 12rem),
        linear-gradient(180deg, #2c7891 0%, #245f7f 55%, #234f72 100%);
    box-shadow: 0 22px 54px rgba(24, 70, 100, .21), inset 0 1px 0 rgba(255, 255, 255, .18);
    transition: width .16s ease;
}

.crm-v2026 .app-sidebar:hover,
.crm-v2026 .app-sidebar:focus-within { width: var(--neu-sidebar-width); }

.crm-v2026 .workspace-brand {
    width: 46px;
    height: 46px;
    margin-bottom: .8rem;
}

.crm-v2026 .workspace-brand-mark {
    position: relative;
    width: 42px;
    height: 42px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, .38);
    border-radius: 15px;
    background: linear-gradient(145deg, var(--neu-cyan), var(--neu-violet));
    box-shadow: 0 0 0 5px rgba(53, 215, 231, .08), 0 12px 26px rgba(53, 215, 231, .20);
    color: #071426;
    font-weight: 900;
}

.crm-v2026 .app-sidebar .workspace-navigation {
    gap: .32rem;
    padding: .15rem 0;
}

.crm-v2026 .app-sidebar .workspace-link,
.crm-v2026 .app-sidebar:hover .workspace-link,
.crm-v2026 .app-sidebar:focus-within .workspace-link {
    width: 46px;
    height: 46px;
    min-height: 46px;
    overflow: visible;
    border: 1px solid transparent;
    border-radius: 15px;
    color: #a8bad0;
    transition: color .18s ease, background .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.crm-v2026 .app-sidebar .workspace-link:hover,
.crm-v2026 .app-sidebar .workspace-link:focus-visible {
    border-color: rgba(53, 215, 231, .22);
    background: rgba(53, 215, 231, .10);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .08);
    color: #fff;
    transform: translateY(-1px);
}

.crm-v2026 .app-sidebar .workspace-link.active {
    border-color: rgba(255, 255, 255, .72);
    background: linear-gradient(145deg, #fff, #e8fbff);
    box-shadow: 0 10px 24px rgba(53, 215, 231, .22), inset 0 0 0 1px rgba(53, 215, 231, .16);
    color: #0b3655;
}

.crm-v2026 .app-sidebar .workspace-link.active::before {
    left: -13px;
    width: 4px;
    height: 24px;
    border-radius: 0 5px 5px 0;
    background: var(--neu-cyan);
    box-shadow: 0 0 14px var(--neu-cyan);
}

.crm-v2026 .app-sidebar .workspace-link::after {
    position: absolute;
    z-index: 50;
    top: 50%;
    left: calc(100% + 15px);
    padding: .48rem .65rem;
    transform: translate(-6px, -50%);
    border: 1px solid rgba(255, 255, 255, .12);
    border-radius: 10px;
    background: rgba(7, 20, 38, .94);
    box-shadow: 0 14px 32px rgba(7, 20, 38, .24);
    color: #f7fbff;
    content: attr(title);
    font-size: .76rem;
    font-weight: 750;
    opacity: 0;
    pointer-events: none;
    transition: opacity .16s ease, transform .16s ease;
    white-space: nowrap;
}

.crm-v2026 .app-sidebar .workspace-link:hover::after,
.crm-v2026 .app-sidebar .workspace-link:focus-visible::after {
    opacity: 1;
    transform: translate(0, -50%);
}

.crm-v2026 .workspace-account-avatar {
    border: 1px solid rgba(255, 255, 255, .22);
    background: linear-gradient(145deg, #2c6d8a, #725fb5);
    box-shadow: 0 8px 18px rgba(5, 18, 35, .22);
}

.crm-v2026 .workspace-sidebar-actions .notification-toggle,
.crm-v2026 .workspace-sidebar-actions .workspace-logout {
    width: 46px;
    height: 46px;
    border-radius: 15px;
    color: #a8bad0;
}

.crm-v2026 .workspace-sidebar-actions .notification-toggle:hover,
.crm-v2026 .workspace-sidebar-actions .workspace-logout:hover {
    border-color: rgba(53, 215, 231, .22);
    background: rgba(53, 215, 231, .10);
}

.crm-v2026 .workspace-link-badge,
.crm-v2026 .notification-count {
    background: var(--neu-rose);
    box-shadow: 0 0 0 2px var(--neu-navy-900), 0 5px 12px rgba(243, 112, 139, .34);
}

/* Typography and product surfaces */
.crm-v2026.workspace-shell h1 {
    margin-top: .15rem;
    color: #0b2948;
    font-size: clamp(2rem, 3vw, 3rem);
    font-weight: 760;
    letter-spacing: -.055em;
    line-height: 1.04;
}

.crm-v2026.workspace-shell h2 {
    color: #12385a;
    font-weight: 740;
    letter-spacing: -.03em;
}

.crm-v2026 :is(.card, .settings-section, .finance-panel, .appointment-card, .patient-profile-card, .consultation-card) {
    border-color: var(--neu-border);
    border-radius: var(--neu-radius);
    background-color: var(--neu-surface);
    box-shadow: var(--neu-shadow-sm);
    backdrop-filter: blur(18px) saturate(125%);
}

.crm-v2026 :is(.card, .settings-section, .finance-panel, .appointment-card, .patient-profile-card, .consultation-card):is(:hover, :focus-within) {
    border-color: rgba(52, 112, 148, .28);
}

.crm-v2026 :is(.patient-registry-hero, .patient-profile-hero, .consultation-hero, .finance-kpi-primary, .finance-pulse) {
    border: 1px solid rgba(83, 143, 177, .18);
    border-radius: var(--neu-radius-lg);
    box-shadow: var(--neu-shadow);
}

.crm-v2026 :is(.patient-profile-hero, .consultation-hero, .finance-kpi-primary) {
    background:
        radial-gradient(circle at 88% 0, rgba(53, 215, 231, .35), transparent 15rem),
        radial-gradient(circle at 14% 120%, rgba(139, 124, 255, .30), transparent 17rem),
        linear-gradient(135deg, #0d2744, #123f62 58%, #17556a);
}

.crm-v2026 .patient-registry-hero,
.crm-v2026 .finance-pulse {
    background:
        radial-gradient(circle at 92% 8%, rgba(53, 215, 231, .16), transparent 17rem),
        radial-gradient(circle at 4% 100%, rgba(139, 124, 255, .10), transparent 16rem),
        rgba(255, 255, 255, .88);
}

/* Controls */
.crm-v2026 :is(input, select, textarea) {
    min-height: 46px;
    border: 1px solid var(--neu-border-strong);
    border-radius: 13px;
    background: rgba(255, 255, 255, .88);
    color: var(--neu-ink);
    transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}

.crm-v2026 :is(input, select, textarea):hover { border-color: rgba(28, 92, 128, .42); }

.crm-v2026 :is(input, select, textarea):focus {
    border-color: var(--neu-cyan-strong);
    background: #fff;
    box-shadow: 0 0 0 4px rgba(53, 215, 231, .16), 0 10px 24px rgba(22, 77, 110, .08);
}

.crm-v2026 :is(button, .button) {
    min-height: 44px;
    border-radius: 13px;
    background: linear-gradient(135deg, #136080, #18436c);
    box-shadow: 0 8px 18px rgba(15, 65, 101, .15);
    font-weight: 760;
}

.crm-v2026 :is(button, .button):not(.secondary):not(.danger):not(.danger-outline):hover {
    background: linear-gradient(135deg, #0f7187, #173b64);
    box-shadow: 0 12px 24px rgba(13, 70, 103, .22);
    transform: translateY(-1px);
}

.crm-v2026 :is(button.secondary, .button.secondary) {
    border-color: var(--neu-border-strong);
    background: rgba(255, 255, 255, .78);
    box-shadow: none;
    color: #174f7a;
}

.crm-v2026 :is(button.secondary, .button.secondary):hover {
    border-color: rgba(14, 184, 203, .36);
    background: rgba(53, 215, 231, .09);
}

.crm-v2026 :is(button, .button, a, input, select, textarea, summary):focus-visible {
    outline: 3px solid rgba(53, 215, 231, .45);
    outline-offset: 3px;
}

/* Dense work areas */
.crm-v2026 table {
    overflow: hidden;
    border: 1px solid var(--neu-border);
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 16px;
    background: rgba(255, 255, 255, .86);
    box-shadow: var(--neu-shadow-sm);
}

.crm-v2026 th {
    border-bottom-color: var(--neu-border);
    background: #f0f5f8;
    color: #5c6f84;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .055em;
    text-transform: uppercase;
}

.crm-v2026 td { border-bottom-color: rgba(91, 117, 145, .13); }
.crm-v2026 tbody tr { transition: background .14s ease; }
.crm-v2026 tbody tr:hover { background: rgba(53, 215, 231, .045); }

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.calendar-nav-button, .today-link, .view-switcher a, .view-switcher button, .calendar-mode-switcher button) {

    box-shadow: 0 5px 14px rgba(15, 48, 80, .05);
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.view-switcher a.active, .view-switcher button.active, .calendar-mode-switcher button.active) {

    box-shadow: 0 8px 20px rgba(18, 63, 98, .20);

}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar, .calendar-more-actions, .calendar-filter-panel, .calendar-views-panel) {

    box-shadow: var(--neu-shadow-sm);
}

.crm-v2026 :is(.settings-tabs, .finance-tabs, .patient-detail-tabs, .settings-context-tabs) {
    border-color: rgba(83, 117, 150, .16);
    border-radius: 15px;
    background: rgba(225, 235, 243, .68);
    backdrop-filter: blur(12px);
}

.crm-v2026 .settings-tabs {
    background:
        radial-gradient(circle at 10% 0, rgba(53, 215, 231, .15), transparent 13rem),
        linear-gradient(180deg, #102b49, #0a1d35);
    box-shadow: 0 18px 42px rgba(7, 20, 38, .18);
}

.crm-v2026 :is(.finance-tabs a.active, .patient-detail-tabs a.active, .settings-context-tabs a.active) {
    background: #fff;
    box-shadow: 0 8px 20px rgba(20, 53, 84, .10);
}

.crm-v2026 :is(.lead-stage, .communication-list, .telegram-workspace, .whatsapp-workspace, .patient-registry-surface) {
    border-color: var(--neu-border);
    border-radius: var(--neu-radius-lg);
    background: rgba(255, 255, 255, .86);
    box-shadow: var(--neu-shadow);
    backdrop-filter: blur(18px) saturate(120%);
}

.crm-v2026 .lead-stage-heading { border-bottom-color: var(--neu-border); }
.crm-v2026 .lead-card { border-color: var(--neu-border); border-radius: 15px; box-shadow: 0 7px 18px rgba(17, 46, 76, .07); }
.crm-v2026 .lead-card:hover { border-color: rgba(14, 184, 203, .32); box-shadow: 0 14px 28px rgba(17, 46, 76, .12); }

/* Status, overlays and feedback */
.crm-v2026 :is(.status, .patient-results-count, .lead-stage-count, .finance-quick-periods a) { border-radius: 999px; }

.crm-v2026 dialog {
    border: 1px solid rgba(255, 255, 255, .68);
    border-radius: 24px;
    box-shadow: var(--neu-shadow-float);
}

.crm-v2026 dialog::backdrop {
    background: rgba(5, 16, 31, .54);
    backdrop-filter: blur(7px) saturate(80%);
}

.crm-v2026 .messages li,
.crm-v2026 .notification-panel {
    border-radius: 17px !important;
    box-shadow: 0 24px 58px rgba(7, 24, 43, .20) !important;
    backdrop-filter: blur(18px) saturate(120%);
}

.crm-v2026 .preview-banner,
.crm-v2026 .attention-warning {
    border-color: rgba(243, 185, 95, .45);
    background: rgba(255, 247, 222, .92);
}

/* Public entry */
body.crm-v2026.public-shell {
    position: relative;
    display: grid;
    min-height: 100vh;
    overflow-x: hidden;
    background-color: #edf3f8;
}

body.crm-v2026.public-shell::before,
body.crm-v2026.public-shell::after {
    position: fixed;
    z-index: -1;
    width: 32rem;
    height: 32rem;
    border-radius: 50%;
    content: "";
    filter: blur(10px);
    pointer-events: none;
}

body.crm-v2026.public-shell::before {
    top: -15rem;
    right: -10rem;
    background: radial-gradient(circle, rgba(53, 215, 231, .28), transparent 68%);
}

body.crm-v2026.public-shell::after {
    bottom: -19rem;
    left: -9rem;
    background: radial-gradient(circle, rgba(139, 124, 255, .22), transparent 68%);
}

.crm-v2026.public-shell .container { width: min(100%, 1180px); box-sizing: border-box; }

.crm-v2026 .brand-login {
    position: relative;
    overflow: hidden;
    border-right: 1px solid rgba(255, 255, 255, .66) !important;
    border-bottom: 1px solid rgba(255, 255, 255, .66) !important;
    border-left: 1px solid rgba(255, 255, 255, .66) !important;
    border-radius: 24px !important;
    box-shadow: 0 30px 82px rgba(13, 43, 70, .18) !important;
    backdrop-filter: blur(24px) saturate(125%);
}

.crm-v2026 .brand-login::after {
    position: absolute;
    top: -5rem;
    right: -5rem;
    width: 13rem;
    height: 13rem;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(53, 215, 231, .16), transparent 68%);
    content: "";
    pointer-events: none;
}

@media (max-width: 899px) {
    body.crm-v2026.workspace-shell { padding: 0 0 calc(72px + env(safe-area-inset-bottom)); }
    .crm-v2026 .app-sidebar { display: none; }
    .crm-v2026 .workspace-utility-bar {
        border-bottom: 1px solid rgba(84, 112, 143, .16);
        background: rgba(247, 250, 252, .86);
        box-shadow: 0 8px 26px rgba(11, 34, 59, .08);
        backdrop-filter: blur(22px) saturate(135%);
    }
    .crm-v2026 .mobile-brand .workspace-brand-mark { box-shadow: 0 7px 16px rgba(53, 215, 231, .18); }
    .crm-v2026 .mobile-bottom-navigation {
        border-top-color: rgba(84, 112, 143, .16);
        background: rgba(250, 252, 253, .92);
        box-shadow: 0 -10px 30px rgba(11, 34, 59, .10);
        backdrop-filter: blur(22px) saturate(135%);
    }
    .crm-v2026 .mobile-bottom-link.active,
    .crm-v2026 .mobile-navigation-toggle.is-open > .mobile-bottom-link {
        background: rgba(53, 215, 231, .11);
        color: #0f5674;
    }
    .crm-v2026 .mobile-bottom-link.active::before,
    .crm-v2026 .mobile-navigation-toggle.is-open > .mobile-bottom-link::before {
        background: linear-gradient(90deg, var(--neu-cyan), var(--neu-violet));
    }
    .crm-v2026 .mobile-navigation,
    .crm-v2026 .mobile-account-popover {
        border-color: rgba(84, 112, 143, .18);
        background: rgba(255, 255, 255, .95);
        box-shadow: 0 -24px 60px rgba(7, 20, 38, .22);
        backdrop-filter: blur(24px) saturate(130%);
    }
    .crm-v2026.workspace-shell .container { max-width: none; padding: 1.25rem 1rem 2.2rem; }
}

@media (max-width: 640px) {
    .crm-v2026.workspace-shell h1 { font-size: clamp(1.75rem, 9vw, 2.25rem); }
    .crm-v2026 :is(.card, .settings-section, .finance-panel, .patient-profile-card, .consultation-card) { border-radius: 16px; }
    .crm-v2026 :is(.patient-registry-hero, .patient-profile-hero, .consultation-hero, .finance-pulse) { border-radius: 20px; }
    .crm-v2026 table { border-radius: 13px; }
    .crm-v2026 .brand-login { margin-top: 2vh !important; padding: 1.35rem !important; border-radius: 20px !important; }
}

@media (prefers-reduced-motion: reduce) {
    .crm-v2026 #crm-main > * { animation: none; }
}

/* Resizable navigation and brighter clinical workspace palette. */
body.crm-v2026.workspace-shell {
    transition: padding-left .16s ease;
}

.crm-v2026 :is(.patient-profile-hero, .consultation-hero, .finance-kpi-primary) {
    background:
        radial-gradient(circle at 88% 0, rgba(103, 229, 228, .30), transparent 15rem),
        radial-gradient(circle at 14% 120%, rgba(158, 142, 239, .24), transparent 17rem),
        linear-gradient(135deg, #2d6585, #2d7890 58%, #348b98);
    box-shadow: 0 16px 38px rgba(39, 99, 130, .18);
}

.crm-v2026 .settings-tabs {
    background:
        radial-gradient(circle at 10% 0, rgba(102, 226, 225, .22), transparent 13rem),
        linear-gradient(180deg, #347b93, #285d7d);
    box-shadow: 0 16px 36px rgba(37, 91, 123, .17);
}

.crm-v2026.workspace-shell h1 { color: #183f60; }
.crm-v2026.workspace-shell h2 { color: #275674; }

@media (min-width: 900px) {
    .crm-v2026 .sidebar-resizer {
        position: absolute;
        z-index: 80;
        top: 50%;
        right: -13px;
        display: grid;
        width: 25px;
        height: 70px;
        place-items: center;
        transform: translateY(-50%);
        border: 0;
        border-radius: 999px;
        background: transparent;
        cursor: col-resize;
        touch-action: none;
    }

    .crm-v2026 .sidebar-resizer span {
        display: block;
        width: 5px;
        height: 40px;
        border: 1px solid rgba(255, 255, 255, .76);
        border-radius: 999px;
        background: #78e1e1;
        box-shadow: 0 5px 18px rgba(24, 97, 119, .30), 0 0 0 4px rgba(255, 255, 255, .22);
        transition: width .16s ease, background .16s ease, box-shadow .16s ease;
    }

    .crm-v2026 .sidebar-resizer:hover span,
    .crm-v2026 .sidebar-resizer:focus-visible span,
    .crm-v2026.sidebar-resizing .sidebar-resizer span {
        width: 7px;
        background: #fff;
        box-shadow: 0 6px 20px rgba(24, 97, 119, .35), 0 0 0 5px rgba(75, 213, 220, .24);
    }

    .crm-v2026 .sidebar-resizer:focus-visible { outline: 3px solid rgba(75, 213, 220, .42); outline-offset: 3px; }
    .crm-v2026.sidebar-resizing,
    .crm-v2026.sidebar-resizing * { cursor: col-resize !important; user-select: none !important; }
    .crm-v2026.sidebar-resizing { transition: none; }
    .crm-v2026.sidebar-resizing .app-sidebar { transition: none; }

    .crm-v2026.sidebar-expanded .app-sidebar { padding-inline: .85rem; }
    .crm-v2026.sidebar-expanded .workspace-brand {
        width: 100%;
        justify-content: flex-start;
        gap: .72rem;
        margin: 0 0 1rem;
        padding: 0 .15rem;
        box-sizing: border-box;
    }

    .crm-v2026.sidebar-expanded .app-sidebar :is(.workspace-brand-label, .workspace-link-label, .workspace-navigation-label, .workspace-account-name, .workspace-logout-label, .workspace-sidebar-note) {
        position: static !important;
        display: block !important;
        width: auto !important;
        height: auto !important;
        min-width: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        overflow: hidden !important;
        clip: auto !important;
        opacity: 1 !important;
        transform: none !important;
        pointer-events: auto !important;
        text-overflow: ellipsis;
        white-space: nowrap !important;
    }

    .crm-v2026.sidebar-expanded .workspace-brand-label {
        color: #fff;
        font-size: .92rem;
        font-weight: 820;
    }

    .crm-v2026.sidebar-expanded .workspace-navigation-label {
        padding: .25rem .6rem .35rem !important;
        color: #d8f3f5;
        font-size: .68rem;
    }

    .crm-v2026.sidebar-expanded .app-sidebar .workspace-link,
    .crm-v2026.sidebar-expanded .app-sidebar:hover .workspace-link,
    .crm-v2026.sidebar-expanded .app-sidebar:focus-within .workspace-link {
        width: 100%;
        height: auto;
        min-height: 46px;
        grid-template-columns: 42px minmax(0, 1fr) auto;
        justify-items: stretch;
        padding: .25rem .55rem .25rem .15rem;
        overflow: hidden;
        color: #e9f7fa;
        text-align: left;
    }

    .crm-v2026.sidebar-expanded .app-sidebar .workspace-link:hover { background: rgba(255, 255, 255, .13); }
    .crm-v2026.sidebar-expanded .app-sidebar .workspace-link.active { color: #24556f; }
    .crm-v2026.sidebar-expanded .app-sidebar .workspace-link::after { display: none; }
    .crm-v2026.sidebar-expanded .workspace-link-icon { justify-self: center; }
    .crm-v2026.sidebar-expanded .workspace-link-label { align-self: center; font-size: .79rem; font-weight: 760; }
    .crm-v2026.sidebar-expanded .app-sidebar .workspace-link-badge {
        position: static;
        align-self: center;
        margin-left: .35rem;
        border-color: transparent;
    }

    .crm-v2026.sidebar-expanded .workspace-account {
        justify-content: flex-start !important;
        padding: 0 .45rem;
    }

    .crm-v2026.sidebar-expanded .workspace-account-name { color: #f3fbfc; font-size: .78rem; font-weight: 750; }
    .crm-v2026.sidebar-expanded .workspace-sidebar-actions {
        display: grid !important;
        grid-template-columns: 46px minmax(0, 1fr);
        align-items: center;
        gap: .45rem;
    }

    .crm-v2026.sidebar-expanded .workspace-sidebar-actions .notification-toggle { width: 46px !important; }
    .crm-v2026.sidebar-expanded .workspace-sidebar-actions .workspace-logout-form { width: 100%; min-width: 0; }
    .crm-v2026.sidebar-expanded .workspace-sidebar-actions .workspace-logout {
        display: grid;
        width: 100% !important;
        grid-template-columns: 24px minmax(0, 1fr);
        gap: .45rem;
        padding: 0 .65rem !important;
        color: #eefbfc;
    }

    .crm-v2026.sidebar-expanded .workspace-sidebar-note {
        padding: .1rem .55rem 0 !important;
        color: #cfeaec;
        font-size: .67rem;
    }
}

@media (prefers-reduced-motion: reduce) {
    body.crm-v2026.workspace-shell,
    .crm-v2026 .app-sidebar,
    .crm-v2026 .sidebar-resizer span { transition: none; }
}

/* Compact desktop density for information-rich CRM pages. */
@media (min-width: 900px) {
    body.crm-v2026 { font-size: 14.5px; }

    .crm-v2026.workspace-shell .container {
        max-width: 1780px;
        padding: 1.15rem 1.65rem 2.5rem;
    }

    .crm-v2026.workspace-shell h1 {
        margin-block: .1rem .75rem;
        font-size: clamp(1.75rem, 2.4vw, 2.35rem);
        line-height: 1.08;
    }

    .crm-v2026.workspace-shell h2 {
        margin-block: .15rem .7rem;
        font-size: clamp(1.08rem, 1.5vw, 1.35rem);
    }

    .crm-v2026.workspace-shell h3 { margin-block: .15rem .55rem; font-size: 1rem; }
    .crm-v2026 .grid { grid-template-columns: repeat(auto-fit, minmax(275px, 1fr)); gap: .85rem; }

    .crm-v2026 :is(.card, .settings-section, .finance-panel, .patient-profile-card, .consultation-card) {
        padding: 1rem;
        border-radius: 15px;
    }

    .crm-v2026 :is(button, .button) {
        min-height: 40px;
        padding: .5rem .8rem;
        border-radius: 11px;
        font-size: .9rem;
    }

    .crm-v2026 :is(input, select, textarea) {
        min-height: 40px;
        padding: .45rem .58rem;
        border-radius: 11px;
        font-size: .9rem;
    }

    .crm-v2026 textarea { min-height: 78px; }
    .crm-v2026 label { margin-top: .55rem; }
    .crm-v2026 th,
    .crm-v2026 td { padding: .48rem .56rem; font-size: .8rem; }
    .crm-v2026 th { font-size: .67rem; }

    .crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.calendar-toolbar, .calendar-actions, .calendar-controls, .finance-heading, .finance-period-controls, .settings-heading, .operational-heading, .lead-toolbar) {
        gap: .6rem;
    }

    .crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-toolbar { margin-bottom: .7rem; }
    .crm-v2026 .calendar-actions { margin-bottom: .5rem; }
    .crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.calendar-nav-button, .today-link, .view-switcher a, .view-switcher button, .calendar-mode-switcher button) {

        padding-inline: .58rem;

    }

    .crm-v2026 :is(.finance-kpis, .finance-overview-grid, .finance-analytics-grid, .finance-payment-analytics, .finance-pulse-kpis, .finance-money-paths, .patient-profile-grid) {
        gap: .7rem;
    }

    .crm-v2026 :is(.patient-registry-hero, .patient-profile-hero, .consultation-hero) {
        padding: 1.05rem 1.2rem;
        border-radius: 19px;
    }

    .crm-v2026 .settings-layout { gap: .8rem; }
    .crm-v2026 .settings-tabs { padding: .6rem; border-radius: 15px; }
    .crm-v2026 .settings-tab { min-height: 38px; padding-block: .45rem; }
    .crm-v2026 .settings-context-tabs { margin-bottom: .7rem; padding: .3rem; }
    .crm-v2026 .settings-section + .settings-section { margin-top: .7rem; }

    .crm-v2026 .lead-toolbar { margin-bottom: .7rem; }
    .crm-v2026 .lead-columns { gap: .7rem; }
    .crm-v2026 .lead-stage { border-radius: 17px; }
    .crm-v2026 .lead-stage-heading { padding: .7rem .8rem; }
    .crm-v2026 .lead-stage-cards { gap: .55rem; padding: .65rem; }
    .crm-v2026 .lead-card { padding: .72rem; border-radius: 12px; }

    .crm-v2026 dialog { border-radius: 19px; }
    .crm-v2026 .messages li { padding: .68rem .75rem; }
}

/* Low-height laptop density for 13-inch workspaces. */
@media (min-width: 900px) and (max-height: 900px) {
    body.crm-v2026 { font-size: 13px; }

    .crm-v2026.workspace-shell .container { padding: .62rem .95rem 1.4rem; }
    .crm-v2026.workspace-shell h1 {
        margin-block: 0 .35rem;
        font-size: clamp(1.42rem, 2vw, 1.82rem);
    }

    .crm-v2026.workspace-shell h2 { margin-block: 0 .35rem; font-size: 1.05rem; }
    .crm-v2026.workspace-shell h3 { margin-block: 0 .3rem; font-size: .9rem; }

    .crm-v2026 :is(.card, .settings-section, .finance-panel, .patient-profile-card, .consultation-card) {
        padding: .68rem;
        border-radius: 12px;
    }

    .crm-v2026 :is(button, .button) {
        min-height: 34px;
        padding: .36rem .62rem;
        border-radius: 9px;
        font-size: .82rem;
    }

    .crm-v2026 :is(input, select, textarea) {
        min-height: 34px;
        padding: .34rem .5rem;
        border-radius: 9px;
        font-size: .82rem;
    }

    .crm-v2026 textarea { min-height: 64px; }
    .crm-v2026 label { margin-top: .35rem; font-size: .78rem; }
    .crm-v2026 th,
    .crm-v2026 td { padding: .34rem .42rem; font-size: .74rem; }

    .crm-v2026 [data-clinic-calendar] .clinic-calendar-hero { margin-bottom: .55rem; }
    .crm-v2026 [data-clinic-calendar] .clinic-calendar-hero h1 { margin-bottom: .2rem; }
    .crm-v2026 [data-clinic-calendar] .clinic-calendar-hero p { font-size: .82rem; line-height: 1.3; }
    .crm-v2026 [data-clinic-calendar] > .card { margin-bottom: .5rem; }

    .crm-v2026 [data-clinic-calendar] .clinic-calendar-filters {
        grid-template-columns: minmax(160px, 1fr) minmax(160px, 1fr) minmax(125px, .7fr) auto;
        gap: .45rem;
    }

    .crm-v2026 [data-clinic-calendar] .clinic-calendar-filters select,
    .crm-v2026 [data-clinic-calendar] .clinic-calendar-filters .crm-date-trigger,
    .crm-v2026 [data-clinic-calendar] .clinic-availability-toggle {
        height: 34px;
        min-height: 34px;
    }

    .crm-v2026 [data-clinic-calendar] .clinic-calendar-filters select,
    .crm-v2026 [data-clinic-calendar] .clinic-calendar-filters input { margin-top: .18rem; }
    .crm-v2026 [data-clinic-calendar] .clinic-calendar-filters .crm-date-trigger { margin-top: .18rem !important; padding: .3rem .55rem !important; }
    .crm-v2026 [data-clinic-calendar] .clinic-availability-toggle { padding: .3rem .55rem; }

    .crm-v2026 [data-clinic-calendar] .clinic-calendar-command { gap: .35rem; }
    .crm-v2026 [data-clinic-calendar] :is(.clinic-calendar-switch, .clinic-range-switch, .clinic-date-navigation, .clinic-work-switch) { gap: .22rem; }
    .crm-v2026 [data-clinic-calendar] :is(.clinic-calendar-switch a, .clinic-range-switch a, .clinic-date-navigation a, .clinic-work-switch a) {
        min-height: 32px;
        padding: .3rem .5rem;
        border-radius: 7px;
        font-size: .76rem;
    }

    .crm-v2026 [data-clinic-calendar] .clinic-date-navigation .clinic-today { padding-inline: .7rem; }
    .crm-v2026 [data-clinic-calendar] .card > .hint { margin-block: .15rem .5rem; font-size: .78rem; }
    .crm-v2026 [data-clinic-calendar] .clinic-calendar-table-wrap { max-height: calc(100dvh - 250px); border-radius: 10px; }
    .crm-v2026 [data-clinic-calendar] .clinic-calendar-table { min-width: 720px; }
    .crm-v2026 [data-clinic-calendar] .clinic-calendar-table th,
    .crm-v2026 [data-clinic-calendar] .clinic-calendar-table td {
        width: 118px;
        height: 54px;
        padding: .3rem;
    }

    .crm-v2026 [data-clinic-calendar] .clinic-calendar-table th { height: 40px; }
    .crm-v2026 [data-clinic-calendar] .clinic-calendar-table .clinic-time-cell {
        width: 58px;
        min-width: 58px;
        max-width: 58px;
    }

    .crm-v2026 [data-clinic-calendar] .clinic-slot-card {
        min-height: 42px;
        max-height: 42px;
        padding: .34rem .42rem;
        border-radius: 7px;
        font-size: .76rem;
        line-height: 1.15;
    }

    .crm-v2026 [data-clinic-calendar] .clinic-slot-card small { margin-top: .12rem; font-size: .68rem; }
    .crm-v2026 [data-clinic-calendar] .clinic-nearest-slot { padding: .5rem; }
}

/* Planning grid state palette shared by clinic and doctor calendars. */
.crm-v2026 [data-clinic-planning] .clinic-planning-cell {

    border: 1px solid #d5e4eb;
    background: linear-gradient(180deg, #fbfdfe, #f1f7f9);
    box-shadow: none;
    color: #5c8198;
}
.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode :is(.calendar-cell, .week-calendar-cell).unavailable {

    color: #5c8198;
}

.crm-v2026 [data-clinic-planning] .clinic-planning-cell:hover {

    border-color: #6ec9cc;
    background: #e7f7f7;
    box-shadow: inset 0 0 0 1px rgba(44, 157, 165, .18);
    color: #197982;
}
.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode :is(.calendar-cell, .week-calendar-cell).unavailable:hover {

    color: #197982;
}

.crm-v2026 [data-clinic-planning] .clinic-planning-cell:disabled {

    border-color: #b9dfd1;
    background: linear-gradient(180deg, #edf9f4, #def2e9);
    box-shadow: inset 3px 0 #32a47c;
    color: #187456;
}
.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode :is(.calendar-cell, .week-calendar-cell).available {

    color: #187456;
}

.crm-v2026 [data-clinic-planning] .clinic-planning-cell.is-selected {

    border-color: #1593a2;
    background: linear-gradient(135deg, #1a9aa8, #267c9d);
    box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .34), 0 6px 14px rgba(33, 123, 151, .16);
    color: #fff;
}
.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode :is(.calendar-cell, .week-calendar-cell).selecting {

    color: #fff;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode :is(.calendar-cell, .week-calendar-cell).booked {

    color: #773448;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode :is(.calendar-cell, .week-calendar-cell).past {

    color: #8a98a3;
}

/* Readable date trigger across all CRM modules. */
.crm-v2026 button.crm-date-trigger {
    border: 1px solid var(--crm-date-control-border) !important;
    background: linear-gradient(180deg, var(--crm-date-surface), var(--crm-date-primary-soft)) !important;
    box-shadow: inset 0 1px 0 var(--crm-date-surface), 0 2px 7px var(--crm-date-shadow) !important;
    color: var(--crm-date-text) !important;
}

.crm-v2026 button.crm-date-trigger::after {
    color: var(--crm-date-primary-strong);
    opacity: 1;
}

.crm-v2026 button.crm-date-trigger:hover,
.crm-v2026 button.crm-date-trigger[aria-expanded="true"] {
    border-color: var(--crm-date-primary) !important;
    background: var(--crm-date-primary-soft) !important;
    box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--crm-date-primary) 13%, transparent), 0 4px 12px color-mix(in srgb, var(--crm-date-primary-strong) 9%, transparent) !important;
    color: var(--crm-date-primary-strong) !important;
}

.crm-v2026 button.crm-date-trigger:focus-visible {
    outline: 3px solid var(--crm-date-focus);
    outline-offset: 2px;
}

/* Unified doctor calendar table aligned with the clinic calendar. */

.crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-location-header,
.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.week-time-heading, .week-day-heading) {
    border-color: #d8e2eb;
    background: #edf3f8;
    color: #173b61;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-row {

    min-height: 56px;
    border-color: #e1e8ef;
    background: #fff;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-time,
.crm-v2026 :where([data-crm-component="doctor-calendar"]) .week-time {
    display: flex;
    align-items: flex-start;
    padding: .62rem .5rem;
    border-right: 1px solid #e1e8ef;
    background: #f7f9fb;

    font-weight: 800;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) .day-calendar.planning-mode .calendar-cell {
    width: calc(100% - .7rem);

    margin: .34rem;

}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) .week-grid {
    grid-template-columns: 58px repeat(7, minmax(94px, 1fr));
    min-width: 720px;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) .week-day-heading {
    min-height: 40px;
    padding: .42rem;
    border-left: 1px solid #d8e2eb;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) .week-time-heading { padding: .42rem .3rem; }
.crm-v2026 :where([data-crm-component="doctor-calendar"]) .week-calendar-cell {

    padding: .38rem .45rem;

}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) .week-calendar.planning-mode .week-calendar-cell {
    margin: .24rem;

}

@media (min-width: 900px) and (max-height: 900px) {
    .crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-row { min-height: 48px; }
    .crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-time,
.crm-v2026 :where([data-crm-component="doctor-calendar"]) .week-time { padding: .48rem .42rem; }

    .crm-v2026 :where([data-crm-component="doctor-calendar"]) .day-calendar.planning-mode .calendar-cell {  margin: .27rem; }

}

/* Workspace shell, home and notification refinements. */
.crm-v2026 .app-sidebar .workspace-link::after { content: attr(aria-label); }

.crm-v2026 .app-sidebar .workspace-link.active,
.crm-v2026.sidebar-expanded .app-sidebar .workspace-link.active {
    border-color: rgba(121, 232, 231, .52);
    background: linear-gradient(135deg, rgba(101, 220, 220, .24), rgba(255, 255, 255, .10));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .18), 0 8px 18px rgba(9, 43, 66, .14);
    color: #f5ffff;
}

.crm-v2026 .app-sidebar .workspace-link.active :is(.workspace-link-icon, .workspace-link-label) { color: inherit; }
.crm-v2026 .app-sidebar .workspace-link:hover,
.crm-v2026 .app-sidebar .workspace-link:focus-visible {
    border-color: rgba(121, 232, 231, .34);
    background: rgba(102, 216, 219, .14);
    color: #fff;
}

.crm-v2026 .workspace-sidebar-actions { gap: .45rem; }
.crm-v2026 .workspace-sidebar-actions .notification-toggle,
.crm-v2026 .workspace-sidebar-actions .workspace-logout {
    border: 1px solid rgba(181, 231, 235, .20);
    background: rgba(7, 49, 76, .18);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .06);
    color: #d8f1f4;
}

.crm-v2026 .workspace-sidebar-actions .notification-toggle:hover,
.crm-v2026 .workspace-sidebar-actions .notification-toggle[aria-expanded="true"] {
    border-color: rgba(105, 224, 225, .54);
    background: rgba(83, 211, 215, .20);
    color: #fff;
}

.crm-v2026 .workspace-sidebar-actions .workspace-logout:hover {
    border-color: rgba(255, 255, 255, .30);
    background: rgba(255, 255, 255, .11);
    color: #fff;
}

.crm-v2026.sidebar-expanded .workspace-sidebar-actions .workspace-logout {
    background: rgba(7, 49, 76, .22);
    box-shadow: none;
}

.crm-v2026 .notification-panel { padding: .9rem !important; }
.crm-v2026 .notification-panel-header { align-items: center; }
.crm-v2026 .notification-panel .notification-mark-all {
    width: 2.35rem;
    height: 2.35rem;
    min-height: 2.35rem;
    border: 1px solid #a9d5dc !important;
    border-radius: 11px;
    background: #e9f7f8 !important;
    box-shadow: none !important;
    color: #176d79 !important;
}

.crm-v2026 .notification-panel .notification-mark-all:hover {
    border-color: #62bbc4 !important;
    background: #d9f1f2 !important;
    color: #0d5965 !important;
    transform: none;
}

.crm-v2026 .notification-panel .notification-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .3rem;
    margin: .7rem 0 .55rem;
    padding: .28rem;
    border: 0 !important;
    border-radius: 11px;
    background: #edf3f6;
}

.crm-v2026 .notification-panel .notification-tabs button {
    min-height: 34px;
    margin: 0;
    padding: .38rem .55rem;
    border: 1px solid transparent;
    border-radius: 8px;
    background: transparent !important;
    box-shadow: none !important;
    color: #63798b !important;
    font-size: .78rem;
}

.crm-v2026 .notification-panel .notification-tabs button:hover {
    background: rgba(255, 255, 255, .68) !important;
    color: #27536f !important;
    transform: none;
}

.crm-v2026 .notification-panel .notification-tabs button.active {
    border-color: #b9dce1;
    background: #fff !important;
    box-shadow: 0 3px 10px rgba(35, 91, 116, .10) !important;
    color: #126775 !important;
}

/* Semantic calendar slot hover without generic dark button fill. */
.crm-v2026 button.clinic-slot-card.available[data-bookable="true"]:hover,
.crm-v2026 button.clinic-slot-card.available[data-bookable="true"]:focus-visible {
    border-color: #55bd94 !important;
    background: linear-gradient(180deg, #e7f8ef, #d5f1e3) !important;
    box-shadow: inset 0 0 0 1px #55bd94, 0 7px 16px rgba(31, 128, 91, .14) !important;
    color: #086c48 !important;
    transform: translateY(-1px);
}

.crm-v2026 button.clinic-slot-card.available.recommended-slot[data-bookable="true"]:hover,
.crm-v2026 button.clinic-slot-card.available.recommended-slot[data-bookable="true"]:focus-visible {
    border-color: #e1a642 !important;
    background: linear-gradient(180deg, #fff7e7, #ffedca) !important;
    box-shadow: inset 0 0 0 2px #e7aa45, 0 7px 16px rgba(163, 105, 20, .13) !important;
    color: #7b4d08 !important;
}

.crm-v2026 button.clinic-slot-card.booked:hover,
.crm-v2026 button.clinic-slot-card.booked:focus-visible {
    border-color: #d89aaa !important;
    background: #f8e3e9 !important;
    box-shadow: inset 0 0 0 1px #d89aaa, 0 7px 16px rgba(128, 47, 70, .11) !important;
    color: #6b2639 !important;
    transform: translateY(-1px);
}

/* Focused patient search toolbar. */

/* Doctor planning cells aligned with the clinic grid. */
.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode
    :is(button.calendar-cell, button.week-calendar-cell).unavailable {
    border: 1px solid #d5e4eb !important;
    background: linear-gradient(180deg, #fbfdfe, #f1f7f9) !important;
    box-shadow: none !important;
    color: #5c8198 !important;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode
    :is(button.calendar-cell, button.week-calendar-cell).unavailable:empty::after {
    content: "+";
    display: grid;
    width: 1.35rem;
    height: 1.35rem;
    place-items: center;
    margin: auto;

    color: #42869a;
    font-size: .92rem;
    font-weight: 800;
    line-height: 1;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode
    :is(button.calendar-cell, button.week-calendar-cell).unavailable:hover,
.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode
    :is(button.calendar-cell, button.week-calendar-cell).unavailable:focus-visible {
    border-color: #6ec9cc !important;
    background: #e7f7f7 !important;
    box-shadow: inset 0 0 0 1px rgba(44, 157, 165, .18), 0 5px 12px rgba(32, 121, 139, .08) !important;
    color: #197982 !important;
    transform: none;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode
    :is(button.calendar-cell, button.week-calendar-cell).unavailable:hover::after,
.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode
    :is(button.calendar-cell, button.week-calendar-cell).unavailable:focus-visible::after {

    color: #126d78;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode
    :is(button.calendar-cell, button.week-calendar-cell).available {
    border-color: #b9dfd1 !important;
    background: linear-gradient(180deg, #edf9f4, #def2e9) !important;
    box-shadow: inset 3px 0 #32a47c !important;
    color: #187456 !important;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode
    :is(button.calendar-cell, button.week-calendar-cell).booked {
    border-color: #ebc7d1 !important;
    background: #f9e9ed !important;
    box-shadow: none !important;
    color: #773448 !important;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode
    :is(button.calendar-cell, button.week-calendar-cell).selecting {
    border-color: #1593a2 !important;
    background: linear-gradient(135deg, #1a9aa8, #267c9d) !important;
    box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .34), 0 6px 14px rgba(33, 123, 151, .16) !important;
    color: #fff !important;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode
    :is(button.calendar-cell, button.week-calendar-cell):is(.past, .missed) {
    border-color: #e1e7eb !important;
    background: #f3f5f6 !important;
    box-shadow: none !important;
    color: #8a98a3 !important;
}

/* TASK-263: inline patient editors replace their value without creating a second grid row. */

/* TASK-265: Calm Clinical — one readable, responsive CRM system layer. */
body.crm-v2026 {
    /* TASK-369: canonical Figma-informed accessible presentation roles. */
    --crm-color-canvas: #FCFCFC;
    --crm-color-surface: #FFFFFF;
    --crm-color-surface-subtle: #F7F8FA;
    --crm-color-primary-subtle: #F0F4FF;
    --crm-color-primary-line: #E6EDFE;
    --crm-color-border: #EBEBEB;
    --crm-color-control-border: #D6D6D6;
    --crm-color-text: #333333;
    --crm-color-text-secondary: #666666;
    --crm-color-text-muted: #667085;
    --crm-color-primary: #3E63DD;
    --crm-color-primary-strong: #3451B2;
    --crm-color-focus: var(--crm-color-primary);
    --crm-color-success: #18794E;
    --crm-color-success-soft: #E9F9EE;
    --crm-color-warning: #8D5F00;
    --crm-color-warning-soft: #FFF8E6;
    --crm-color-danger: #B4233B;
    --crm-color-danger-soft: #FFF1F3;
    --crm-color-info: var(--crm-color-primary-strong);
    --crm-color-info-soft: var(--crm-color-primary-subtle);
    --neu-navy-950: var(--crm-color-primary-strong);
    --neu-navy-900: var(--crm-color-primary-strong);
    --neu-navy-850: var(--crm-color-primary-strong);
    --neu-navy-800: var(--crm-color-primary);
    --neu-cyan: var(--crm-color-primary);
    --neu-cyan-strong: var(--crm-color-focus);
    --neu-violet: var(--crm-color-primary-strong);
    --neu-mint: var(--crm-color-success);
    --neu-rose: var(--crm-color-danger);
    --neu-amber: var(--crm-color-warning);
    --neu-ink: var(--crm-color-text);
    --neu-muted: var(--crm-color-text-muted);
    --neu-canvas: var(--crm-color-canvas);
    --neu-surface: var(--crm-color-surface);
    --neu-surface-solid: var(--crm-color-surface);
    --neu-border: var(--crm-color-border);
    --neu-border-strong: var(--crm-color-control-border);
    --neu-shadow-sm: 0 4px 14px color-mix(in srgb, var(--crm-color-primary-strong) 5.5%, transparent);
    --neu-shadow: 0 10px 28px color-mix(in srgb, var(--crm-color-primary-strong) 7.5%, transparent);
    --neu-shadow-float: 0 24px 64px color-mix(in srgb, var(--crm-color-primary-strong) 20%, transparent);
    --neu-radius-sm: 10px;
    --neu-radius: 14px;
    --neu-radius-lg: 18px;
    --crm-ink: var(--crm-color-text);
    --crm-primary: var(--crm-color-primary);
    --crm-primary-strong: var(--crm-color-primary-strong);
    --crm-secondary: var(--crm-color-text-secondary);
    --crm-accent: var(--crm-color-primary);
    --crm-accent-soft: var(--crm-color-primary-subtle);
    --crm-surface: var(--crm-color-surface);
    --crm-surface-muted: var(--crm-color-surface-subtle);
    --crm-border: var(--crm-color-border);
    --crm-text-muted: var(--crm-color-text-muted);
    --crm-radius-sm: 10px;
    --crm-radius: 14px;
    --crm-shadow: var(--neu-shadow-sm);
    --crm-shadow-raised: var(--neu-shadow-float);
    background: var(--neu-canvas);
    color: var(--neu-ink);
}

body.crm-v2026.workspace-shell {
    padding-left: calc(var(--neu-sidebar-width) + 28px);
    background: var(--crm-color-canvas);
    background-attachment: initial;
}

body.crm-v2026.workspace-shell::before { display: none; }

.crm-v2026.workspace-shell .container {
    max-width: 1540px;
    padding: 1.25rem 1.55rem 3rem;
}

.crm-v2026 #crm-main > * { animation-duration: .18s; }

.crm-v2026.workspace-shell h1 {
    color: var(--crm-color-text);
    font-size: clamp(1.55rem, 2.2vw, 2.2rem);
    font-weight: 780;
    letter-spacing: -.035em;
    line-height: 1.12;
}

.crm-v2026.workspace-shell h2 { color: var(--crm-color-text); letter-spacing: -.02em; }
.crm-v2026 :is(.hint, .muted, small) { color: var(--neu-muted); }

.crm-v2026 :is(.card, .settings-section, .finance-panel, .appointment-card, .patient-profile-card, .consultation-card) {
    border: 1px solid var(--neu-border);
    border-radius: var(--neu-radius);
    background: var(--crm-color-surface);
    box-shadow: var(--neu-shadow-sm);
    backdrop-filter: none;
}

.crm-v2026 :is(.card, .settings-section, .finance-panel, .appointment-card, .patient-profile-card, .consultation-card):is(:hover, :focus-within) {
    border-color: var(--crm-color-control-border);
}

/* Controls and semantic actions. */
.crm-v2026 :is(input, select, textarea) {
    min-height: 42px;
    border: 1px solid var(--neu-border-strong);
    border-radius: 10px;
    background: var(--crm-color-surface);
    color: var(--neu-ink);
    box-shadow: none;
}

.crm-v2026 :is(input, select, textarea):hover { border-color: var(--crm-color-primary); }
.crm-v2026 :is(input, select, textarea):focus {
    border-color: var(--crm-color-focus);
    background: var(--crm-color-surface);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--crm-color-focus) 15%, transparent);
    outline: 0;
}

.crm-v2026 :is(input, select, textarea)::placeholder { color: var(--crm-color-text-muted); opacity: 1; }
.crm-v2026 :is(input[type="checkbox"], input[type="radio"]) { min-height: 0; accent-color: var(--crm-primary); }

.crm-v2026 :is(button, .button) {
    min-height: 40px;
    border: 1px solid var(--crm-color-primary);
    border-radius: 10px;
    background: var(--crm-color-primary);
    box-shadow: none;
    color: var(--crm-color-surface);
    font-weight: 760;
    transition: border-color .15s ease, background .15s ease, color .15s ease, box-shadow .15s ease, transform .15s ease;
}

.crm-v2026 :is(button, .button):not(.secondary):not(.danger):not(.danger-outline):hover {
    border-color: var(--crm-color-primary-strong);
    background: var(--crm-color-primary-strong);
    box-shadow: 0 5px 14px color-mix(in srgb, var(--crm-color-primary-strong) 16%, transparent);
    transform: translateY(-1px);
}

.crm-v2026 :is(button.secondary, .button.secondary, button.ghost, .button.ghost) {
    border-color: var(--neu-border-strong);
    background: var(--crm-color-surface);
    box-shadow: none;
    color: var(--crm-color-primary-strong);
}

.crm-v2026 :is(button.secondary, .button.secondary, button.ghost, .button.ghost):hover {
    border-color: var(--crm-color-primary);
    background: var(--crm-color-primary-subtle);
    color: var(--crm-color-primary-strong);
    transform: none;
}

.crm-v2026 :is(button.danger, .button.danger) {
    border-color: var(--crm-color-danger);
    background: var(--crm-color-danger);
    color: var(--crm-color-surface);
}

.crm-v2026 :is(button.danger-outline, .button.danger-outline, .profile-photo-remove) {
    border-color: var(--crm-color-danger);
    background: var(--crm-color-danger-soft);
    color: var(--crm-color-danger);
}

.crm-v2026 :is(button, .button, a, input, select, textarea, summary):focus-visible {
    outline: 3px solid var(--crm-color-focus);
    outline-offset: 2px;
}

.crm-v2026 :is(.dialog-close, .clinical-dialog-close, .notification-panel-close, .mobile-navigation-close, button[aria-label^="Закрити"]) {
    display: inline-grid;
    width: 40px;
    min-width: 40px;
    height: 40px;
    min-height: 40px;
    place-items: center;
    padding: 0;
    border: 1px solid var(--neu-border);
    border-radius: 10px;
    background: var(--crm-color-surface);
    box-shadow: none;
    color: var(--crm-color-text-secondary);
}

.crm-v2026 :is(.dialog-close, .clinical-dialog-close, .notification-panel-close, .mobile-navigation-close, button[aria-label^="Закрити"]):hover {
    border-color: var(--crm-color-primary);
    background: var(--crm-color-primary-subtle);
    color: var(--crm-color-primary-strong);
    transform: none;
}

/* White data surfaces are the shared calendar and table language. */
.crm-v2026 table {
    border: 1px solid var(--neu-border);
    border-radius: 12px;
    background: var(--crm-color-surface);
    box-shadow: none;
}

.crm-v2026 th {
    border-bottom-color: var(--neu-border);
    background: var(--crm-color-surface-subtle);
    color: var(--crm-color-text-secondary);
    font-size: .72rem;
    letter-spacing: .045em;
}

.crm-v2026 td { border-bottom-color: var(--crm-color-border); }
.crm-v2026 tbody tr:hover { background: var(--crm-color-surface-subtle); }

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar, .calendar-more-actions, .calendar-filter-panel, .calendar-views-panel) {

    box-shadow: none;
    backdrop-filter: none;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(button.calendar-cell, button.week-calendar-cell) {
    border: 0;
    border-left: 1px solid #d9e4ea;
    border-bottom: 1px solid #d9e4ea;

    transform: none;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-controls :is(.calendar-nav-button, .today-link, .view-switcher button, .calendar-mode-switcher button) {

    box-shadow: none;

}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-controls :is(.calendar-nav-button, .today-link, .view-switcher button, .calendar-mode-switcher button):hover {

    transform: none;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(button.calendar-cell, button.week-calendar-cell):hover {

    transform: none;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode :is(button.calendar-cell, button.week-calendar-cell).unavailable {
    border: 1px solid #d9e4ea !important;
    background: #f8fafb !important;
    box-shadow: none !important;
    color: #668093 !important;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode :is(button.calendar-cell, button.week-calendar-cell).unavailable:hover,
.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode :is(button.calendar-cell, button.week-calendar-cell).unavailable:focus-visible {
    border-color: #9bc7d8 !important;
    background: #edf7fa !important;
    box-shadow: inset 0 0 0 1px rgba(45, 120, 173, .1) !important;
    color: #276d8d !important;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode :is(button.calendar-cell, button.week-calendar-cell).available,
.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(button.calendar-cell, button.week-calendar-cell).available {
    border-color: #acd9c7 !important;
    background: #e7f6ef !important;
    box-shadow: inset 3px 0 #3d9872 !important;
    color: #176b4d !important;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode :is(button.calendar-cell, button.week-calendar-cell).booked,
.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(button.calendar-cell, button.week-calendar-cell).booked {
    border-color: #e6c3ca !important;
    background: #f9eaed !important;
    box-shadow: inset 3px 0 #b94c60 !important;
    color: #713243 !important;
}

.crm-v2026 :where([data-crm-component="doctor-calendar"]) :is(.day-calendar, .week-calendar).planning-mode :is(button.calendar-cell, button.week-calendar-cell).selecting {
    border-color: #2368a2 !important;
    background: #2368a2 !important;
    box-shadow: inset 0 0 0 2px rgba(255,255,255,.38) !important;
    color: #fff !important;
}

.crm-v2026 button.clinic-slot-card.available[data-bookable="true"]:hover,
.crm-v2026 button.clinic-slot-card.available[data-bookable="true"]:focus-visible {
    border-color: #66b995 !important;
    background: #ddf3e8 !important;
    box-shadow: inset 0 0 0 1px #66b995, 0 4px 12px rgba(31,128,91,.09) !important;
    color: #116746 !important;
}

/* Keep the liked teal navigation, with legible states and separated utilities. */
.crm-v2026 .app-sidebar {
    border-color: rgba(255,255,255,.22);
    background: linear-gradient(180deg, #24758a 0%, #1b5c78 46%, #174765 100%);
    box-shadow: 0 18px 45px rgba(18, 56, 78, .2), inset 0 1px 0 rgba(255,255,255,.15);
}

.crm-v2026 .app-sidebar .workspace-link { color: #c5dce7; }
.crm-v2026 .app-sidebar .workspace-link:hover,
.crm-v2026 .app-sidebar .workspace-link:focus-visible {
    border-color: rgba(255,255,255,.2);
    background: rgba(255,255,255,.11);
    color: #fff;
}

.crm-v2026 .app-sidebar .workspace-link.active,
.crm-v2026.sidebar-expanded .app-sidebar .workspace-link.active {
    border-color: #a9d7e2;
    background: #edf8fa;
    box-shadow: 0 7px 18px rgba(8, 42, 62, .15);
    color: #184b67;
}

.crm-v2026 .app-sidebar .workspace-link.active::before { background: #a9eef1; box-shadow: none; }
.crm-v2026 .workspace-sidebar-actions .notification-toggle {
    border-color: rgba(255,255,255,.18);
    background: rgba(255,255,255,.08);
    color: #d9edf3;
}

.crm-v2026 .workspace-sidebar-actions .notification-toggle:hover,
.crm-v2026 .workspace-sidebar-actions .notification-toggle[aria-expanded="true"] {
    border-color: rgba(255,255,255,.32);
    background: rgba(255,255,255,.15);
    color: #fff;
}

.crm-v2026 .workspace-sidebar-actions .workspace-logout,
.crm-v2026.sidebar-expanded .workspace-sidebar-actions .workspace-logout {
    border-color: rgba(255, 190, 199, .34);
    background: rgba(143, 42, 57, .22);
    color: #ffe8eb;
}

.crm-v2026 .workspace-sidebar-actions .workspace-logout:hover {
    border-color: rgba(255, 214, 219, .48);
    background: rgba(157, 43, 60, .36);
    color: #fff;
}

/* Notifications: clear header actions, neutral tabs and readable rows. */
.crm-v2026 .notification-panel {
    padding: .85rem !important;
    border: 1px solid var(--neu-border) !important;
    border-radius: 16px !important;
    background: #fff !important;
    box-shadow: var(--neu-shadow-float) !important;
    color: var(--neu-ink) !important;
    backdrop-filter: none;
}

.crm-v2026 .notification-panel-header { min-height: 44px; padding: 0 0 .75rem; border-bottom: 1px solid var(--neu-border) !important; }
.crm-v2026 .notification-panel h2 { margin: 0; color: #173f5f !important; font-size: 1.08rem !important; }
.crm-v2026 .notification-panel-actions { display: flex; align-items: center; gap: .4rem; }
.crm-v2026 .notification-panel .notification-mark-all {
    display: inline-flex;
    width: auto;
    height: 40px;
    min-height: 40px;
    gap: .4rem;
    padding: 0 .65rem;
    border: 1px solid #bcd4df !important;
    border-radius: 10px;
    background: #eef6f9 !important;
    color: #285f7a !important;
    font-size: .76rem;
}

.crm-v2026 .notification-panel .notification-mark-all:hover { border-color: #8db7c9 !important; background: #e1f0f5 !important; }
.crm-v2026 .notification-panel-close { width: 42px !important; min-width: 42px; height: 42px !important; min-height: 42px; }
.crm-v2026 .notification-panel .notification-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .25rem;
    margin: .65rem 0 .45rem;
    padding: .25rem;
    border: 0 !important;
    border-radius: 10px;
    background: #eef3f6;
}

.crm-v2026 .notification-panel .notification-tabs button {
    min-height: 36px;
    border: 0;
    border-radius: 8px;
    background: transparent !important;
    box-shadow: none !important;
    color: #61778a !important;
}

.crm-v2026 .notification-panel .notification-tabs button.active {
    border: 0;
    background: #fff !important;
    box-shadow: 0 2px 7px rgba(24,55,78,.08) !important;
    color: #1d597c !important;
}

.crm-v2026 .notification-list {
    align-content: start;
    gap: .45rem;
    padding: .35rem 0 0;
}
.crm-v2026 .notification-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    justify-items: start;
    gap: .18rem;
    width: 100%;
    box-sizing: border-box;
    margin: 0;
    padding: .72rem .8rem !important;
    overflow: hidden;
    border-color: var(--neu-border) !important;
    border-radius: 10px !important;
    background: #fff !important;
    color: var(--neu-ink) !important;
    text-align: left;
}
.crm-v2026 .notification-item:hover { border-color: #a9c7d7 !important; background: #f5fafc !important; }
.crm-v2026 .notification-item.unread {
    padding-left: .8rem !important;
    border-color: #b2cfe0 !important;
    background: #edf6fb !important;
    box-shadow: inset 3px 0 #2f80ed !important;
}
.crm-v2026 .notification-item.unread::before { content: none; }
.crm-v2026 .notification-item strong,
.crm-v2026 .notification-item span,
.crm-v2026 .notification-item time {
    width: 100%;
    min-width: 0;
    margin: 0;
    overflow-wrap: anywhere;
}
.crm-v2026 .notification-item strong { color: #244d69 !important; line-height: 1.3; }
.crm-v2026 .notification-item span,
.crm-v2026 .notification-item time {
    line-height: 1.38;
}
.crm-v2026 .notification-item time {
    margin-top: .08rem;
    font-size: .76rem;
    font-variant-numeric: tabular-nums;
}
.crm-v2026 .notification-empty,
.crm-v2026 .notification-panel-state { color: #61778a !important; }

/* Settings and workspace navigation use native mobile selectors instead of tiny overflowing tabs. */
.settings-mobile-select,
.ws-mobile-select { display: none; }

.crm-v2026 .settings-tabs {
    border: 1px solid rgba(255,255,255,.14);
    border-radius: 14px;
    background: linear-gradient(180deg, #173f5f, #112f49);
    box-shadow: 0 10px 28px rgba(16,43,67,.12);
    backdrop-filter: none;
}

.crm-v2026 .settings-tab { color: #dbeaf2; }
.crm-v2026 .settings-tab:hover { background: rgba(255,255,255,.1); color: #fff; }
.crm-v2026 .settings-tab.active { background: #edf7fa; color: #174963; box-shadow: none; }
.crm-v2026 .settings-tab-group { color: #9ebfce; background: transparent; }

.crm-v2026 .ws-center { gap: 1rem; }
.crm-v2026 .ws-center .ws-hero {
    padding: 1.45rem 1.6rem;
    border: 1px solid #2d6787;
    border-radius: 16px;
    background: #1b5072;
    box-shadow: 0 9px 24px rgba(24,68,94,.12);
}

.crm-v2026 .ws-center .ws-hero::after { display: none; }
.crm-v2026 .ws-center .ws-hero h1 { font-size: clamp(1.55rem, 2.5vw, 2.35rem); }
.crm-v2026 .ws-center .ws-hero :is(p, small) { color: #e7f2f6; }
.crm-v2026 .ws-center .ws-hero-compact {
    align-items: center;
    padding: 1rem 1.2rem;
    border-color: var(--neu-border);
    background: #fff;
    box-shadow: var(--neu-shadow-sm);
    color: var(--neu-ink);
}

.crm-v2026 .ws-center .ws-hero-compact .ws-eyebrow { margin-bottom: .25rem; color: #47708b; }
.crm-v2026 .ws-center .ws-hero-compact h1 { color: #173f5f; font-size: 1.45rem; }
.crm-v2026 .ws-center .ws-tabs { border-color: var(--neu-border); background: #fff; box-shadow: var(--neu-shadow-sm); }
.crm-v2026 .ws-center .ws-tabs a { color: #3e5f75; }
.crm-v2026 .ws-center .ws-tabs a:hover { background: #eef5f8; }
.crm-v2026 .ws-center .ws-tabs a.active { background: #2368a2; color: #fff; box-shadow: none; }
.crm-v2026 .ws-center .ws-card { border-color: var(--neu-border); border-radius: 14px; background: #fff; box-shadow: var(--neu-shadow-sm); }

/* Dense data regions must never dictate the page width. */

/* Compact laptop density without browser zoom. */
@media (min-width: 900px) and (max-height: 900px) {
    .crm-v2026.workspace-shell .container { padding: .85rem 1.15rem 2rem; }
    .crm-v2026.workspace-shell h1 { font-size: clamp(1.4rem, 1.9vw, 1.9rem); }
    .crm-v2026 :is(.card, .settings-section, .finance-panel) { padding: .9rem 1rem; }
    .crm-v2026 :is(input, select, textarea) { min-height: 40px; }
    .crm-v2026 :is(button, .button) { min-height: 38px; }
    .crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-toolbar { margin-bottom: .65rem; }
}

@media (max-width: 899px) {
    body.crm-v2026.workspace-shell { padding: 0; background: #f4f7fa; }
    .crm-v2026.workspace-shell .container { padding: .85rem .8rem calc(78px + env(safe-area-inset-bottom)); }
    .crm-v2026.workspace-shell h1 { font-size: 1.5rem; }
    .crm-v2026.workspace-shell h2 { font-size: 1.2rem; }
    .crm-v2026 .workspace-utility-bar {
        min-height: 58px;
        padding: .55rem .75rem;
        border-bottom: 1px solid var(--neu-border);
        background: rgba(255,255,255,.96);
        box-shadow: 0 4px 14px rgba(24,55,78,.07);
        backdrop-filter: blur(12px);
    }

    .crm-v2026 .mobile-brand { color: #173f5f; font-size: .9rem; }
    .crm-v2026 .mobile-utility-actions :is(.notification-toggle, .mobile-account-toggle) {
        width: 42px;
        height: 42px;
        min-height: 42px;
        border: 1px solid var(--neu-border);
        border-radius: 11px;
        background: #f7fafb;
        box-shadow: none;
        color: #315f7e;
    }

    .crm-v2026 .mobile-account-popover {
        right: .75rem;
        width: min(320px, calc(100vw - 1.5rem));
        border: 1px solid var(--neu-border);
        border-radius: 14px;
        background: #fff;
        box-shadow: var(--neu-shadow-float);
    }

    .crm-v2026 .mobile-account-link { min-height: 44px; border-radius: 9px; color: #294f69; }
    .crm-v2026 .mobile-account-link:hover { background: #eef5f8; }
    .crm-v2026 .mobile-account-popover .workspace-logout {
        width: 100%;
        min-height: 44px;
        justify-content: flex-start;
        border-color: #e4bbc2;
        background: #fff3f5;
        color: #9d3546;
    }

    .crm-v2026 .mobile-bottom-navigation {
        grid-template-columns: repeat(5, minmax(0, 1fr));
        min-height: calc(66px + env(safe-area-inset-bottom));
        padding: .35rem .35rem calc(.35rem + env(safe-area-inset-bottom));
        border-top: 1px solid #cfdee6;
        background: rgba(255,255,255,.98);
        box-shadow: 0 -8px 24px rgba(24,55,78,.09);
        backdrop-filter: blur(14px);
    }

    .crm-v2026 .mobile-bottom-link {
        min-width: 0;
        min-height: 54px;
        gap: .18rem;
        padding: .35rem .2rem;
        border: 0;
        border-radius: 11px;
        background: transparent;
        box-shadow: none;
        color: #63798a;
    }

    .crm-v2026 .mobile-bottom-link:hover { background: #f0f6f8; color: #315f7e; transform: none; }
    .crm-v2026 .mobile-bottom-link.active { background: #e8f3f8; color: #1d6285; }
    .crm-v2026 .mobile-bottom-link.active::before { display: none; }
    .crm-v2026 .mobile-bottom-icon { width: 22px; height: 22px; }
    .crm-v2026 .mobile-bottom-label { max-width: 100%; overflow: hidden; color: inherit; font-size: .69rem; font-weight: 760; line-height: 1.12; text-overflow: ellipsis; white-space: nowrap; }
    .crm-v2026 .mobile-navigation-toggle.is-open > .mobile-bottom-link { background: #dceef5; color: #174f72; }
    .crm-v2026 .mobile-navigation-toggle.is-open > .mobile-bottom-link::before { display: none; }
    .crm-v2026 .mobile-navigation-backdrop { position: fixed; z-index: 85; inset: 0; display: block; width: 100%; height: 100%; border: 0; border-radius: 0; background: rgba(16,43,67,.36); box-shadow: none; }
    .crm-v2026 .mobile-navigation-backdrop:hover { background: rgba(16,43,67,.42); transform: none; }
    .crm-v2026 .mobile-navigation {
        position: fixed;
        z-index: 90;
        inset: auto .5rem calc(66px + env(safe-area-inset-bottom)) .5rem;
        width: auto;
        max-height: min(70dvh, 620px);
        padding: .75rem;
        overflow-y: auto;
        border: 1px solid var(--neu-border);
        border-radius: 18px 18px 12px 12px;
        background: #fff;
        box-shadow: var(--neu-shadow-float);
        transform: none;
        transition: none;
    }

    .crm-v2026 .mobile-navigation-header { display: flex; min-height: 44px; align-items: center; justify-content: space-between; gap: .75rem; padding: 0 0 .65rem; border-bottom: 1px solid var(--neu-border); color: #173f5f; }
    .crm-v2026 .mobile-navigation-header strong { font-size: 1rem; }
    .crm-v2026 .mobile-navigation-close { width: 42px !important; min-width: 42px; height: 42px !important; min-height: 42px; }
    .crm-v2026 .mobile-navigation .workspace-navigation { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .4rem; padding-top: .65rem; }
    .crm-v2026 .mobile-navigation .workspace-navigation-label { grid-column: 1 / -1; margin: .45rem .25rem .1rem; color: #738797; font-size: .67rem; }
    .crm-v2026 .mobile-navigation .workspace-link {
        display: grid;
        grid-template-columns: 38px minmax(0, 1fr) auto;
        min-height: 50px;
        padding: .4rem .5rem;
        border: 1px solid #e0e8ed;
        border-radius: 11px;
        background: #f9fbfc;
        color: #31556e;
    }

    .crm-v2026 .mobile-navigation .workspace-link:hover { border-color: #bdd3df; background: #eef6f9; color: #184f70; }
    .crm-v2026 .mobile-navigation .workspace-link.active { border-color: #9cc6d8; background: #e6f3f8; color: #174f70; }
    .crm-v2026 .mobile-navigation .workspace-link-label { display: block; overflow: hidden; opacity: 1; transform: none; color: inherit; font-size: .79rem; text-overflow: ellipsis; white-space: nowrap; }

    .settings-mobile-select,
    .ws-mobile-select { display: grid; gap: .35rem; color: #405f74; font-size: .76rem; font-weight: 800; }
    .settings-mobile-select select,
    .ws-mobile-select select { width: 100%; margin: 0; background: #fff; color: #173f5f; font-size: .9rem; }
    .crm-v2026 .settings-layout { grid-template-columns: 1fr; gap: .75rem; }
    .crm-v2026 .settings-tabs,
    .crm-v2026 .ws-center .ws-tabs { display: none; }
    .crm-v2026 .ws-center .ws-hero { padding: 1rem; border-radius: 14px; }
    .crm-v2026 .ws-center .ws-hero-compact { padding: .8rem .9rem; }
    .crm-v2026 .ws-center .ws-hero-compact h1 { font-size: 1.25rem; }
    .crm-v2026 .ws-center .ws-card { padding: .9rem; }

    /* Payments and the operational queue become record cards on touch screens. */
    .crm-v2026 :is(.payment-table-wrap, .operational-table-wrap) { overflow: visible; }
    .crm-v2026 :is(.payment-table, .operational-table) { display: block; width: 100%; min-width: 0; border: 0; background: transparent; }
    .crm-v2026 :is(.payment-table, .operational-table) thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
    .crm-v2026 :is(.payment-table, .operational-table) tbody { display: grid; gap: .7rem; }
    .crm-v2026 :is(.payment-table, .operational-table) tbody tr {
        display: grid;
        gap: 0;
        padding: .25rem .8rem;
        overflow: hidden;
        border: 1px solid var(--neu-border);
        border-radius: 13px;
        background: #fff;
        box-shadow: var(--neu-shadow-sm);
    }
    .crm-v2026 :is(.payment-table, .operational-table) tbody tr:hover,
    .crm-v2026 :is(.payment-table, .operational-table) tbody tr:focus { border-color: #a8c8d8; background: #f8fbfc !important; box-shadow: 0 5px 16px rgba(24,55,78,.08) !important; }
    .crm-v2026 :is(.payment-table, .operational-table) tbody td {
        display: grid;
        grid-template-columns: minmax(92px, .42fr) minmax(0, 1fr);
        gap: .7rem;
        align-items: start;
        width: auto !important;
        min-width: 0 !important;
        max-width: none !important;
        padding: .62rem 0;
        border: 0;
        border-bottom: 1px solid #e7edf1;
        white-space: normal !important;
        overflow-wrap: anywhere;
    }
    .crm-v2026 :is(.payment-table, .operational-table) tbody td:last-child { border-bottom: 0; }
    .crm-v2026 :is(.payment-table, .operational-table) tbody td::before { color: #718697; font-size: .68rem; font-weight: 850; letter-spacing: .035em; line-height: 1.4; text-transform: uppercase; }
    .crm-v2026 :is(.payment-table, .operational-table) tbody .status { width: fit-content; max-width: 100%; overflow-wrap: normal; word-break: normal; white-space: nowrap; }
    .crm-v2026 .operational-table:not(.financial-queue-table) td:nth-child(1)::before { content: "Час прийому"; }
    .crm-v2026 .operational-table:not(.financial-queue-table) td:nth-child(2)::before { content: "Пацієнт"; }
    .crm-v2026 .operational-table:not(.financial-queue-table) td:nth-child(3)::before { content: "Лікар"; }
    .crm-v2026 .operational-table:not(.financial-queue-table) td:nth-child(4)::before { content: "Консультація"; }
    .crm-v2026 .operational-table:not(.financial-queue-table) td:nth-child(5)::before { content: "Контекст"; }
    .crm-v2026 .operational-table:not(.financial-queue-table) td:nth-child(6)::before { content: "Дія"; }
    .crm-v2026 .financial-queue-table td:nth-child(1)::before { content: "Пацієнт і прийом"; }
    .crm-v2026 .financial-queue-table td:nth-child(2)::before { content: "Лікар"; }
    .crm-v2026 .financial-queue-table td:nth-child(3)::before { content: "Нараховано"; }
    .crm-v2026 .financial-queue-table td:nth-child(4)::before { content: "Сплачено"; }
    .crm-v2026 .financial-queue-table td:nth-child(5)::before { content: "Залишок"; }
    .crm-v2026 .financial-queue-table td:nth-child(6)::before { content: "Стан"; }
    .crm-v2026 .financial-queue-table td:nth-child(7)::before { content: "Дія"; }
    .crm-v2026 .operational-actions { display: grid !important; grid-template-columns: 1fr; align-items: stretch; }
    .crm-v2026 .operational-actions :is(form, button, .button) { width: 100%; }

    .crm-v2026 :is(input, select, textarea, button, .button) { min-height: 44px; }
    .crm-v2026 dialog { max-height: calc(100dvh - .5rem); overflow-y: auto; border-radius: 18px 18px 0 0; }
    .crm-v2026 .notification-panel .notification-mark-all span { display: none; }
    .crm-v2026 .notification-panel .notification-mark-all { width: 42px; min-width: 42px; height: 42px; padding: 0; }
}

@media (max-width: 480px) {
    .crm-v2026.workspace-shell .container { padding-inline: .65rem; }
    .crm-v2026 .mobile-brand { max-width: calc(100vw - 120px); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .crm-v2026 .mobile-bottom-label { font-size: .66rem; }
    .crm-v2026 .mobile-navigation .workspace-navigation { grid-template-columns: 1fr; }
    .crm-v2026 .mobile-navigation .workspace-navigation-label { grid-column: 1; }
    .crm-v2026 .mobile-navigation .workspace-link-label { font-size: .84rem; }
    .crm-v2026 .notification-panel { padding: .7rem !important; }
}

/* Final mobile interaction guards: full touch targets and one scroll context. */
body.crm-v2026:has(dialog[open]) { overflow: hidden; }
.crm-v2026 :is(.dialog-close, .clinical-dialog-close, .patient-dialog-close, .notification-panel-close, .mobile-navigation-close) {
    width: 44px !important;
    min-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
}

@media (max-width: 899px) {
    .crm-v2026 .mobile-utility-actions :is(.notification-toggle, .mobile-account-toggle) { width: 44px; height: 44px; min-height: 44px; }
    .crm-v2026 .task-tabs a { display: grid; min-height: 44px; box-sizing: border-box; place-items: center; }
    .crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-navigation { grid-template-columns: 44px minmax(0, 1fr) 44px; gap: .35rem; overflow: visible; }
    .crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-navigation .calendar-nav-button { width: 44px; min-width: 44px; padding: 0; }
    .crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-navigation .calendar-date-picker { width: auto; min-width: 0; }
    .crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-navigation .crm-date-trigger { width: 100%; min-width: 0; }
    .crm-v2026 :where([data-crm-component="doctor-calendar"]) .day-calendar { max-height: none; overflow: visible; }
    .crm-v2026 .mobile-navigation-toggle { width: auto; min-width: 0; margin: 0; justify-self: stretch; }
    .crm-v2026 .mobile-navigation-toggle > .mobile-bottom-link { width: 100%; min-width: 44px; }
    .crm-v2026 .ws-center,
    .crm-v2026 .ws-content,
    .crm-v2026 .ws-content > *,
    .crm-v2026 .ws-integration-panel,
    .crm-v2026 .payment-integration-grid,
    .crm-v2026 .payment-integration-grid > * { min-width: 0; max-width: 100%; }
    .crm-v2026 .ws-integration-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); box-sizing: border-box; width: 100%; max-width: 100%; overflow: visible; }
    .crm-v2026 .ws-integration-tabs a { min-width: 0; padding-inline: .55rem; text-align: center; white-space: normal; }
    .crm-v2026 .ws-integration-tabs a:last-child:nth-child(odd) { grid-column: 1 / -1; }
    .crm-v2026 :is(.ws-section-team, .ws-section-domains) .ws-table-wrap { overflow: visible; border: 0; }
    .crm-v2026 :is(.ws-section-team, .ws-section-domains) .ws-table { display: block; width: 100%; min-width: 0; border: 0; background: transparent; }
    .crm-v2026 :is(.ws-section-team, .ws-section-domains) .ws-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
    .crm-v2026 :is(.ws-section-team, .ws-section-domains) .ws-table tbody { display: grid; grid-template-columns: minmax(0, 1fr); width: 100%; min-width: 0; gap: .65rem; }
    .crm-v2026 :is(.ws-section-team, .ws-section-domains) .ws-table tbody tr { display: grid; box-sizing: border-box; width: 100%; min-width: 0; padding: .25rem .75rem; border: 1px solid var(--neu-border); border-radius: 12px; background: #fff; box-shadow: var(--neu-shadow-sm); }
    .crm-v2026 :is(.ws-section-team, .ws-section-domains) .ws-table tbody td { display: grid; grid-template-columns: minmax(82px, .38fr) minmax(0, 1fr); gap: .65rem; width: auto; min-width: 0; padding: .62rem 0; border: 0; border-bottom: 1px solid #e7edf1; overflow-wrap: anywhere; }
    .crm-v2026 :is(.ws-section-team, .ws-section-domains) .ws-table tbody td:last-child { border-bottom: 0; }
    .crm-v2026 :is(.ws-section-team, .ws-section-domains) .ws-table tbody td::before { color: #718697; font-size: .68rem; font-weight: 850; letter-spacing: .035em; line-height: 1.4; text-transform: uppercase; }
    .crm-v2026 :is(.ws-section-team, .ws-section-domains) .ws-table tbody td[colspan] { display: block; }
    .crm-v2026 :is(.ws-section-team, .ws-section-domains) .ws-table tbody td[colspan]::before { content: none; }
    .crm-v2026 .ws-section-team .ws-span-8 .ws-table td:nth-child(1)::before { content: "Користувач"; }
    .crm-v2026 .ws-section-team .ws-span-8 .ws-table td:nth-child(2)::before { content: "Ролі"; }
    .crm-v2026 .ws-section-team .ws-span-8 .ws-table td:nth-child(3)::before { content: "Статус"; }
    .crm-v2026 .ws-section-team .ws-span-8 .ws-table td:nth-child(4)::before { content: "Дії"; }
    .crm-v2026 .ws-section-team .ws-span-12 .ws-table td:nth-child(1)::before { content: "Email"; }
    .crm-v2026 .ws-section-team .ws-span-12 .ws-table td:nth-child(2)::before { content: "Ролі"; }
    .crm-v2026 .ws-section-team .ws-span-12 .ws-table td:nth-child(3)::before { content: "Створено"; }
    .crm-v2026 .ws-section-team .ws-span-12 .ws-table td:nth-child(4)::before { content: "Доступ"; }
    .crm-v2026 .ws-section-team .ws-span-12 .ws-table td:nth-child(5)::before { content: "Доставка"; }
    .crm-v2026 .ws-section-team .ws-span-12 .ws-table td:nth-child(6)::before { content: "Дії"; }
    .crm-v2026 .ws-section-domains .ws-table td:nth-child(1)::before { content: "Домен"; }
    .crm-v2026 .ws-section-domains .ws-table td:nth-child(2)::before { content: "Тип"; }
    .crm-v2026 .ws-section-domains .ws-table td:nth-child(3)::before { content: "DNS"; }
    .crm-v2026 .ws-section-domains .ws-table td:nth-child(4)::before { content: "SSL"; }
    .crm-v2026 .ws-section-domains .ws-table td:nth-child(5)::before { content: "Роль"; }
    .crm-v2026 .ws-member-scope-table td:nth-child(1)::before { content: "Тип" !important; }
    .crm-v2026 .ws-member-scope-table td:nth-child(2)::before { content: "Об’єкт" !important; }
    .crm-v2026 .ws-member-scope-table td:nth-child(3)::before { content: "Деталі" !important; }
    .crm-v2026 .ws-member-grants-table td:nth-child(1)::before { content: "Дозвіл" !important; }
    .crm-v2026 .ws-member-grants-table td:nth-child(2)::before { content: "Область" !important; }
    .crm-v2026 .ws-member-grants-table td:nth-child(3)::before { content: "Надано ролями" !important; }
    .crm-v2026 .ws-member-grants-table td:nth-child(4)::before { content: "Дії системи" !important; }
    .crm-v2026 :is(.ws-section-team, .ws-section-domains) .ws-actions { display: grid; grid-template-columns: 1fr; align-items: stretch; }
    .crm-v2026 :is(.ws-section-team, .ws-section-domains) .ws-actions :is(form, button, .button) { width: 100%; }
    .crm-v2026 :is(.ws-form, .ws-team-editor) label:has(input[type="checkbox"]) { min-height: 44px; cursor: pointer; }
    .crm-v2026 :is(.finance-flow-table, .rule-table) { display: block; width: 100%; min-width: 0; border: 0; background: transparent; }
    .crm-v2026 :is(.finance-flow-table, .rule-table) thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
    .crm-v2026 :is(.finance-flow-table, .rule-table) tbody { display: grid; grid-template-columns: minmax(0, 1fr); gap: .65rem; }
    .crm-v2026 :is(.finance-flow-table, .rule-table) tbody tr { display: grid; box-sizing: border-box; width: 100%; min-width: 0; padding: .25rem .75rem; border: 1px solid var(--neu-border); border-radius: 12px; background: #fff; box-shadow: var(--neu-shadow-sm); }
    .crm-v2026 :is(.finance-flow-table, .rule-table) tbody :is(th, td) { display: grid; grid-template-columns: minmax(88px, .38fr) minmax(0, 1fr); gap: .65rem; width: auto; min-width: 0; padding: .6rem 0; border: 0; border-bottom: 1px solid #e7edf1; white-space: normal; overflow-wrap: anywhere; }
    .crm-v2026 :is(.finance-flow-table, .rule-table) tbody :is(th, td):last-child { border-bottom: 0; }
    .crm-v2026 :is(.finance-flow-table, .rule-table) tbody :is(th, td)::before { color: #718697; font-size: .68rem; font-weight: 850; letter-spacing: .035em; line-height: 1.4; text-transform: uppercase; }
    .crm-v2026 :is(.finance-flow-table, .rule-table) tbody td[colspan] { display: block; }
    .crm-v2026 :is(.finance-flow-table, .rule-table) tbody td[colspan]::before { content: none; }
    .crm-v2026 .rule-table tbody td:nth-child(1)::before { content: "Правило"; }
    .crm-v2026 .rule-table tbody td:nth-child(2)::before { content: "Запуски"; }
    .crm-v2026 .rule-table tbody td:nth-child(3)::before { content: "Успішно"; }
    .crm-v2026 .rule-table tbody td:nth-child(4)::before { content: "Пригнічено"; }
    .crm-v2026 .rule-table tbody td:nth-child(5)::before { content: "Помилки"; }
    .crm-v2026 .rule-table tbody td:nth-child(6)::before { content: "Результат"; }
    .crm-v2026 dialog[open] {
        width: calc(100vw - 1rem);
        max-width: calc(100vw - 1rem);
        max-height: calc(100dvh - .5rem);
        margin: .5rem auto 0;
        overflow-y: auto;
        border-radius: 18px 18px 0 0;
    }
}

/* The owner keeps the established turquoise Settings identity on desktop/tablet. */
.crm-v2026 .settings-tabs {
    border: 1px solid rgba(100, 203, 214, .24);
    background: linear-gradient(180deg, #237f94, #1a4f78);
    box-shadow: 0 12px 30px rgba(20, 69, 101, .16);
}
.crm-v2026 .settings-layout .settings-tabs .settings-tab { border: 1px solid transparent; color: #eef8fb !important; }
.crm-v2026 .settings-layout .settings-tabs .settings-tab:hover { border-color: rgba(255,255,255,.42); background: rgba(255,255,255,.12) !important; color: #fff !important; }
.crm-v2026 .settings-layout .settings-tabs .settings-tab.active {
    border-color: #fff;
    background: #fff !important;
    color: #174f70 !important;
    box-shadow: 0 8px 20px rgba(10, 48, 76, .14);
}
.crm-v2026 .settings-tab-group { background: transparent; color: #b8dce6; }
.crm-v2026 .ws-detail-list { display: grid; gap: 0; margin: .45rem 0 0; }
.crm-v2026 .ws-detail-list > div { display: grid; grid-template-columns: minmax(110px, .42fr) minmax(0, 1fr); gap: .75rem; align-items: start; padding: .65rem 0; border-bottom: 1px solid #e6edf1; }
.crm-v2026 .ws-detail-list > div:last-child { border-bottom: 0; }
.crm-v2026 .ws-detail-list dt { color: #6d8293; font-size: .78rem; font-weight: 800; }
.crm-v2026 .ws-detail-list dd { min-width: 0; margin: 0; color: #294d66; text-align: left; overflow-wrap: anywhere; }

/* TASK-268: reliable clinical-library commands and recoverable deletion. */

/* TASK-272: one clean outline for the doctor calendar mode switch. */
.crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-controls .calendar-mode-switcher {

    box-shadow: none;
}
.crm-v2026 :where([data-crm-component="doctor-calendar"]) .calendar-controls .calendar-mode-switcher button {
    border: 0;

    box-shadow: none;
}

/* TASK-290: compact feedback aligns icon, copy and close action on one visual axis. */
.crm-v2026 .messages {
    width: fit-content;
    max-width: min(420px, calc(100vw - 2rem));
}
.crm-v2026 .messages li {
    grid-template-columns: 24px minmax(0, 1fr) 28px;
    align-items: center;
    width: fit-content;
    min-width: min(300px, calc(100vw - 2rem));
    max-width: 420px;
    min-height: 54px;
    padding: .62rem .68rem;
    gap: .62rem;
    line-height: 1.38;
}
.crm-v2026 .messages li::before {
    width: 1.5rem;
    height: 1.5rem;
}
.crm-v2026 .messages button.crm-toast-close {
    display: grid;
    width: 28px;
    min-width: 28px;
    height: 28px;
    min-height: 28px;
    place-items: center;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 50%;
    background: transparent;
    box-shadow: none;
    color: currentColor;
    font-size: 1.05rem;
    line-height: 1;
}
.crm-v2026 .messages button.crm-toast-close:hover {
    border: 0;
    background: rgba(18, 63, 104, .09);
    box-shadow: none;
    color: currentColor;
    transform: none;
}
@media (max-width: 640px) {
    .crm-v2026 .messages { width: calc(100vw - 1.3rem); max-width: none; }
    .crm-v2026 .messages li { width: 100%; min-width: 0; max-width: none; }
}

/* Workspace control-center primitives moved from the page template so the
   layout remains cacheable and consistent across all workspace routes. */
    .ws-center{display:grid;gap:1.25rem;max-width:1440px;margin:0 auto;color:var(--ws-ink)}
    .ws-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:2rem;align-items:end;overflow:hidden;padding:2rem;border:1px solid #ffffff45;border-radius:20px;background:var(--ws-primary);box-shadow:0 20px 50px #183b6324;color:var(--ws-on-primary)}
    .ws-hero:after{position:absolute;content:"";width:280px;height:280px;right:-100px;top:-145px;border:50px solid #ffffff12;border-radius:50%}
    .ws-eyebrow{margin:0 0 .6rem;color:var(--ws-on-primary);font-size:.76rem;font-weight:850;letter-spacing:.11em;text-transform:uppercase}.workspace-shell .ws-hero h1{max-width:850px;margin:0;color:var(--ws-on-primary);font-size:clamp(1.75rem,3vw,3rem);line-height:1.06;letter-spacing:-.035em}.ws-hero p,.ws-hero small{max-width:760px;margin:.85rem 0 0;color:var(--ws-on-primary);line-height:1.55}
    .ws-hero-badge{position:relative;z-index:1;display:grid;min-width:160px;gap:.3rem;padding:1rem 1.15rem;border:1px solid currentColor;border-radius:14px;background:#ffffff12;backdrop-filter:blur(12px)}.ws-hero-badge span{color:var(--ws-on-primary);font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.ws-hero-badge strong{font-size:1rem}.ws-status-dot{display:inline-block;width:.55rem;height:.55rem;margin-right:.4rem;border-radius:50%;background:#5fe1a0;box-shadow:0 0 0 5px #5fe1a022}
    .ws-hero-side{position:relative;z-index:2;display:grid;gap:.55rem}
    .ws-tabs{display:flex;gap:.4rem;overflow-x:auto;padding:.35rem;border:1px solid var(--ws-line);border-radius:13px;background:var(--ws-surface);box-shadow:0 7px 22px #163b640c;scrollbar-width:thin}.ws-tabs a{flex:0 0 auto;padding:.72rem .95rem;border-radius:9px;color:var(--ws-ink);font-weight:760;text-decoration:none}.ws-tabs a:hover{background:var(--ws-soft);color:var(--ws-ink)}.ws-tabs a.active{background:var(--ws-primary);color:var(--ws-on-primary);box-shadow:0 5px 13px color-mix(in srgb,var(--ws-primary) 27%,transparent)}
    .ws-integration-tabs{display:flex;width:max-content;max-width:100%;gap:.35rem;overflow-x:auto;padding:.3rem;border:1px solid var(--ws-line);border-radius:11px;background:var(--ws-surface)}.ws-integration-tabs a{flex:0 0 auto;padding:.65rem 1rem;border-radius:8px;color:var(--ws-ink);font-weight:800;text-decoration:none}.ws-integration-tabs a.active{background:var(--ws-primary);color:var(--ws-on-primary)}.ws-integration-panel{min-width:0}.ws-integration-panel .card{border:1px solid var(--ws-line);background:var(--ws-surface);color:var(--ws-ink);box-shadow:0 7px 26px #1538580b}.ws-integration-panel form{max-width:none}.ws-integration-panel input,.ws-integration-panel select,.ws-integration-panel textarea{background:var(--ws-surface);color:var(--ws-ink)}
    .ws-content{display:grid;gap:1.15rem}.ws-section-head{display:flex;align-items:end;justify-content:space-between;gap:1rem}.ws-section-head h2{margin:0;font-size:1.45rem;letter-spacing:-.02em}.ws-section-head p{margin:.35rem 0 0;color:var(--ws-muted);line-height:1.5}.ws-actions{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.ws-actions .button,.ws-actions button{margin:0}
    .ws-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:1rem}.ws-span-3{grid-column:span 3}.ws-span-4{grid-column:span 4}.ws-span-5{grid-column:span 5}.ws-span-6{grid-column:span 6}.ws-span-7{grid-column:span 7}.ws-span-8{grid-column:span 8}.ws-span-12{grid-column:1/-1}
    .ws-card{min-width:0;padding:1.3rem;border:1px solid var(--ws-line);border-radius:16px;background:var(--ws-surface);color:var(--ws-ink);box-shadow:0 7px 26px #1538580b}.workspace-shell .ws-card h3{margin:0;color:var(--ws-ink);font-size:1.02rem}.ws-card>p{color:var(--ws-muted);line-height:1.55}.ws-card-accent{border:0;background:var(--ws-soft)}
    .ws-stat{display:grid;gap:.7rem;min-height:132px}.ws-stat-link{text-decoration:none;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.ws-stat-link:hover{transform:translateY(-2px);border-color:var(--ws-primary);box-shadow:0 13px 30px #15385816}.ws-stat-link:focus-visible{outline:3px solid color-mix(in srgb,var(--ws-primary) 38%,transparent);outline-offset:2px}.ws-stat-top{display:flex;align-items:center;justify-content:space-between;gap:1rem}.ws-stat-icon{display:grid;width:2.6rem;height:2.6rem;place-items:center;border-radius:12px;background:var(--ws-soft);color:var(--ws-ink);font-size:1.25rem}.ws-stat strong{font-size:2rem;letter-spacing:-.04em}.ws-stat small{color:var(--ws-muted);font-weight:650}
    .ws-table-wrap{overflow-x:auto;border:1px solid var(--ws-line);border-radius:14px}.ws-table{min-width:760px;margin:0;background:var(--ws-surface);color:var(--ws-ink)}.ws-table th{padding:.8rem 1rem;background:var(--ws-soft);color:var(--ws-ink);font-size:.75rem;letter-spacing:.06em;text-transform:uppercase}.ws-table td{padding:.9rem 1rem;vertical-align:middle}.ws-table tr:last-child td{border-bottom:0}.ws-person{display:flex;align-items:center;gap:.75rem}.ws-avatar{display:grid;width:2.35rem;height:2.35rem;flex:0 0 2.35rem;place-items:center;overflow:hidden;border-radius:11px;background:var(--ws-primary);color:var(--ws-on-primary);font-weight:850}.ws-avatar img{width:100%;height:100%;object-fit:cover}.ws-person strong,.ws-person span{display:block}.ws-person span{margin-top:.12rem;color:var(--ws-muted);font-size:.82rem}
    .ws-pill{display:inline-flex;align-items:center;min-height:25px;padding:.15rem .55rem;border-radius:999px;background:#eaf2f8;color:#315a78;font-size:.76rem;font-weight:780}.ws-pill+.ws-pill{margin-left:.25rem}.ws-pill.success{background:#e3f7ed;color:#13764a}.ws-pill.warning{background:#fff2cf;color:#815c00}.ws-pill.danger{background:#fde9ec;color:#a22f40}.ws-pill.neutral{background:#edf0f4;color:#59697a}.ws-pill.owner{background:#eef0ff;color:#4d51a8}
    .ws-form{display:grid;gap:1rem}.ws-form label{margin:0;color:var(--ws-ink);font-size:.9rem}.ws-form input,.ws-form select,.ws-form textarea{min-height:46px;margin-top:.38rem;border-color:var(--ws-line);border-radius:9px;background:var(--ws-surface);color:var(--ws-ink)}.ws-form input[type=checkbox]{width:18px;height:18px;min-height:0;margin:0}.ws-form textarea{min-height:88px;resize:vertical}.ws-form input:focus,.ws-form select:focus,.ws-form textarea:focus{outline:3px solid color-mix(in srgb,var(--ws-primary) 38%,transparent);border-color:var(--ws-primary)}.ws-form .helptext{display:block;margin-top:.35rem;color:var(--ws-muted);font-size:.78rem}.ws-form ul{margin:.45rem 0 0;padding:0;list-style:none}.ws-form ul li{margin:.35rem 0}.ws-form ul label{display:flex;align-items:flex-start;gap:.5rem}.ws-form .errorlist{padding:.65rem .8rem;border-radius:8px;background:#fff0f1;color:#a82323}
    .ws-primary-button,.ws-center button,.ws-center .button{min-height:44px;border-radius:9px;background:var(--ws-primary);color:var(--ws-on-primary);font-weight:760;box-shadow:none}.ws-center .button.secondary,.ws-center button.secondary{border:1px solid var(--ws-line);background:var(--ws-surface);color:var(--ws-ink)}.ws-center button.danger{background:#fff0f2;color:#a0283b;border:1px solid #efc3ca}.ws-center button.small,.ws-center .button.small{min-height:36px;margin:0;padding:.35rem .7rem;font-size:.82rem}
    .ws-secret{padding:1rem;border:1px solid #e7c563;border-radius:12px;background:#fff8df}.ws-secret strong{display:block;margin-bottom:.45rem;color:#715300}.ws-code{display:block;overflow-wrap:anywhere;padding:.7rem .8rem;border-radius:8px;background:#17283b;color:#f0f7ff;font:600 .84rem/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;user-select:all}
    .ws-notice{padding:1rem 1.1rem;border:1px solid var(--ws-accent);border-radius:13px;background:var(--ws-accent);color:var(--ws-on-accent)}.ws-notice strong{display:block;color:var(--ws-on-accent)}.ws-notice p{margin:.35rem 0 0;color:var(--ws-on-accent);line-height:1.5}
    .ws-role-picker{position:relative;margin-top:.38rem}.ws-role-picker summary{display:flex;min-height:46px;box-sizing:border-box;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem .8rem;border:1px solid var(--ws-line);border-radius:9px;background:var(--ws-surface);color:var(--ws-ink);cursor:pointer;list-style:none}.ws-role-picker summary::-webkit-details-marker{display:none}.ws-role-picker[open] summary{outline:3px solid color-mix(in srgb,var(--ws-primary) 38%,transparent);border-color:var(--ws-primary)}.ws-role-picker-menu{position:absolute;z-index:20;top:calc(100% + .35rem);right:0;left:0;max-height:300px;overflow:auto;padding:.45rem;border:1px solid var(--ws-line);border-radius:10px;background:var(--ws-surface);color:var(--ws-ink);box-shadow:0 16px 35px #102b4822}.ws-role-picker-menu ul{display:grid;gap:.15rem;margin:0;padding:0;list-style:none}.ws-role-picker-menu li{margin:0}.ws-role-picker-menu label{display:flex;align-items:center;gap:.65rem;padding:.65rem;border-radius:8px;cursor:pointer}.ws-role-picker-menu label:hover{background:var(--ws-soft)}.ws-role-picker-menu input{width:18px;height:18px;min-height:0;margin:0}
    .ws-empty{padding:2.2rem 1.2rem;text-align:center;color:var(--ws-muted)}.ws-empty strong{display:block;margin-bottom:.4rem;color:var(--ws-ink);font-size:1.02rem}.ws-list{display:grid;gap:.7rem;margin:0;padding:0;list-style:none}.ws-list-item{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.85rem 0;border-bottom:1px solid var(--ws-line)}.ws-list-item:last-child{border-bottom:0}.ws-list-item p{margin:.25rem 0 0;color:var(--ws-muted);font-size:.85rem;line-height:1.45}
    .ws-role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:.9rem}.ws-role-card{display:flex;min-height:180px;flex-direction:column;padding:1.15rem;border:1px solid var(--ws-line);border-radius:14px;background:var(--ws-surface);color:var(--ws-ink)}.ws-role-card h3{margin:.6rem 0 .35rem}.ws-role-card p{margin:0;color:var(--ws-muted);line-height:1.5}.ws-role-card footer{display:flex;align-items:center;justify-content:space-between;gap:.7rem;margin-top:auto;padding-top:1rem;color:var(--ws-muted);font-size:.82rem}
    .ws-permission-bulk{display:grid;grid-template-columns:minmax(220px,1fr) minmax(260px,.65fr);align-items:center;gap:1rem;background:var(--ws-soft)}.ws-permission-bulk>label{margin:0}.ws-bulk-check{display:flex;align-items:center;gap:.7rem;margin:0;cursor:pointer}.ws-bulk-check input{width:20px;height:20px;margin:0}.ws-bulk-check span{display:grid;gap:.15rem}.ws-bulk-check small{color:var(--ws-muted);font-weight:500}.ws-permission-group{overflow:hidden;border:1px solid var(--ws-line);border-radius:13px;background:var(--ws-surface);color:var(--ws-ink)}.ws-permission-group h3{margin:0;padding:.8rem 1rem;background:var(--ws-soft);color:var(--ws-ink);font-size:.9rem}.ws-permission-row{display:grid;grid-template-columns:minmax(220px,1fr) minmax(190px,.5fr);align-items:center;gap:1rem;padding:.8rem 1rem;border-top:1px solid var(--ws-line)}.ws-permission-row label{display:flex;align-items:flex-start;gap:.55rem;margin:0}.ws-permission-row select{margin:0;background:var(--ws-surface);color:var(--ws-ink)}
    .ws-scope-guide{display:flex;align-items:center;justify-content:space-between;gap:1rem}.ws-scope-guide p{margin:.35rem 0 0}.ws-assignment-create{display:grid;grid-template-columns:minmax(220px,.45fr) minmax(0,1fr);gap:1.2rem;align-items:end}.ws-assignment-create h3{margin:0}.ws-assignment-create p{margin:.35rem 0 0}.ws-assignment-form{grid-template-columns:repeat(3,minmax(0,1fr)) auto;align-items:end}.ws-assignment-form button{margin:0}.ws-assignment-directory{display:grid;margin-top:1rem;border-top:1px solid var(--ws-line)}.ws-assignment-person{display:grid;grid-template-columns:minmax(220px,.45fr) minmax(0,1fr);gap:1rem;align-items:center;padding:1rem 0;border-bottom:1px solid var(--ws-line)}.ws-assignment-person:last-child{border-bottom:0}.ws-assignment-locations{display:flex;gap:.55rem;flex-wrap:wrap}.ws-assignment-chip{display:flex;align-items:center;gap:.65rem;padding:.55rem .65rem;border:1px solid var(--ws-line);border-radius:11px;background:var(--ws-soft)}.ws-assignment-chip span,.ws-assignment-chip strong,.ws-assignment-chip small{display:block}.ws-assignment-chip small{margin-top:.16rem;color:var(--ws-muted);font-size:.75rem}.ws-assignment-chip form,.ws-assignment-chip button{margin:0}.ws-assignment-chip button{width:32px;min-height:32px;padding:0}
    .ws-table.ws-team-table{min-width:620px}.ws-team-editor summary{width:max-content;color:var(--ws-primary);font-size:.8rem;font-weight:780;cursor:pointer}.ws-team-editor form{min-width:250px;margin-top:.55rem;padding:.75rem;border:1px solid var(--ws-line);border-radius:10px;background:var(--ws-surface)}.ws-team-editor fieldset{display:grid;gap:.45rem;margin:0;padding:0;border:0}.ws-team-editor legend{margin-bottom:.45rem;font-size:.82rem;font-weight:800}.ws-team-editor label{display:flex;align-items:center;gap:.5rem;font-size:.82rem}.ws-team-editor input[type=checkbox]{width:17px;height:17px;min-height:0;margin:0}.ws-team-editor .ws-actions{margin-top:.7rem}.ws-assignment-chip .ws-team-editor button{width:auto;min-height:36px;padding:.35rem .7rem}.ws-assignment-chip:has(.ws-team-editor[open]){align-items:flex-start}
    .ws-onboarding-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;margin-top:1rem}.ws-onboarding-option{display:flex;gap:.75rem;margin:0;padding:1rem;border:1px solid var(--ws-line);border-radius:13px;background:var(--ws-surface);cursor:pointer}.ws-onboarding-option:has(input:checked){border-color:var(--ws-primary);background:var(--ws-soft);box-shadow:0 0 0 2px color-mix(in srgb,var(--ws-primary) 22%,transparent)}.ws-onboarding-option input{width:19px;height:19px;min-height:0;flex:0 0 19px;margin:.15rem 0 0}.ws-onboarding-option span,.ws-onboarding-option strong,.ws-onboarding-option small,.ws-onboarding-option em{display:block}.ws-onboarding-option small{margin-top:.35rem;color:var(--ws-muted);line-height:1.45}.ws-onboarding-option em{margin-top:.7rem;color:var(--ws-ink);font-size:.78rem;font-style:normal;line-height:1.45}.ws-check-list{display:grid;gap:.7rem;margin:.9rem 0 0;padding:0;list-style:none}.ws-check-list li{display:flex;align-items:flex-start;gap:.6rem}.ws-check-list li span{display:grid;width:22px;height:22px;flex:0 0 22px;place-items:center;border-radius:7px;background:#e3f7ed;color:#13764a;font-size:.75rem;font-weight:900}.ws-check-list-safe li span{background:#eaf2f8;color:var(--ws-primary)}.ws-onboarding-steps{display:grid;gap:.55rem;margin:1rem 0;padding:0;list-style:none}.ws-onboarding-steps li{display:flex;align-items:center;gap:.65rem}.ws-onboarding-steps li span{display:grid;width:26px;height:26px;flex:0 0 26px;place-items:center;border-radius:8px;background:var(--ws-surface);color:var(--ws-primary);font-size:.78rem;font-weight:850}.ws-onboarding-steps li.complete span{background:#e3f7ed;color:#13764a}.ws-onboarding-steps a{color:var(--ws-ink);font-weight:700;text-decoration:none}.ws-onboarding-steps a:hover{text-decoration:underline}
    .ws-brand-preview{position:sticky;top:1rem;overflow:hidden;padding:1.35rem;border-radius:18px;background:var(--ws-primary);color:var(--ws-on-primary)}.ws-brand-preview-mark{display:grid;width:3rem;height:3rem;place-items:center;overflow:hidden;border-radius:12px;background:var(--ws-accent);color:var(--ws-on-accent);font-weight:900}.ws-brand-preview-mark img{width:100%;height:100%;object-fit:contain;background:#fff}.workspace-shell .ws-brand-preview h3{margin:2.2rem 0 .45rem;color:var(--ws-on-primary);font-size:1.45rem}.ws-brand-preview p{margin:0;color:var(--ws-on-primary);line-height:1.5}.ws-brand-preview-button{display:inline-flex;margin-top:1.4rem;padding:.7rem 1rem;border-radius:9px;background:var(--ws-accent);color:var(--ws-on-accent);font-weight:800}
    .ws-audit{display:grid;gap:.2rem}.ws-audit-toolbar{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:.8rem;border-bottom:1px solid var(--ws-line)}.ws-audit-toolbar p{margin:0;color:var(--ws-muted)}.ws-audit-toolbar form{display:flex;align-items:center;gap:.55rem;flex-wrap:wrap}.ws-audit-toolbar label{font-size:.82rem;font-weight:750}.ws-audit-toolbar select{min-height:38px;margin:0;background:var(--ws-surface);color:var(--ws-ink)}.ws-audit-item{display:grid;grid-template-columns:32px minmax(0,1fr) auto;gap:.8rem;align-items:start;padding:.9rem 0;border-bottom:1px solid var(--ws-line)}.ws-audit-dot{display:grid;width:28px;height:28px;place-items:center;border-radius:9px;background:#eaf2f8;color:var(--ws-primary);font-size:.75rem;font-weight:900}.ws-audit-item p{margin:.25rem 0 0;color:var(--ws-muted);font-size:.83rem}.ws-audit-item.error .ws-audit-dot{background:#fdebec;color:#b42336}.ws-audit-item.error strong{color:#9f1d2f}.ws-audit-item time{color:var(--ws-muted);font-size:.8rem;white-space:nowrap}.ws-audit-details{margin-top:.55rem}.ws-audit-details summary{width:max-content;color:var(--ws-primary);font-size:.8rem;font-weight:750;cursor:pointer}.ws-audit-details dl{display:grid;gap:.35rem;margin:.55rem 0 0;padding:.65rem .75rem;border-radius:9px;background:var(--ws-soft)}.ws-audit-details dl div{display:grid;grid-template-columns:minmax(120px,.35fr) minmax(0,1fr);gap:.7rem}.ws-audit-details dt{color:var(--ws-muted);font-size:.76rem}.ws-audit-details dd{margin:0;overflow-wrap:anywhere;font-size:.78rem}.ws-pagination{display:flex;align-items:center;justify-content:center;gap:.35rem;flex-wrap:wrap;padding-top:1rem}.ws-pagination a,.ws-pagination span{display:grid;min-width:36px;min-height:36px;box-sizing:border-box;place-items:center;padding:.3rem .55rem;border-radius:8px;color:var(--ws-ink);text-decoration:none}.ws-pagination a:hover{background:var(--ws-soft)}.ws-pagination .current{background:var(--ws-primary);color:var(--ws-on-primary);font-weight:800}
    @media(max-width:980px){.ws-span-3,.ws-span-4,.ws-span-5,.ws-span-6,.ws-span-7,.ws-span-8{grid-column:span 12}.ws-hero{grid-template-columns:1fr}.ws-hero-badge{width:max-content}.ws-brand-preview{position:static}.ws-assignment-create,.ws-assignment-person{grid-template-columns:1fr}.ws-assignment-form{grid-template-columns:1fr 1fr}.ws-onboarding-options{grid-template-columns:1fr}}
    @media(max-width:640px){.ws-center{gap:.85rem}.ws-hero{gap:1.15rem;padding:1.25rem;border-radius:15px}.ws-hero h1{font-size:1.65rem}.ws-tabs{margin:0 -.2rem}.ws-section-head{align-items:stretch;flex-direction:column}.ws-actions{display:grid;grid-template-columns:1fr}.ws-actions>*{width:100%;box-sizing:border-box}.ws-card{padding:1rem;border-radius:13px}.ws-grid{gap:.75rem}.ws-permission-bulk,.ws-permission-row,.ws-assignment-form{grid-template-columns:1fr;gap:.55rem}.ws-scope-guide{align-items:stretch;flex-direction:column}.ws-audit-toolbar{align-items:stretch;flex-direction:column}.ws-audit-toolbar form{justify-content:space-between}.ws-audit-item{grid-template-columns:28px minmax(0,1fr)}.ws-audit-item time{grid-column:2}.ws-audit-details dl div{grid-template-columns:1fr;gap:.1rem}.ws-list-item{align-items:stretch;flex-direction:column}}

/* TASK-323: Figma-informed workspace settings shell.
   The visual language is adapted to the CRM's existing Django routes, permissions
   and progressive-navigation contract; it does not copy product semantics. */
.crm-v2026 .ws-settings-shell {
    max-width: 1380px;
    margin: 0 auto;
}
.crm-v2026 .ws-settings-boundary {
    --ws-muted: color-mix(in srgb, var(--ws-ink) 60%, var(--ws-surface));
    --ws-line: color-mix(in srgb, var(--ws-ink) 13%, var(--ws-surface));
    --ws-soft: color-mix(in srgb, var(--ws-primary) 6%, var(--ws-surface));
    overflow: clip;
    min-width: 0;
    min-height: calc(100dvh - 3.5rem);
    border: 1px solid #dfe5ea;
    border-radius: 18px;
    background: var(--ws-page);
    box-shadow: 0 18px 52px rgba(24, 53, 75, .08);
    color: var(--ws-ink);
}
.crm-v2026 .ws-settings-header {
    padding: 1.2rem 1.65rem 1rem;
    border-bottom: 1px solid #e5eaee;
    background: rgba(255, 255, 255, .86);
}
.crm-v2026 .ws-settings-breadcrumb {
    display: flex;
    align-items: center;
    gap: .45rem;
    margin: 0 0 .8rem;
    color: #8a99a5;
    font-size: .75rem;
}
.crm-v2026 .ws-settings-breadcrumb strong {
    color: #4f6473;
    font-weight: 750;
}
.crm-v2026 .ws-settings-title-row {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1.5rem;
}
.crm-v2026 .ws-settings-heading .ws-eyebrow {
    margin: 0 0 .28rem;
    color: #708391;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.crm-v2026 .ws-settings-heading h1 {
    max-width: 760px;
    margin: 0;
    color: #183f5d;
    font-size: clamp(1.55rem, 2.1vw, 2rem);
    line-height: 1.16;
    letter-spacing: -.035em;
}
.crm-v2026 .ws-settings-lead {
    max-width: 720px;
    margin: .42rem 0 0;
    color: #6c7f8d;
    font-size: .86rem;
    line-height: 1.5;
}
.crm-v2026 .ws-settings-status {
    display: grid;
    flex: 0 0 auto;
    min-width: 154px;
    gap: .18rem;
    padding: .7rem .82rem;
    border: 1px solid #dbe4e9;
    border-radius: 12px;
    background: var(--crm-color-surface);
}
.crm-v2026 .ws-settings-status span {
    color: #2e5268;
    font-size: .78rem;
    font-weight: 800;
}
.crm-v2026 .ws-settings-status small {
    color: #80909b;
    font-size: .68rem;
}
.crm-v2026 .ws-status-dot {
    display: inline-block;
    width: .48rem;
    height: .48rem;
    margin-right: .38rem;
    border-radius: 50%;
    background: #2bb673;
    box-shadow: 0 0 0 4px rgba(43, 182, 115, .13);
}
.crm-v2026 .ws-settings-layout {
    display: grid;
    grid-template-columns: 226px minmax(0, 1fr);
    min-width: 0;
}
.crm-v2026 .ws-settings-sidebar {
    min-width: 0;
    padding: 1rem .72rem 1.25rem;
    border-right: 1px solid #e2e7eb;
    background: #f6f7f8;
}
.crm-v2026 .ws-settings-sidebar-title {
    display: flex;
    align-items: center;
    gap: .65rem;
    padding: .25rem .45rem .9rem;
}
.crm-v2026 .ws-settings-sidebar-title > div {
    display: grid;
    min-width: 0;
}
.crm-v2026 .ws-settings-sidebar-title strong {
    overflow: hidden;
    color: #324f62;
    font-size: .82rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 .ws-settings-sidebar-title small {
    overflow: hidden;
    margin-top: .12rem;
    color: #8a99a3;
    font-size: .68rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 .ws-settings-sidebar-mark {
    display: grid;
    width: 30px;
    height: 30px;
    flex: 0 0 30px;
    place-items: center;
    border-radius: 9px;
    background: var(--ws-primary);
    color: var(--ws-on-primary);
    font-size: .78rem;
    font-weight: 900;
}
.crm-v2026 .ws-settings-nav {
    display: grid;
    gap: .7rem;
    overflow: visible;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
}
.crm-v2026 .ws-settings-nav-group {
    display: grid;
    gap: .12rem;
}
.crm-v2026 .ws-settings-nav-group:not(:has(a)) {
    display: none;
}
.crm-v2026 .ws-settings-nav-group > p {
    margin: 0;
    padding: .34rem .5rem;
    color: #9aa7af;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .075em;
    text-transform: uppercase;
}
.crm-v2026 .ws-settings-nav a {
    display: flex;
    min-width: 0;
    min-height: 38px;
    align-items: center;
    gap: .68rem;
    padding: .48rem .58rem;
    border-radius: 9px;
    color: #4f626e;
    font-size: .79rem;
    font-weight: 650;
    line-height: 1.25;
    text-decoration: none;
    transition: background-color .15s ease, color .15s ease, box-shadow .15s ease;
}
.crm-v2026 .ws-settings-nav a > span {
    display: grid;
    width: 22px;
    height: 22px;
    flex: 0 0 22px;
    place-items: center;
    border: 1px solid transparent;
    border-radius: 7px;
    color: #71828c;
}
.crm-v2026 .ws-settings-icon {
    width: 17px;
    height: 17px;
}
.crm-v2026 .ws-settings-nav a:hover {
    background: #eceff1;
    color: #263f4f;
}
.crm-v2026 .ws-settings-nav a.active {
    background: #e7eaec;
    color: #263f4f;
    box-shadow: inset 2px 0 var(--ws-primary);
}
.crm-v2026 .ws-settings-nav a.active > span {
    border-color: color-mix(in srgb, var(--ws-primary) 22%, var(--crm-color-surface));
    background: var(--crm-color-surface);
    color: var(--ws-primary);
}
.crm-v2026 .ws-settings-nav a:focus-visible,
.crm-v2026 .ws-settings-directory-card:focus-visible,
.crm-v2026 .ws-settings-stat-grid a:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--ws-primary) 34%, transparent);
    outline-offset: 2px;
}
.crm-v2026 .ws-settings-main {
    min-width: 0;
    min-height: 660px;
    padding: clamp(1.4rem, 3.2vw, 2.3rem);
    background: var(--ws-surface);
}
.crm-v2026 .ws-settings-main > .ws-content {
    width: min(100%, 960px);
    margin: 0 auto;
}
.crm-v2026 .ws-content {
    display: grid;
    gap: 1.8rem;
    min-width: 0;
}
.crm-v2026 .ws-section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 1rem;
}
.crm-v2026 .ws-section-head h2 {
    margin: 0;
    color: #293f4d;
    font-size: 1.02rem;
    letter-spacing: -.016em;
}
.crm-v2026 .ws-section-head p {
    max-width: 700px;
    margin: .28rem 0 0;
    color: #8a98a2;
    font-size: .78rem;
    line-height: 1.45;
}
.crm-v2026 .ws-settings-directory {
    display: grid;
    gap: .95rem;
}
.crm-v2026 .ws-settings-directory-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem .85rem;
}
.crm-v2026 .ws-settings-directory-card {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr) 20px;
    min-width: 0;
    min-height: 68px;
    box-sizing: border-box;
    align-items: center;
    gap: .72rem;
    padding: .72rem .78rem;
    border: 1px solid #dfe4e8;
    border-radius: 10px;
    background: var(--crm-color-surface);
    color: #405561;
    text-decoration: none;
    transition: border-color .15s ease, background-color .15s ease, box-shadow .15s ease, transform .15s ease;
}
.crm-v2026 .ws-settings-directory-card:hover {
    border-color: color-mix(in srgb, var(--ws-primary) 30%, #dfe4e8);
    background: color-mix(in srgb, var(--ws-primary) 2.5%, var(--crm-color-surface));
    box-shadow: 0 7px 18px rgba(34, 65, 84, .07);
    transform: translateY(-1px);
}
.crm-v2026 .ws-settings-directory-icon {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border: 1px solid #dfe5e8;
    border-radius: 8px;
    background: var(--crm-color-surface-subtle);
    color: #627782;
}
.crm-v2026 .ws-settings-directory-icon .ws-settings-icon {
    width: 18px;
    height: 18px;
}
.crm-v2026 .ws-settings-directory-copy {
    display: grid;
    min-width: 0;
    gap: .2rem;
}
.crm-v2026 .ws-settings-directory-copy strong {
    color: #40515b;
    font-size: .84rem;
}
.crm-v2026 .ws-settings-directory-copy small {
    overflow: hidden;
    color: #8c989f;
    font-size: .72rem;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 .ws-settings-directory-chevron {
    color: #9ba7ae;
    font-size: 1.1rem;
}
.crm-v2026 .ws-settings-summary {
    display: grid;
    gap: .85rem;
    padding-top: 1.25rem;
    border-top: 1px solid #e8ecef;
}
.crm-v2026 .ws-settings-stat-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: .7rem;
}
.crm-v2026 .ws-settings-stat-grid .ws-stat-link {
    display: grid;
    min-width: 0;
    gap: .22rem;
    padding: .78rem .86rem;
    border: 1px solid #e1e6e9;
    border-radius: 10px;
    background: var(--crm-color-surface-subtle);
    color: #4e626e;
    text-decoration: none;
}
.crm-v2026 .ws-settings-stat-grid .ws-stat-link:hover {
    border-color: color-mix(in srgb, var(--ws-primary) 26%, #e1e6e9);
    background: var(--crm-color-surface);
    box-shadow: 0 7px 18px rgba(34, 65, 84, .06);
    transform: none;
}
.crm-v2026 .ws-settings-stat-grid span {
    overflow: hidden;
    color: #74858f;
    font-size: .69rem;
    font-weight: 750;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 .ws-settings-stat-grid strong {
    color: #24485f;
    font-size: 1.35rem;
    line-height: 1.1;
}
.crm-v2026 .ws-settings-stat-grid small {
    color: #9aa5ab;
    font-size: .66rem;
}
.crm-v2026 .ws-settings-overview-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(0, .95fr);
    gap: .9rem;
}
.crm-v2026 .ws-settings-main .ws-card {
    min-width: 0;
    padding: 1.05rem;
    border: 1px solid #e0e6e9;
    border-radius: 12px;
    background: var(--crm-color-surface);
    box-shadow: none;
}
.crm-v2026 .ws-settings-main .ws-card:hover {
    transform: none;
    box-shadow: none;
}
.crm-v2026 .ws-card-kicker {
    margin: 0 0 .32rem;
    color: #7b8e9a;
    font-size: .66rem;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.crm-v2026 .ws-settings-main .ws-card h2 {
    margin: 0;
    color: #29495d;
    font-size: 1rem;
}
.crm-v2026 .ws-settings-main .ws-card > p:not(.ws-card-kicker) {
    margin: .42rem 0 0;
    color: #778a96;
    font-size: .76rem;
    line-height: 1.5;
}
.crm-v2026 .ws-card-heading {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 1rem;
}
.crm-v2026 .ws-card-heading > a {
    color: var(--ws-primary);
    font-size: .72rem;
    font-weight: 750;
    text-decoration: none;
}
.crm-v2026 .ws-notice {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: .85rem 1rem;
    border: 1px solid color-mix(in srgb, var(--ws-primary) 25%, #dfe6ea);
    border-radius: 11px;
    background: color-mix(in srgb, var(--ws-primary) 5%, var(--crm-color-surface));
    color: #315367;
}
.crm-v2026 .ws-notice strong {
    color: #294c62;
}
.crm-v2026 .ws-notice p {
    margin: .2rem 0 0;
    color: #708590;
    font-size: .75rem;
}
.crm-v2026 .ws-notice .button {
    flex: 0 0 auto;
    margin: 0;
}
.crm-v2026 .ws-mobile-select {
    display: none;
}
.crm-v2026 .ws-settings-main :is(input, select, textarea) {
    max-width: 100%;
}
.crm-v2026 .ws-settings-main :is(.ws-table-wrap, .ws-integration-panel, .ws-permission-group) {
    min-width: 0;
}
@media (max-width: 1120px) {
    .crm-v2026 .ws-settings-layout { grid-template-columns: 208px minmax(0, 1fr); }
    .crm-v2026 .ws-settings-main { padding: 1.5rem; }
    .crm-v2026 .ws-settings-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 899px) {
    .crm-v2026 .ws-settings-boundary {
        min-height: 0;
        overflow: visible;
        border-radius: 15px;
    }
    .crm-v2026 .ws-settings-header { padding: 1rem; }
    .crm-v2026 .ws-settings-title-row { align-items: stretch; flex-direction: column; gap: .8rem; }
    .crm-v2026 .ws-settings-status { min-width: 0; }
    .crm-v2026 .ws-mobile-select {
        display: grid;
        gap: .35rem;
        padding: .85rem 1rem 0;
        background: var(--crm-color-surface);
        color: #526976;
        font-size: .72rem;
        font-weight: 800;
    }
    .crm-v2026 .ws-mobile-select select {
        width: 100%;
        margin: 0;
        background: var(--crm-color-surface);
        color: #29495d;
    }
    .crm-v2026 .ws-settings-layout { grid-template-columns: minmax(0, 1fr); }
    .crm-v2026 .ws-settings-sidebar { display: none; }
    .crm-v2026 .ws-settings-main { min-height: 0; padding: 1.15rem 1rem 1.4rem; }
    .crm-v2026 .ws-settings-directory-copy small { white-space: normal; }
}
@media (max-width: 680px) {
    .crm-v2026 .ws-settings-breadcrumb { margin-bottom: .6rem; }
    .crm-v2026 .ws-settings-heading h1 { font-size: 1.42rem; }
    .crm-v2026 .ws-settings-lead { font-size: .8rem; }
    .crm-v2026 .ws-settings-main > .ws-content { gap: 1.35rem; }
    .crm-v2026 .ws-settings-directory-grid,
    .crm-v2026 .ws-settings-overview-grid { grid-template-columns: minmax(0, 1fr); }
    .crm-v2026 .ws-settings-directory-card { min-height: 72px; }
    .crm-v2026 .ws-settings-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .crm-v2026 .ws-notice { align-items: stretch; flex-direction: column; }
    .crm-v2026 .ws-notice .button { width: 100%; box-sizing: border-box; }
}
@media (max-width: 390px) {
    .crm-v2026 .ws-settings-stat-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
    .crm-v2026 .ws-settings-directory-card,
    .crm-v2026 .ws-settings-nav a { transition: none; }
}

/* TASK-324: compact Figma-density settings and single-task drill-down. */
.crm-v2026 .ws-settings-boundary {
    --ws-primary: var(--crm-color-primary) !important;
    --ws-on-primary: var(--crm-color-surface) !important;
    --ws-accent: #d9e2fc !important;
    --ws-on-accent: var(--crm-color-primary-strong) !important;
    --ws-surface: var(--crm-color-surface) !important;
    --ws-ink: var(--crm-color-text) !important;
    --ws-page: var(--crm-color-canvas) !important;
    --ws-line: var(--crm-color-border);
    --ws-soft: #f7f8fc;
    font-size: 13px;
}
.crm-v2026 .ws-settings-main { padding: 24px 28px; }
.crm-v2026 .ws-settings-main > .ws-content { width: min(100%, 1040px); gap: 14px; }
.crm-v2026 .ws-settings-directory { gap: 10px; }
.crm-v2026 .ws-settings-directory-grid { gap: 8px 10px; }
.crm-v2026 .ws-settings-directory-card { min-height: 58px; grid-template-columns: 30px minmax(0, 1fr) 16px; gap: 10px; padding: 9px 11px; border-color: var(--crm-color-border); border-radius: 8px; }
.crm-v2026 .ws-settings-directory-icon { width: 28px; height: 28px; border-radius: 7px; }
.crm-v2026 .ws-settings-directory-icon .ws-settings-icon { width: 16px; height: 16px; }
.crm-v2026 .ws-settings-directory-copy { gap: 1px; }
.crm-v2026 .ws-settings-directory-copy strong { color: var(--crm-color-text); font-size: 13px; font-weight: 650; }
.crm-v2026 .ws-settings-directory-copy small { color: var(--crm-color-text-secondary); font-size: 12px; }
.crm-v2026 .ws-settings-directory-chevron { font-size: 16px; }
.crm-v2026 .ws-settings-subdirectory { max-width: 760px; }
.crm-v2026 .ws-drilldown-head { display: flex; min-height: 28px; align-items: center; gap: 12px; }
.crm-v2026 .ws-drilldown-head a { color: var(--crm-color-primary-strong); font-size: 12px; font-weight: 650; text-decoration: none; }
.crm-v2026 .ws-drilldown-head h2 { margin: 0; color: var(--crm-color-text); font-size: 15px; }
.crm-v2026 .ws-settings-main .ws-card { padding: 14px; border-color: var(--crm-color-border); border-radius: 9px; }
.crm-v2026 .ws-compact-form,
.crm-v2026 .payment-settings-surface { max-width: 760px; gap: 12px; }
.crm-v2026 .ws-form { gap: 10px; }
.crm-v2026 .ws-form label,
.crm-v2026 .payment-settings-surface label { color: var(--crm-color-text); font-size: 12px; font-weight: 600; }
.crm-v2026 .ws-settings-main :is(input:not([type=checkbox]):not([type=radio]), select, textarea) { min-height: 32px; box-sizing: border-box; margin-top: 4px; padding: 5px 9px; border: 1px solid var(--crm-color-control-border); border-radius: 6px; font-size: 13px; }
.crm-v2026 .ws-settings-main textarea { min-height: 64px; }
.crm-v2026 .ws-center button,
.crm-v2026 .ws-center .button { min-height: 32px; box-sizing: border-box; margin: 0; padding: 5px 11px; border-radius: 6px; font-size: 12px; font-weight: 650; }
.crm-v2026 .ws-center button.secondary.danger { border-color: #f3c6c8; background: var(--crm-color-surface); color: #dc3d43; }
.crm-v2026 .ws-actions { gap: 6px; }
.crm-v2026 .ws-onboarding-options { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin-top: 8px; }
.crm-v2026 .ws-onboarding-option { gap: 7px; padding: 9px; border-radius: 7px; }
.crm-v2026 .ws-onboarding-option input { width: 15px; height: 15px; flex-basis: 15px; }
.crm-v2026 .ws-onboarding-option small { margin-top: 2px; color: var(--crm-color-text-secondary); font-size: 12px; line-height: 1.35; }
.crm-v2026 .ws-profile-kind-compact { display: grid; gap: 4px; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--crm-color-border); }
.crm-v2026 .booking-interval-editor { display: grid; gap: 8px; }
.crm-v2026 .booking-interval-list { display: flex; flex-wrap: wrap; gap: 6px; }
.crm-v2026 .booking-interval-chip { display: inline-flex; min-height: 28px; align-items: center; gap: 5px; padding: 3px 4px 3px 9px; border: 1px solid #c6d4f9; border-radius: 999px; background: #f5f7ff; color: var(--crm-color-primary-strong); font-size: 12px; font-weight: 650; }
.crm-v2026 .booking-interval-chip button { display: grid; width: 24px; min-width: 24px; height: 24px; min-height: 24px; place-items: center; padding: 0; border: 0; border-radius: 50%; background: transparent; color: var(--crm-color-primary-strong); font-size: 13px; }
.crm-v2026 .booking-interval-add { display: grid; grid-template-columns: 120px auto; align-items: end; gap: 6px; width: max-content; max-width: 100%; }
.crm-v2026 .booking-interval-add label { grid-column: 1 / -1; }
.crm-v2026 .booking-interval-add input { width: 120px; margin: 0; }
.crm-v2026 .booking-display-interval { display: grid; gap: 4px; max-width: 320px; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--crm-color-border); }
.crm-v2026 .ws-compact-toggle { display: flex; align-items: flex-start; gap: 8px; margin: 0; }
.crm-v2026 .ws-compact-toggle input { width: 16px; height: 16px; margin: 1px 0 0; }
.crm-v2026 .ws-compact-toggle span { display: grid; gap: 2px; }
.crm-v2026 .ws-compact-toggle small { color: var(--crm-color-text-secondary); font-size: 12px; font-weight: 400; }
.crm-v2026 .ws-field-help { margin: 0; color: var(--crm-color-text-secondary); font-size: 12px; line-height: 1.4; }
.crm-v2026 .ws-compact-warning { margin-bottom: 10px; padding: 8px 10px; border: 1px solid #f2cf66; border-radius: 7px; background: #fffbea; color: #6f5600; font-size: 12px; line-height: 1.4; }
.crm-v2026 .settings-section-stack { display: grid; gap: 12px; }
.crm-v2026 .payment-integration-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.crm-v2026 .payment-integration-heading h2 { margin: 0; color: var(--crm-color-text); font-size: 15px; }
.crm-v2026 .payment-integration-heading > a:not(.button) { color: var(--crm-color-primary-strong); font-size: 12px; font-weight: 650; text-decoration: none; }
.crm-v2026 .payment-settings-surface .settings-section h3 { margin: 0 0 10px; font-size: 13px; }
.crm-v2026 .payment-settings-surface form > p { display: grid; gap: 3px; margin: 0 0 9px; }
.crm-v2026 .payment-settings-surface form > p > label { margin: 0; }
.crm-v2026 .payment-settings-list { display: grid; gap: 7px; }
.crm-v2026 .payment-settings-row { display: grid; gap: 8px; padding: 10px 11px; border: 1px solid var(--crm-color-border); border-radius: 8px; background: var(--crm-color-canvas); }
.crm-v2026 .payment-settings-row strong,
.crm-v2026 .payment-settings-row small { display: block; }
.crm-v2026 .payment-settings-row small { margin-top: 2px; color: var(--crm-color-text-secondary); font-size: 12px; }
.crm-v2026 .payment-settings-row-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.crm-v2026 .payment-row-actions { display: flex; align-items: center; gap: 6px; flex-wrap: wrap; }
.crm-v2026 .payment-row-actions form { margin: 0; }
.crm-v2026 .payment-row-actions > a { display: inline-flex; min-height: 24px; align-items: center; color: var(--crm-color-primary-strong); font-size: 12px; font-weight: 600; }
.crm-v2026 .payment-environment-badge { display: inline-flex; min-height: 20px; align-items: center; padding: 1px 6px; border-radius: 999px; font-size: 10px; font-weight: 700; }
.crm-v2026 .payment-environment-badge--test { border: 1px solid #f2cf66; background: #fff8d7; color: #8a5a00; }
.crm-v2026 .payment-environment-badge--live { border: 1px solid #a9dfc5; background: #ecfbf3; color: #18794e; }
.crm-v2026 .payment-live-warning,
.crm-v2026 .payment-safety-note,
.crm-v2026 .bridge-secret { padding: 10px 11px; border: 1px solid var(--crm-color-border); border-radius: 8px; background: var(--crm-color-canvas); font-size: 12px; }
.crm-v2026 .payment-live-warning { border-color: #f3c6c8; background: #fff5f5; color: #a6292e; }
.crm-v2026 .payment-safety-note summary { display: flex; min-height: 24px; align-items: center; color: var(--crm-color-primary-strong); font-weight: 650; cursor: pointer; }
.crm-v2026 .payment-safety-note p { margin: 7px 0 0; color: var(--crm-color-text-secondary); line-height: 1.45; }
.crm-v2026 .bridge-secret { display: grid; gap: 5px; border-color: #f2cf66; background: #fffbea; }
.crm-v2026 .bridge-secret code { overflow-wrap: anywhere; font-size: 12px; user-select: all; }
.crm-v2026 .payment-register-assignment { display: flex; gap: 6px; color: var(--crm-color-text-secondary); font-size: 11px; }
.crm-v2026 .payment-settings-surface fieldset { display: flex; gap: 10px; margin: 0 0 10px; padding: 8px; border: 1px solid var(--crm-color-border); border-radius: 6px; }
.crm-v2026 .payment-register-practitioners { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 5px; }
.crm-v2026 .ws-section-profile .ws-settings-lead,
.crm-v2026 .ws-section-profile .ws-settings-status,
.crm-v2026 .ws-section-integrations .ws-settings-lead,
.crm-v2026 .ws-section-integrations .ws-settings-status { display: none; }
.crm-v2026 .ws-section-profile .ws-settings-header,
.crm-v2026 .ws-section-integrations .ws-settings-header { padding-block: 14px; }
@media (max-width: 680px) {
    .crm-v2026 .ws-settings-main { padding: 14px 12px 18px; }
    .crm-v2026 .ws-settings-main > .ws-content { gap: 12px; }
    .crm-v2026 .ws-settings-directory-card { min-height: 56px; }
    .crm-v2026 .ws-onboarding-options { grid-template-columns: 1fr; }
    .crm-v2026 .ws-drilldown-head { align-items: flex-start; flex-direction: column; gap: 5px; }
    .crm-v2026 .payment-integration-heading { align-items: flex-start; flex-direction: column; }
    .crm-v2026 .payment-settings-row-head { flex-direction: column; }
    .crm-v2026 .ws-settings-main :is(input:not([type=checkbox]):not([type=radio]), select, textarea),
    .crm-v2026 .ws-center button,
    .crm-v2026 .ws-center .button { min-height: 44px; }
    .crm-v2026 .booking-interval-chip { min-height: 44px; }
    .crm-v2026 .booking-interval-chip button { width: 32px; min-width: 32px; height: 32px; min-height: 32px; }
    .crm-v2026 .payment-row-actions > a,
    .crm-v2026 .payment-safety-note summary { min-height: 44px; }
}

/* TASK-326: opt-in compact surface primitives. */
.crm-v2026 .crm-compact-page {
    --crm-compact-primary: var(--crm-color-primary);
    --crm-compact-primary-strong: var(--crm-color-primary-strong);
    --crm-compact-danger: var(--crm-color-danger);
    --crm-compact-ink: var(--crm-color-text);
    --crm-compact-copy: var(--crm-color-text-secondary);
    --crm-compact-muted: var(--crm-color-text-muted);
    --crm-compact-line: var(--crm-color-border);
    --crm-compact-control-line: var(--crm-color-control-border);
    --crm-compact-surface: var(--crm-color-surface);
    --crm-compact-page: var(--crm-color-canvas);
    display: grid;
    min-width: 0;
    gap: 12px;
    color: var(--crm-compact-ink);
    font-size: 13px;
}
.crm-v2026 .crm-compact-head {
    display: flex;
    min-width: 0;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
}
.crm-v2026 .crm-compact-head-copy {
    display: grid;
    min-width: 0;
    gap: 3px;
}
.crm-v2026 .crm-compact-title {
    margin: 0;
    color: var(--crm-compact-ink);
    font-size: 20px;
    line-height: 1.25;
    letter-spacing: -.015em;
}
.crm-v2026 .crm-compact-copy {
    margin: 0;
    color: var(--crm-compact-copy);
    font-size: 12px;
    line-height: 1.45;
}
.crm-v2026 .crm-compact-actions {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.crm-v2026 .crm-compact-action {
    display: inline-flex;
    min-height: 32px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 5px 11px;
    border: 1px solid var(--crm-compact-primary);
    border-radius: 6px;
    background: var(--crm-compact-primary);
    color: var(--crm-compact-surface);
    font-size: 12px;
    font-weight: 650;
    text-decoration: none;
}
.crm-v2026 .crm-compact-action.crm-compact-action--secondary {
    border-color: var(--crm-compact-control-line);
    background: var(--crm-compact-surface);
    color: var(--crm-compact-primary-strong);
}
.crm-v2026 .crm-compact-action:hover {
    border-color: var(--crm-compact-primary-strong);
    background: var(--crm-compact-primary-strong);
    color: var(--crm-compact-surface);
    box-shadow: none;
    transform: none;
}
.crm-v2026 .crm-compact-action.crm-compact-action--secondary:hover {
    border-color: var(--crm-compact-primary);
    background: var(--crm-compact-page);
    color: var(--crm-compact-primary-strong);
}
.crm-v2026 .crm-compact-tabs {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 4px;
    overflow-x: auto;
    padding: 3px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 8px;
    background: var(--crm-compact-page);
    scrollbar-width: thin;
}
.crm-v2026 .crm-compact-tab {
    display: inline-flex;
    min-height: 32px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
    padding: 5px 10px;
    border-radius: 6px;
    color: var(--crm-compact-copy);
    font-size: 12px;
    font-weight: 650;
    text-decoration: none;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-tab:hover {
    background: var(--crm-compact-surface);
    color: var(--crm-compact-primary-strong);
}
.crm-v2026 .crm-compact-tab.active {
    background: var(--crm-compact-primary);
    color: var(--crm-compact-surface);
}
.crm-v2026 .crm-compact-action:focus-visible,
.crm-v2026 .crm-compact-tab:focus-visible,
.crm-v2026 .crm-compact-row:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--crm-compact-primary) 34%, transparent);
    outline-offset: 2px;
}
.crm-v2026 .crm-compact-list {
    display: grid;
    min-width: 0;
    gap: 6px;
}
.crm-v2026 .crm-compact-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    min-width: 0;
    align-items: center;
    gap: 12px;
    padding: 9px 11px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 8px;
    background: var(--crm-compact-surface);
    color: inherit;
    text-decoration: none;
}
.crm-v2026 .crm-compact-row:hover {
    border-color: var(--crm-compact-control-line);
    background: var(--crm-compact-page);
}
.crm-v2026 .crm-compact-row--danger {
    box-shadow: inset 3px 0 var(--crm-compact-danger);
}
.crm-v2026 .crm-compact-row-main {
    display: grid;
    min-width: 0;
    gap: 3px;
}
.crm-v2026 .crm-compact-row-title {
    min-width: 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-ink);
    font-weight: 700;
    line-height: 1.35;
}
.crm-v2026 .crm-compact-meta {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 5px;
    flex-wrap: wrap;
    color: var(--crm-compact-copy);
    font-size: 11px;
    line-height: 1.35;
}
.crm-v2026 .crm-compact-row-side {
    justify-content: flex-end;
}
.crm-v2026 .crm-compact-badge {
    display: inline-flex;
    min-height: 22px;
    box-sizing: border-box;
    align-items: center;
    padding: 2px 7px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 999px;
    background: var(--crm-compact-page);
    color: var(--crm-compact-primary-strong);
    font-size: 11px;
    font-weight: 650;
}
.crm-v2026 .crm-compact-badge--danger {
    border-color: color-mix(in srgb, var(--crm-compact-danger) 35%, var(--crm-compact-line));
    color: var(--crm-compact-danger);
}
.crm-v2026 .crm-compact-empty {
    padding: 18px;
    border: 1px dashed var(--crm-compact-control-line);
    border-radius: 8px;
    background: var(--crm-compact-page);
    color: var(--crm-compact-copy);
    text-align: center;
}
.crm-v2026 .crm-compact-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
}
.crm-v2026 .crm-compact-metric {
    display: grid;
    min-width: 0;
    gap: 2px;
    padding: 9px 10px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 8px;
    background: var(--crm-compact-surface);
}
.crm-v2026 .crm-compact-metric-value {
    overflow-wrap: anywhere;
    color: var(--crm-compact-primary-strong);
    font-size: 18px;
    line-height: 1.2;
}
.crm-v2026 .crm-compact-metric-label {
    color: var(--crm-compact-copy);
    font-size: 11px;
    line-height: 1.3;
}
.crm-v2026 .crm-compact-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.45fr) minmax(220px, .55fr);
    min-width: 0;
    gap: 8px;
}
.crm-v2026 .crm-compact-surface {
    min-width: 0;
    padding: 11px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 8px;
    background: var(--crm-compact-surface);
}
.crm-v2026 .crm-compact-surface-title {
    margin: 0 0 8px;
    color: var(--crm-compact-ink);
    font-size: 14px;
}
.crm-v2026 .crm-compact-table-wrap {
    max-width: 100%;
    overflow-x: auto;
}
.crm-v2026 .crm-compact-table {
    width: 100%;
    min-width: 560px;
    border: 0;
    border-radius: 0;
    border-collapse: collapse;
    background: transparent;
    box-shadow: none;
    font-size: 12px;
}
.crm-v2026 .crm-compact-table-head {
    padding: 7px 8px;
    border-bottom: 1px solid var(--crm-compact-control-line);
    background: var(--crm-compact-page);
    color: var(--crm-compact-copy);
    font-size: 11px;
    font-weight: 650;
    letter-spacing: 0;
    text-align: left;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-table-cell {
    padding: 7px 8px;
    border-bottom: 1px solid var(--crm-compact-line);
    color: var(--crm-compact-ink);
    text-align: left;
}
.crm-v2026 .crm-compact-table-row:hover {
    background: var(--crm-compact-page);
}
.crm-v2026 .crm-compact-table-link {
    color: var(--crm-compact-primary-strong);
    font-weight: 650;
}
.crm-v2026 .crm-compact-table-empty {
    padding: 18px 8px;
    color: var(--crm-compact-muted);
    text-align: center;
}
.crm-v2026 .crm-compact-assumption-list {
    display: grid;
    gap: 4px;
    margin: 8px 0;
    padding-left: 18px;
    color: var(--crm-compact-copy);
    font-size: 12px;
}
.crm-v2026 .crm-compact-assumption {
    padding-left: 2px;
}
.crm-v2026 .crm-compact-summary {
    margin: 8px 0;
    color: var(--crm-compact-ink);
    font-size: 12px;
}
@media (max-width: 850px) {
    .crm-v2026 .crm-compact-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .crm-v2026 .crm-compact-layout { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 899px) {
    .crm-v2026 .crm-compact-action,
    .crm-v2026 .crm-compact-tab,
    .crm-v2026 .crm-compact-table-link { min-height: 44px; }
    .crm-v2026 .crm-compact-table-link { display: inline-flex; align-items: center; }
}
@media (max-width: 640px) {
    .crm-v2026 .crm-compact-page { gap: 10px; }
    .crm-v2026 .crm-compact-head { align-items: stretch; flex-direction: column; }
    .crm-v2026 .crm-compact-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .crm-v2026 .crm-compact-action { width: 100%; }
    .crm-v2026 .crm-compact-row { grid-template-columns: minmax(0, 1fr); align-items: start; }
    .crm-v2026 .crm-compact-row-side { justify-content: flex-start; }
    .crm-v2026 .crm-compact-badge { min-height: 28px; }
    .crm-v2026 .crm-compact-table { display: block; width: 100%; min-width: 0; }
    .crm-v2026 .crm-compact-table-head-group { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
    .crm-v2026 .crm-compact-table-body { display: grid; grid-template-columns: minmax(0, 1fr); gap: 6px; }
    .crm-v2026 .crm-compact-table-row { display: grid; width: 100%; min-width: 0; box-sizing: border-box; padding: 3px 9px; border: 1px solid var(--crm-compact-line); border-radius: 8px; background: var(--crm-compact-surface); box-shadow: none; }
    .crm-v2026 .crm-compact-table-cell { display: grid; grid-template-columns: minmax(82px, .38fr) minmax(0, 1fr); gap: 8px; width: auto; min-width: 0; padding: 7px 0; border: 0; border-bottom: 1px solid var(--crm-compact-line); white-space: normal; overflow-wrap: anywhere; }
    .crm-v2026 .crm-compact-table-cell::before { content: attr(data-label); color: var(--crm-compact-muted); font-size: 10px; font-weight: 700; letter-spacing: .03em; text-transform: uppercase; }
    .crm-v2026 .crm-compact-table-cell:last-child { border-bottom: 0; }
    .crm-v2026 .crm-compact-table-empty { display: block; padding: 16px 0; }
    .crm-v2026 .crm-compact-table-empty::before { content: none; }
}
@media (max-width: 480px) {
    .crm-v2026 .crm-compact-actions { grid-template-columns: minmax(0, 1fr); }
}

/* TASK-327: compact task and automation family. */
.crm-v2026 .crm-compact-leaf {
    width: 100%;
    max-width: 920px;
    box-sizing: border-box;
}
.crm-v2026 .crm-compact-form {
    display: grid;
    min-width: 0;
    gap: 8px;
    margin: 0;
}
.crm-v2026 .crm-compact-form-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    min-width: 0;
    gap: 8px;
}
.crm-v2026 .crm-compact-field.crm-compact-field--wide {
    grid-column: 1 / -1;
}
.crm-v2026 .crm-compact-fieldset {
    display: grid;
    min-width: 0;
    gap: 8px;
    margin: 0;
    padding: 11px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 8px;
    background: var(--crm-compact-surface);
}
.crm-v2026 .crm-compact-legend {
    padding: 0 5px;
    color: var(--crm-compact-ink);
    font-size: 13px;
    font-weight: 700;
}
.crm-v2026 .crm-compact-accordion {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--crm-compact-line);
    border-radius: 8px;
    background: var(--crm-compact-surface);
}
.crm-v2026 .crm-compact-accordion-summary {
    display: flex;
    min-height: 36px;
    box-sizing: border-box;
    align-items: center;
    padding: 7px 10px;
    color: var(--crm-compact-ink);
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
}
.crm-v2026 .crm-compact-accordion[open] > .crm-compact-accordion-summary {
    border-bottom: 1px solid var(--crm-compact-line);
    color: var(--crm-compact-primary-strong);
}
.crm-v2026 .crm-compact-fieldset.crm-compact-fieldset--nested {
    border: 0;
    border-radius: 0;
}
.crm-v2026 .crm-compact-visually-hidden {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip-path: inset(50%);
    white-space: nowrap;
}
.crm-v2026 .crm-compact-field {
    display: grid;
    min-width: 0;
    gap: 3px;
}
.crm-v2026 .crm-compact-field label {
    color: var(--crm-compact-ink);
    font-size: 12px;
    font-weight: 650;
}
.crm-v2026 .crm-compact-field input:not([type="checkbox"]):not([type="radio"]),
.crm-v2026 .crm-compact-field select,
.crm-v2026 .crm-compact-field textarea {
    width: 100%;
    min-width: 0;
    min-height: 32px;
    box-sizing: border-box;
    margin: 0;
    padding: 5px 9px;
    border: 1px solid var(--crm-compact-control-line);
    border-radius: 6px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-ink);
    font-size: 13px;
}
.crm-v2026 .crm-compact-field textarea {
    min-height: 68px;
    resize: vertical;
}
.crm-v2026 .crm-compact-field input:focus-visible,
.crm-v2026 .crm-compact-field select:focus-visible,
.crm-v2026 .crm-compact-field textarea:focus-visible {
    border-color: var(--crm-compact-primary);
    outline: 3px solid color-mix(in srgb, var(--crm-compact-primary) 24%, transparent);
    outline-offset: 1px;
}
.crm-v2026 .crm-compact-field ul {
    display: grid;
    gap: 2px;
    margin: 0;
    padding: 0;
    color: var(--crm-compact-danger);
    font-size: 11px;
    list-style: none;
}
.crm-v2026 .crm-compact-help {
    margin: 0;
    color: var(--crm-compact-copy);
    font-size: 11px;
    line-height: 1.4;
}
.crm-v2026 .crm-compact-field-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-width: 0;
    gap: 8px;
}
.crm-v2026 .crm-compact-field-grid.crm-compact-field-grid--three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.crm-v2026 .crm-compact-field-grid-span {
    grid-column: 1 / -1;
}
.crm-v2026 .crm-compact-choice-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    min-width: 0;
    gap: 8px;
}
.crm-v2026 .crm-compact-choice-list {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 4px;
    padding: 8px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 7px;
    background: var(--crm-compact-page);
    color: var(--crm-compact-ink);
    font-size: 12px;
}
.crm-v2026 .crm-compact-choice-list label {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    gap: 6px;
    line-height: 1.35;
}
.crm-v2026 .crm-compact-choice-list input {
    width: 15px;
    min-width: 15px;
    height: 15px;
    margin: 1px 0 0;
}
.crm-v2026 .crm-compact-check {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    gap: 7px;
    color: var(--crm-compact-ink);
    font-size: 12px;
    line-height: 1.4;
}
.crm-v2026 .crm-compact-check label {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    gap: 7px;
}
.crm-v2026 .crm-compact-check input {
    width: 16px;
    min-width: 16px;
    height: 16px;
    margin: 1px 0 0;
}
.crm-v2026 .crm-compact-choice-list label,
.crm-v2026 .crm-compact-check,
.crm-v2026 .crm-compact-check label {
    min-height: 32px;
    align-items: center;
}
.crm-v2026 .crm-compact-callout {
    margin: 0;
    padding: 8px 10px;
    border: 1px solid color-mix(in srgb, var(--crm-compact-primary) 22%, var(--crm-compact-line));
    border-radius: 7px;
    background: color-mix(in srgb, var(--crm-compact-primary) 5%, var(--crm-compact-surface));
    color: var(--crm-compact-copy);
    font-size: 11px;
    line-height: 1.45;
}
.crm-v2026 .crm-compact-callout.crm-compact-callout--warning {
    border-color: color-mix(in srgb, var(--crm-compact-primary-strong) 30%, var(--crm-compact-line));
    color: var(--crm-compact-ink);
}
.crm-v2026 .crm-compact-callout.crm-compact-callout--danger {
    border-color: color-mix(in srgb, var(--crm-compact-danger) 35%, var(--crm-compact-line));
    background: color-mix(in srgb, var(--crm-compact-danger) 5%, var(--crm-compact-surface));
    color: var(--crm-compact-danger);
}
.crm-v2026 .crm-compact-section-stack {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 8px;
}
.crm-v2026 .crm-compact-form-actions {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}
.crm-v2026 .crm-compact-inline-form {
    display: inline-flex;
    margin: 0;
}
.crm-v2026 .crm-compact-mini-form {
    display: grid;
    gap: 7px;
    margin: 8px 0 0;
}
.crm-v2026 .crm-compact-mini-form > p {
    display: grid;
    min-width: 0;
    gap: 3px;
    margin: 0;
}
.crm-v2026 .crm-compact-mini-form label {
    color: var(--crm-compact-ink);
    font-size: 11px;
    font-weight: 650;
}
.crm-v2026 .crm-compact-mini-form input:not([type="checkbox"]):not([type="radio"]),
.crm-v2026 .crm-compact-mini-form select,
.crm-v2026 .crm-compact-mini-form textarea {
    width: 100%;
    min-width: 0;
    min-height: 32px;
    box-sizing: border-box;
    margin: 0;
    padding: 5px 9px;
    border: 1px solid var(--crm-compact-control-line);
    border-radius: 6px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-ink);
    font-size: 12px;
}
.crm-v2026 .crm-compact-command-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    min-width: 0;
    gap: 8px;
    padding-top: 3px;
}
.crm-v2026 .crm-compact-back {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    color: var(--crm-compact-primary-strong);
    font-size: 12px;
    font-weight: 650;
    text-decoration: none;
}
.crm-v2026 .crm-compact-surface-head {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
}
.crm-v2026 .crm-compact-link {
    display: inline-flex;
    min-height: 28px;
    align-items: center;
    flex: 0 0 auto;
    color: var(--crm-compact-primary-strong);
    font-size: 11px;
    font-weight: 650;
}
.crm-v2026 .crm-compact-note {
    margin: 8px 0 0;
    color: var(--crm-compact-copy);
    font-size: 11px;
    line-height: 1.45;
    overflow-wrap: anywhere;
    white-space: pre-wrap;
}
.crm-v2026 .crm-compact-definition-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1px;
    margin: 0;
    overflow: hidden;
    border: 1px solid var(--crm-compact-line);
    border-radius: 7px;
    background: var(--crm-compact-line);
}
.crm-v2026 .crm-compact-definition-list > div {
    display: grid;
    min-width: 0;
    gap: 2px;
    padding: 8px;
    background: var(--crm-compact-surface);
}
.crm-v2026 .crm-compact-definition-term {
    color: var(--crm-compact-muted);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .03em;
    text-transform: uppercase;
}
.crm-v2026 .crm-compact-definition-value {
    min-width: 0;
    margin: 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-ink);
    font-size: 12px;
    font-weight: 650;
}
.crm-v2026 .crm-compact-bullet-list {
    margin: 8px 0 0;
    padding-left: 18px;
    color: var(--crm-compact-copy);
    font-size: 11px;
}
.crm-v2026 .crm-compact-title {
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-list-stack {
    display: grid;
    min-width: 0;
    gap: 5px;
}
.crm-v2026 .crm-compact-chevron {
    color: var(--crm-compact-muted);
    font-size: 17px;
}
.crm-v2026 .crm-compact-recipe-tabs {
    align-items: stretch;
}
.crm-v2026 .crm-compact-recipe-tab {
    display: grid;
    min-width: 180px;
    max-width: 260px;
    justify-items: start;
    gap: 1px;
    white-space: normal;
}
.crm-v2026 .crm-compact-recipe-title {
    color: inherit;
    font-size: 12px;
}
.crm-v2026 .crm-compact-recipe-copy {
    color: inherit;
    font-size: 10px;
    font-weight: 450;
    line-height: 1.3;
}
.crm-v2026 .crm-compact-timeline {
    display: grid;
    min-width: 0;
    gap: 6px;
}
.crm-v2026 .crm-compact-timeline-item {
    min-width: 0;
    padding: 8px 9px;
    border: 1px solid var(--crm-compact-line);
    border-left: 3px solid var(--crm-compact-primary);
    border-radius: 0 7px 7px 0;
    background: var(--crm-compact-page);
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-timeline-item[data-status="failed"],
.crm-v2026 .crm-compact-timeline-item[data-status="blocked"],
.crm-v2026 .crm-compact-timeline-item[data-status="suppressed"],
.crm-v2026 .crm-compact-timeline-item[data-status="unknown_delivery"],
.crm-v2026 .crm-compact-timeline-item[data-status="skipped"] {
    border-left-color: var(--crm-compact-danger);
}
.crm-v2026 .crm-compact-timeline-item > p {
    margin-top: 4px;
}
.crm-v2026 .crm-compact-badge[data-status="failed"],
.crm-v2026 .crm-compact-badge[data-status="paused"],
.crm-v2026 .crm-compact-badge[data-status="blocked"] {
    border-color: color-mix(in srgb, var(--crm-compact-danger) 35%, var(--crm-compact-line));
    color: var(--crm-compact-danger);
}
.crm-v2026 .crm-compact-row[data-status="past"] {
    border-color: color-mix(in srgb, var(--crm-compact-primary-strong) 30%, var(--crm-compact-line));
}
.crm-v2026 .crm-compact-code {
    margin-top: 5px;
    padding: 6px 7px;
    border-radius: 5px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-copy);
    font-family: monospace;
    font-size: 11px;
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-attempt-list {
    display: grid;
    gap: 3px;
    margin: 7px 0 0;
    padding-left: 18px;
    color: var(--crm-compact-copy);
    font-size: 11px;
}
.crm-v2026 .crm-compact-disclosure {
    margin-top: 7px;
    border-top: 1px solid var(--crm-compact-line);
}
.crm-v2026 .crm-compact-disclosure summary {
    display: flex;
    min-height: 32px;
    align-items: center;
    color: var(--crm-compact-primary-strong);
    font-size: 11px;
    font-weight: 650;
    cursor: pointer;
}
@media (max-width: 760px) {
    .crm-v2026 .crm-compact-form-grid,
    .crm-v2026 .crm-compact-field-grid,
    .crm-v2026 .crm-compact-field-grid.crm-compact-field-grid--three,
    .crm-v2026 .crm-compact-choice-grid { grid-template-columns: minmax(0, 1fr); }
    .crm-v2026 .crm-compact-definition-list,
    .crm-v2026 .crm-compact-command-grid { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 899px) {
    .crm-v2026 .crm-compact-field input:not([type="checkbox"]):not([type="radio"]),
    .crm-v2026 .crm-compact-field select,
    .crm-v2026 .crm-compact-field textarea,
    .crm-v2026 .crm-compact-mini-form input:not([type="checkbox"]):not([type="radio"]),
    .crm-v2026 .crm-compact-mini-form select,
    .crm-v2026 .crm-compact-mini-form textarea,
    .crm-v2026 .crm-compact-back,
    .crm-v2026 .crm-compact-link,
    .crm-v2026 .crm-compact-disclosure summary { min-height: 44px; }
    .crm-v2026 .crm-compact-accordion-summary { min-height: 44px; }
    .crm-v2026 .crm-compact-choice-list label,
    .crm-v2026 .crm-compact-check,
    .crm-v2026 .crm-compact-check label { min-height: 44px; align-items: center; }
    .crm-v2026 .crm-compact-form-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 480px) {
    .crm-v2026 .crm-compact-form-actions { grid-template-columns: minmax(0, 1fr); }
}

.crm-v2026 .crm-compact-lead-workspace {
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}
.crm-v2026 .crm-compact-feedback {
    min-height: 0;
    margin: 0;
    color: var(--crm-compact-danger);
    font-size: 12px;
    line-height: 1.4;
}
.crm-v2026 .crm-compact-feedback:empty {
    display: none;
}
.crm-v2026 .crm-compact-lead-board {
    display: grid;
    min-width: 0;
    gap: 10px;
}
.crm-v2026 .crm-compact-lead-pipeline {
    display: grid;
    min-width: 0;
    gap: 7px;
}
.crm-v2026 .crm-compact-lead-pipeline-head {
    display: flex;
    min-width: 0;
    align-items: end;
    justify-content: space-between;
    gap: 10px;
}
.crm-v2026 .crm-compact-lead-pipeline-head .crm-compact-surface-title {
    margin: 0;
}
.crm-v2026 .crm-compact-lead-stage-picker {
    display: none;
    min-width: 0;
    gap: 3px;
    color: var(--crm-compact-copy);
    font-size: 11px;
    font-weight: 650;
}
.crm-v2026 .crm-compact-lead-stage-picker select {
    width: 100%;
    min-width: 0;
    min-height: 32px;
    box-sizing: border-box;
    padding: 5px 9px;
    border: 1px solid var(--crm-compact-control-line);
    border-radius: 6px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-ink);
    font-size: 13px;
}
.crm-v2026 .crm-compact-lead-columns {
    display: grid;
    grid-auto-columns: minmax(210px, 1fr);
    grid-auto-flow: column;
    min-width: 0;
    gap: 7px;
    overflow-x: auto;
    overscroll-behavior-inline: contain;
    padding: 1px 1px 6px;
    scrollbar-width: thin;
}
.crm-v2026 .crm-compact-lead-stage {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 5px;
    padding: 7px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 8px;
    background: var(--crm-compact-page);
}
.crm-v2026 .crm-compact-lead-stage[aria-busy="true"] {
    opacity: .72;
}
.crm-v2026 .crm-compact-lead-stage-head {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto;
    min-height: 28px;
    align-items: center;
    gap: 6px;
}
.crm-v2026 .crm-compact-lead-stage-head h3 {
    min-width: 0;
    margin: 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-ink);
    font-size: 12px;
    line-height: 1.3;
}
.crm-v2026 .crm-compact-lead-stage-indicator {
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: var(--crm-compact-primary);
}
.crm-v2026 .crm-compact-lead-stage[data-stage-tone="success"] .crm-compact-lead-stage-indicator {
    background: var(--crm-compact-primary-strong);
}
.crm-v2026 .crm-compact-lead-stage[data-stage-tone="warning"] .crm-compact-lead-stage-indicator {
    background: color-mix(in srgb, var(--crm-compact-primary) 58%, var(--crm-compact-control-line));
}
.crm-v2026 .crm-compact-lead-stage[data-stage-tone="danger"] .crm-compact-lead-stage-indicator {
    background: var(--crm-compact-danger);
}
.crm-v2026 .crm-compact-lead-cards {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 5px;
}
.crm-v2026 .crm-compact-lead-card {
    display: grid;
    min-width: 0;
    gap: 5px;
    padding: 8px 9px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 7px;
    background: var(--crm-compact-surface);
    color: inherit;
    text-decoration: none;
}
.crm-v2026 .crm-compact-lead-card:hover {
    border-color: var(--crm-compact-primary);
    background: var(--crm-compact-surface);
    box-shadow: 0 4px 14px color-mix(in srgb, var(--crm-compact-primary) 9%, transparent);
}
.crm-v2026 .crm-compact-lead-card:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--crm-compact-primary) 34%, transparent);
    outline-offset: 1px;
}
.crm-v2026 .crm-compact-lead-card[data-dragging="true"] {
    opacity: .55;
}
.crm-v2026 .crm-compact-lead-card-main {
    display: grid;
    min-width: 0;
    gap: 2px;
}
.crm-v2026 .crm-compact-lead-card-main strong {
    overflow-wrap: anywhere;
    color: var(--crm-compact-ink);
    font-size: 12px;
    line-height: 1.3;
}
.crm-v2026 .crm-compact-lead-card-main span {
    overflow-wrap: anywhere;
    color: var(--crm-compact-copy);
    font-size: 11px;
}
.crm-v2026 .crm-compact-lead-card-meta {
    display: flex;
    min-width: 0;
    justify-content: space-between;
    gap: 6px;
    color: var(--crm-compact-muted);
    font-size: 10px;
    line-height: 1.3;
}
.crm-v2026 .crm-compact-lead-card-meta time {
    text-align: right;
}
.crm-v2026 .crm-compact-lead-empty {
    margin: 0;
    padding: 10px 7px;
    color: var(--crm-compact-muted);
    font-size: 11px;
    line-height: 1.35;
    text-align: center;
}
.crm-v2026 .crm-compact-lead-dialog {
    width: min(720px, calc(100vw - 32px));
    max-width: 100%;
    max-height: calc(100vh - 32px);
    box-sizing: border-box;
    overflow: auto;
    padding: 14px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 10px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-ink);
    box-shadow: 0 18px 48px color-mix(in srgb, var(--crm-compact-ink) 18%, transparent);
}
.crm-v2026 .crm-compact-lead-dialog--detail {
    width: min(960px, calc(100vw - 32px));
}
.crm-v2026 .crm-compact-lead-dialog::backdrop {
    background: color-mix(in srgb, var(--crm-compact-ink) 28%, transparent);
}
.crm-v2026 .crm-compact-lead-dialog-head {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}
.crm-v2026 .crm-compact-lead-dialog-close.crm-compact-lead-dialog-close {
    display: inline-flex;
    width: 30px;
    min-width: 30px;
    height: 30px;
    min-height: 30px;
    align-items: center;
    justify-content: center;
    padding: 0;
    border: 1px solid var(--crm-compact-control-line);
    border-radius: 6px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-copy);
    font-size: 18px;
    line-height: 1;
}
.crm-v2026 .crm-compact-lead-dialog-close.crm-compact-lead-dialog-close:hover {
    border-color: var(--crm-compact-primary);
    color: var(--crm-compact-primary-strong);
}
.crm-v2026 .crm-compact-lead-dialog-close.crm-compact-lead-dialog-close:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--crm-compact-primary) 34%, transparent);
    outline-offset: 1px;
}
.crm-v2026 .crm-compact-lead-detail-content {
    display: grid;
    min-width: 0;
    gap: 9px;
}
.crm-v2026 .crm-compact-lead-loading {
    min-height: 160px;
    margin: 0;
    display: grid;
    place-items: center;
    color: var(--crm-compact-copy);
    font-size: 12px;
}
.crm-v2026 .crm-compact-lead-eyebrow {
    margin: 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-primary-strong);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.crm-v2026 .crm-compact-lead-detail-grid {
    display: grid;
    grid-template-columns: minmax(220px, .65fr) minmax(0, 1.35fr);
    min-width: 0;
    gap: 8px;
}
.crm-v2026 .crm-compact-lead-summary {
    display: grid;
    align-content: start;
    gap: 8px;
}
.crm-v2026 .crm-compact-lead-summary .crm-compact-definition-list {
    grid-template-columns: minmax(0, 1fr);
}
.crm-v2026 .crm-compact-lead-tabs-section {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 8px;
}
.crm-v2026 .crm-compact-lead-panel {
    display: grid;
    min-width: 0;
    gap: 8px;
}
.crm-v2026 .crm-compact-lead-events {
    display: grid;
    min-width: 0;
    gap: 5px;
    max-height: 260px;
    overflow: auto;
}
.crm-v2026 .crm-compact-lead-event {
    display: grid;
    min-width: 0;
    gap: 2px;
    padding: 7px 8px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 7px;
    background: var(--crm-compact-page);
}
.crm-v2026 .crm-compact-lead-event strong {
    overflow-wrap: anywhere;
    color: var(--crm-compact-ink);
    font-size: 11px;
}
.crm-v2026 .crm-compact-lead-event small {
    overflow-wrap: anywhere;
    color: var(--crm-compact-muted);
    font-size: 10px;
}
.crm-v2026 .crm-compact-lead-event p {
    margin: 2px 0 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-copy);
    font-size: 11px;
    line-height: 1.4;
}
.crm-v2026 .crm-compact-lead-appointments {
    display: grid;
    min-width: 0;
    gap: 5px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.crm-v2026 .crm-compact-lead-appointment {
    display: grid;
    min-width: 0;
    gap: 2px;
    padding: 7px 8px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 7px;
    background: var(--crm-compact-page);
    color: var(--crm-compact-copy);
    font-size: 11px;
}
.crm-v2026 .crm-compact-lead-appointment strong {
    color: var(--crm-compact-ink);
}
@media (max-width: 820px) {
    .crm-v2026 .crm-compact-lead-pipeline-head { align-items: stretch; flex-direction: column; }
    .crm-v2026 .crm-compact-lead-stage-picker { display: grid; }
    .crm-v2026 .crm-compact-lead-stage-picker select { min-height: 44px; }
    .crm-v2026 .crm-compact-lead-columns { display: grid; grid-auto-flow: row; grid-template-columns: minmax(0, 1fr); overflow: visible; padding: 0; }
    .crm-v2026 .crm-compact-lead-stage[hidden] { display: none; }
    .crm-v2026 .crm-compact-lead-card { min-height: 44px; }
    .crm-v2026 .crm-compact-lead-dialog-close.crm-compact-lead-dialog-close { width: 44px; min-width: 44px; height: 44px; min-height: 44px; }
    .crm-v2026 .crm-compact-lead-detail-grid { grid-template-columns: minmax(0, 1fr); }
    .crm-v2026 .crm-compact-lead-events { max-height: none; }
}
@media (max-width: 520px) {
    .crm-v2026 .crm-compact-lead-dialog { width: calc(100vw - 16px); max-height: calc(100vh - 16px); padding: 10px; }
    .crm-v2026 .crm-compact-lead-dialog-head { gap: 8px; }
    .crm-v2026 .crm-compact-lead-card-meta { align-items: flex-start; flex-direction: column; gap: 2px; }
    .crm-v2026 .crm-compact-lead-card-meta time { text-align: left; }
}
.crm-v2026 .crm-compact-email-workspace {
    --crm-compact-primary-soft: color-mix(in srgb, var(--crm-compact-primary) 9%, var(--crm-compact-surface));
    --crm-compact-primary-contrast: var(--crm-compact-surface);
    display: grid;
    min-width: 0;
    min-height: min(720px, calc(100dvh - 96px));
    grid-template-rows: auto minmax(0, 1fr);
    gap: 0;
    overflow: hidden;
    border: 1px solid var(--crm-compact-line);
    border-radius: 10px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-ink);
}
.crm-v2026 .crm-compact-email-state {
    grid-template-rows: minmax(0, 1fr);
}
.crm-v2026 .crm-compact-email-topbar {
    display: flex;
    min-width: 0;
    min-height: 52px;
    align-items: center;
    gap: 12px;
    padding: 8px 10px;
    border-bottom: 1px solid var(--crm-compact-line);
}
.crm-v2026 .crm-compact-email-heading {
    display: flex;
    min-width: 116px;
    align-items: center;
    gap: 8px;
}
.crm-v2026 .crm-compact-email-heading h1 {
    margin: 0;
    color: var(--crm-compact-ink);
    font-size: 17px;
    line-height: 1.25;
}
.crm-v2026 .crm-compact-email-status {
    padding: 3px 6px;
    border-radius: 999px;
    background: var(--crm-compact-primary-soft);
    color: var(--crm-compact-primary-strong);
    font-size: 10px;
    font-weight: 700;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-email-channels {
    display: flex;
    align-items: center;
    gap: 3px;
    padding: 3px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 7px;
    background: var(--crm-compact-page);
}
.crm-v2026 .crm-compact-email-channel {
    display: inline-flex;
    min-width: 34px;
    min-height: 34px;
    align-items: center;
    justify-content: center;
    padding: 0 9px;
    border-radius: 5px;
    color: var(--crm-compact-copy);
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
}
.crm-v2026 .crm-compact-email-channel.is-active {
    background: var(--crm-compact-primary);
    color: var(--crm-compact-primary-contrast);
}
.crm-v2026 .crm-compact-email-actions {
    display: flex;
    min-width: 0;
    margin-left: auto;
    align-items: center;
    justify-content: flex-end;
    gap: 5px;
}
.crm-v2026 .crm-compact-email-action,
.crm-v2026 .crm-compact-email-primary,
.crm-v2026 .crm-compact-email-info-link {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 0 10px;
    border: 1px solid var(--crm-compact-control-line);
    border-radius: 6px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-primary-strong);
    font-size: 11px;
    font-weight: 700;
    line-height: 1.25;
    text-align: center;
    text-decoration: none;
}
.crm-v2026 .crm-compact-email-primary {
    border-color: var(--crm-compact-primary);
    background: var(--crm-compact-primary);
    color: var(--crm-compact-primary-contrast);
}
.crm-v2026 .crm-compact-email-action:hover,
.crm-v2026 .crm-compact-email-info-link:hover {
    border-color: var(--crm-compact-primary);
    background: var(--crm-compact-primary-soft);
}
.crm-v2026 .crm-compact-email-action:focus-visible,
.crm-v2026 .crm-compact-email-primary:focus-visible,
.crm-v2026 .crm-compact-email-info-link:focus-visible,
.crm-v2026 .crm-compact-email-channel:focus-visible,
.crm-v2026 .crm-compact-email-conversation:focus-visible,
.crm-v2026 .crm-compact-email-account:focus-visible,
.crm-v2026 .crm-compact-email-back:focus-visible,
.crm-v2026 .crm-compact-email-icon:focus-visible,
.crm-v2026 .crm-compact-email-send:focus-visible,
.crm-v2026 .crm-compact-email-discard:focus-visible,
.crm-v2026 .crm-compact-email-forward:focus-visible {
    outline: 3px solid color-mix(in srgb, var(--crm-compact-primary) 34%, transparent);
    outline-offset: 1px;
}
.crm-v2026 .crm-compact-email-empty {
    display: grid;
    max-width: 420px;
    margin: auto;
    justify-items: center;
    gap: 8px;
    padding: 20px;
    text-align: center;
}
.crm-v2026 .crm-compact-email-empty-icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 10px;
    background: var(--crm-compact-primary-soft);
    color: var(--crm-compact-primary-strong);
    font-size: 20px;
}
.crm-v2026 .crm-compact-email-empty h2 {
    margin: 0;
    font-size: 16px;
}
.crm-v2026 .crm-compact-email-empty p {
    margin: 0 0 4px;
    color: var(--crm-compact-muted);
    font-size: 12px;
    line-height: 1.45;
}
.crm-v2026 .crm-compact-email-layout {
    display: grid;
    min-width: 0;
    min-height: 0;
    grid-template-columns: 272px minmax(360px, 1fr) 220px;
}
.crm-v2026 .crm-compact-email-list {
    display: grid;
    min-width: 0;
    min-height: 0;
    grid-template-rows: auto minmax(0, 1fr);
    overflow: hidden;
    border-right: 1px solid var(--crm-compact-line);
    background: var(--crm-compact-page);
}
.crm-v2026 .crm-compact-email-accounts {
    display: flex;
    min-width: 0;
    gap: 4px;
    padding: 8px;
    overflow-x: auto;
    border-bottom: 1px solid var(--crm-compact-line);
}
.crm-v2026 .crm-compact-email-account {
    display: inline-flex;
    min-width: 0;
    min-height: 34px;
    align-items: center;
    padding: 0 8px;
    border: 1px solid transparent;
    border-radius: 5px;
    color: var(--crm-compact-copy);
    font-size: 10px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-email-account.is-active {
    border-color: var(--crm-compact-control-line);
    background: var(--crm-compact-surface);
    color: var(--crm-compact-primary-strong);
}
.crm-v2026 .crm-compact-email-account-label {
    display: grid;
    min-width: 0;
    gap: 2px;
    padding: 9px 10px;
    border-bottom: 1px solid var(--crm-compact-line);
}
.crm-v2026 .crm-compact-email-account-label span,
.crm-v2026 .crm-compact-email-account-label small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-email-account-label span {
    font-size: 12px;
    font-weight: 700;
}
.crm-v2026 .crm-compact-email-account-label small {
    color: var(--crm-compact-muted);
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-conversations {
    min-height: 0;
    overflow: auto;
    overscroll-behavior: contain;
}
.crm-v2026 .crm-compact-email-conversation {
    display: grid;
    min-width: 0;
    grid-template-columns: 28px minmax(0, 1fr) auto;
    align-items: start;
    gap: 7px;
    padding: 8px 9px;
    border-bottom: 1px solid var(--crm-compact-line);
    color: inherit;
    text-decoration: none;
}
.crm-v2026 .crm-compact-email-conversation:hover,
.crm-v2026 .crm-compact-email-conversation.is-active {
    background: var(--crm-compact-primary-soft);
}
.crm-v2026 .crm-compact-email-conversation.is-active {
    box-shadow: inset 3px 0 0 var(--crm-compact-primary);
}
.crm-v2026 .crm-compact-email-avatar {
    display: grid;
    width: 28px;
    height: 28px;
    place-items: center;
    border-radius: 7px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-primary-strong);
    font-size: 11px;
    font-weight: 800;
}
.crm-v2026 .crm-compact-email-conversation-copy {
    display: grid;
    min-width: 0;
    gap: 2px;
}
.crm-v2026 .crm-compact-email-conversation-copy strong,
.crm-v2026 .crm-compact-email-conversation-copy small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-email-conversation-copy strong {
    font-size: 11px;
}
.crm-v2026 .crm-compact-email-conversation-copy small {
    color: var(--crm-compact-muted);
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-conversation-meta {
    display: grid;
    justify-items: end;
    gap: 4px;
    color: var(--crm-compact-muted);
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-conversation-meta b {
    min-width: 17px;
    padding: 2px 4px;
    border-radius: 999px;
    background: var(--crm-compact-primary);
    color: var(--crm-compact-primary-contrast);
    text-align: center;
}
.crm-v2026 .crm-compact-email-list-empty {
    display: grid;
    justify-items: center;
    gap: 3px;
    padding: 28px 12px;
    color: var(--crm-compact-muted);
    font-size: 11px;
    text-align: center;
}
.crm-v2026 .crm-compact-email-list-empty strong {
    color: var(--crm-compact-copy);
    font-size: 12px;
}
.crm-v2026 .crm-compact-email-thread {
    display: flex;
    min-width: 0;
    min-height: 0;
    flex-direction: column;
    overflow: hidden;
    background: var(--crm-compact-surface);
}
.crm-v2026 .crm-compact-email-thread-head {
    display: flex;
    min-width: 0;
    min-height: 48px;
    align-items: center;
    gap: 8px;
    padding: 7px 9px;
    border-bottom: 1px solid var(--crm-compact-line);
}
.crm-v2026 .crm-compact-email-back {
    display: none;
    width: 34px;
    min-width: 34px;
    height: 34px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--crm-compact-control-line);
    border-radius: 6px;
    color: var(--crm-compact-primary-strong);
    text-decoration: none;
}
.crm-v2026 .crm-compact-email-thread-title {
    display: grid;
    min-width: 0;
    gap: 1px;
}
.crm-v2026 .crm-compact-email-thread-title h2 {
    margin: 0;
    overflow: hidden;
    color: var(--crm-compact-ink);
    font-size: 13px;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-email-thread-title span {
    color: var(--crm-compact-muted);
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-thread-head > .crm-compact-email-action {
    margin-left: auto;
}
.crm-v2026 .crm-compact-email-thread-body {
    display: grid;
    min-width: 0;
    min-height: 0;
    flex: 1 1 auto;
    align-content: start;
    gap: 8px;
    overflow: auto;
    overscroll-behavior: contain;
    padding: 10px;
    background: var(--crm-compact-page);
}
.crm-v2026 .crm-compact-email-message {
    display: grid;
    width: min(86%, 720px);
    min-width: 0;
    gap: 5px;
    padding: 9px 10px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 9px;
    background: var(--crm-compact-surface);
}
.crm-v2026 .crm-compact-email-message.is-outgoing {
    margin-left: auto;
    border-color: color-mix(in srgb, var(--crm-compact-primary) 24%, var(--crm-compact-line));
    background: color-mix(in srgb, var(--crm-compact-primary-soft) 52%, var(--crm-compact-surface));
}
.crm-v2026 .crm-compact-email-message-head {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.crm-v2026 .crm-compact-email-message-head > strong {
    min-width: 0;
    overflow-wrap: anywhere;
    font-size: 11px;
}
.crm-v2026 .crm-compact-email-message-head > span {
    display: flex;
    align-items: center;
    gap: 5px;
    color: var(--crm-compact-muted);
    font-size: 10px;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-email-delivery {
    padding: 2px 5px;
    border-radius: 999px;
    background: var(--crm-compact-primary-soft);
    color: var(--crm-compact-primary-strong);
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-delivery.is-failed,
.crm-v2026 .crm-compact-email-delivery.is-blocked,
.crm-v2026 .crm-compact-email-delivery.is-unknown_delivery {
    background: color-mix(in srgb, var(--crm-compact-danger) 11%, var(--crm-compact-surface));
    color: var(--crm-compact-danger);
}
.crm-v2026 .crm-compact-email-message-subject {
    margin: 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-muted);
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-message-content {
    min-width: 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-copy);
    font-size: 12px;
    line-height: 1.45;
}
.crm-v2026 .crm-compact-email-message-content * {
    max-width: 100%;
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-email-message-content pre,
.crm-v2026 .crm-compact-email-message-content code {
    white-space: pre-wrap;
    word-break: break-word;
}
.crm-v2026 .crm-compact-email-message-content img {
    height: auto;
}
.crm-v2026 .crm-compact-email-message-foot {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 6px;
}
.crm-v2026 .crm-compact-email-attachments {
    display: flex;
    min-width: 0;
    flex-wrap: wrap;
    gap: 4px;
}
.crm-v2026 .crm-compact-email-attachment {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    box-sizing: border-box;
    max-width: 100%;
    overflow: hidden;
    padding: 3px 6px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 5px;
    color: var(--crm-compact-primary-strong);
    font-size: 10px;
    text-overflow: ellipsis;
    text-decoration: none;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-email-forward {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    padding-inline: 6px;
    color: var(--crm-compact-primary-strong);
    font-size: 11px;
    font-weight: 700;
    text-decoration: none;
}
.crm-v2026 .crm-compact-email-problem {
    display: grid;
    gap: 5px;
    padding: 7px;
    border: 1px solid color-mix(in srgb, var(--crm-compact-danger) 24%, var(--crm-compact-line));
    border-radius: 7px;
    background: color-mix(in srgb, var(--crm-compact-danger) 6%, var(--crm-compact-surface));
}
.crm-v2026 .crm-compact-email-problem strong {
    color: var(--crm-compact-danger);
    font-size: 11px;
}
.crm-v2026 .crm-compact-email-problem p {
    margin: 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-copy);
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-retry {
    display: grid;
    justify-items: start;
    gap: 6px;
}
.crm-v2026 .crm-compact-email-retry label {
    display: flex;
    min-height: 34px;
    align-items: flex-start;
    gap: 6px;
    color: var(--crm-compact-copy);
    font-size: 10px;
    line-height: 1.35;
}
.crm-v2026 .crm-compact-email-retry input {
    margin-top: 1px;
}
.crm-v2026 .crm-compact-email-retry button,
.crm-v2026 .crm-compact-email-send {
    min-height: 34px;
    padding: 0 10px;
    border: 1px solid var(--crm-compact-primary);
    border-radius: 6px;
    background: var(--crm-compact-primary);
    color: var(--crm-compact-primary-contrast);
    font: inherit;
    font-size: 11px;
    font-weight: 700;
}
.crm-v2026 .crm-compact-email-history {
    color: var(--crm-compact-copy);
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-history summary {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    cursor: pointer;
    font-weight: 700;
}
.crm-v2026 .crm-compact-email-history ol {
    display: grid;
    gap: 4px;
    margin: 6px 0 0;
    padding-left: 18px;
}
.crm-v2026 .crm-compact-email-history li {
    padding-left: 2px;
}
.crm-v2026 .crm-compact-email-history small {
    display: block;
    color: var(--crm-compact-muted);
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-thread-empty {
    display: grid;
    min-height: 180px;
    place-content: center;
    justify-items: center;
    gap: 4px;
    color: var(--crm-compact-muted);
    font-size: 11px;
}
.crm-v2026 .crm-compact-email-thread-empty > span {
    font-size: 24px;
}
.crm-v2026 .crm-compact-email-thread-empty strong {
    color: var(--crm-compact-copy);
    font-size: 13px;
}
.crm-v2026 .crm-compact-email-thread-empty small {
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-composer {
    flex: 0 0 auto;
    min-width: 0;
    padding: 8px;
    border-top: 1px solid var(--crm-compact-line);
    background: var(--crm-compact-surface);
}
.crm-v2026 .crm-compact-email-composer-shell {
    position: relative;
    display: grid;
    min-width: 0;
    gap: 5px;
}
.crm-v2026 .crm-compact-email-fields {
    display: grid;
    min-width: 0;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 5px;
}
.crm-v2026 .crm-compact-email-fields label {
    display: grid;
    min-width: 0;
    grid-template-columns: 46px minmax(0, 1fr);
    align-items: center;
    gap: 5px;
    color: var(--crm-compact-muted);
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-fields input {
    width: 100%;
    min-width: 0;
    min-height: 34px;
    box-sizing: border-box;
    padding: 4px 7px;
    border: 1px solid var(--crm-compact-control-line);
    border-radius: 5px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-ink);
    font: inherit;
    font-size: 11px;
}
.crm-v2026 .crm-compact-email-reply-row {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    color: var(--crm-compact-copy);
    font-size: 11px;
}
.crm-v2026 .crm-compact-email-reply-row > span {
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-email-reply-row label {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-email-copy {
    color: var(--crm-compact-copy);
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-copy summary {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    cursor: pointer;
    font-weight: 700;
}
.crm-v2026 .crm-compact-email-copy[open] summary {
    margin-bottom: 5px;
}
.crm-v2026 .crm-compact-email-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 3px;
}
.crm-v2026 .crm-compact-email-toolbar[hidden],
.crm-v2026 .crm-compact-email-emoji[hidden],
.crm-v2026 .crm-compact-email-attachment-preview[hidden],
.crm-v2026 .crm-compact-email-retry-draft[hidden],
.crm-v2026 .crm-compact-email-discard[hidden] {
    display: none;
}
.crm-v2026 .crm-compact-email-toolbar button,
.crm-v2026 .crm-compact-email-icon,
.crm-v2026 .crm-compact-email-retry-draft,
.crm-v2026 .crm-compact-email-discard {
    display: inline-flex;
    min-width: 34px;
    min-height: 34px;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 0 7px;
    border: 1px solid var(--crm-compact-control-line);
    border-radius: 5px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-primary-strong);
    font: inherit;
    font-size: 11px;
}
.crm-v2026 .crm-compact-email-editor,
.crm-v2026 .crm-compact-email-composer textarea {
    width: 100%;
    min-width: 0;
    min-height: 68px;
    max-height: 150px;
    box-sizing: border-box;
    overflow: auto;
    padding: 7px 8px;
    border: 1px solid var(--crm-compact-control-line);
    border-radius: 6px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-ink);
    font: inherit;
    font-size: 12px;
    line-height: 1.4;
}
.crm-v2026 .crm-compact-email-editor:focus,
.crm-v2026 .crm-compact-email-composer textarea:focus,
.crm-v2026 .crm-compact-email-fields input:focus {
    border-color: var(--crm-compact-primary);
    outline: 3px solid color-mix(in srgb, var(--crm-compact-primary) 18%, transparent);
}
.crm-v2026 .crm-compact-email-tools {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 4px;
}
.crm-v2026 .crm-compact-email-icon {
    cursor: pointer;
}
.crm-v2026 .crm-compact-email-icon input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
}
.crm-v2026 .crm-compact-email-icon.is-recording {
    border-color: var(--crm-compact-danger);
    color: var(--crm-compact-danger);
}
.crm-v2026 .crm-compact-email-composer-status {
    min-width: 0;
    flex: 1 1 auto;
    overflow-wrap: anywhere;
    color: var(--crm-compact-muted);
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-discard {
    color: var(--crm-compact-danger);
}
.crm-v2026 .crm-compact-email-retry-draft {
    color: var(--crm-compact-primary-strong);
}
.crm-v2026 .crm-compact-email-emoji {
    position: absolute;
    z-index: 4;
    bottom: 36px;
    left: 34px;
    display: flex;
    gap: 3px;
    padding: 5px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 7px;
    background: var(--crm-compact-surface);
    box-shadow: 0 8px 20px color-mix(in srgb, var(--crm-compact-ink) 12%, transparent);
}
.crm-v2026 .crm-compact-email-emoji button {
    width: 34px;
    min-width: 34px;
    height: 34px;
    min-height: 34px;
    padding: 0;
    border: 0;
    border-radius: 5px;
    background: transparent;
    font-size: 15px;
}
.crm-v2026 .crm-compact-email-attachment-preview {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 5px;
    padding: 5px 7px;
    border: 1px solid var(--crm-compact-line);
    border-radius: 5px;
    background: var(--crm-compact-page);
    font-size: 10px;
}
.crm-v2026 .crm-compact-email-attachment-preview strong {
    min-width: 0;
    flex: 1 1 auto;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-email-attachment-preview button {
    width: 34px;
    min-width: 34px;
    height: 34px;
    min-height: 34px;
    padding: 0;
    border: 1px solid var(--crm-compact-control-line);
    border-radius: 5px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-danger);
    font-size: 16px;
}
.crm-v2026 .crm-compact-email-readonly {
    margin: 0;
    padding: 9px 10px;
    border-top: 1px solid var(--crm-compact-line);
    color: var(--crm-compact-muted);
    font-size: 11px;
    text-align: center;
}
.crm-v2026 .crm-compact-email-info {
    display: grid;
    min-width: 0;
    align-content: start;
    gap: 9px;
    padding: 12px;
    overflow: auto;
    border-left: 1px solid var(--crm-compact-line);
    background: var(--crm-compact-page);
}
.crm-v2026 .crm-compact-email-info h2 {
    margin: 0;
    overflow-wrap: anywhere;
    font-size: 13px;
}
.crm-v2026 .crm-compact-email-info dl {
    display: grid;
    gap: 6px;
    margin: 0;
}
.crm-v2026 .crm-compact-email-info dl > div {
    display: grid;
    gap: 1px;
}
.crm-v2026 .crm-compact-email-info dt {
    color: var(--crm-compact-muted);
    font-size: 10px;
    text-transform: uppercase;
}
.crm-v2026 .crm-compact-email-info dd {
    margin: 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-copy);
    font-size: 11px;
    font-weight: 700;
}
.crm-v2026 .crm-compact-email-info p {
    margin: 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-muted);
    font-size: 10px;
    line-height: 1.4;
}
.crm-v2026 .crm-compact-email-info-link {
    justify-content: flex-start;
}
@media (max-width: 1200px) {
    .crm-v2026 .crm-compact-email-layout { grid-template-columns: 272px minmax(360px, 1fr); }
    .crm-v2026 .crm-compact-email-info { display: none; }
}
@media (max-width: 899px) {
    .crm-v2026 .crm-compact-email-workspace { min-height: calc(100dvh - 78px); border-radius: 8px; }
    .crm-v2026 .crm-compact-email-topbar { flex-wrap: wrap; gap: 6px; }
    .crm-v2026 .crm-compact-email-heading { min-width: 88px; }
    .crm-v2026 .crm-compact-email-actions { flex: 1 1 100%; order: 3; justify-content: stretch; }
    .crm-v2026 .crm-compact-email-actions > * { flex: 1 1 auto; }
    .crm-v2026 .crm-compact-email-layout { display: block; min-height: 0; }
    .crm-v2026 .crm-compact-email-list { height: 100%; border-right: 0; }
    .crm-v2026 .crm-compact-email-thread { display: none; height: 100%; }
    .crm-v2026 .crm-compact-email-has-detail .crm-compact-email-list { display: none; }
    .crm-v2026 .crm-compact-email-has-detail .crm-compact-email-thread { display: flex; }
    .crm-v2026 .crm-compact-email-back { display: inline-flex; }
    .crm-v2026 .crm-compact-email-channel,
    .crm-v2026 .crm-compact-email-action,
    .crm-v2026 .crm-compact-email-primary,
    .crm-v2026 .crm-compact-email-info-link,
    .crm-v2026 .crm-compact-email-account,
    .crm-v2026 .crm-compact-email-conversation,
    .crm-v2026 .crm-compact-email-back,
    .crm-v2026 .crm-compact-email-icon,
    .crm-v2026 .crm-compact-email-send,
    .crm-v2026 .crm-compact-email-retry-draft,
    .crm-v2026 .crm-compact-email-discard,
    .crm-v2026 .crm-compact-email-forward,
    .crm-v2026 .crm-compact-email-retry button,
    .crm-v2026 .crm-compact-email-history summary,
    .crm-v2026 .crm-compact-email-copy summary,
    .crm-v2026 .crm-compact-email-attachment,
    .crm-v2026 .crm-compact-email-retry label,
    .crm-v2026 .crm-compact-email-reply-row label,
    .crm-v2026 .crm-compact-email-attachment-preview button { min-width: 44px; min-height: 44px; }
    .crm-v2026 .crm-compact-email-fields input { min-height: 44px; }
    .crm-v2026 .crm-compact-email-toolbar button,
    .crm-v2026 .crm-compact-email-emoji button { width: 44px; min-width: 44px; height: 44px; min-height: 44px; }
    .crm-v2026 .crm-compact-email-conversation { grid-template-columns: 34px minmax(0, 1fr) auto; align-items: center; padding: 8px 10px; }
    .crm-v2026 .crm-compact-email-avatar { width: 34px; height: 34px; }
    .crm-v2026 .crm-compact-email-message { width: min(94%, 720px); }
}
@media (max-width: 520px) {
    .crm-v2026 .crm-compact-email-workspace { min-height: calc(100dvh - 66px); }
    .crm-v2026 .crm-compact-email-heading h1 { font-size: 15px; }
    .crm-v2026 .crm-compact-email-status { display: none; }
    .crm-v2026 .crm-compact-email-channels { margin-left: auto; }
    .crm-v2026 .crm-compact-email-actions { overflow-x: auto; justify-content: flex-start; }
    .crm-v2026 .crm-compact-email-actions > * { min-width: max-content; }
    .crm-v2026 .crm-compact-email-thread-head { padding: 5px 7px; }
    .crm-v2026 .crm-compact-email-thread-body { padding: 7px; }
    .crm-v2026 .crm-compact-email-message { width: 96%; padding: 8px; }
    .crm-v2026 .crm-compact-email-message-head { align-items: flex-start; flex-direction: column; gap: 2px; }
    .crm-v2026 .crm-compact-email-fields { grid-template-columns: minmax(0, 1fr); }
    .crm-v2026 .crm-compact-email-fields label { grid-template-columns: 54px minmax(0, 1fr); }
    .crm-v2026 .crm-compact-email-composer { padding: 6px; }
    .crm-v2026 .crm-compact-email-tools { flex-wrap: wrap; }
    .crm-v2026 .crm-compact-email-composer-status { flex-basis: calc(100% - 108px); }
    .crm-v2026 .crm-compact-email-discard { margin-left: auto; }
}

.crm-v2026 [data-crm-component="email-campaigns"].crm-compact-campaign-workspace {
    --crm-compact-campaign-line: var(--crm-compact-line);
    width: 100%;
    min-width: 0;
    max-width: 1180px;
    margin: 0 auto;
    overflow: hidden;
    box-sizing: border-box;
    border: 1px solid var(--crm-compact-campaign-line);
    border-radius: 10px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-ink);
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-header {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 13px 16px 10px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-heading {
    min-width: 0;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-heading p {
    margin: 0 0 2px;
    color: var(--crm-compact-muted);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-heading h1 {
    margin: 0;
    overflow-wrap: anywhere;
    font-size: 19px;
    line-height: 1.2;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-action,
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-leaf-head > a,
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-pagination a,
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-form > button,
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-row button,
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-retry button,
.crm-v2026 .crm-compact-campaign-public button {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: 0 11px;
    border: 1px solid var(--crm-compact-control-line);
    border-radius: 6px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-primary-strong);
    font: inherit;
    font-size: 11px;
    font-weight: 750;
    line-height: 1.2;
    text-decoration: none;
    cursor: pointer;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-tabs {
    display: flex;
    min-width: 0;
    gap: 2px;
    padding: 0 10px;
    overflow-x: auto;
    border-bottom: 1px solid var(--crm-compact-campaign-line);
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-tabs a {
    display: inline-flex;
    min-width: max-content;
    min-height: 34px;
    align-items: center;
    box-sizing: border-box;
    padding: 0 10px;
    border-bottom: 2px solid transparent;
    color: var(--crm-compact-muted);
    font-size: 11px;
    font-weight: 750;
    text-decoration: none;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-tabs a.is-active {
    border-bottom-color: var(--crm-compact-primary);
    color: var(--crm-compact-primary-strong);
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-main {
    min-width: 0;
    padding: 14px 16px 18px;
    box-sizing: border-box;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-directory {
    display: grid;
    min-width: 0;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-directory > a {
    display: grid;
    min-width: 0;
    min-height: 72px;
    grid-template-columns: 36px minmax(0, 1fr) auto;
    align-items: center;
    gap: 9px;
    box-sizing: border-box;
    padding: 10px;
    border: 1px solid var(--crm-compact-campaign-line);
    border-radius: 8px;
    color: var(--crm-compact-copy);
    text-decoration: none;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-directory > a:hover,
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-row[href]:hover {
    border-color: var(--crm-compact-primary);
    background: var(--crm-compact-page);
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-directory > a > span:not(.crm-compact-campaign-icon),
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-row > div {
    display: grid;
    min-width: 0;
    gap: 2px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-directory strong,
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-row strong {
    overflow-wrap: anywhere;
    font-size: 12px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-directory small,
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-row small,
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table small,
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-audience small {
    display: block;
    overflow-wrap: anywhere;
    color: var(--crm-compact-muted);
    font-size: 10px;
    line-height: 1.35;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-directory b {
    color: var(--crm-compact-muted);
    font-size: 18px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-icon {
    display: inline-flex;
    width: 36px;
    height: 36px;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--crm-compact-campaign-line);
    border-radius: 7px;
    background: var(--crm-compact-page);
    color: var(--crm-compact-primary-strong);
    font-size: 15px;
    font-weight: 800;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-leaf-head {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 10px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-leaf-head > div {
    min-width: 0;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-leaf-head h2 {
    margin: 0;
    overflow-wrap: anywhere;
    font-size: 15px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-leaf-head p {
    margin: 3px 0 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-muted);
    font-size: 11px;
    line-height: 1.4;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-list {
    display: grid;
    min-width: 0;
    gap: 5px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-row {
    display: flex;
    min-width: 0;
    min-height: 48px;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    box-sizing: border-box;
    padding: 7px 9px;
    border: 1px solid var(--crm-compact-campaign-line);
    border-radius: 7px;
    color: var(--crm-compact-copy);
    text-decoration: none;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-row form {
    flex: 0 0 auto;
    margin: 0;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-empty {
    min-width: 0;
    margin: 0;
    padding: 14px;
    box-sizing: border-box;
    border: 1px dashed var(--crm-compact-campaign-line);
    border-radius: 7px;
    color: var(--crm-compact-muted);
    font-size: 11px;
    text-align: center;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-form {
    display: grid;
    width: min(100%, 720px);
    min-width: 0;
    gap: 8px;
    margin: 0;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-form > label {
    display: grid;
    min-width: 0;
    gap: 3px;
    color: var(--crm-compact-copy);
    font-size: 11px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-form input:not([type="hidden"]):not([type="checkbox"]),
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-form select,
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-form textarea {
    width: 100%;
    min-width: 0;
    min-height: 34px;
    box-sizing: border-box;
    padding: 6px 8px;
    border: 1px solid var(--crm-compact-control-line);
    border-radius: 6px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-ink);
    font: inherit;
    font-size: 12px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-form textarea {
    min-height: 92px;
    resize: vertical;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-form > button,
.crm-v2026 .crm-compact-campaign-public button {
    width: fit-content;
    border-color: var(--crm-compact-primary);
    background: var(--crm-compact-primary);
    color: var(--crm-compact-surface);
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-form > .errorlist {
    margin: -3px 0 0;
    padding-left: 17px;
    color: var(--crm-compact-danger);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-note {
    margin: 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-muted);
    font-size: 10px;
    line-height: 1.4;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-audience {
    display: grid;
    min-width: 0;
    max-height: min(52vh, 520px);
    gap: 3px;
    margin: 0;
    padding: 6px;
    overflow: auto;
    box-sizing: border-box;
    border: 1px solid var(--crm-compact-campaign-line);
    border-radius: 7px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-audience legend {
    padding: 0 4px;
    font-size: 11px;
    font-weight: 750;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-audience label {
    display: grid;
    min-width: 0;
    min-height: 38px;
    grid-template-columns: 18px minmax(0, 1fr);
    align-items: center;
    gap: 7px;
    padding: 4px 6px;
    box-sizing: border-box;
    border-radius: 5px;
    font-size: 11px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-audience label:hover {
    background: var(--crm-compact-page);
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-audience label > span {
    min-width: 0;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-metrics {
    display: grid;
    min-width: 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
    margin: 0 0 10px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-metrics > div {
    min-width: 0;
    padding: 8px 9px;
    border: 1px solid var(--crm-compact-campaign-line);
    border-radius: 7px;
    background: var(--crm-compact-page);
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-metrics dt {
    color: var(--crm-compact-muted);
    font-size: 10px;
    font-weight: 750;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-metrics dd {
    margin: 2px 0 0;
    font-size: 16px;
    font-weight: 800;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table {
    width: 100%;
    min-width: 0;
    overflow-x: auto;
    border: 1px solid var(--crm-compact-campaign-line);
    border-radius: 7px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table table {
    width: 100%;
    min-width: 680px;
    border-collapse: collapse;
    font-size: 11px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table th,
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table td {
    min-width: 0;
    padding: 7px 8px;
    overflow-wrap: anywhere;
    border-bottom: 1px solid var(--crm-compact-campaign-line);
    text-align: left;
    vertical-align: top;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table th {
    color: var(--crm-compact-muted);
    font-size: 10px;
    letter-spacing: .05em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-error {
    display: block;
    max-width: 320px;
    margin-top: 3px;
    overflow-wrap: anywhere;
    color: var(--crm-compact-danger);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-attempts summary {
    min-height: 32px;
    padding-top: 8px;
    box-sizing: border-box;
    color: var(--crm-compact-primary-strong);
    cursor: pointer;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-attempts ol {
    margin: 3px 0 0;
    padding-left: 18px;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-retry {
    display: grid;
    min-width: 150px;
    gap: 5px;
    margin: 0;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-retry label {
    display: grid;
    min-height: 32px;
    grid-template-columns: 16px minmax(0, 1fr);
    align-items: center;
    gap: 5px;
    font-size: 10px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-pagination {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 10px;
    color: var(--crm-compact-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-filters {
    display: flex;
    min-width: 0;
    gap: 3px;
    margin: 0 0 8px;
    overflow-x: auto;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-filters a {
    display: inline-flex;
    min-width: max-content;
    min-height: 32px;
    align-items: center;
    box-sizing: border-box;
    padding: 0 9px;
    border: 1px solid var(--crm-compact-campaign-line);
    border-radius: 999px;
    color: var(--crm-compact-muted);
    font-size: 10px;
    font-weight: 700;
    text-decoration: none;
}
.crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-filters a.is-active {
    border-color: var(--crm-compact-primary);
    background: var(--crm-compact-primary-soft);
    color: var(--crm-compact-primary-strong);
}
.crm-v2026 .crm-compact-campaign-public {
    --crm-compact-campaign-line: var(--crm-compact-line);
    display: grid;
    min-height: 100dvh;
    place-items: center;
    box-sizing: border-box;
    padding: 20px;
    background: var(--crm-compact-page);
}
.crm-v2026 .crm-compact-campaign-public > section {
    width: min(100%, 430px);
    min-width: 0;
    padding: 24px;
    box-sizing: border-box;
    border: 1px solid var(--crm-compact-campaign-line);
    border-radius: 10px;
    background: var(--crm-compact-surface);
    box-shadow: 0 12px 30px color-mix(in srgb, var(--crm-compact-ink) 10%, transparent);
}
.crm-v2026 .crm-compact-campaign-public-mark {
    display: inline-flex;
    width: 38px;
    height: 38px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: var(--crm-compact-primary);
    color: var(--crm-compact-surface);
    font-size: 16px;
}
.crm-v2026 .crm-compact-campaign-public p {
    margin: 8px 0 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-muted);
    font-size: 12px;
    line-height: 1.5;
}
.crm-v2026 .crm-compact-campaign-public h1 {
    margin: 5px 0 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-ink);
    font-size: 20px;
}
.crm-v2026 .crm-compact-campaign-public form {
    margin-top: 14px;
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-component="email-campaigns"].crm-compact-campaign-workspace { border-radius: 8px; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-header { padding: 10px; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-main { padding: 10px; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-directory { grid-template-columns: minmax(0, 1fr); }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-directory > a { min-height: 58px; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-leaf-head { align-items: stretch; flex-direction: column; gap: 7px; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-leaf-head > a { width: fit-content; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-row { align-items: stretch; flex-direction: column; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-row form { width: 100%; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-row button { width: 100%; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table { overflow: visible; border: 0; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table table { display: block; min-width: 0; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table tbody { display: grid; gap: 7px; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table tr { display: grid; min-width: 0; padding: 7px; border: 1px solid var(--crm-compact-campaign-line); border-radius: 7px; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table td { display: grid; min-width: 0; grid-template-columns: 88px minmax(0, 1fr); gap: 8px; padding: 6px; border-bottom: 1px solid var(--crm-compact-campaign-line); }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table td:last-child { border-bottom: 0; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-table td::before { content: attr(data-label); color: var(--crm-compact-muted); font-size: 10px; font-weight: 750; text-transform: uppercase; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-retry { min-width: 0; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-action,
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-tabs a,
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-leaf-head > a,
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-pagination a,
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-filters a,
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-form > button,
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-row button,
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-retry button,
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-attempts summary,
    .crm-v2026 .crm-compact-campaign-public button { min-width: 44px; min-height: 44px; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-form input:not([type="hidden"]):not([type="checkbox"]),
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-form select,
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-form textarea { min-height: 44px; }
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-audience label,
    .crm-v2026 [data-crm-component="email-campaigns"] .crm-compact-campaign-retry label { min-height: 44px; }
    .crm-v2026 .crm-compact-campaign-public {
    --crm-compact-campaign-line: var(--crm-compact-line); padding: 10px; }
    .crm-v2026 .crm-compact-campaign-public > section { padding: 18px; }
}
/* TASK-335: compact Figma-informed doctor calendar. */
.crm-v2026 .crm-task-335-doctor-calendar {
    --task-335-primary: var(--crm-color-primary);
    --task-335-primary-strong: var(--crm-color-primary-strong);
    --task-335-primary-soft: var(--crm-color-primary-subtle);
    --task-335-text: var(--crm-color-text);
    --task-335-muted: var(--crm-color-text-secondary);
    --task-335-border: var(--crm-color-border);
    --task-335-border-strong: var(--crm-color-control-border);
    min-width: 0;
    overflow-x: clip;
    color: var(--task-335-text);
    font-size: 13px;
}
.crm-v2026 .crm-task-335-doctor-calendar,
.crm-v2026 .crm-task-335-doctor-calendar *,
.crm-v2026 .crm-task-335-doctor-calendar *::before,
.crm-v2026 .crm-task-335-doctor-calendar *::after { box-sizing: border-box; }
.crm-v2026 .crm-task-335-doctor-calendar .crm-task-335-doctor-calendar__preview {
    margin: 0 0 8px;
    padding: 7px 10px;
    border: 1px solid #aec0f5;
    border-radius: 4px;
    background: var(--task-335-primary-soft);
    color: var(--task-335-primary-strong);
    font-size: 12px;
}
.crm-v2026 .crm-task-335-doctor-calendar .crm-task-335-doctor-calendar__surface {
    display: grid;
    gap: 8px;
    min-width: 0;
    margin: 0;
    padding: 12px;
    border: 1px solid var(--task-335-border);
    border-radius: 8px;
    background: var(--crm-color-surface);
    box-shadow: none;
}
.crm-v2026 .crm-task-335-doctor-calendar .crm-task-335-doctor-calendar__toolbar {
    align-items: center;
    min-width: 0;
    margin: 0;
}
.crm-v2026 .crm-task-335-doctor-calendar .crm-task-335-doctor-calendar__controls {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 6px;
    min-width: 0;
    width: 100%;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-mode-switcher,
.crm-v2026 .crm-task-335-doctor-calendar .view-switcher {
    display: inline-flex;
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--task-335-border-strong);
    border-radius: 4px;
    background: var(--crm-color-surface);
}
.crm-v2026 .crm-task-335-doctor-calendar .view-switcher { margin-left: auto; }
.crm-v2026 .crm-task-335-doctor-calendar .calendar-mode-switcher button,
.crm-v2026 .crm-task-335-doctor-calendar .view-switcher button,
.crm-v2026 .crm-task-335-doctor-calendar .calendar-nav-button,
.crm-v2026 .crm-task-335-doctor-calendar .today-link,
.crm-v2026 .crm-task-335-doctor-calendar .calendar-edit-toggle,
.crm-v2026 .crm-task-335-doctor-calendar .calendar-more-actions button {
    min-height: 32px;
    margin: 0;
    padding: 5px 10px;
    border-radius: 4px;
    font-size: 12px;
    line-height: 1.2;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-mode-switcher button,
.crm-v2026 .crm-task-335-doctor-calendar .view-switcher button {
    border: 0;
    border-right: 1px solid var(--task-335-border-strong);
    background: var(--crm-color-surface);
    color: var(--task-335-primary-strong);
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-mode-switcher button:last-child,
.crm-v2026 .crm-task-335-doctor-calendar .view-switcher button:last-child { border-right: 0; }
.crm-v2026 .crm-task-335-doctor-calendar .calendar-mode-switcher button.active,
.crm-v2026 .crm-task-335-doctor-calendar .view-switcher button.active {
    background: var(--task-335-primary);
    color: var(--crm-color-surface);
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation {
    display: grid;
    grid-template-columns: 32px minmax(132px, 176px) 32px;
    align-items: center;
    gap: 4px;
    min-width: 0;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation .calendar-nav-button {
    display: grid;
    width: 32px;
    min-width: 32px;
    padding: 0;
    place-items: center;
    border: 1px solid var(--task-335-border-strong);
    background: var(--crm-color-surface);
    color: var(--task-335-primary-strong);
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation .crm-date-trigger {
    width: 100%;
    height: 32px;
    min-height: 32px;
    margin: 0;
    padding: 5px 9px;
    border: 1px solid var(--task-335-border-strong);
    border-radius: 4px;
    background: var(--crm-color-surface);
    color: var(--task-335-text);
    font-size: 12px;
}
.crm-v2026 .crm-task-335-doctor-calendar .today-link {
    border: 1px solid var(--task-335-border-strong);
    background: var(--task-335-primary-soft);
    color: var(--task-335-primary-strong);
}
.crm-v2026 .crm-task-335-doctor-calendar .crm-task-335-doctor-calendar__more {
    min-width: 0;
    margin: 0;
    border: 1px solid var(--task-335-border);
    border-radius: 4px;
    background: var(--crm-color-canvas);
    box-shadow: none;
}
.crm-v2026 .crm-task-335-doctor-calendar .crm-task-335-doctor-calendar__more > summary {
    min-height: 32px;
    padding: 7px 10px;
    color: var(--task-335-muted);
    font-size: 12px;
    font-weight: 700;
}
.crm-v2026 .crm-task-335-doctor-calendar .crm-task-335-doctor-calendar__more[open] > summary {
    border-bottom: 1px solid var(--task-335-border);
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-actions {
    align-items: center;
    gap: 6px;
    padding-top: 8px;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-filter-panel,
.crm-v2026 .crm-task-335-doctor-calendar .calendar-views-panel {
    border: 1px solid var(--task-335-border-strong);
    border-radius: 8px;
    background: var(--crm-color-surface);
    box-shadow: 0 12px 28px #3333331f;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-filter-options label,
.crm-v2026 .crm-task-335-doctor-calendar .calendar-advanced-view-settings .checkbox-field {
    min-height: 32px;
    margin: 0;
    color: var(--task-335-text);
    font-size: 12px;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-advanced-view-settings {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
    padding: 8px 0 10px;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-advanced-view-settings .checkbox-field {
    padding: 5px 7px;
    border: 1px solid var(--task-335-border);
    border-radius: 4px;
    background: var(--crm-color-surface);
}
.crm-v2026 .crm-task-335-doctor-calendar .crm-task-335-doctor-calendar__stage {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--task-335-border);
    border-radius: 8px;
    background: var(--crm-color-surface);
}
.crm-v2026 .crm-task-335-doctor-calendar .day-calendar,
.crm-v2026 .crm-task-335-doctor-calendar .week-calendar {
    min-width: 0;
    max-height: min(70vh, 720px);
    border: 0;
    border-radius: 0;
    background: var(--crm-color-surface);
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-row,
.crm-v2026 .crm-task-335-doctor-calendar .calendar-location-header {
    grid-template-columns: 56px minmax(0, 1fr);
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-time,
.crm-v2026 .crm-task-335-doctor-calendar .week-time,
.crm-v2026 .crm-task-335-doctor-calendar .week-time-heading {
    color: var(--crm-color-text-muted);
    font-size: 10px;
    font-variant-numeric: tabular-nums;
}
.crm-v2026 .crm-task-335-doctor-calendar button.calendar-cell,
.crm-v2026 .crm-task-335-doctor-calendar button.week-calendar-cell {
    min-height: 38px;
    border-color: var(--task-335-border);
    border-radius: 0;
    color: var(--task-335-text);
    font-size: 12px;
    box-shadow: none;
}
.crm-v2026 .crm-task-335-doctor-calendar button.calendar-cell.available,
.crm-v2026 .crm-task-335-doctor-calendar button.week-calendar-cell.available {
    background: var(--crm-color-primary-subtle);
    color: var(--task-335-primary-strong);
}
.crm-v2026 .crm-task-335-doctor-calendar button.calendar-cell.continuation,
.crm-v2026 .crm-task-335-doctor-calendar button.week-calendar-cell.continuation {
    background: var(--crm-color-canvas);
    box-shadow: inset 3px 0 #8da4ef;
}
.crm-v2026 .crm-task-335-doctor-calendar button.calendar-cell.booked,
.crm-v2026 .crm-task-335-doctor-calendar button.week-calendar-cell.booked {
    border-left-color: #e5484d;
    background: #fff5f5;
    color: #8c2f34;
}
.crm-v2026 .crm-task-335-doctor-calendar button.calendar-cell.missed,
.crm-v2026 .crm-task-335-doctor-calendar button.week-calendar-cell.missed,
.crm-v2026 .crm-task-335-doctor-calendar button.calendar-cell.unavailable,
.crm-v2026 .crm-task-335-doctor-calendar button.week-calendar-cell.unavailable {
    background: var(--crm-color-canvas);
    color: var(--crm-color-text-muted);
}
.crm-v2026 .crm-task-335-doctor-calendar :is(.day-calendar, .week-calendar).planning-mode
    :is(button.calendar-cell, button.week-calendar-cell).unavailable {
    border-color: var(--task-335-border-strong);
    background: var(--crm-color-canvas);
}
.crm-v2026 .crm-task-335-doctor-calendar :is(.day-calendar, .week-calendar).planning-mode
    :is(button.calendar-cell, button.week-calendar-cell).available {
    background: var(--crm-color-primary-subtle);
    box-shadow: inset 3px 0 var(--task-335-primary);
}
.crm-v2026 .crm-task-335-doctor-calendar :is(button.calendar-cell, button.week-calendar-cell).recommended-slot {
    outline: 2px solid #f5d90a;
    outline-offset: -2px;
    box-shadow: inset 0 0 0 1px var(--crm-color-surface);
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-location,
.crm-v2026 .crm-task-335-doctor-calendar .week-location,
.crm-v2026 .crm-task-335-doctor-calendar .calendar-payment-status {
    border-radius: 999px;
    font-size: 10px;
    line-height: 1.2;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-payment-status {
    display: inline-flex;
    align-items: center;
    padding: 2px 6px;
    background: #e6f6ed;
    color: #18794e;
    font-weight: 800;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-empty-range {
    display: grid;
    min-height: 112px;
    margin: 0;
    padding: 24px;
    place-content: center;
    color: var(--task-335-muted);
    font-size: 12px;
    text-align: center;
}
.crm-v2026 .crm-task-335-doctor-calendar .availability-selection-panel {
    right: 12px;
    bottom: 12px;
    width: min(390px, calc(100% - 24px));
    padding: 10px;
    border: 1px solid #aec0f5;
    border-radius: 8px;
    background: var(--crm-color-surface);
    box-shadow: 0 12px 28px #33333324;
}
.crm-v2026 .crm-task-335-doctor-calendar .patient-match {
    display: grid;
    gap: 6px;
    margin: 7px 0;
    padding: 8px;
    border: 1px solid #aec0f5;
    border-radius: 8px;
    background: var(--task-335-primary-soft);
    color: var(--task-335-primary-strong);
}
.crm-v2026 .crm-task-335-doctor-calendar .patient-match[hidden],
.crm-v2026 .crm-task-335-doctor-calendar .calendar-override[hidden] { display: none; }
.crm-v2026 .crm-task-335-doctor-calendar .patient-match button {
    justify-self: start;
    margin: 0;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-override {
    margin-top: 7px;
    padding: 8px;
    border: 1px solid #f5d90a;
    border-radius: 4px;
    background: #fffbe6;
}
.crm-v2026 .crm-task-335-doctor-calendar > dialog {
    width: min(560px, calc(100vw - 32px));
    max-height: calc(100dvh - 32px);
    padding: 16px;
    border: 1px solid var(--task-335-border);
    border-radius: 8px;
    background: var(--crm-color-surface);
    color: var(--task-335-text);
    box-shadow: 0 20px 54px #33333338;
}
.crm-v2026 .crm-task-335-doctor-calendar > dialog::backdrop { background: #33333366; }
.crm-v2026 .crm-task-335-doctor-calendar > dialog :is(form, section) { min-width: 0; }
.crm-v2026 .crm-task-335-doctor-calendar > dialog h2 {
    margin: 0 0 10px;
    color: var(--task-335-text);
    font-size: 16px;
}
.crm-v2026 .crm-task-335-doctor-calendar > dialog :is(input, select, textarea, button) {
    min-height: 36px;
    margin-top: 4px;
    border-radius: 4px;
    font-size: 13px;
}
.crm-v2026 .crm-task-335-doctor-calendar > dialog .dialog-actions {
    gap: 6px;
    padding-top: 8px;
}
.crm-v2026 .crm-task-335-doctor-calendar :is(button, a, input, select, textarea, summary):focus-visible {
    outline: 2px solid var(--task-335-primary);
    outline-offset: 2px;
}
@media (max-width: 899px) {
    .crm-v2026 .crm-task-335-doctor-calendar .crm-task-335-doctor-calendar__surface { padding: 10px; }
    .crm-v2026 .crm-task-335-doctor-calendar .crm-task-335-doctor-calendar__controls {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: stretch;
    }
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-mode-switcher,
    .crm-v2026 .crm-task-335-doctor-calendar .view-switcher {
        width: 100%;
        margin: 0;
    }
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-mode-switcher button,
    .crm-v2026 .crm-task-335-doctor-calendar .view-switcher button {
        flex: 1 1 0;
        min-height: 44px;
    }
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation {
        grid-column: 1 / -1;
        grid-template-columns: 44px minmax(0, 1fr) 44px;
        order: 3;
        width: 100%;
    }
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation .calendar-nav-button,
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation .crm-date-trigger,
    .crm-v2026 .crm-task-335-doctor-calendar .today-link,
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-edit-toggle,
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-more-actions button,
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-more-actions > summary,
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-filter-options label,
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-advanced-view-settings .checkbox-field,
    .crm-v2026 .crm-task-335-doctor-calendar button.calendar-cell,
    .crm-v2026 .crm-task-335-doctor-calendar button.week-calendar-cell,
    .crm-v2026 .crm-task-335-doctor-calendar .availability-quick-actions button,
    .crm-v2026 .crm-task-335-doctor-calendar .availability-selection-panel .secondary,
    .crm-v2026 .crm-task-335-doctor-calendar > dialog :is(input, select, textarea, button) {
        min-height: 44px;
    }
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation .calendar-nav-button {
        width: 44px;
        min-width: 44px;
    }
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation .crm-date-trigger { height: 44px; }
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-advanced-view-settings { grid-template-columns: 1fr; }
    .crm-v2026 .crm-task-335-doctor-calendar .day-calendar,
    .crm-v2026 .crm-task-335-doctor-calendar .week-calendar { max-height: 66vh; }
}
@media (max-width: 640px) {
    .crm-v2026 .crm-task-335-doctor-calendar .crm-task-335-doctor-calendar__surface {
        gap: 6px;
        padding: 8px;
    }
    .crm-v2026 .crm-task-335-doctor-calendar .crm-task-335-doctor-calendar__controls { grid-template-columns: 1fr; }
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation,
    .crm-v2026 .crm-task-335-doctor-calendar .today-link,
    .crm-v2026 .crm-task-335-doctor-calendar .view-switcher { grid-column: 1; }
    .crm-v2026 .crm-task-335-doctor-calendar .today-link { width: 100%; }
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-row,
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-location-header {
        grid-template-columns: 48px minmax(0, 1fr);
    }
    .crm-v2026 .crm-task-335-doctor-calendar .week-calendar {
        max-width: 100%;
        overflow-x: auto;
        overscroll-behavior-x: contain;
    }
    .crm-v2026 .crm-task-335-doctor-calendar .availability-selection-panel {
        position: static;
        width: auto;
        margin: 8px;
        border-color: #aec0f5;
        background: var(--task-335-primary-soft);
        box-shadow: none;
    }
    .crm-v2026 .crm-task-335-doctor-calendar > dialog {
        inset: auto 0 0;
        width: 100%;
        max-width: none;
        max-height: calc(100dvh - 8px);
        margin: 0;
        overflow-y: auto;
        border-radius: 8px 8px 0 0;
    }
    .crm-v2026 .crm-task-335-doctor-calendar > dialog .dialog-actions {
        display: grid;
        grid-template-columns: 1fr;
    }
    .crm-v2026 .crm-task-335-doctor-calendar > dialog .dialog-actions button { width: 100%; }
}

/* TASK-365B: keep the pre-consolidation winning calendar values in the premium owner. */
.crm-v2026 .crm-task-335-doctor-calendar .calendar-controls
    :is(.view-switcher button.active, .calendar-mode-switcher button.active) {
    border-color: #2368a2;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-controls .today-link {
    border-color: var(--neu-border-strong);
    background: var(--crm-color-surface);
    color: #285d83;
}
.crm-v2026 .crm-task-335-doctor-calendar .day-calendar.planning-mode button.calendar-cell {
    border-radius: 8px;
}
.crm-v2026 .crm-task-335-doctor-calendar .week-calendar.planning-mode button.week-calendar-cell {
    min-height: 36px;
    border-radius: 7px;
}


/* TASK-368A: consolidated finance legacy winners. */
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-quick-periods { display: flex; gap: .4rem; flex-wrap: wrap; margin-top: .8rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-quick-periods a:hover,
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-quick-periods a.active { border-color: var(--crm-color-primary-strong); background: var(--crm-color-primary-strong); color: var(--crm-color-surface); }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-period-display { margin: .5rem 0 0; color: var(--crm-color-text-secondary); font-size: .9rem; font-weight: 700; white-space: nowrap; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-control { display: grid; gap: 1rem; padding: .8rem 1rem; border: 1px solid #d9e4ee; box-shadow: 0 10px 30px #163b6410; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-period-controls { display: flex; align-items: end; justify-content: space-between; gap: 1rem; flex-wrap: wrap; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-kpi { display: grid; gap: .55rem; min-height: 142px; padding: 1.1rem; border: 1px solid var(--crm-color-border); border-radius: 14px; background: var(--crm-color-surface); box-shadow: 0 5px 18px #163b6410; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-kpi span { color: var(--crm-color-text-muted); font-size: .82rem; font-weight: 700; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-kpi strong { color: var(--crm-color-primary-strong); font-size: clamp(1.45rem, 2.2vw, 2rem); letter-spacing: -.045em; line-height: 1; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-kpi small { align-self: end; color: var(--crm-color-text-muted); line-height: 1.35; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-panel-heading > span { color: var(--crm-color-text-muted); font-size: .78rem; text-align: right; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-chart { display: flex; align-items: end; gap: .45rem; min-height: 220px; margin-top: 1.1rem; padding: .5rem .25rem 0; border-bottom: 1px solid var(--crm-color-border); overflow-x: auto; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-chart-column { display: grid; grid-template-rows: 1.25rem 1fr 1.3rem; flex: 1 0 32px; min-width: 32px; height: 205px; align-items: end; text-align: center; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-chart-column time,
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-chart-value { color: var(--crm-color-text-muted); font-size: .68rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-chart-value { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-chart-column time { padding-top: .35rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-attention-list strong { font-size: .98rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-attention-list span { color: var(--crm-color-text-secondary); font-size: .86rem; line-height: 1.4; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .attention-danger { background: #fff0f0; color: #a63c3c; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .attention-warning { background: #fff7e4; color: #8b6308; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .attention-ok { background: #eaf7ef; color: #16724a; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-upcoming { margin-top: 1rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-upcoming-value { margin: 1.1rem 0 .35rem; color: var(--crm-color-primary-strong); font-size: 2rem; font-weight: 800; letter-spacing: -.045em; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-upcoming .hint { margin: 0; line-height: 1.5; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-breakdown { display: grid; gap: .65rem; margin-top: 1rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-breakdown div { display: grid; grid-template-columns: 1fr auto; gap: .2rem .8rem; padding: .7rem 0; border-top: 1px solid #e1e8ef; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-breakdown span { color: var(--crm-color-text-secondary); font-weight: 700; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-breakdown strong { color: var(--crm-color-primary-strong); }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-breakdown small { grid-column: 1 / -1; color: var(--crm-color-text-muted); }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-empty { margin: 1rem 0 0; padding: 1rem; border-radius: 9px; background: var(--crm-color-surface-subtle); color: var(--crm-color-text-secondary); line-height: 1.45; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-statistics { margin-top: 1rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-table-wrap { overflow-x: auto; margin-top: 1rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-pulse { position: relative; margin-top: 1rem; overflow: hidden; background: radial-gradient(circle at 94% 4%, #d9ecfb 0, transparent 30%), linear-gradient(145deg, var(--crm-color-surface), #f7fbff); }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-pulse::before { content: ''; position: absolute; inset: 0 auto 0 0; width: 4px; background: linear-gradient(#2d8bbd, var(--crm-color-primary-strong)); }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-pulse-heading .hint { max-width: 760px; margin: .38rem 0 0; line-height: 1.5; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-inline-link { flex: 0 0 auto; color: var(--crm-color-primary-strong); font-size: .84rem; font-weight: 800; text-decoration: none; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-inline-link:hover { text-decoration: underline; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-pulse-kpi { display: grid; gap: .42rem; min-height: 112px; padding: .9rem; border: 1px solid #d7e4ef; border-radius: 12px; background: var(--crm-color-surface); }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-pulse-kpi span { color: #6a7f92; font-size: .76rem; font-weight: 750; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-pulse-kpi strong { color: var(--crm-color-primary-strong); font-size: clamp(1.2rem, 2vw, 1.62rem); letter-spacing: -.035em; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-pulse-kpi small { align-self: end; color: #76899b; line-height: 1.35; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-pulse-kpi-danger strong { color: #a62f43; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-pulse-kpi-locked { grid-column: span 3; border-style: dashed; background: #f7f9fb; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-money-paths { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .7rem; margin-top: .7rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-money-path { min-width: 0; padding: .95rem; border: 1px solid var(--crm-color-border); border-radius: 12px; background: var(--crm-color-surface); }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-money-path-title { display: flex; gap: .65rem; align-items: start; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-money-path-title div { display: grid; gap: .15rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-money-path-title strong { color: var(--crm-color-primary-strong); font-size: .92rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-money-path dl { display: grid; gap: 0; margin: .8rem 0 0; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-money-path dl > div { display: flex; justify-content: space-between; gap: .7rem; padding: .52rem 0; border-top: 1px solid #e6edf3; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-money-path dt { color: #667b8e; font-size: .79rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-money-path dd { margin: 0; color: var(--crm-color-primary-strong); font-size: .82rem; font-weight: 800; text-align: right; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-value-warning dd { color: #996918; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-value-danger dd { color: #a62f43; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-path-note { margin: .7rem 0 0; color: #778a9c; font-size: .72rem; line-height: 1.45; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-control-strip { display: flex; flex-wrap: wrap; gap: .35rem .7rem; margin-top: .7rem; padding: .75rem .85rem; border: 1px solid #f0d393; border-radius: 10px; background: #fff8e7; color: #755315; font-size: .82rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-payment-analytics { display: grid; grid-template-columns: minmax(300px, .8fr) minmax(0, 1.2fr); gap: 1rem; margin-top: 1rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-methods { display: grid; gap: .65rem; margin-top: 1rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-method-row { padding: .8rem; border: 1px solid #e0e9f1; border-radius: 10px; background: var(--crm-color-surface-subtle); }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-method-row > div { display: flex; justify-content: space-between; gap: .7rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-method-row > div strong { color: var(--crm-color-primary-strong); }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-method-row dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .45rem .8rem; margin: .7rem 0 0; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-method-row dt { color: #718597; font-size: .73rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-method-row dd { margin: 0; color: var(--crm-color-primary-strong); font-size: .75rem; font-weight: 800; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-flow-table { min-width: 650px; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-flow-table th,
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-flow-table td { white-space: nowrap; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-payment-locked { margin-top: 1rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-payment-locked h2 { margin: 0 0 .35rem; font-size: 1.15rem; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-payment-locked .hint { margin: 0; }
@media (max-width: 899px) {
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-pulse-kpi-locked { grid-column: auto; }
}
@media (max-width: 640px) {
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-period-display { white-space: normal; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-pulse-kpi { min-height: 100px; }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-method-row dl { grid-template-columns: 1fr; }
}
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-quick-periods a:hover,
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-quick-periods a.active {
 background:var(--crm-primary); border-color:var(--crm-primary); }
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-kpi strong,
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-upcoming-value { color:var(--crm-primary-strong); }
.workspace-shell :where(.crm-compact-finance-dashboard) .finance-kpi-primary :is(span,strong) { color:var(--crm-color-surface); }
@media (max-width:640px) {
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-kpi { min-height:0; }
}
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-kpi,
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-pulse-kpi {
    position: relative;
    overflow: hidden;
}
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-kpi:not(.finance-kpi-primary)::after,
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-pulse-kpi::after {
    position: absolute;
    top: -35px;
    right: -35px;
    width: 92px;
    height: 92px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(53, 215, 231, .14), transparent 68%);
    content: "";
    pointer-events: none;
}
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-kpi:hover,
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-pulse-kpi:hover {
    box-shadow: var(--neu-shadow);
    transform: translateY(-2px);
}
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-kpi,
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-pulse-kpi { transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease; }
@media (prefers-reduced-motion: reduce) {
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-kpi,
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-pulse-kpi { transform: none !important; }
}
@media (min-width: 900px) {
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-control { gap: .7rem; padding: .65rem .8rem; }
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-kpi { min-height: 108px; padding: .85rem; border-radius: 14px; }
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-pulse-kpi { min-height: 88px; padding: .72rem; }
.crm-v2026 :where(.crm-compact-finance-dashboard) :is(.finance-overview-grid, .finance-analytics-grid, .finance-payment-analytics, .finance-statistics) { margin-top: .7rem; }
}
.crm-v2026 :where(.crm-compact-finance-dashboard) :is(.finance-overview-grid, .finance-analytics-grid, .finance-chart-panel, .finance-panel, .finance-chart) { min-width: 0; }
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-chart { box-sizing: border-box; width: 100%; max-width: 100%; }
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-pulse-kpi span,
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-money-path dt { color: #4f677a; }
.crm-v2026 :where(.crm-compact-finance-dashboard) :is(.finance-pulse-kpi small, .finance-money-path-title small, .finance-path-note, .finance-method-row small, .finance-method-row dt) { color: #526b7e; }
@media (max-width: 899px) {
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-flow-table tbody th::before { content: "Дата"; }
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-flow-table tbody td:nth-child(2)::before { content: "Оплати"; }
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-flow-table tbody td:nth-child(3)::before { content: "Повернення"; }
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-flow-table tbody td:nth-child(4)::before { content: "Чистий рух"; }
.crm-v2026 :where(.crm-compact-finance-dashboard) .finance-flow-table tbody td:nth-child(5)::before { content: "Зараховано"; }
}
@media (max-width: 640px) {
:where(.crm-v2026 .crm-compact-finance-dashboard) .finance-payment-locked h2 { font-size: 1.2rem; }
}
/* END TASK-368A: consolidated finance legacy winners. */
/* TASK-333: compact finance and payment family. */
.crm-v2026 .crm-compact-finance-dashboard,
.crm-v2026 .crm-compact-finance-payment-operations,
.crm-v2026 .crm-compact-finance-appointment-payment,
.crm-v2026 .crm-compact-finance-payment-detail,
.crm-v2026 .crm-compact-finance-appointment-settlement {
    --crm-compact-finance-accent: var(--crm-compact-accent, var(--crm-color-primary));
    --crm-compact-finance-accent-strong: var(--crm-compact-accent-strong, var(--crm-color-primary-strong));
    --crm-compact-finance-danger: var(--crm-compact-danger, #e5484d);
    --crm-compact-finance-success: #18794e;
    --crm-compact-finance-text: var(--crm-compact-text, var(--crm-color-text));
    --crm-compact-finance-muted: var(--crm-compact-muted, var(--crm-color-text-secondary));
    --crm-compact-finance-line: var(--crm-compact-line, var(--crm-color-border));
    --crm-compact-finance-soft: var(--crm-color-surface-subtle);
    --crm-compact-finance-surface: var(--crm-compact-surface, var(--crm-color-surface));
    min-width: 0;
    color: var(--crm-compact-finance-text);
}
.crm-v2026 .crm-compact-finance-page-head {
    display: flex;
    min-width: 0;
    align-items: flex-end;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 12px;
}
.crm-v2026 .crm-compact-finance-page-head h1 {
    margin: 0;
    font-size: clamp(20px, 2vw, 26px);
    line-height: 1.2;
}
.crm-v2026 .crm-compact-finance-page-head p {
    margin: 3px 0 0;
    color: var(--crm-compact-finance-muted);
    font-size: 12px;
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-finance-eyebrow {
    margin: 0 0 3px;
    color: var(--crm-compact-finance-muted);
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .08em;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-control,
.crm-v2026 .crm-compact-finance-dashboard .finance-panel,
.crm-v2026 .crm-compact-finance-dashboard .finance-statistics,
.crm-v2026 .crm-compact-finance-payment-operations,
.crm-v2026 .crm-compact-finance-appointment-payment .card,
.crm-v2026 .crm-compact-finance-payment-detail .card,
.crm-v2026 .crm-compact-finance-appointment-settlement {
    padding: 12px;
    border: 1px solid var(--crm-compact-finance-line);
    border-radius: 8px;
    background: var(--crm-compact-finance-surface);
    box-shadow: none;
}
.crm-v2026 .crm-compact-finance-tabs,
.crm-v2026 .crm-compact-finance-dashboard .finance-quick-periods {
    display: flex;
    min-width: 0;
    gap: 4px;
    overflow-x: auto;
    scrollbar-width: thin;
}
.crm-v2026 .crm-compact-finance-tabs a,
.crm-v2026 .crm-compact-finance-dashboard .finance-quick-periods a {
    display: inline-flex;
    min-height: 32px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    padding: 5px 10px;
    border: 1px solid var(--crm-compact-finance-line);
    border-radius: 4px;
    color: var(--crm-compact-finance-text);
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-finance-tabs a.active,
.crm-v2026 .crm-compact-finance-dashboard .finance-quick-periods a.active {
    border-color: var(--crm-compact-finance-accent);
    background: var(--crm-color-primary-subtle);
    color: var(--crm-compact-finance-accent-strong);
}
.crm-v2026 .crm-compact-finance-dashboard .finance-period-display {
    margin: 0;
    font-size: 12px;
    font-weight: 700;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-period-controls {
    display: grid;
    grid-template-columns: minmax(0, auto) minmax(360px, 1fr);
    gap: 8px 12px;
    align-items: end;
    margin-top: 8px;
}
.crm-v2026 .crm-compact-finance-period-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(120px, 1fr)) auto;
    gap: 7px;
    align-items: end;
    margin: 0;
}
.crm-v2026 .crm-compact-finance-period-form label {
    margin: 0;
    color: var(--crm-compact-finance-muted);
    font-size: 10px;
    font-weight: 700;
}
.crm-v2026 .crm-compact-finance-period-form input,
.crm-v2026 .crm-compact-finance-period-form button {
    min-height: 32px;
    box-sizing: border-box;
    margin: 2px 0 0;
}
.crm-v2026 .crm-compact-finance-period-form .crm-date-trigger {
    min-height: 34px;
    padding: 5px 8px;
    border-radius: 4px;
    background: var(--crm-compact-finance-surface);
    font-size: 11px;
    line-height: 1.2;
}
.crm-v2026 .crm-compact-finance-period-form .crm-date-trigger::after {
    font-size: 14px;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-kpis,
.crm-v2026 .crm-compact-finance-dashboard .finance-pulse-kpis {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 8px;
    margin: 10px 0;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-kpi,
.crm-v2026 .crm-compact-finance-dashboard .finance-pulse-kpi {
    min-width: 0;
    padding: 10px;
    border: 1px solid var(--crm-compact-finance-line);
    border-radius: 8px;
    background: var(--crm-compact-finance-surface);
}
.crm-v2026 .crm-compact-finance-dashboard .finance-kpi span,
.crm-v2026 .crm-compact-finance-dashboard .finance-kpi small,
.crm-v2026 .crm-compact-finance-dashboard .finance-pulse-kpi span,
.crm-v2026 .crm-compact-finance-dashboard .finance-pulse-kpi small {
    display: block;
    color: var(--crm-compact-finance-muted);
    font-size: 10px;
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-kpi strong,
.crm-v2026 .crm-compact-finance-dashboard .finance-pulse-kpi strong {
    display: block;
    margin: 4px 0;
    font-size: clamp(16px, 1.6vw, 21px);
    line-height: 1.15;
    font-variant-numeric: tabular-nums;
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-panel-heading {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 8px;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-panel-heading h2 {
    margin: 0;
    font-size: 16px;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-panel-heading span,
.crm-v2026 .crm-compact-finance-dashboard .finance-eyebrow,
.crm-v2026 .crm-compact-finance-dashboard .finance-path-note,
.crm-v2026 .crm-compact-finance-dashboard .hint {
    color: var(--crm-compact-finance-muted);
    font-size: 10px;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-eyebrow {
    margin: 0 0 3px;
    font-weight: 750;
    letter-spacing: .06em;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-inline-link {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    color: var(--crm-compact-finance-accent-strong);
    font-size: 12px;
    font-weight: 700;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-money-paths,
.crm-v2026 .crm-compact-finance-dashboard .finance-payment-analytics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 8px;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-money-path {
    min-width: 0;
    padding: 10px;
    border: 1px solid var(--crm-compact-finance-line);
    border-radius: 8px;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-money-path-title small {
    display: block;
    color: var(--crm-compact-finance-muted);
    font-size: 10px;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-money-path dl,
.crm-v2026 .crm-compact-finance-dashboard .finance-method-row dl {
    margin: 7px 0;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-money-path dl div,
.crm-v2026 .crm-compact-finance-dashboard .finance-method-row dl div {
    display: flex;
    min-width: 0;
    justify-content: space-between;
    gap: 8px;
    padding: 4px 0;
    border-bottom: 1px solid var(--crm-compact-finance-line);
    font-size: 11px;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-money-path dd,
.crm-v2026 .crm-compact-finance-dashboard .finance-method-row dd {
    margin: 0;
    font-weight: 700;
    text-align: right;
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-control-strip {
    display: flex;
    gap: 8px;
    margin-top: 8px;
    padding: 8px 10px;
    border: 1px solid var(--crm-compact-finance-danger);
    border-radius: 8px;
    font-size: 11px;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-overview-grid,
.crm-v2026 .crm-compact-finance-dashboard .finance-analytics-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(260px, .65fr);
    gap: 8px;
    margin: 8px 0;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-chart {
    display: grid;
    grid-auto-flow: column;
    grid-auto-columns: minmax(40px, 1fr);
    min-width: 0;
    gap: 5px;
    overflow-x: auto;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-chart-column {
    display: grid;
    min-width: 40px;
    gap: 3px;
    align-content: end;
    font-size: 10px;
    text-align: center;
}
.crm-v2026 .crm-compact-finance-chart-meter {
    width: 100%;
    height: 10px;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-attention-list {
    display: grid;
    gap: 5px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-attention-list li {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 7px;
    padding: 7px;
    border: 1px solid var(--crm-compact-finance-line);
    border-radius: 8px;
    font-size: 11px;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-breakdown,
.crm-v2026 .crm-compact-finance-dashboard .finance-methods {
    display: grid;
    gap: 6px;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-breakdown > div,
.crm-v2026 .crm-compact-finance-dashboard .finance-method-row {
    min-width: 0;
    padding: 8px;
    border: 1px solid var(--crm-compact-finance-line);
    border-radius: 8px;
}
.crm-v2026 .crm-compact-finance-dashboard .finance-table-wrap,
.crm-v2026 .crm-compact-finance-payment-operations .payment-table-wrap {
    max-width: 100%;
    overflow-x: auto;
}
.crm-v2026 .crm-compact-finance-dashboard table,
.crm-v2026 .crm-compact-finance-payment-operations .payment-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 11px;
}
.crm-v2026 .crm-compact-finance-dashboard th,
.crm-v2026 .crm-compact-finance-dashboard td,
.crm-v2026 .crm-compact-finance-payment-operations th,
.crm-v2026 .crm-compact-finance-payment-operations td {
    padding: 7px;
    border-bottom: 1px solid var(--crm-compact-finance-line);
    text-align: left;
    vertical-align: top;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-filter {
    display: grid;
    grid-template-columns: repeat(6, minmax(108px, 1fr));
    gap: 7px;
    align-items: end;
    margin: 0 0 10px;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-filter label {
    margin: 0;
    color: var(--crm-compact-finance-muted);
    font-size: 10px;
    font-weight: 700;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-filter select,
.crm-v2026 .crm-compact-finance-payment-operations .payment-filter input {
    min-height: 32px;
    box-sizing: border-box;
    margin-top: 2px;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-summary {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 7px;
    margin-bottom: 10px;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-summary > div {
    min-width: 0;
    padding: 8px;
    border: 1px solid var(--crm-compact-finance-line);
    border-radius: 8px;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-summary span,
.crm-v2026 .crm-compact-finance-payment-operations small {
    display: block;
    color: var(--crm-compact-finance-muted);
    font-size: 10px;
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-summary strong {
    font-size: 15px;
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-table {
    min-width: 920px;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-table tbody tr[data-payment-url] {
    cursor: pointer;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-table tbody tr[data-payment-url]:hover,
.crm-v2026 .crm-compact-finance-payment-operations .payment-table tbody tr[data-payment-url]:focus {
    outline: 2px solid var(--crm-compact-finance-accent);
    outline-offset: -2px;
    background: var(--crm-color-primary-subtle);
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-patient-name {
    display: block;
    max-width: 220px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-row-link-cue {
    color: var(--crm-color-primary-strong);
    font-weight: 700;
}
.crm-v2026 .crm-compact-finance-cell-value {
    min-width: 0;
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-method-value {
    display: inline-flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 5px;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-env-test,
.crm-v2026 .crm-compact-finance-payment-detail .payment-env-test {
    display: inline-flex;
    min-height: 18px;
    box-sizing: border-box;
    align-items: center;
    padding: 1px 5px;
    border: 1px solid var(--crm-color-primary-line);
    border-radius: 4px;
    background: var(--crm-color-primary-subtle);
    color: var(--crm-compact-finance-accent-strong);
    font-size: 10px;
    font-weight: 750;
    line-height: 1;
    vertical-align: middle;
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-detail-head h1 .payment-env-test {
    margin-left: 6px;
    transform: translateY(-2px);
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-status {
    display: inline-flex;
    max-width: 100%;
    padding: 3px 6px;
    border-radius: 999px;
    background: var(--crm-compact-finance-soft);
    font-size: 10px;
    font-weight: 750;
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-status--succeeded {
    background: var(--crm-color-primary-subtle);
    color: var(--crm-compact-finance-success);
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-status--failed,
.crm-v2026 .crm-compact-finance-payment-operations .payment-status--reversed {
    color: var(--crm-compact-finance-danger);
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-amount {
    font-weight: 750;
    font-variant-numeric: tabular-nums;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-empty {
    padding: 24px 10px;
    color: var(--crm-compact-finance-muted);
    text-align: center;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-pager {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 10px;
    font-size: 11px;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-pager nav {
    display: flex;
    align-items: center;
    gap: 4px;
}
.crm-v2026 .crm-compact-finance-payment-operations .payment-page-link,
.crm-v2026 .crm-compact-finance-payment-operations .payment-pager a {
    display: inline-flex;
    min-width: 32px;
    min-height: 32px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    padding: 5px 8px;
    border: 1px solid var(--crm-compact-finance-line);
    border-radius: 4px;
    text-decoration: none;
}
.crm-v2026 .crm-compact-finance-appointment-payment .payment-create-layout,
.crm-v2026 .crm-compact-finance-payment-detail .payment-detail-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
    gap: 10px;
    align-items: start;
}
.crm-v2026 .crm-compact-finance-appointment-payment .settlement-grid,
.crm-v2026 .crm-compact-finance-payment-detail .payment-facts,
.crm-v2026 .crm-compact-finance-settlement-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 7px;
    margin: 8px 0;
}
.crm-v2026 .crm-compact-finance-appointment-payment .settlement-cell,
.crm-v2026 .crm-compact-finance-payment-detail .payment-fact,
.crm-v2026 .crm-compact-finance-settlement-summary > div {
    min-width: 0;
    padding: 8px;
    border: 1px solid var(--crm-compact-finance-line);
    border-radius: 8px;
}
.crm-v2026 .crm-compact-finance-appointment-payment .settlement-cell small,
.crm-v2026 .crm-compact-finance-payment-detail .payment-fact span,
.crm-v2026 .crm-compact-finance-settlement-summary small {
    display: block;
    color: var(--crm-compact-finance-muted);
    font-size: 10px;
}
.crm-v2026 .crm-compact-finance-appointment-payment .settlement-cell strong,
.crm-v2026 .crm-compact-finance-payment-detail .payment-fact strong,
.crm-v2026 .crm-compact-finance-settlement-summary strong {
    display: block;
    margin-top: 3px;
    font-size: 14px;
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-finance-appointment-payment .settlement-paid,
.crm-v2026 .crm-compact-finance-is-paid {
    background: var(--crm-color-primary-subtle);
    color: var(--crm-compact-finance-success);
}
.crm-v2026 .crm-compact-finance-appointment-payment .settlement-attention,
.crm-v2026 .crm-compact-finance-payment-detail .payment-recovery,
.crm-v2026 .crm-compact-finance-payment-detail .fiscal-error {
    border-color: var(--crm-compact-finance-danger);
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-recovery.payment-recovery--warning {
    border-color: var(--crm-color-warning);
    background: var(--crm-color-warning-soft);
    color: var(--crm-color-warning);
}
.crm-v2026 .crm-compact-finance-appointment-payment .payment-method-note,
.crm-v2026 .crm-compact-finance-payment-detail .payment-live-note,
.crm-v2026 .crm-compact-finance-payment-detail .payment-recovery,
.crm-v2026 .crm-compact-finance-payment-detail .payment-link-box {
    margin: 8px 0;
    padding: 8px;
    border: 1px solid var(--crm-compact-finance-line);
    border-radius: 8px;
    background: var(--crm-compact-finance-soft);
    font-size: 11px;
}
.crm-v2026 .crm-compact-finance-appointment-payment form p,
.crm-v2026 .crm-compact-finance-payment-detail form p {
    margin: 7px 0;
}
.crm-v2026 .crm-compact-finance-appointment-payment form input:not([type="hidden"]):not([type="checkbox"]),
.crm-v2026 .crm-compact-finance-appointment-payment form select,
.crm-v2026 .crm-compact-finance-appointment-payment form textarea,
.crm-v2026 .crm-compact-finance-payment-detail form input:not([type="hidden"]):not([type="checkbox"]),
.crm-v2026 .crm-compact-finance-payment-detail form select,
.crm-v2026 .crm-compact-finance-payment-detail form textarea {
    min-height: 32px;
    box-sizing: border-box;
}
.crm-v2026 .crm-compact-finance-appointment-payment button,
.crm-v2026 .crm-compact-finance-appointment-payment a,
.crm-v2026 .crm-compact-finance-payment-detail button,
.crm-v2026 .crm-compact-finance-payment-detail a,
.crm-v2026 .crm-compact-finance-payment-detail .button,
.crm-v2026 .crm-compact-finance-appointment-settlement button,
.crm-v2026 .crm-compact-finance-appointment-settlement a,
.crm-v2026 .crm-compact-finance-appointment-settlement .button,
.crm-v2026 .crm-compact-finance-appointment-settlement summary {
    min-height: 34px;
    box-sizing: border-box;
    align-items: center;
}
.crm-v2026 .crm-compact-finance-appointment-payment a,
.crm-v2026 .crm-compact-finance-payment-detail a,
.crm-v2026 .crm-compact-finance-appointment-settlement a {
    display: inline-flex;
    max-width: 100%;
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-detail-head {
    display: flex;
    min-width: 0;
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px;
    margin-bottom: 10px;
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-detail-head h1 {
    margin: 2px 0;
    font-size: clamp(19px, 2vw, 25px);
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-detail-head p,
.crm-v2026 .crm-compact-finance-payment-detail small,
.crm-v2026 .crm-compact-finance-appointment-payment small,
.crm-v2026 .crm-compact-finance-appointment-settlement small {
    color: var(--crm-compact-finance-muted);
    font-size: 10px;
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-live-note {
    display: flex;
    align-items: center;
    gap: 7px;
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-live-dot {
    width: 8px;
    height: 8px;
    flex: 0 0 auto;
    border-radius: 50%;
    background: var(--crm-compact-finance-accent);
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-state {
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-state.is-success {
    color: var(--crm-compact-finance-success);
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-state.is-refunded {
    color: var(--crm-compact-finance-accent-strong);
}
.crm-v2026 .crm-compact-finance-payment-detail .secret-link,
.crm-v2026 .crm-compact-finance-payment-detail .timeline p,
.crm-v2026 .crm-compact-finance-payment-detail .side-card-meta span,
.crm-v2026 .crm-compact-finance-payment-detail .refund-summary-reason {
    overflow-wrap: anywhere;
    word-break: break-word;
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-link-actions,
.crm-v2026 .crm-compact-finance-payment-detail .receipt-actions,
.crm-v2026 .crm-compact-finance-payment-detail .fiscal-error-actions,
.crm-v2026 .crm-compact-finance-payment-detail .refund-dialog__actions {
    display: flex;
    min-width: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px;
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-link-actions .secret-link {
    flex: 1 1 260px;
    min-width: 0;
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-link-details {
    margin: 8px 0;
    border: 1px solid var(--crm-compact-finance-line);
    border-radius: 8px;
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-link-details summary {
    display: flex;
    align-items: center;
    padding: 7px;
    font-size: 11px;
    font-weight: 750;
    cursor: pointer;
}
.crm-v2026 .crm-compact-finance-payment-detail .timeline,
.crm-v2026 .crm-compact-finance-payment-detail .refund-summary-list,
.crm-v2026 .crm-compact-finance-payment-detail .side-card-meta {
    display: grid;
    gap: 6px;
}
.crm-v2026 .crm-compact-finance-payment-detail .timeline article,
.crm-v2026 .crm-compact-finance-payment-detail .refund-summary-item {
    min-width: 0;
    padding: 8px;
    border: 1px solid var(--crm-compact-finance-line);
    border-left: 3px solid var(--crm-compact-finance-accent);
    border-radius: 8px;
    background: var(--crm-compact-finance-soft);
}
.crm-v2026 .crm-compact-finance-payment-detail .timeline article[hidden] {
    display: none;
}
.crm-v2026 .crm-compact-finance-payment-detail .timeline article.is-error {
    border-color: color-mix(in srgb, var(--crm-compact-finance-danger) 45%, var(--crm-compact-finance-line));
    border-left-color: var(--crm-compact-finance-danger);
    background: color-mix(in srgb, var(--crm-compact-finance-danger) 7%, var(--crm-compact-finance-surface));
}
.crm-v2026 .crm-compact-finance-payment-detail .timeline article.is-success:not(.is-refund) {
    border-color: color-mix(in srgb, var(--crm-compact-finance-success) 42%, var(--crm-compact-finance-line));
    border-left-color: var(--crm-compact-finance-success);
    background: color-mix(in srgb, var(--crm-compact-finance-success) 7%, var(--crm-compact-finance-surface));
}
.crm-v2026 .crm-compact-finance-payment-detail .timeline article.is-refund {
    border-color: var(--crm-color-primary-line);
    border-left-color: var(--crm-compact-finance-accent);
    background: var(--crm-color-primary-subtle);
}
.crm-v2026 .crm-compact-finance-payment-detail .timeline h3,
.crm-v2026 .crm-compact-finance-payment-detail .receipt-card h3,
.crm-v2026 .crm-compact-finance-payment-detail .side-card-title h2 {
    margin: 0 0 3px;
    font-size: 13px;
}
.crm-v2026 .crm-compact-finance-payment-detail .appointment-card-link {
    display: block;
    color: inherit;
    text-decoration: none;
}
.crm-v2026 .crm-compact-finance-payment-detail .side-card-title,
.crm-v2026 .crm-compact-finance-payment-detail .refund-summary-head {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 7px;
}
.crm-v2026 .crm-compact-finance-payment-detail .side-card-label {
    color: var(--crm-compact-finance-muted);
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .06em;
}
.crm-v2026 .crm-compact-finance-payment-detail .refund-dialog {
    width: min(34rem, calc(100vw - 20px));
    max-width: 100%;
    padding: 0;
    border: 1px solid var(--crm-compact-finance-line);
    border-radius: 8px;
}
.crm-v2026 .crm-compact-finance-payment-detail .refund-dialog__body,
.crm-v2026 .crm-compact-finance-payment-detail .refund-dialog__facts {
    padding: 12px;
}
.crm-v2026 .crm-compact-finance-appointment-settlement .crm-compact-finance-settlement-summary {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.crm-v2026 .crm-compact-finance-appointment-settlement details {
    margin-top: 8px;
    border-top: 1px solid var(--crm-compact-finance-line);
}
.crm-v2026 .crm-compact-finance-appointment-settlement summary {
    display: flex;
    align-items: center;
    cursor: pointer;
}
.crm-v2026 .crm-compact-finance-appointment-settlement form {
    display: grid;
    gap: 7px;
    margin-top: 7px;
}
.crm-v2026 .crm-compact-finance-appointment-settlement input,
.crm-v2026 .crm-compact-finance-appointment-settlement textarea {
    min-height: 32px;
    box-sizing: border-box;
}
@media (max-width: 899px) {
    .crm-v2026 .crm-compact-finance-page-head { align-items: flex-start; }
    .crm-v2026 .crm-compact-finance-tabs a,
    .crm-v2026 .crm-compact-finance-dashboard .finance-quick-periods a,
    .crm-v2026 .crm-compact-finance-dashboard .finance-inline-link,
    .crm-v2026 .crm-compact-finance-payment-operations .payment-page-link,
    .crm-v2026 .crm-compact-finance-payment-operations .payment-pager a,
    .crm-v2026 .crm-compact-finance-appointment-payment button,
    .crm-v2026 .crm-compact-finance-appointment-payment a,
    .crm-v2026 .crm-compact-finance-payment-detail button,
    .crm-v2026 .crm-compact-finance-payment-detail a,
    .crm-v2026 .crm-compact-finance-payment-detail .button,
    .crm-v2026 .crm-compact-finance-payment-detail .payment-link-details summary,
    .crm-v2026 .crm-compact-finance-appointment-settlement button,
    .crm-v2026 .crm-compact-finance-appointment-settlement a,
    .crm-v2026 .crm-compact-finance-appointment-settlement .button,
    .crm-v2026 .crm-compact-finance-appointment-settlement summary { min-width: 44px; min-height: 44px; }
    .crm-v2026 .crm-compact-finance-period-form input,
    .crm-v2026 .crm-compact-finance-period-form button,
    .crm-v2026 .crm-compact-finance-payment-operations .payment-filter select,
    .crm-v2026 .crm-compact-finance-payment-operations .payment-filter input,
    .crm-v2026 .crm-compact-finance-appointment-payment form input:not([type="hidden"]):not([type="checkbox"]),
    .crm-v2026 .crm-compact-finance-appointment-payment form select,
    .crm-v2026 .crm-compact-finance-appointment-payment form textarea,
    .crm-v2026 .crm-compact-finance-payment-detail form input:not([type="hidden"]):not([type="checkbox"]),
    .crm-v2026 .crm-compact-finance-payment-detail form select,
    .crm-v2026 .crm-compact-finance-payment-detail form textarea,
    .crm-v2026 .crm-compact-finance-appointment-settlement input,
    .crm-v2026 .crm-compact-finance-appointment-settlement textarea { min-height: 44px; }
    .crm-v2026 .crm-compact-finance-dashboard .finance-period-controls,
    .crm-v2026 .crm-compact-finance-payment-detail .payment-detail-grid,
    .crm-v2026 .crm-compact-finance-appointment-payment .payment-create-layout { grid-template-columns: 1fr; }
    .crm-v2026 .crm-compact-finance-dashboard .finance-kpis,
    .crm-v2026 .crm-compact-finance-dashboard .finance-pulse-kpis,
    .crm-v2026 .crm-compact-finance-dashboard .finance-money-paths,
    .crm-v2026 .crm-compact-finance-dashboard .finance-payment-analytics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .crm-v2026 .crm-compact-finance-dashboard .finance-overview-grid,
    .crm-v2026 .crm-compact-finance-dashboard .finance-analytics-grid { grid-template-columns: 1fr; }
    .crm-v2026 .crm-compact-finance-payment-operations .payment-filter { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .crm-v2026 .crm-compact-finance-payment-operations .payment-summary { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .crm-v2026 .crm-compact-finance-payment-operations .payment-table { display: block; min-width: 0; }
    .crm-v2026 .crm-compact-finance-payment-operations .payment-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
    .crm-v2026 .crm-compact-finance-payment-operations .payment-table tbody { display: grid; gap: 7px; }
    .crm-v2026 .crm-compact-finance-payment-operations .payment-table tr { display: grid; min-width: 0; padding: 7px; border: 1px solid var(--crm-compact-finance-line); border-radius: 8px; }
    .crm-v2026 .crm-compact-finance-payment-operations .payment-table td { display: grid; min-width: 0; grid-template-columns: minmax(96px, .38fr) minmax(0, 1fr); gap: 8px; padding: 6px; border-bottom: 1px solid var(--crm-compact-finance-line); white-space: normal; overflow-wrap: anywhere; }
    .crm-v2026 .crm-compact-finance-payment-operations .payment-table td:last-child { border-bottom: 0; }
    .crm-v2026 .crm-compact-finance-payment-operations .payment-table td::before { content: attr(data-label); color: var(--crm-compact-finance-muted); font-size: 10px; font-weight: 750; text-transform: uppercase; }
    .crm-v2026 .crm-compact-finance-payment-operations .payment-table .crm-compact-finance-cell-value { grid-column: 2; }
    .crm-v2026 .crm-compact-finance-payment-operations .payment-table .payment-empty { display: block; }
}
@media (max-width: 520px) {
    .crm-v2026 .crm-compact-finance-page-head { display: grid; }
    .crm-v2026 .crm-compact-finance-period-form,
    .crm-v2026 .crm-compact-finance-dashboard .finance-kpis,
    .crm-v2026 .crm-compact-finance-dashboard .finance-pulse-kpis,
    .crm-v2026 .crm-compact-finance-dashboard .finance-money-paths,
    .crm-v2026 .crm-compact-finance-dashboard .finance-payment-analytics,
    .crm-v2026 .crm-compact-finance-payment-operations .payment-filter,
    .crm-v2026 .crm-compact-finance-payment-operations .payment-summary,
    .crm-v2026 .crm-compact-finance-appointment-payment .settlement-grid,
    .crm-v2026 .crm-compact-finance-payment-detail .payment-facts,
    .crm-v2026 .crm-compact-finance-settlement-summary { grid-template-columns: 1fr; }
    .crm-v2026 .crm-compact-finance-payment-operations .payment-pager { align-items: flex-start; flex-direction: column; }
    .crm-v2026 .crm-compact-finance-payment-operations .payment-pager nav { max-width: 100%; flex-wrap: wrap; }
    .crm-v2026 .crm-compact-finance-payment-detail .payment-detail-head { align-items: flex-start; flex-direction: column; }
}

/* TASK-368B: consolidated patient legacy winners. */
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-eyebrow {font-size:.73rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-search-panel>label {margin-bottom:.6rem;color:var(--crm-color-primary-strong);font-weight:800}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-search-control {display:flex;align-items:center;gap:.6rem;padding:0 .7rem;border:1px solid #b5cfe6;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-search-control>span {font-size:1.65rem;line-height:1}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-search-control input {outline:0;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-search-control kbd {padding:.2rem .42rem;border:1px solid #d7e2ec;border-bottom-width:2px;border-radius:5px;background:#f8fafc;font:600 .72rem/1 sans-serif}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-results-count {background:#e9f3fc;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-registry-results {padding:0 .8rem .85rem}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-registry-result {display:grid;gap:.8rem;align-items:center;color:var(--crm-color-primary-strong);transition:background .16s ease,transform .16s ease,box-shadow .16s ease}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-result-avatar,
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-avatar {display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#287dd2,#5ba6e6);color:var(--crm-color-surface);font-weight:850;box-shadow:0 7px 14px #247cc52b}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-result-identity,
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-result-visit,
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-result-context {display:grid;gap:.22rem;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-result-visit strong,
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-result-context strong {font-weight:650}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-result-arrow {color:#3177ad;font-size:1.2rem}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-registry-empty {border:1px dashed #cbd9e5;border-radius:12px;background:#f7fafc;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])).patient-detail-page {max-width:1180px;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-back-link {display:inline-flex;align-items:center;font-weight:700;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-person {display:flex;align-items:center;gap:1rem;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-avatar {flex:0 0 auto;border:3px solid #ffffff5c;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-phone {display:inline-block;margin-top:.36rem;font-weight:650;text-decoration:none}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-actions {flex-wrap:wrap;justify-content:end}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-stats {display:grid;border:1px solid var(--crm-color-control-border);border-radius:16px;overflow:hidden;background:var(--crm-color-control-border)}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-stats>div {display:grid;gap:.28rem;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-stats span {font-weight:650}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-detail-tabs a {display:inline-flex;gap:.4rem;align-items:center;font-weight:750;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-grid {display:grid;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-data-list {display:grid;margin:0}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-data-list div {display:grid;grid-template-columns:145px minmax(0,1fr);gap:1rem;border-bottom:1px solid #e8eef4}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-data-list div:last-child {border-bottom:0}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-data-list dt {color:#73869a;font-size:.84rem}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-data-list dd {margin:0;color:#1d3d5a;font-weight:700}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-data-list a {color:#2375b2}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-data-missing {color:#b27925}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-privacy p:last-child {margin:0;color:#60768b;line-height:1.55}
@media(max-width:640px) {
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-search-control kbd {display:none}
}
@media(max-width:640px) {
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-registry-result {gap:.6rem;}
}
@media(max-width:640px) {
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-actions {justify-content:stretch}
}
@media(max-width:640px) {
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-actions .button {flex:1;text-align:center;}
}
@media(max-width:640px) {
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-data-list div {grid-template-columns:1fr;gap:.18rem}
}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-completeness {display:grid;gap:.22rem;margin:-.25rem 0 1rem;padding:.72rem .8rem;border:1px solid #f0cf80;border-radius:12px;background:#fff8e8;color:#74531c;font-size:.85rem;line-height:1.4}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-completeness strong {font-size:.86rem}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-data-list {gap:0}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-data-list div {min-height:48px;box-sizing:border-box;align-items:center;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-inline-edit-row dd {position:relative;display:grid;grid-template-columns:minmax(0,max-content) auto minmax(0,1fr);gap:.35rem;align-items:center;min-width:0}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-edit-control {display:inline-grid;place-items:center;opacity:0;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-inline-edit-row [data-profile-editor] {grid-column:1/-1;width:100%;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-data-warning {grid-column:3;font-size:.75rem;white-space:nowrap}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-extra-contacts {margin:1.2rem 0;border-top:1px solid #e4edf4;border-bottom:1px solid #e4edf4}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-extra-contacts summary {display:flex;align-items:center;justify-content:space-between;padding:.9rem 0;cursor:pointer;color:#214969;font-weight:800}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-extra-contacts summary small {font-weight:650}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-extra-contacts-grid {display:grid;padding:0 0 1.1rem}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-extra-contacts-grid label {display:grid;gap:.36rem;color:#58718a;font-size:.82rem;font-weight:750}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-extra-contacts-wide {grid-column:1/-1}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-history-list {display:grid;gap:.8rem;margin:0;padding:0;list-style:none}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-history-list li {border-bottom:1px solid #e7eef4}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-history-list li:last-child {border-bottom:0}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-history-list strong {color:#244965;font-size:.92rem}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-history-list p {display:flex;flex-wrap:wrap;gap:.32rem;margin:.42rem 0}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-history-list p span {padding:.2rem .45rem;border-radius:999px;background:#eaf4fc;color:#39729d;font-size:.74rem;font-weight:700}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-history-list small {font-size:.76rem}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-profile-history-empty {color:#72869a}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-registry-result {grid-template-columns:minmax(0,1fr);padding:0;overflow:hidden}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-result-main {display:grid;align-items:center;color:var(--crm-color-primary-strong);text-decoration:none}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-create-dialog {box-sizing:border-box;padding:0;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-create-heading {display:flex;align-items:start;justify-content:space-between;gap:1rem;margin-bottom:1.1rem}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-create-heading h2 {margin:0}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-dialog-close {margin:0;font-size:1.6rem}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-create-grid {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-create-grid label {display:grid;align-content:start;color:#284964;font-weight:750}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-create-grid label.wide {grid-column:1/-1}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-create-actions {display:flex;justify-content:end;gap:.65rem;margin-top:1.2rem}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-create-actions button {margin:0}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-service-locations {display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:1rem 0;padding:1rem 1.1rem;border:1px solid var(--crm-color-control-border);border-radius:16px;background:var(--crm-color-surface)}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-service-locations>div {display:grid;gap:.18rem}
@media(max-width:899px) {
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-service-locations {align-items:flex-start;flex-direction:column}
}
@media(max-width:640px) {
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-create-actions {display:grid;grid-template-columns:1fr 1fr}
}
@media (min-width: 900px) {
.crm-v2026 :where(:is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-registry-result,
.crm-v2026 :where(:is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-result-main { padding-block: .67rem;}
}
.crm-v2026 :where(:is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-search-toolbar .patient-search-control {
    box-shadow: 0 4px 12px rgba(25, 82, 110, .06);}
.crm-v2026 :where(:is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-search-toolbar .patient-search-control > span { color: #258898;}
.crm-v2026 :where(:is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-search-add {
    white-space: nowrap;}
.crm-v2026 :where(:is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-search-quality {
    white-space: nowrap;}
.crm-v2026 :where(:is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-search-actions {
    align-items: center;}
:where(.crm-v2026 :is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-inline-edit-row dd {
    min-height: 50px;}
@media (max-width: 899px) {
.crm-v2026 :where(:is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-detail-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); box-sizing: border-box;}
}
@media (max-width: 899px) {
.crm-v2026 :where(:is([data-crm-component="patient-registry"], [data-crm-component="patient-detail"])) .patient-detail-tabs a { display: grid; place-items: center; text-align: center;}
}
/* END TASK-368B: consolidated patient legacy winners. */
/* TASK-334: compact patient workspace family */
.crm-v2026 [data-crm-component="patient-registry"].crm-compact-patient-registry {
    --crm-compact-primary: var(--crm-color-primary);
    --crm-compact-primary-strong: var(--crm-color-primary-strong);
    --crm-compact-primary-border: #aec0f5;
    --crm-compact-primary-soft: var(--crm-color-primary-subtle);
    --crm-compact-primary-soft-strong: var(--crm-color-primary-line);
    --crm-compact-ink: var(--crm-color-text);
    --crm-compact-copy: var(--crm-color-text-secondary);
    --crm-compact-muted: var(--crm-color-text-muted);
    --crm-compact-line: var(--crm-color-border);
    --crm-compact-control-line: var(--crm-color-control-border);
    --crm-compact-surface: var(--crm-color-surface);
    --crm-compact-page: var(--crm-color-canvas);
    --crm-compact-shadow: none;
    --crm-compact-patient-line: var(--crm-compact-line);
    --crm-compact-patient-ink: var(--crm-compact-ink);
    --crm-compact-patient-muted: var(--crm-compact-muted);
    --crm-compact-patient-primary: var(--crm-compact-primary);
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--crm-compact-patient-line);
    border-radius: 8px;
    background: var(--crm-compact-surface);
    box-shadow: var(--crm-compact-shadow);
    color: var(--crm-compact-patient-ink);
    font-size: 13px;
}
.crm-v2026 [data-crm-component="patient-detail"].crm-compact-patient-detail {
    --crm-compact-primary: var(--crm-color-primary);
    --crm-compact-primary-strong: var(--crm-color-primary-strong);
    --crm-compact-primary-border: #aec0f5;
    --crm-compact-primary-soft: var(--crm-color-primary-subtle);
    --crm-compact-primary-soft-strong: var(--crm-color-primary-line);
    --crm-compact-ink: var(--crm-color-text);
    --crm-compact-copy: var(--crm-color-text-secondary);
    --crm-compact-muted: var(--crm-color-text-muted);
    --crm-compact-line: var(--crm-color-border);
    --crm-compact-control-line: var(--crm-color-control-border);
    --crm-compact-surface: var(--crm-color-surface);
    --crm-compact-page: var(--crm-color-canvas);
    --crm-compact-shadow: none;
    --crm-compact-patient-line: var(--crm-compact-line);
    --crm-compact-patient-ink: var(--crm-compact-ink);
    --crm-compact-patient-muted: var(--crm-compact-muted);
    --crm-compact-patient-primary: var(--crm-compact-primary);
    display: grid;
    min-width: 0;
    gap: 9px;
    color: var(--crm-compact-patient-ink);
    font-size: 13px;
}
.crm-v2026 [data-crm-component="patient-registry"] .crm-compact-patient-heading {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 14px 8px;
    border: 0;
}
.crm-v2026 [data-crm-component="patient-registry"] .crm-compact-patient-heading h1,
.crm-v2026 [data-crm-component="patient-registry"] .crm-compact-patient-heading p {
    margin: 0;
}
.crm-v2026 [data-crm-component="patient-registry"] .crm-compact-patient-heading h1 {
    color: var(--crm-compact-patient-ink);
    font-size: 20px;
    line-height: 1.2;
}
.crm-v2026 [data-crm-component="patient-registry"] .crm-compact-patient-heading .patient-eyebrow {
    color: var(--crm-compact-patient-muted);
    font-size: 10px;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-results-count {
    display: inline-flex;
    min-height: 24px;
    align-items: center;
    padding: 0 8px;
    border: 1px solid var(--crm-compact-patient-line);
    border-radius: 999px;
    color: var(--crm-compact-patient-muted);
    font-size: 10px;
    font-weight: 750;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-search-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px;
    align-items: center;
    padding: 8px 14px 10px;
    border-bottom: 1px solid var(--crm-compact-patient-line);
    background: var(--crm-compact-surface);
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-search-control {
    min-width: 0;
    min-height: 34px;
    border-color: var(--crm-compact-patient-line);
    border-radius: 4px;
    background: var(--crm-compact-page);
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-search-control input {
    min-width: 0;
    min-height: 32px;
    padding-block: 5px;
    font-size: 12px;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-search-control kbd {
    color: var(--crm-compact-patient-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-search-actions {
    display: flex;
    gap: 6px;
}
.crm-v2026 [data-crm-component="patient-registry"] .crm-compact-patient-control {
    min-height: 34px;
    box-sizing: border-box;
    margin: 0;
    padding: 6px 10px;
    border-radius: 4px;
    font-size: 12px;
    line-height: 1.2;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-registry-results {
    display: grid;
    min-width: 0;
    gap: 0;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-registry-result {
    min-width: 0;
    border: 0;
    border-bottom: 1px solid var(--crm-compact-patient-line);
    border-radius: 0;
    background: var(--crm-compact-surface);
    box-shadow: none;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-registry-result:last-child {
    border-bottom: 0;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-main {
    grid-template-columns: 34px minmax(180px, 1.5fr) minmax(116px, .7fr) minmax(104px, .55fr) 16px;
    min-width: 0;
    min-height: 54px;
    gap: 9px;
    padding: 7px 14px;
    box-sizing: border-box;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-main:hover,
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-main:focus-visible {
    background: var(--crm-compact-primary-soft);
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-avatar {
    width: 30px;
    height: 30px;
    font-size: 11px;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-identity,
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-visit,
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-context {
    min-width: 0;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-identity strong,
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-identity small,
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-visit strong,
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-context strong {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-identity strong {
    color: var(--crm-compact-patient-ink);
    font-size: 13px;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-identity small,
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-visit small,
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-context small {
    color: var(--crm-compact-patient-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-visit strong,
.crm-v2026 [data-crm-component="patient-registry"] .patient-result-context strong {
    color: var(--crm-compact-patient-ink);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-registry-empty {
    margin: 0;
    padding: 28px 14px;
    border: 0;
    text-align: center;
    color: var(--crm-compact-patient-muted);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-create-dialog {
    width: min(720px, calc(100vw - 24px));
    border-radius: 8px;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-create-form {
    padding: 16px;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-create-grid {
    gap: 8px;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-create-grid label {
    gap: 3px;
    font-size: 10px;
}
.crm-v2026 [data-crm-component="patient-registry"] .patient-create-grid :is(input, select),
.crm-v2026 [data-crm-component="patient-registry"] .patient-create-actions button,
.crm-v2026 [data-crm-component="patient-registry"] .patient-dialog-close {
    min-height: 34px;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-back-link {
    width: fit-content;
    color: var(--crm-compact-patient-muted);
    text-decoration: none;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-patient-control {
    min-height: 34px;
    box-sizing: border-box;
    margin: 0;
    padding: 6px 10px;
    border-radius: 4px;
    font-size: 12px;
    line-height: 1.2;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-hero {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    border-radius: 8px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-patient-ink);
    box-shadow: var(--crm-compact-shadow);
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-person {
    min-width: 0;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-avatar {
    width: 44px;
    height: 44px;
    background: var(--crm-compact-primary-soft);
    color: var(--crm-compact-patient-primary);
    font-size: 16px;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-hero h1 {
    margin: 2px 0;
    overflow-wrap: anywhere;
    color: var(--crm-compact-patient-ink);
    font-size: 20px;
    line-height: 1.2;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-hero .patient-eyebrow,
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-phone {
    color: var(--crm-compact-patient-muted);
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-actions {
    display: flex;
    flex: 0 0 auto;
    gap: 6px;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-stats {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 7px;
    margin: 0;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-stats > div {
    min-width: 0;
    padding: 8px 10px;
    border: 1px solid var(--crm-compact-patient-line);
    border-radius: 8px;
    background: var(--crm-compact-surface);
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-stats span {
    color: var(--crm-compact-patient-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-stats strong {
    overflow-wrap: anywhere;
    color: var(--crm-compact-patient-ink);
    font-size: 14px;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-detail-tabs {
    display: flex;
    max-width: 100%;
    gap: 3px;
    margin: 0;
    padding: 3px;
    overflow-x: auto;
    border: 1px solid var(--crm-compact-patient-line);
    border-radius: 8px;
    background: var(--crm-compact-surface);
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-detail-tabs a {
    flex: 0 0 auto;
    min-height: 32px;
    color: var(--crm-compact-patient-muted);
    text-decoration: none;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-detail-tabs a.active {
    background: var(--crm-compact-primary-soft);
    color: var(--crm-compact-patient-primary);
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-grid {
    grid-template-columns: minmax(0, 1.55fr) minmax(250px, .75fr);
    gap: 8px;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-card,
.crm-v2026 [data-crm-component="patient-detail"] > .card,
.crm-v2026 [data-crm-component="patient-detail"] > .appointment-cards .appointment-card {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--crm-compact-patient-line);
    border-radius: 8px;
    background: var(--crm-compact-surface);
    box-shadow: none;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-card h2,
.crm-v2026 [data-crm-component="patient-detail"] > .card h2,
.crm-v2026 [data-crm-component="patient-detail"] .section-heading {
    margin: 0 0 8px;
    color: var(--crm-compact-patient-ink);
    font-size: 15px;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-data-list > div,
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-history-list > li {
    min-width: 0;
    padding: 7px 0;
    border-color: var(--crm-compact-patient-line);
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-data-list :is(dt, dd),
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-history-list :is(p, small, strong) {
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-profile-edit-control {
    width: 32px;
    min-width: 32px;
    min-height: 32px;
    padding: 0;
}
.crm-v2026 [data-crm-component="patient-detail"] :is(input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]), select, textarea) {
    min-width: 0;
    min-height: 34px;
    box-sizing: border-box;
}
.crm-v2026 [data-crm-component="patient-detail"] :is(button, .button, .secondary-link, summary) {
    min-height: 34px;
}
.crm-v2026 [data-crm-component="patient-detail"] .patient-extra-contacts-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
}
.crm-v2026 [data-crm-component="patient-detail"] .appointment-cards {
    gap: 8px;
}
.crm-v2026 [data-crm-component="patient-detail"] .appointment-card h3,
.crm-v2026 [data-crm-component="patient-detail"] .appointment-card p {
    overflow-wrap: anywhere;
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-component="patient-registry"].crm-compact-patient-registry { border-radius: 8px; }
    .crm-v2026 [data-crm-component="patient-registry"] .crm-compact-patient-heading { padding: 10px; }
    .crm-v2026 [data-crm-component="patient-registry"] .patient-search-toolbar { grid-template-columns: minmax(0, 1fr); padding: 8px 10px; }
    .crm-v2026 [data-crm-component="patient-registry"] .patient-search-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .crm-v2026 [data-crm-component="patient-registry"] .crm-compact-patient-control,
    .crm-v2026 [data-crm-component="patient-registry"] .patient-create-grid :is(input, select),
    .crm-v2026 [data-crm-component="patient-registry"] .patient-create-actions button,
    .crm-v2026 [data-crm-component="patient-registry"] .patient-dialog-close { min-width: 44px; min-height: 44px; }
    .crm-v2026 [data-crm-component="patient-registry"] .patient-search-control input.crm-compact-patient-control { min-height: 44px; }
    .crm-v2026 [data-crm-component="patient-registry"] .patient-result-main { grid-template-columns: 36px minmax(0, 1fr) minmax(92px, .45fr) 16px; min-height: 58px; padding: 7px 10px; }
    .crm-v2026 [data-crm-component="patient-registry"] .patient-result-context { display: none; }
    .crm-v2026 [data-crm-component="patient-detail"] .patient-profile-hero { align-items: stretch; flex-direction: column; padding: 12px; }
    .crm-v2026 [data-crm-component="patient-detail"] .patient-profile-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .crm-v2026 [data-crm-component="patient-detail"] .patient-profile-stats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .crm-v2026 [data-crm-component="patient-detail"] .patient-profile-grid { grid-template-columns: minmax(0, 1fr); }
    .crm-v2026 [data-crm-component="patient-detail"] .crm-compact-patient-control,
    .crm-v2026 [data-crm-component="patient-detail"] .patient-profile-edit-control,
    .crm-v2026 [data-crm-component="patient-detail"] :is(button, .button, .secondary-link, summary),
    .crm-v2026 [data-crm-component="patient-detail"] :is(input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]), select, textarea) { min-width: 44px; min-height: 44px; }
    .crm-v2026 [data-crm-component="patient-detail"] .patient-detail-tabs a { min-height: 44px; }
}
@media (max-width: 520px) {
    .crm-v2026 [data-crm-component="patient-registry"] .crm-compact-patient-heading { align-items: flex-start; }
    .crm-v2026 [data-crm-component="patient-registry"] .patient-search-actions { grid-template-columns: minmax(0, 1fr); }
    .crm-v2026 [data-crm-component="patient-registry"] .patient-result-main { grid-template-columns: 36px minmax(0, 1fr) 16px; }
    .crm-v2026 [data-crm-component="patient-registry"] :is(.patient-result-visit, .patient-result-context) { display: none; }
    .crm-v2026 [data-crm-component="patient-registry"] .patient-create-grid { grid-template-columns: minmax(0, 1fr); }
    .crm-v2026 [data-crm-component="patient-registry"] .patient-create-grid label.wide { grid-column: auto; }
    .crm-v2026 [data-crm-component="patient-detail"] .patient-profile-actions { grid-template-columns: minmax(0, 1fr); }
    .crm-v2026 [data-crm-component="patient-detail"] .patient-detail-tabs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); overflow: visible; }
    .crm-v2026 [data-crm-component="patient-detail"] .patient-detail-tabs a { min-width: 0; white-space: normal; text-align: center; }
    .crm-v2026 [data-crm-component="patient-detail"] .patient-extra-contacts-grid { grid-template-columns: minmax(0, 1fr); }
}

/* TASK-332: compact clinic calendar workspace. */
.crm-v2026 [data-crm-component="clinic-calendar"].crm-compact-clinic-workspace {
    --clinic-primary: var(--crm-color-primary);
    --clinic-primary-strong: var(--crm-color-primary-strong);
    --clinic-primary-soft: var(--crm-color-primary-subtle);
    --clinic-primary-line: #aec0f5;
    --clinic-text: var(--crm-color-text);
    --clinic-muted: var(--crm-color-text-secondary);
    --clinic-quiet: var(--crm-color-text-muted);
    --clinic-line: var(--crm-color-border);
    --clinic-line-strong: var(--crm-color-control-border);
    --clinic-surface: var(--crm-color-surface);
    --clinic-surface-soft: var(--crm-color-canvas);
    display: grid;
    min-width: 0;
    gap: 10px;
    color: var(--clinic-text);
    font-size: 13px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-header {
    display: flex;
    align-items: end;
    justify-content: space-between;
    min-width: 0;
    gap: 12px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-header h1 {
    margin: 1px 0 0;
    color: var(--clinic-text);
    font-size: 20px;
    line-height: 1.2;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-header p {
    max-width: 520px;
    margin: 0;
    color: var(--clinic-muted);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-header .eyebrow {
    color: var(--clinic-primary-strong);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-toolbar,
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-calendar-surface,
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-planning,
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-nearest,
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-services {
    min-width: 0;
    padding: 10px;
    border: 1px solid var(--clinic-line);
    border-radius: 8px;
    background: var(--clinic-surface);
    box-shadow: 0 1px 2px rgb(0 0 0 / 3%);
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-toolbar {
    display: grid;
    gap: 8px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-filters {
    display: grid;
    grid-template-columns: minmax(150px, 1fr) minmax(160px, 1fr) minmax(132px, .55fr) auto;
    align-items: end;
    gap: 8px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-filters label {
    min-width: 0;
    margin: 0;
    color: var(--clinic-muted);
    font-size: 11px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-filters select,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-filters input,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-filters .crm-date-trigger {
    height: 34px;
    min-height: 34px;
    margin-top: 3px;
    border-color: var(--clinic-line-strong);
    border-radius: 4px;
    background: var(--clinic-surface);
    color: var(--clinic-text);
    font-size: 13px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-availability-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    box-sizing: border-box;
    gap: 6px;
    padding: 0 10px;
    border: 1px solid var(--clinic-line-strong);
    border-radius: 4px;
    background: var(--clinic-surface-soft);
    color: var(--clinic-text);
    white-space: nowrap;
    cursor: pointer;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-availability-toggle input {
    width: auto;
    min-height: 0;
    margin: 0;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-availability-toggle:has(input:checked) {
    border-color: var(--clinic-primary-line);
    background: var(--clinic-primary-soft);
    color: var(--clinic-primary-strong);
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-command {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: 6px;
    padding-top: 8px;
    overflow-x: auto;
    border-top: 1px solid var(--clinic-line);
    scrollbar-width: thin;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-switch,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-range-switch,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-date-navigation,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-work-switch {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 2px;
    padding: 2px;
    border: 1px solid var(--clinic-line);
    border-radius: 6px;
    background: var(--clinic-surface-soft);
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-date-navigation {
    margin-left: auto;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-command a {
    display: inline-grid;
    min-height: 32px;
    box-sizing: border-box;
    place-items: center;
    margin: 0;
    padding: 0 9px;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: var(--clinic-muted);
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    text-decoration: none;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-command a:hover {
    background: var(--clinic-primary-soft);
    color: var(--clinic-primary-strong);
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-command a.active {
    background: var(--clinic-primary);
    color: var(--clinic-surface);
    box-shadow: 0 1px 2px rgb(52 81 178 / 20%);
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-access-note {
    display: flex;
    align-items: center;
    min-height: 32px;
    gap: 8px;
    padding: 6px 10px;
    border: 1px solid var(--clinic-primary-line);
    border-radius: 6px;
    background: var(--clinic-primary-soft);
    color: var(--clinic-primary-strong);
    font-size: 11px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-access-note details,
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-access-note p {
    margin: 0;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-access-note summary {
    display: flex;
    align-items: center;
    min-height: 32px;
    cursor: pointer;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-width: 0;
    gap: 10px;
    margin-bottom: 8px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-section-head h2 {
    margin: 0;
    color: var(--clinic-text);
    font-size: 15px;
    line-height: 1.25;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-section-head p,
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-section-head > span {
    margin: 2px 0 0;
    color: var(--clinic-muted);
    font-size: 11px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-table-wrap {
    max-height: calc(100dvh - 235px);
    overflow: auto;
    border: 1px solid var(--clinic-line);
    border-radius: 6px;
    overscroll-behavior: contain;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-table {
    width: 100%;
    min-width: 720px;
    table-layout: fixed;
    border-collapse: separate;
    border-spacing: 0;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-table th,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-table td {
    width: 116px;
    height: 50px;
    box-sizing: border-box;
    padding: 4px;
    border-right: 1px solid var(--clinic-line);
    border-bottom: 1px solid var(--clinic-line);
    vertical-align: top;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-table th {
    position: sticky;
    z-index: 2;
    top: 0;
    height: 36px;
    background: var(--clinic-surface-soft);
    color: var(--clinic-muted);
    font-size: 10px;
    font-weight: 800;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-table .clinic-time-cell {
    position: sticky;
    z-index: 3;
    left: 0;
    width: 54px;
    min-width: 54px;
    max-width: 54px;
    background: var(--clinic-surface-soft);
    color: var(--clinic-quiet);
    font-size: 10px;
    font-weight: 800;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-slot-card {
    display: block;
    width: 100%;
    min-height: 40px;
    max-height: 40px;
    box-sizing: border-box;
    margin: 0;
    padding: 5px 7px;
    overflow: hidden;
    border: 1px solid transparent;
    border-radius: 4px;
    text-align: left;
    font: inherit;
    font-size: 11px;
    line-height: 1.15;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-slot-card.available {
    border-color: #b9dfd1;
    background: #edf9f4;
    color: #18794e;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-slot-card.available.recommended-slot {
    border-color: #ffd338;
    background: #fffbe8;
    color: #6f5b00;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-slot-card.booked {
    border-color: var(--clinic-primary-line);
    background: var(--crm-color-primary-line);
    color: var(--clinic-primary-strong);
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-slot-card.missed {
    border-color: var(--clinic-line);
    background: var(--crm-color-surface-subtle);
    color: var(--clinic-muted);
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-slot-card.reserved {
    border-color: #f5d90a;
    background: #fffbe8;
    color: #6f5b00;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-slot-card[data-bookable="true"] {
    cursor: pointer;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-slot-card[data-bookable="true"]:hover {
    border-color: var(--clinic-primary);
    box-shadow: 0 2px 6px rgb(52 81 178 / 14%);
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-slot-card small {
    display: block;
    margin-top: 2px;
    overflow: hidden;
    color: inherit;
    font-size: 10px;
    font-weight: 500;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-slot-direction {
    display: inline-grid;
    width: 16px;
    height: 16px;
    place-items: center;
    border-radius: 50%;
    background: #ffd338;
    color: var(--crm-color-text);
    font-size: 10px;
    font-weight: 900;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-empty {
    padding: 18px;
    color: var(--clinic-muted);
    text-align: center;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-nearest-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 6px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-nearest-slot {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-width: 0;
    gap: 6px;
    padding: 7px;
    border: 1px solid var(--clinic-line);
    border-radius: 6px;
    background: var(--clinic-surface-soft);
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-nearest-slot div {
    min-width: 0;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-nearest-slot strong,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-nearest-slot span {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-nearest-slot span {
    margin-top: 2px;
    color: var(--clinic-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-nearest-slot button {
    min-height: 32px;
    margin: 0;
    padding: 0 9px;
    border-radius: 4px;
    background: var(--clinic-primary);
    font-size: 11px;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-services details,
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-services summary {
    margin: 0;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-services summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    min-height: 32px;
    cursor: pointer;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-services summary span {
    color: var(--clinic-primary-strong);
    font-size: 11px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-selection {
    margin: 8px 0;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-selection .clinic-calendar-table th,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-selection .clinic-calendar-table td {
    height: 38px;
    padding: 2px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-cell {
    display: grid;
    width: 100%;
    height: 32px;
    min-height: 32px;
    place-items: center;
    margin: 0;
    padding: 0;
    border-radius: 4px;
    cursor: crosshair;
    touch-action: none;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-status {
    margin: 6px 0;
    color: var(--clinic-primary-strong);
    font-size: 11px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, .7fr);
    gap: 10px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px 8px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-form label {
    margin: 0;
    font-size: 11px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-form input,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-form select,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-form button {
    min-height: 34px;
    margin-top: 3px;
    border-radius: 4px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-form .errorlist,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-form button {
    grid-column: 1 / -1;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-window-list {
    display: grid;
    gap: 5px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-window-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 6px 8px;
    border: 1px solid var(--clinic-line);
    border-radius: 4px;
    background: var(--clinic-surface-soft);
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-window-row button {
    min-height: 32px;
    margin: 0;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-dialog-errors {
    margin: 6px 0;
    padding: 7px;
    border: 1px solid #e5484d;
    border-radius: 4px;
    background: #fff5f5;
    color: #b4232a;
    font-size: 11px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-dialog-errors[hidden] {
    display: none;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-booking-dialog {
    width: min(680px, calc(100vw - 24px));
    border: 1px solid var(--clinic-line);
    border-radius: 8px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-booking-dialog header {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 10px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-booking-dialog header button {
    min-width: 32px;
    min-height: 32px;
    margin: 0;
    padding: 0;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-booking-dialog form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 3px 8px;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-booking-dialog form textarea,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-booking-dialog form button,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-booking-dialog form .errorlist,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-booking-dialog form > ul,
.crm-v2026 [data-crm-component="clinic-calendar"] .clinic-override-field,
.crm-v2026 [data-crm-component="clinic-calendar"] .patient-match {
    grid-column: 1 / -1;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .appointment-preview-grid {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 6px 10px;
    margin: 10px 0;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .appointment-preview-grid dd {
    margin: 0;
}
.crm-v2026 [data-crm-component="clinic-calendar"] .appointment-preview-actions {
    display: flex;
    gap: 6px;
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-header {
        align-items: start;
        flex-direction: column;
        gap: 4px;
    }
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-filters select,
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-filters input,
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-filters .crm-date-trigger,
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-availability-toggle,
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-command a,
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-nearest-slot button,
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-cell,
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-form input,
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-form select,
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-form button,
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-window-row button,
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-booking-dialog header button,
    .crm-v2026 [data-crm-component="clinic-calendar"] .appointment-preview-actions a,
    .crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-access-note summary,
    .crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-services summary {
        min-height: 44px;
    }
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-table-wrap {
        max-height: calc(100dvh - 300px);
    }
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-table {
        min-width: 760px;
    }
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-slot-card {
        min-height: 44px;
        max-height: 44px;
    }
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-nearest-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-planning-grid,
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-booking-dialog form {
        grid-template-columns: minmax(0, 1fr);
    }
}
@media (max-width: 540px) {
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-filters,
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-nearest-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-calendar-command {
        padding-inline: 2px;
    }
    .crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-toolbar,
    .crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-calendar-surface,
    .crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-planning,
    .crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-nearest,
    .crm-v2026 [data-crm-component="clinic-calendar"] .crm-compact-clinic-services {
        padding: 8px;
    }
    .crm-v2026 [data-crm-component="clinic-calendar"] .clinic-nearest-slot {
        min-height: 52px;
    }
    .crm-v2026 [data-crm-component="clinic-calendar"] .appointment-preview-actions {
        flex-direction: column;
    }
}

/* TASK-368C: consolidated clinical and medical legacy winners. */
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-letter-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(58px,1fr)); gap:.55rem; }
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-letter-option { display:flex; min-height:48px; box-sizing:border-box; align-items:center; justify-content:center; gap:.45rem; padding:.45rem .6rem; border:1px solid var(--crm-border); border-radius:10px; background:var(--crm-surface); cursor:pointer; font-weight:800; }
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-letter-option input { width:1rem; min-height:1rem; margin:0; accent-color:var(--crm-primary); }
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-letter-option:has(input:checked) { border-color:var(--crm-primary); background:var(--crm-accent-soft); color:var(--crm-primary-strong); box-shadow:0 0 0 2px rgba(18,59,96,.08); }
@media (max-width:640px) {
:where(.crm-v2026 :is([data-crm-component="medical-template-designer"], [data-crm-component="pdf-overlay-designer"])) .pdf-mapper-paper-wrap,
:where(.crm-v2026 :is([data-crm-component="medical-template-designer"], [data-crm-component="pdf-overlay-designer"])) .designer-paper { max-width:100%; }
}
:where(.crm-v2026 [data-crm-component="clinical-library"]).clinical-library [hidden],
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library [hidden] {display:none!important}
:where(.crm-v2026 :is([data-crm-component="clinical-library"], [data-crm-component="icd-preferences"])) .clinical-library-eyebrow {margin:0;color:#2783a8;font-size:.72rem;font-weight:900;letter-spacing:.16em}
:where(.crm-v2026 [data-crm-component="clinical-library"]).clinical-library,
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library {--clinical-line:#d8e4ee;--clinical-soft:var(--crm-color-surface-subtle);--clinical-ink:var(--crm-color-primary-strong);min-width:0}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-toolbar {display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.7rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-search {display:flex;align-items:center;gap:.55rem;min-width:min(360px,100%);margin:0;padding:0 .8rem;border:1px solid var(--clinical-line);border-radius:12px;background:var(--crm-color-surface);color:#668096}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-toolbar-actions {display:flex;gap:.5rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-toolbar-actions button {min-height:42px;margin:0}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-status {min-height:1.25rem;margin:-.15rem 0 .45rem;color:#587289;font-size:.8rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-board {display:grid;grid-template-columns:minmax(190px,.72fr) minmax(225px,.95fr) minmax(270px,1.12fr);min-width:0;min-height:560px;overflow:hidden;border:1px solid var(--clinical-line);border-radius:18px;background:var(--crm-color-surface);box-shadow:0 15px 45px #173a5b0d}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-column {display:flex;min-width:0;flex-direction:column;padding:.8rem;border-right:1px solid var(--clinical-line);background:#fbfdff}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-column:last-child {border-right:0;background:var(--crm-color-surface)}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-column>header {display:flex;align-items:center;justify-content:space-between;gap:.6rem;min-height:40px;margin-bottom:.55rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-column>header>div {display:flex;align-items:center;gap:.45rem;min-width:0}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-column h2 {margin:0;color:var(--clinical-ink);font-size:.98rem;white-space:nowrap}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-count {display:grid;min-width:1.65rem;height:1.65rem;place-items:center;border-radius:999px;background:#e8f1f7;color:#49687f;font-size:.72rem;font-weight:900}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-column-hint {margin:-.25rem 0 .6rem;color:var(--crm-color-text-muted);font-size:.73rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-list {display:grid;align-content:start;gap:.5rem;min-height:0;overflow-y:auto;scrollbar-width:thin}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-category-card,
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-field-card {width:100%;box-sizing:border-box;margin:0;border:1px solid transparent;border-radius:12px;background:transparent;color:var(--clinical-ink);box-shadow:none}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-category-card {display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.6rem;min-height:62px;padding:.6rem;text-align:left}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-category-card>span:nth-child(2) {display:grid;gap:.12rem;min-width:0}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-category-card strong,
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-category-card small {overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-category-card small,
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-field-card small,
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-composer-field small {color:#73899b;font-size:.7rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-category-dot {display:block;width:.68rem;height:.68rem;flex:0 0 auto;border-radius:50%;background:var(--category-color,#2f80ed);box-shadow:0 0 0 4px color-mix(in srgb,var(--category-color,#2f80ed) 16%,transparent)}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-field-card {display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;border-color:#e0e9f0;background:var(--crm-color-surface);box-shadow:0 4px 13px #173a5b0a}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-field-card>button:first-child {display:grid;gap:.14rem;min-width:0;min-height:72px;margin:0;padding:.65rem;border:0;background:transparent;color:inherit;text-align:left}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-field-card strong {overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-field-kind {color:#3082a2;font-size:.65rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-composer-empty,
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-empty {display:grid;place-items:center;align-content:center;gap:.35rem;min-height:190px;padding:1rem;color:var(--crm-color-text-muted);text-align:center}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-empty {min-height:150px;border:1px dashed #ccdae5;border-radius:12px;background:var(--crm-color-surface-subtle)}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-composer-empty>span,
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-empty>span {display:grid;width:2.4rem;height:2.4rem;place-items:center;border-radius:50%;background:#eaf4f8;color:#3b8da8;font-size:1.2rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-composer-empty strong,
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-empty strong {color:#3f5e76}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-composer-empty p,
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-empty p {max-width:240px;margin:0;font-size:.77rem;line-height:1.45}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-composer-content {display:grid;align-content:start;gap:.75rem;min-height:0}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-composer-title {display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.7rem;border-radius:12px;background:#f2f8fb}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-composer-title>div {display:grid;gap:.08rem;min-width:0}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-composer-title button {min-height:34px;margin:0;padding:.35rem .55rem;font-size:.72rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-dropzone {display:grid;align-content:start;gap:.5rem;min-height:320px;padding:.55rem;border:1px dashed #bad3df;border-radius:14px;background:var(--crm-color-surface-subtle);transition:border-color .15s,background .15s}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-dropzone-hint {margin:0;color:#7b8f9f;font-size:.72rem;text-align:center}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-dialog {width:min(620px,calc(100vw - 2rem));max-height:calc(100dvh - 2rem);box-sizing:border-box;padding:0;border:0;border-radius:20px;background:var(--crm-color-surface);box-shadow:0 26px 75px #0f34536b}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-field-dialog {width:min(850px,calc(100vw - 2rem))}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-dialog form {display:grid;gap:1rem;margin:0;padding:1.25rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-dialog label {display:grid;gap:.35rem;color:#294c66;font-weight:800}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-dialog-heading {display:flex;align-items:start;justify-content:space-between;gap:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--crm-color-border)}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-dialog-heading h2 {margin:.1rem 0 0;color:var(--clinical-ink)}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-dialog-close {display:grid;width:2.35rem;min-height:2.35rem;place-items:center;margin:0;padding:0;border:1px solid #d5e1e9;background:var(--crm-color-surface);color:#42627a;font-size:1.35rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-color-picker {display:flex;gap:.55rem;margin:0;padding:0;border:0}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-color-picker legend {margin-bottom:.45rem;color:#294c66;font-weight:800}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-color-picker label {display:block}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-color-picker input {position:absolute;opacity:0;pointer-events:none}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-color-picker span {display:block;width:1.55rem;height:1.55rem;border:3px solid var(--crm-color-surface);border-radius:50%;background:var(--category-color);box-shadow:0 0 0 1px #bdd0dc;cursor:pointer}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-color-picker input:checked+span {box-shadow:0 0 0 3px #2c7796}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-dialog-actions {display:grid;grid-template-columns:auto 1fr auto auto;gap:.55rem;align-items:center;padding-top:.75rem;border-top:1px solid var(--crm-color-border)}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-dialog-actions button {min-height:40px;margin:0}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-field-form-grid {display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,.42fr);gap:.75rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-editor-shell {overflow:hidden;border:1px solid #cbdce7;border-radius:13px;background:var(--crm-color-surface)}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-editor-toolbar {display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .65rem;border-bottom:1px solid #dce6ed;background:#f5f9fb;color:#31536c;font-size:.78rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-editor-toolbar button {min-height:32px;margin:0;padding:.3rem .55rem;font-size:.72rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-token-editor {min-height:180px;max-height:330px;overflow:auto;padding:.8rem;color:var(--crm-color-primary-strong);line-height:1.7;white-space:pre-wrap;outline:0}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-token-editor:empty::before {content:attr(data-placeholder);color:#8aa0b0;pointer-events:none}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-icd-picker {padding:.75rem;border:1px solid #cfe0e9;border-radius:13px;background:#f7fbfd}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-icd-results {display:grid;gap:.35rem;max-height:230px;margin-top:.55rem;overflow:auto}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-icd-results>p {margin:.5rem;color:#70879a;font-size:.78rem}
@media(max-width:1100px) {
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-toolbar {align-items:stretch}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-search {min-width:0;flex:1}
}
@media(max-width:720px) {
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-toolbar {display:grid}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-toolbar-actions {display:grid;grid-template-columns:1fr 1fr}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-board {display:grid;grid-template-columns:1fr;min-height:0;overflow:visible;border:0;background:transparent;box-shadow:none}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-column {min-height:0;margin-bottom:.7rem;border:1px solid var(--clinical-line);border-radius:15px;background:var(--crm-color-surface)}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-field-form-grid {grid-template-columns:1fr}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-dialog,
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-field-dialog {width:calc(100vw - 1rem);max-height:calc(100dvh - 1rem);border-radius:16px 16px 0 0}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-dialog-actions {grid-template-columns:1fr 1fr}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-dialog-actions>span {display:none}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-dialog-actions .danger {grid-column:1/-1;grid-row:2}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-icd-results {max-height:180px}
}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-composer-empty {min-height:112px;padding:.7rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-color-picker {display:grid;gap:.7rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-color-presets {display:flex;flex-wrap:wrap;gap:.55rem}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-custom-color {display:grid;grid-template-columns:minmax(180px,.72fr) minmax(150px,1fr);gap:.65rem;padding-top:.65rem;border-top:1px solid var(--crm-color-border)}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-color-picker .clinical-custom-color label {display:grid;gap:.3rem;color:#557086;font-size:.72rem;font-weight:800}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-color-picker .clinical-custom-color label>span {display:inline;width:auto;height:auto;border:0;border-radius:0;background:transparent;box-shadow:none;cursor:default}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-color-picker .clinical-custom-color input {position:static;width:100%;min-height:42px;box-sizing:border-box;margin:0;opacity:1;pointer-events:auto}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-color-picker .clinical-custom-color input[type=color] {padding:.25rem;cursor:pointer}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-token-editor-hint {margin:-.65rem 0 0;color:#6d8395;font-size:.72rem}
@media(max-width:720px) {
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-custom-color {grid-template-columns:1fr}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-token-editor-hint {font-size:.68rem}
}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-preference-card-heading {display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.8rem}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-preference-card-heading p:not(.clinical-library-eyebrow) {max-width:650px;margin:0;color:var(--crm-color-text-muted);font-size:.78rem;line-height:1.45}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-source-badge {flex:0 0 auto;padding:.35rem .65rem;border:1px solid #b9d8e4;border-radius:999px;background:#edf9fb;color:#226a84;font-size:.7rem;font-weight:900}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-override-switch {display:grid;grid-template-columns:auto minmax(0,1fr);gap:.65rem;align-items:start;margin:.65rem 0;padding:.7rem;border:1px solid #d8e5ed;border-radius:12px;background:#f7fafc;cursor:pointer}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-override-switch input {width:1.1rem;min-height:1.1rem;margin:.12rem 0 0;accent-color:#177fa1}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-override-switch>span {display:grid;gap:.12rem}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-override-switch strong {color:#284b66}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-controls {display:grid;gap:.8rem;transition:opacity .15s}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-controls[aria-disabled=true],
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-letter-grid[aria-disabled=true] {opacity:.55}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-preview {display:grid;gap:.2rem;padding:.85rem 1rem;border:1px solid #a8d7e2;border-radius:14px;background:linear-gradient(135deg,#effbfc,#f7f8ff);box-shadow:inset 4px 0 #26a0b7}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-preview span {color:#5f7b8e;font-size:.65rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-preview strong {overflow-wrap:anywhere;color:#153e61;font-size:1.05rem;line-height:1.4}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-presets {margin:0;padding:0;border:0}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-presets legend {margin-bottom:.45rem;color:#31536c;font-size:.78rem;font-weight:900}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-presets>div {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-presets label {position:relative;cursor:pointer}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-presets input {position:absolute;opacity:0;pointer-events:none}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-presets label>span {display:grid;gap:.1rem;min-height:58px;box-sizing:border-box;padding:.65rem .75rem;border:1px solid #d6e3eb;border-radius:11px;background:var(--crm-color-surface);transition:border-color .15s,background .15s,box-shadow .15s}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-presets label>span strong {color:#284d69;font-size:.78rem}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-presets label>span small {overflow:hidden;color:#74899a;font-size:.69rem;text-overflow:ellipsis;white-space:nowrap}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-custom-format {display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem .65rem;align-items:end}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-custom-format>label {display:grid;gap:.3rem;color:#31536c;font-size:.76rem;font-weight:900}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-custom-format input {width:100%;box-sizing:border-box;margin:0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-token-buttons {display:flex;gap:.4rem}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-token-buttons button {min-height:42px;margin:0;padding:.45rem .65rem}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-custom-format>p {grid-column:1/-1;margin:0;color:var(--crm-color-text-muted);font-size:.69rem;line-height:1.45}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-custom-format>p.form-error {color:#a52c3e}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-preferences-actions {position:sticky;bottom:.6rem;z-index:4;padding:.65rem;border:1px solid #d6e3eb;border-radius:14px;background:#fffffff0;box-shadow:0 10px 30px #173a5b17;backdrop-filter:blur(12px)}
@media(max-width:720px) {
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-preference-card-heading {display:grid}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-source-badge {justify-self:start}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-format-token-buttons {display:grid;grid-template-columns:1fr 1fr}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-preferences-actions {position:static;display:grid;grid-template-columns:1fr}
:where(.crm-v2026 [data-crm-component="icd-preferences"]) .icd-preferences-actions button {width:100%}
}
.crm-v2026 :where([data-crm-component="current-consultation"]) .consultation-empty p { color: #506b80; }
.crm-v2026 :where([data-crm-component="clinical-library"]) .clinical-drag-handle {
    display: grid;
    min-width: 2rem;
    min-height: 2rem;
    place-items: center;
    margin: 0;
    padding: .2rem;
    border: 0;
    background: transparent;
    color: #718da1;
    font-size: 1.15rem;
    cursor: pointer;
}
.crm-v2026 :where([data-crm-component="clinical-library"]) .clinical-field-card[draggable="true"] { cursor: grab; }
.crm-v2026 :where([data-crm-component="clinical-library"]) .clinical-archive-dialog { width: min(620px, calc(100vw - 2rem)); }
.crm-v2026 :where([data-crm-component="clinical-library"]) .clinical-archive-shell { display: grid; gap: 1rem; padding: 1.25rem; }
.crm-v2026 :where([data-crm-component="clinical-library"]) .clinical-archive-shell .hint { margin: .25rem 0 0; }
.crm-v2026 :where([data-crm-component="clinical-library"]) .clinical-archive-list { display: grid; align-content: start; gap: .5rem; max-height: min(58vh, 520px); overflow: auto; }
@media (max-width: 720px) {
.crm-v2026 :where([data-crm-component="clinical-library"]) .clinical-library-toolbar-actions { grid-template-columns: repeat(3, 1fr); }
.crm-v2026 :where([data-crm-component="clinical-library"]) .clinical-library-toolbar-actions button { padding-inline: .45rem; }
.crm-v2026 :where([data-crm-component="clinical-library"]) .clinical-archive-shell { padding: 1rem; }
}
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-search input {margin:0;}
@media (max-width:899px) {
:where(.crm-v2026 [data-crm-component="clinical-library"]) .clinical-library-search input {padding:.5rem 0;}
}
/* END TASK-368C: consolidated clinical and medical legacy winners. */
/* TASK-337: compact consultation presentation canary. */
.crm-v2026 [data-crm-component="current-consultation"].crm-compact-consultation {
    --crm-consultation-primary: #3e63dd;
    --crm-consultation-primary-strong: #3451b2;
    --crm-consultation-primary-soft: #f0f4ff;
    --crm-consultation-primary-soft-strong: #e6edfe;
    --crm-consultation-ink: #333;
    --crm-consultation-copy: #666;
    --crm-consultation-muted: #999;
    --crm-consultation-line: #ebebeb;
    --crm-consultation-control-line: #d6d6d6;
    --crm-consultation-surface: #fff;
    --crm-consultation-canvas: #fcfcfc;
    --crm-consultation-quiet: #f1f1f1;
    --crm-consultation-danger: #e5484d;
    --crm-consultation-warning: #f5d90a;
    --crm-consultation-success: #18794e;
    --crm-consultation-focus: #aec0f5;
    box-sizing: border-box;
    width: min(100%, 1240px);
    min-width: 0;
    overflow-x: clip;
    margin: 0 auto;
    color: var(--crm-consultation-ink);
    font-size: 13px;
    line-height: 1.4;
}
.crm-v2026 [data-crm-component="current-consultation"] *,
.crm-v2026 [data-crm-component="current-consultation"] *::before,
.crm-v2026 [data-crm-component="current-consultation"] *::after {
    box-sizing: border-box;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-hero {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    padding: 12px 14px;
    border: 1px solid var(--crm-consultation-line);
    border-radius: 8px;
    background: var(--crm-consultation-surface);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-hero > div:first-child {
    min-width: 0;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-hero h1 {
    margin: 2px 0 0;
    color: var(--crm-consultation-ink);
    font-size: 20px;
    line-height: 1.2;
    letter-spacing: -.02em;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-hero > div:first-child > p:last-child {
    max-width: 720px;
    margin: 4px 0 0;
    color: var(--crm-consultation-copy);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-eyebrow {
    margin: 0;
    color: var(--crm-consultation-primary-strong);
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-status {
    display: grid;
    flex: 0 0 auto;
    gap: 1px;
    min-width: 156px;
    padding: 7px 9px;
    border: 1px solid var(--crm-consultation-primary-soft-strong);
    border-radius: 4px;
    background: var(--crm-consultation-primary-soft);
    color: var(--crm-consultation-primary-strong);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-status small {
    color: var(--crm-consultation-copy);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-switcher {
    display: flex;
    align-items: flex-end;
    gap: 6px;
    margin: 8px 0 0;
    padding: 8px;
    border: 1px solid var(--crm-consultation-line);
    border-radius: 8px;
    background: var(--crm-consultation-canvas);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-switcher label {
    display: grid;
    flex: 1 1 320px;
    gap: 3px;
    min-width: 0;
    margin: 0;
    color: var(--crm-consultation-copy);
    font-size: 12px;
    font-weight: 650;
}
.crm-v2026 [data-crm-component="current-consultation"] input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.crm-v2026 [data-crm-component="current-consultation"] select,
.crm-v2026 [data-crm-component="current-consultation"] button,
.crm-v2026 [data-crm-component="current-consultation"] .button {
    min-height: 34px;
    border-radius: 4px;
    font-size: 13px;
}
.crm-v2026 [data-crm-component="current-consultation"] input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.crm-v2026 [data-crm-component="current-consultation"] select,
.crm-v2026 [data-crm-component="current-consultation"] textarea {
    border-color: var(--crm-consultation-control-line);
    background: var(--crm-consultation-surface);
    color: var(--crm-consultation-ink);
}
.crm-v2026 [data-crm-component="current-consultation"] button:not(.secondary),
.crm-v2026 [data-crm-component="current-consultation"] .button:not(.secondary) {
    border-color: var(--crm-consultation-primary);
    background: var(--crm-consultation-primary);
    color: var(--crm-consultation-surface);
}
.crm-v2026 [data-crm-component="current-consultation"] button.secondary,
.crm-v2026 [data-crm-component="current-consultation"] .button.secondary {
    border-color: var(--crm-consultation-control-line);
    background: var(--crm-consultation-surface);
    color: var(--crm-consultation-primary-strong);
}
.crm-v2026 [data-crm-component="current-consultation"] :is(a, button, input, select, textarea, summary):focus-visible {
    outline: 3px solid var(--crm-consultation-focus);
    outline-offset: 2px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
    gap: 8px;
    margin-top: 8px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-grid.is-single-column {
    grid-template-columns: minmax(0, 1fr);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-grid > div {
    min-width: 0;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-card {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--crm-consultation-line);
    border-radius: 8px;
    background: var(--crm-consultation-surface);
    box-shadow: none;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-card h2 {
    margin: 2px 0 8px;
    color: var(--crm-consultation-ink);
    font-size: 16px;
    line-height: 1.25;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-card h3 {
    margin: 10px 0 5px;
    color: var(--crm-consultation-ink);
    font-size: 13px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-stack-card,
.crm-v2026 [data-crm-component="current-consultation"] .consultation-template-card {
    margin-top: 8px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-identity {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 10px;
    align-items: start;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-identity > div:first-child {
    min-width: 0;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-identity h2 {
    max-width: 100%;
    margin: 0;
    font-size: 20px;
    line-height: 1.15;
    letter-spacing: -.02em;
    overflow-wrap: normal;
    word-break: normal;
    text-wrap: balance;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-identity a[href^="tel:"] {
    display: inline-flex;
    align-items: center;
    margin-top: 3px;
    color: var(--crm-consultation-copy);
    font-size: 12px;
    font-weight: 650;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-identity-actions {
    display: flex;
    gap: 6px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-identity-actions .button {
    width: auto;
    margin: 0;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin-top: 10px;
    border-top: 1px solid var(--crm-consultation-line);
    border-left: 1px solid var(--crm-consultation-line);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-meta div {
    min-width: 0;
    padding: 7px 8px;
    border-right: 1px solid var(--crm-consultation-line);
    border-bottom: 1px solid var(--crm-consultation-line);
    background: var(--crm-consultation-canvas);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-meta span {
    display: block;
    color: var(--crm-consultation-muted);
    font-size: 10px;
    font-weight: 650;
    letter-spacing: .02em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-meta strong {
    display: block;
    margin-top: 2px;
    color: var(--crm-consultation-ink);
    font-size: 13px;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-meta .status-paid {
    color: var(--crm-consultation-success);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-attention {
    margin: 8px 0 0;
    padding: 8px 10px;
    border: 1px solid var(--crm-consultation-warning);
    border-radius: 8px;
    background: var(--crm-consultation-canvas);
    color: var(--crm-consultation-copy);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-attention strong {
    display: block;
    color: var(--crm-consultation-ink);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-attention ul {
    display: grid;
    gap: 2px;
    margin: 4px 0 0;
    padding-left: 18px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-attention .button {
    display: inline-flex;
    margin-top: 6px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-extra {
    margin-top: 8px;
    border-top: 1px solid var(--crm-consultation-line);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-extra > summary,
.crm-v2026 [data-crm-component="current-consultation"] .template-browser > summary,
.crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel > summary,
.crm-v2026 [data-crm-component="current-consultation"] .payment-completion-panel > summary {
    display: flex;
    align-items: center;
    min-height: 34px;
    cursor: pointer;
    color: var(--crm-consultation-primary-strong);
    font-size: 13px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-extra-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-extra-grid div {
    min-width: 0;
    padding: 7px 8px;
    border: 1px solid var(--crm-consultation-line);
    border-radius: 4px;
    color: var(--crm-consultation-copy);
    font-size: 12px;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-extra-grid strong {
    display: block;
    color: var(--crm-consultation-ink);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-profile-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    margin-top: 8px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-profile-form p {
    display: grid;
    gap: 3px;
    min-width: 0;
    margin: 0;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-profile-form button {
    grid-column: 1 / -1;
    justify-self: start;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-profile-form :is(input, textarea, select).crm-field-invalid {
    border-color: var(--crm-consultation-danger);
    background: var(--crm-consultation-surface);
    box-shadow: 0 0 0 3px rgb(229 72 77 / 12%);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-profile-form .crm-field-invalid-wrap > label {
    color: var(--crm-consultation-danger);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-status-actions {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--crm-consultation-line);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-status-actions form,
.crm-v2026 [data-crm-component="current-consultation"] .consultation-status-actions button {
    margin: 0;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-status-actions .hint {
    flex: 1 0 100%;
    margin: 0;
    color: var(--crm-consultation-muted);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-closing-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    margin-top: 8px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-closing-grid > details {
    min-width: 0;
    margin: 0;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-closing-grid > details:only-child,
.crm-v2026 [data-crm-component="current-consultation"] .consultation-closing-grid > details[open] {
    grid-column: 1 / -1;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-closing-grid:has(> details[open]) > details:not([open]) {
    display: none;
}
.crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel,
.crm-v2026 [data-crm-component="current-consultation"] .payment-completion-panel {
    width: auto;
    padding: 8px 10px;
    border: 1px solid var(--crm-consultation-primary-soft-strong);
    border-radius: 8px;
    background: var(--crm-consultation-canvas);
}
.crm-v2026 [data-crm-component="current-consultation"] .payment-completion-panel {
    border-color: var(--crm-consultation-warning);
}
.crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel > form {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--crm-consultation-line);
}
.crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel label {
    min-width: 0;
    color: var(--crm-consultation-copy);
    font-size: 12px;
    font-weight: 650;
}
.crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel label select,
.crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel label input,
.crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel label textarea {
    display: block;
    width: 100%;
    margin-top: 3px;
}
.crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel label small {
    display: block;
    margin-top: 3px;
    color: var(--crm-consultation-muted);
    font-size: 12px;
    font-weight: 500;
}
.crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel > form > details,
.crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel > form > button {
    grid-column: 1 / -1;
}
.crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel > form > details {
    padding: 6px 8px;
    border: 1px solid var(--crm-consultation-line);
    border-radius: 8px;
    background: var(--crm-consultation-surface);
}
.crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel > form > details > summary {
    display: flex;
    align-items: center;
    min-height: 34px;
    color: var(--crm-consultation-primary-strong);
    font-weight: 650;
    cursor: pointer;
}
.crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel > form > details label {
    display: block;
    margin-top: 6px;
}
.crm-v2026 [data-crm-component="current-consultation"] .payment-completion-body {
    display: grid;
    gap: 6px;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--crm-consultation-line);
}
.crm-v2026 [data-crm-component="current-consultation"] .payment-completion-amount {
    margin: 0;
    color: var(--crm-consultation-ink);
    font-size: 13px;
}
.crm-v2026 [data-crm-component="current-consultation"] .payment-completion-body form {
    margin: 0;
}
.crm-v2026 [data-crm-component="current-consultation"] .payment-completion-body .button {
    justify-self: start;
}
.crm-v2026 [data-crm-component="current-consultation"] .payment-completion-body span {
    display: block;
    color: var(--crm-consultation-copy);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-timeline,
.crm-v2026 [data-crm-component="current-consultation"] .consultation-documents,
.crm-v2026 [data-crm-component="current-consultation"] .template-options {
    display: grid;
    gap: 6px;
    margin: 0;
    padding: 0;
    list-style: none;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-timeline li,
.crm-v2026 [data-crm-component="current-consultation"] .consultation-documents li,
.crm-v2026 [data-crm-component="current-consultation"] .template-option {
    min-width: 0;
    padding: 8px;
    border: 1px solid var(--crm-consultation-line);
    border-radius: 8px;
    background: var(--crm-consultation-canvas);
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-timeline strong,
.crm-v2026 [data-crm-component="current-consultation"] .consultation-documents strong,
.crm-v2026 [data-crm-component="current-consultation"] .template-option strong {
    color: var(--crm-consultation-ink);
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-timeline small,
.crm-v2026 [data-crm-component="current-consultation"] .consultation-documents small,
.crm-v2026 [data-crm-component="current-consultation"] .template-option small {
    display: block;
    margin-top: 2px;
    color: var(--crm-consultation-muted);
    font-size: 12px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-documents a {
    display: inline-flex;
    align-items: center;
    margin-top: 4px;
    color: var(--crm-consultation-primary-strong);
    font-weight: 650;
    text-decoration: none;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-timeline-link {
    display: block;
    color: inherit;
    text-decoration: none;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-timeline li:has(.consultation-timeline-link) {
    transition: border-color .16s ease, background-color .16s ease;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-timeline li:has(.consultation-timeline-link):hover {
    border-color: var(--crm-consultation-primary-soft-strong);
    background: var(--crm-consultation-primary-soft);
}
.crm-v2026 [data-crm-component="current-consultation"] .template-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.crm-v2026 [data-crm-component="current-consultation"] .template-option > div {
    min-width: 0;
}
.crm-v2026 [data-crm-component="current-consultation"] .template-option form,
.crm-v2026 [data-crm-component="current-consultation"] .template-option button {
    flex: 0 0 auto;
    margin: 0;
}
.crm-v2026 [data-crm-component="current-consultation"] .template-empty,
.crm-v2026 [data-crm-component="current-consultation"] .consultation-empty {
    margin: 0;
    padding: 14px;
    border: 1px dashed var(--crm-consultation-control-line);
    border-radius: 8px;
    background: var(--crm-consultation-canvas);
    color: var(--crm-consultation-copy);
    text-align: center;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-empty {
    margin-top: 8px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-empty h1 {
    margin: 0 0 3px;
    color: var(--crm-consultation-ink);
    font-size: 16px;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-empty p {
    margin: 0;
    font-size: 12px;
}
.crm-v2026 [data-crm-component="current-consultation"] .template-browser {
    margin-top: 6px;
    border-top: 1px solid var(--crm-consultation-line);
}
.crm-v2026 [data-crm-component="current-consultation"] .template-options-expanded {
    margin-top: 6px;
}
.crm-v2026 [data-crm-component="current-consultation"] .preflight {
    margin-top: 8px;
    padding: 10px;
    border: 1px solid var(--crm-consultation-primary-soft-strong);
    border-radius: 8px;
    background: var(--crm-consultation-primary-soft);
}
.crm-v2026 [data-crm-component="current-consultation"] .preflight h2 {
    margin: 0;
    color: var(--crm-consultation-ink);
    font-size: 16px;
}
.crm-v2026 [data-crm-component="current-consultation"] .preflight-intro {
    margin: 3px 0 8px;
    color: var(--crm-consultation-copy);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="current-consultation"] .preflight-alert {
    margin: 6px 0;
    padding: 7px 8px;
    border: 1px solid var(--crm-consultation-warning);
    border-radius: 8px;
    background: var(--crm-consultation-surface);
    color: var(--crm-consultation-copy);
}
.crm-v2026 [data-crm-component="current-consultation"] .preflight-list {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    margin: 5px 0;
    padding: 0;
    list-style: none;
}
.crm-v2026 [data-crm-component="current-consultation"] .preflight-list li {
    padding: 2px 5px;
    border-radius: 4px;
    background: var(--crm-consultation-primary-soft-strong);
    color: var(--crm-consultation-primary-strong);
    font-size: 10px;
    font-weight: 650;
}
.crm-v2026 [data-crm-component="current-consultation"] .preflight-table {
    width: 100%;
    margin-top: 5px;
    border-collapse: collapse;
}
.crm-v2026 [data-crm-component="current-consultation"] .preflight-table th,
.crm-v2026 [data-crm-component="current-consultation"] .preflight-table td {
    padding: 5px;
    border-bottom: 1px solid var(--crm-consultation-line);
    text-align: left;
    font-size: 12px;
}
.crm-v2026 [data-crm-component="current-consultation"] .preflight-action {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--crm-consultation-primary-soft-strong);
}
.crm-v2026 [data-crm-component="current-consultation"] .preflight-action form,
.crm-v2026 [data-crm-component="current-consultation"] .preflight-action button {
    margin: 0;
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-hero,
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-identity {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-status {
        width: 100%;
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-identity-actions {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-identity-actions .button {
        width: 100%;
    }
    .crm-v2026 [data-crm-component="current-consultation"] input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
    .crm-v2026 [data-crm-component="current-consultation"] select,
    .crm-v2026 [data-crm-component="current-consultation"] button,
    .crm-v2026 [data-crm-component="current-consultation"] .button,
    .crm-v2026 [data-crm-component="current-consultation"] summary,
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-documents a,
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-identity a[href^="tel:"] {
        min-height: 44px;
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-documents a,
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-identity a[href^="tel:"] {
        align-items: center;
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-extra > summary,
    .crm-v2026 [data-crm-component="current-consultation"] .template-browser > summary,
    .crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel > summary,
    .crm-v2026 [data-crm-component="current-consultation"] .payment-completion-panel > summary,
    .crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel > form > details > summary {
        min-height: 44px;
    }
}
@media (max-width: 640px) {
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-switcher,
    .crm-v2026 [data-crm-component="current-consultation"] .template-option,
    .crm-v2026 [data-crm-component="current-consultation"] .preflight-action {
        align-items: stretch;
        flex-direction: column;
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-switcher label {
        flex: 0 0 auto;
        width: 100%;
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-switcher select,
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-switcher button,
    .crm-v2026 [data-crm-component="current-consultation"] .template-option button,
    .crm-v2026 [data-crm-component="current-consultation"] .preflight-action button {
        width: 100%;
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-switcher select {
        height: 44px;
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-profile-form,
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-closing-grid,
    .crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel > form {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-closing-grid > details,
    .crm-v2026 [data-crm-component="current-consultation"] .medical-completion-panel > form > * {
        grid-column: 1;
    }
}
@media (max-width: 540px) {
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-hero,
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-card,
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-switcher {
        padding: 10px;
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-identity-actions,
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-meta,
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-extra-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-status-actions form,
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-status-actions button {
        width: 100%;
    }
}
@media (prefers-reduced-motion: reduce) {
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-timeline li:has(.consultation-timeline-link) {
        transition: none;
    }
}
/* END TASK-337: compact consultation presentation canary. */

/* TASK-338: compact Figma-informed activity log. */
.crm-v2026 [data-crm-component="activity-log"] {
    --crm-activity-primary: #3e63dd;
    --crm-activity-primary-strong: #3451b2;
    --crm-activity-primary-soft: #f0f4ff;
    --crm-activity-primary-soft-strong: #e6edfe;
    --crm-activity-ink: #333333;
    --crm-activity-copy: #666666;
    --crm-activity-muted: #999999;
    --crm-activity-line: #ebebeb;
    --crm-activity-control-line: #d6d6d6;
    --crm-activity-surface: #ffffff;
    --crm-activity-canvas: #fcfcfc;
    display: grid;
    gap: 8px;
    min-width: 0;
    color: var(--crm-activity-ink);
    font-size: 13px;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__head {
    display: flex;
    min-height: 36px;
    align-items: center;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__head h1 {
    margin: 0;
    color: var(--crm-activity-ink);
    font-size: 20px;
    line-height: 1.2;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__toolbar {
    padding: 8px;
    border: 1px solid var(--crm-activity-line);
    border-radius: 8px;
    background: var(--crm-activity-surface);
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__filters {
    display: grid;
    grid-template-columns: minmax(150px, .8fr) minmax(220px, 1.4fr) minmax(138px, .65fr) auto;
    gap: 8px;
    align-items: end;
    margin: 0;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__field {
    display: grid;
    min-width: 0;
    gap: 3px;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__field label {
    margin: 0;
    color: var(--crm-activity-copy);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .03em;
    line-height: 1.2;
    text-transform: uppercase;
}
/* TASK-363I: activity desktop controls align with premium density. */
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__field input,
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__field select,
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__submit {
    box-sizing: border-box;
    min-height: 34px;
    margin: 0;
    border-radius: 4px;
    font-size: 13px;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__field input,
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__field select {
    width: 100%;
    padding: 5px 8px;
    border: 1px solid var(--crm-activity-control-line);
    background: var(--crm-activity-surface);
    color: var(--crm-activity-ink);
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__field input:focus-visible,
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__field select:focus-visible,
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__submit:focus-visible,
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__link:focus-visible,
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__pagination a:focus-visible {
    outline: 2px solid var(--crm-activity-primary);
    outline-offset: 2px;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__submit {
    padding: 5px 12px;
    border: 1px solid var(--crm-activity-primary);
    background: var(--crm-activity-primary);
    color: var(--crm-activity-surface);
    font-weight: 700;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__submit:hover {
    border-color: var(--crm-activity-primary-strong);
    background: var(--crm-activity-primary-strong);
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__feed {
    min-width: 0;
    overflow: clip;
    border: 1px solid var(--crm-activity-line);
    border-radius: 8px;
    background: var(--crm-activity-surface);
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__row {
    display: grid;
    grid-template-columns: 116px minmax(0, 1fr);
    gap: 10px;
    min-width: 0;
    padding: 8px 10px;
    border-bottom: 1px solid var(--crm-activity-line);
    background: var(--crm-activity-surface);
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__row:last-child {
    border-bottom: 0;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__row:hover {
    background: var(--crm-activity-canvas);
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__time {
    padding-top: 2px;
    color: var(--crm-activity-muted);
    font-size: 10px;
    font-variant-numeric: tabular-nums;
    line-height: 1.35;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__content {
    display: grid;
    min-width: 0;
    gap: 4px;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__row-head {
    display: flex;
    min-width: 0;
    align-items: baseline;
    justify-content: space-between;
    gap: 8px;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__row-head h3 {
    min-width: 0;
    margin: 0;
    color: var(--crm-activity-ink);
    font-size: 13px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__actor {
    flex: 0 1 auto;
    color: var(--crm-activity-copy);
    font-size: 12px;
    line-height: 1.35;
    overflow-wrap: anywhere;
    text-align: right;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__facts {
    display: flex;
    min-width: 0;
    flex-wrap: wrap;
    gap: 3px 12px;
    align-items: center;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__facts p {
    min-width: 0;
    margin: 0;
    color: var(--crm-activity-copy);
    font-size: 12px;
    line-height: 1.4;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__facts strong {
    color: var(--crm-activity-ink);
    font-weight: 650;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__facts a,
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__link {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
    color: var(--crm-activity-primary-strong);
    font-weight: 650;
    text-decoration: none;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__facts a:hover,
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__link:hover {
    text-decoration: underline;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__facts .status {
    font-size: 10px;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__location {
    padding: 2px 5px;
    border-radius: 4px;
    background: var(--crm-activity-primary-soft);
    color: var(--crm-activity-primary-strong);
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__link {
    display: inline-flex;
    width: max-content;
    min-height: 32px;
    align-items: center;
    font-size: 12px;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__empty {
    margin: 0;
    padding: 16px;
    color: var(--crm-activity-copy);
    font-size: 12px;
    text-align: center;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__pagination {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__pagination a,
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__pagination span {
    display: inline-flex;
    min-height: 36px;
    box-sizing: border-box;
    align-items: center;
    padding: 5px 9px;
    border: 1px solid var(--crm-activity-line);
    border-radius: 4px;
    background: var(--crm-activity-surface);
    color: var(--crm-activity-copy);
    font-size: 12px;
    text-decoration: none;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__pagination a {
    color: var(--crm-activity-primary-strong);
    font-weight: 650;
}
.crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__pagination a:hover {
    border-color: var(--crm-activity-primary-soft-strong);
    background: var(--crm-activity-primary-soft);
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__filters {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__field input,
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__field select,
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__submit,
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__facts a,
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__link,
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__pagination a,
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__pagination span {
        min-height: 44px;
    }
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__submit {
        width: 100%;
    }
}
@media (max-width: 540px) {
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__filters,
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__row {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__row {
        gap: 4px;
        padding: 8px;
    }
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__time {
        padding: 0;
    }
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__row-head {
        align-items: flex-start;
        flex-direction: column;
        gap: 2px;
    }
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__actor {
        text-align: left;
    }
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__facts {
        align-items: flex-start;
        flex-direction: column;
    }
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__link {
        width: 100%;
    }
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__pagination {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__pagination span {
        grid-column: 1 / -1;
        grid-row: 1;
        justify-content: center;
    }
    .crm-v2026 [data-crm-component="activity-log"] .crm-compact-activity__pagination a {
        justify-content: center;
        text-align: center;
    }
}
/* END TASK-338: compact Figma-informed activity log. */

/* TASK-339: compact appointments and operational queue family. */
.crm-v2026 .crm-task-339-operational-queue,
.crm-v2026 .crm-task-339-appointment-detail {
    --task-339-primary: #3e63dd;
    --task-339-primary-strong: #3451b2;
    --task-339-primary-soft: #f0f4ff;
    --task-339-primary-soft-strong: #e6edfe;
    --task-339-danger: #e5484d;
    --task-339-success: #18794e;
    --task-339-ink: #333;
    --task-339-copy: #666;
    --task-339-muted: #999;
    --task-339-line: #ebebeb;
    --task-339-control-line: #d6d6d6;
    --task-339-quiet: #f1f1f1;
    --task-339-surface: #fff;
    --task-339-page: #fcfcfc;
    min-width: 0;
    color: var(--task-339-ink);
}
.crm-v2026 .crm-task-339-operational-queue {
    display: grid;
    gap: 12px;
    overflow-x: clip;
}
.crm-v2026 .crm-task-339-operational-queue__header,
.crm-v2026 .crm-task-339-operational-queue__section-head,
.crm-v2026 .crm-task-339-appointment-detail__header {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
}
.crm-v2026 .crm-task-339-operational-queue__header {
    align-items: center;
    padding: 2px 0 5px;
}
.crm-v2026 .crm-task-339-operational-queue__header > div,
.crm-v2026 .crm-task-339-operational-queue__section-head > div,
.crm-v2026 .crm-task-339-appointment-detail__header > div {
    min-width: 0;
}
.crm-v2026 .crm-task-339-operational-queue__header h1,
.crm-v2026 .crm-task-339-appointment-detail__header h1 {
    margin: 0;
    overflow-wrap: anywhere;
    color: var(--task-339-ink);
    font-size: clamp(20px, 2vw, 26px);
    line-height: 1.2;
}
.crm-v2026 .crm-task-339-operational-queue__header p:not(.crm-task-339-operational-queue__eyebrow),
.crm-v2026 .crm-task-339-appointment-detail__header p:not(.crm-task-339-appointment-detail__eyebrow) {
    margin: 3px 0 0;
    overflow-wrap: anywhere;
    color: var(--task-339-copy);
    font-size: 12px;
}
.crm-v2026 .crm-task-339-operational-queue__eyebrow,
.crm-v2026 .crm-task-339-appointment-detail__eyebrow {
    margin: 0 0 3px;
    color: var(--task-339-muted);
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .08em;
}
.crm-v2026 .crm-task-339-operational-queue__count {
    display: inline-flex;
    flex: 0 0 auto;
    min-width: 28px;
    min-height: 24px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    padding: 2px 7px;
    border: 1px solid var(--task-339-primary-soft-strong);
    border-radius: 999px;
    background: var(--task-339-primary-soft);
    color: var(--task-339-primary-strong);
    font-size: 11px;
    font-weight: 750;
}
.crm-v2026 .crm-task-339-operational-queue__clinical,
.crm-v2026 .crm-task-339-operational-queue__financial,
.crm-v2026 .crm-task-339-appointment-detail__summary,
.crm-v2026 .crm-task-339-appointment-detail__history {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--task-339-line);
    border-radius: 8px;
    background: var(--task-339-surface);
    box-shadow: none;
}
.crm-v2026 .crm-task-339-operational-queue__section-head {
    align-items: center;
    margin-bottom: 9px;
}
.crm-v2026 .crm-task-339-operational-queue__section-head h2,
.crm-v2026 .crm-task-339-appointment-detail__summary h2,
.crm-v2026 .crm-task-339-appointment-detail__history h2 {
    margin: 0;
    color: var(--task-339-ink);
    font-size: 15px;
    line-height: 1.3;
}
.crm-v2026 .crm-task-339-operational-queue__section-head p:not(.crm-task-339-operational-queue__eyebrow) {
    margin: 2px 0 0;
    color: var(--task-339-copy);
    font-size: 12px;
}
.crm-v2026 .crm-task-339-operational-queue__table-wrap {
    min-width: 0;
    overflow: auto;
    border: 1px solid var(--task-339-line);
    border-radius: 8px;
    scrollbar-width: thin;
}
.crm-v2026 .crm-task-339-operational-queue__table {
    width: 100%;
    min-width: 760px;
    margin: 0;
    border: 0;
    border-collapse: collapse;
    background: var(--task-339-surface);
}
.crm-v2026 .crm-task-339-operational-queue__table th {
    padding: 7px 8px;
    border-bottom: 1px solid var(--task-339-control-line);
    background: var(--task-339-page);
    color: var(--task-339-copy);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .035em;
    text-align: left;
    text-transform: uppercase;
}
.crm-v2026 .crm-task-339-operational-queue__table td {
    min-width: 0;
    padding: 8px;
    border-bottom: 1px solid var(--task-339-line);
    color: var(--task-339-ink);
    font-size: 13px;
    vertical-align: top;
}
.crm-v2026 .crm-task-339-operational-queue__table tbody tr:last-child td {
    border-bottom: 0;
}
.crm-v2026 .crm-task-339-operational-queue__table tbody tr:hover {
    background: var(--task-339-page);
}
.crm-v2026 .crm-task-339-operational-queue__table a {
    color: var(--task-339-primary-strong);
    font-weight: 650;
    text-decoration: none;
}
.crm-v2026 .crm-task-339-operational-queue__table td > a,
.crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list a,
.crm-v2026 .crm-task-339-appointment-detail__history a {
    display: inline-flex;
    min-height: 34px;
    box-sizing: border-box;
    align-items: center;
}
.crm-v2026 .crm-task-339-operational-queue__table a:hover {
    text-decoration: underline;
}
.crm-v2026 .crm-task-339-operational-queue__table small {
    display: block;
    margin-top: 2px;
    overflow-wrap: anywhere;
    color: var(--task-339-copy);
    font-size: 10px;
}
.crm-v2026 .crm-task-339-operational-queue__status,
.crm-v2026 .crm-task-339-appointment-detail__status,
.crm-v2026 .crm-task-339-appointment-detail__history .status {
    min-height: 20px;
    box-sizing: border-box;
    padding: 2px 7px;
    font-size: 10px;
    line-height: 1.2;
}
.crm-v2026 .crm-task-339-operational-queue__actions {
    display: flex;
    align-items: center;
    gap: 5px;
}
.crm-v2026 .crm-task-339-operational-queue__actions form {
    margin: 0;
}
.crm-v2026 .crm-task-339-operational-queue__actions button,
.crm-v2026 .crm-task-339-operational-queue__financial-action a {
    min-height: 34px;
    box-sizing: border-box;
    margin: 0;
    padding: 5px 8px;
    border-radius: 4px;
    font-size: 12px;
    white-space: nowrap;
}
.crm-v2026 .crm-task-339-operational-queue__actions .secondary,
.crm-v2026 .crm-task-339-operational-queue__financial-action .secondary {
    border: 1px solid var(--task-339-primary-soft-strong);
    background: var(--task-339-primary-soft);
    color: var(--task-339-primary-strong);
}
.crm-v2026 .crm-task-339-operational-queue__actions .danger {
    border-color: var(--task-339-danger);
    background: var(--task-339-surface);
    color: var(--task-339-danger);
}
.crm-v2026 .crm-task-339-operational-queue__readonly {
    color: var(--task-339-muted);
    font-size: 11px;
}
.crm-v2026 .crm-task-339-operational-queue__empty {
    padding: 16px;
    border: 1px dashed var(--task-339-control-line);
    border-radius: 8px;
    background: var(--task-339-page);
    text-align: center;
}
.crm-v2026 .crm-task-339-operational-queue__empty strong {
    color: var(--task-339-success);
    font-size: 13px;
}
.crm-v2026 .crm-task-339-operational-queue__empty p {
    margin: 3px 0 0;
    color: var(--task-339-copy);
    font-size: 12px;
}
.crm-v2026 .crm-task-339-operational-queue__dialog,
.crm-v2026 .crm-task-339-appointment-detail__cancel-dialog {
    width: min(520px, calc(100vw - 24px));
    box-sizing: border-box;
    padding: 14px;
    border: 1px solid var(--task-339-line);
    border-radius: 8px;
    background: var(--task-339-surface);
    box-shadow: none;
}
.crm-v2026 .crm-task-339-operational-queue__dialog h2,
.crm-v2026 .crm-task-339-appointment-detail__cancel-dialog h2 {
    margin: 0 38px 8px 0;
    font-size: 17px;
}
.crm-v2026 .crm-task-339-operational-queue__dialog .dialog-close,
.crm-v2026 .crm-task-339-appointment-detail__cancel-dialog .dialog-close {
    width: 36px;
    min-height: 36px;
}
.crm-v2026 .crm-task-339-operational-queue__outcome-form,
.crm-v2026 .crm-task-339-appointment-detail__cancel-form {
    display: grid;
    gap: 7px;
}
.crm-v2026 .crm-task-339-operational-queue__outcome-form label,
.crm-v2026 .crm-task-339-appointment-detail__cancel-form label {
    display: grid;
    gap: 3px;
    margin: 0;
    color: var(--task-339-copy);
    font-size: 11px;
    font-weight: 650;
}
.crm-v2026 .crm-task-339-operational-queue__outcome-form input:not([type="hidden"]),
.crm-v2026 .crm-task-339-operational-queue__outcome-form select,
.crm-v2026 .crm-task-339-operational-queue__outcome-form textarea,
.crm-v2026 .crm-task-339-appointment-detail__cancel-form input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]),
.crm-v2026 .crm-task-339-appointment-detail__cancel-form select,
.crm-v2026 .crm-task-339-appointment-detail__cancel-form textarea {
    min-height: 34px;
    box-sizing: border-box;
    margin: 0;
    border-color: var(--task-339-control-line);
    border-radius: 4px;
    font-size: 13px;
}
.crm-v2026 .crm-task-339-operational-queue__dialog-context,
.crm-v2026 .crm-task-339-operational-queue__dialog-note {
    margin: 0;
    color: var(--task-339-copy);
    font-size: 11px;
}
.crm-v2026 .crm-task-339-operational-queue__dialog .dialog-actions,
.crm-v2026 .crm-task-339-appointment-detail__cancel-dialog .dialog-actions {
    margin-top: 3px;
}
.crm-v2026 .crm-task-339-operational-queue__dialog .dialog-actions button,
.crm-v2026 .crm-task-339-appointment-detail__cancel-dialog .dialog-actions button {
    min-height: 34px;
    box-sizing: border-box;
    margin: 0;
    border-radius: 4px;
    font-size: 12px;
}
.crm-v2026 .crm-task-339-appointment-detail {
    display: grid;
    gap: 10px;
    overflow-x: clip;
}
.crm-v2026 .crm-task-339-appointment-detail__back {
    margin: 0;
}
.crm-v2026 .crm-task-339-appointment-detail__back a {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    color: var(--task-339-primary-strong);
    font-size: 12px;
    font-weight: 650;
    text-decoration: none;
}
.crm-v2026 .crm-task-339-appointment-detail__header {
    align-items: center;
    padding-bottom: 2px;
}
.crm-v2026 .crm-task-339-appointment-detail__header .crm-task-339-appointment-detail__status {
    flex: 0 0 auto;
}
.crm-v2026 .crm-task-339-appointment-detail .appointment-detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.12fr) minmax(300px, .88fr);
    gap: 10px;
    align-items: start;
}
.crm-v2026 .crm-task-339-appointment-detail__summary h2,
.crm-v2026 .crm-task-339-appointment-detail__history h2 {
    margin-bottom: 9px;
}
.crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list {
    display: grid;
    grid-template-columns: minmax(118px, .4fr) minmax(0, 1fr);
    gap: 0;
    margin: 0;
}
.crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list dt,
.crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list dd {
    min-width: 0;
    margin: 0;
    padding: 6px 0;
    border-bottom: 1px solid var(--task-339-line);
    font-size: 13px;
    overflow-wrap: anywhere;
}
.crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list dt {
    padding-right: 10px;
    color: var(--task-339-copy);
    font-size: 11px;
    font-weight: 650;
}
.crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list a {
    color: var(--task-339-primary-strong);
}
.crm-v2026 .crm-task-339-appointment-detail__actions {
    display: grid;
    gap: 7px;
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--task-339-line);
}
.crm-v2026 .crm-task-339-appointment-detail__actions form {
    margin: 0;
}
.crm-v2026 .crm-task-339-appointment-detail__actions .inline-status-form {
    display: flex;
    gap: 5px;
    margin: 0;
}
.crm-v2026 .crm-task-339-appointment-detail__actions button,
.crm-v2026 .crm-task-339-appointment-detail__actions > a,
.crm-v2026 .crm-task-339-appointment-detail__outcome summary {
    min-height: 34px;
    box-sizing: border-box;
    margin: 0;
    border-radius: 4px;
    font-size: 12px;
}
.crm-v2026 .crm-task-339-appointment-detail__outcome {
    border: 1px solid var(--task-339-line);
    border-radius: 8px;
    background: var(--task-339-page);
}
.crm-v2026 .crm-task-339-appointment-detail__outcome summary {
    display: flex;
    align-items: center;
    padding: 5px 8px;
    cursor: pointer;
    color: var(--task-339-primary-strong);
    font-weight: 700;
}
.crm-v2026 .crm-task-339-appointment-detail__outcome[open] summary {
    border-bottom: 1px solid var(--task-339-line);
    background: var(--task-339-primary-soft);
}
.crm-v2026 .crm-task-339-appointment-detail__outcome-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    padding: 9px;
}
.crm-v2026 .crm-task-339-appointment-detail__outcome-form label {
    display: grid;
    min-width: 0;
    gap: 3px;
    margin: 0;
    color: var(--task-339-copy);
    font-size: 11px;
    font-weight: 650;
}
.crm-v2026 .crm-task-339-appointment-detail__outcome-form input:not([type="hidden"]),
.crm-v2026 .crm-task-339-appointment-detail__outcome-form select,
.crm-v2026 .crm-task-339-appointment-detail__outcome-form textarea {
    min-width: 0;
    min-height: 34px;
    box-sizing: border-box;
    margin: 0;
    border-color: var(--task-339-control-line);
    border-radius: 4px;
    font-size: 13px;
}
.crm-v2026 .crm-task-339-appointment-detail__outcome-form p,
.crm-v2026 .crm-task-339-appointment-detail__outcome-form button {
    grid-column: 1 / -1;
}
.crm-v2026 .crm-task-339-appointment-detail__outcome-form p {
    margin: 0;
    color: var(--task-339-copy);
    font-size: 10px;
}
.crm-v2026 .crm-task-339-appointment-detail__history .appointment-history {
    display: grid;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}
.crm-v2026 .crm-task-339-appointment-detail__history .appointment-history-item {
    position: relative;
    padding: 8px 8px 8px 16px;
    border: 0;
    border-bottom: 1px solid var(--task-339-line);
    border-radius: 0;
    background: var(--task-339-surface);
}
.crm-v2026 .crm-task-339-appointment-detail__history .appointment-history-item::before {
    position: absolute;
    top: 12px;
    left: 2px;
    width: 6px;
    height: 6px;
    border-radius: 999px;
    background: var(--task-339-primary);
    content: "";
}
.crm-v2026 .crm-task-339-appointment-detail__history .appointment-history-item:last-child {
    border-bottom: 0;
}
.crm-v2026 .crm-task-339-appointment-detail__history .appointment-history-item > strong {
    color: var(--task-339-ink);
    font-size: 13px;
}
.crm-v2026 .crm-task-339-appointment-detail__history .appointment-history-item p {
    margin: 3px 0 0;
    overflow-wrap: anywhere;
    color: var(--task-339-copy);
    font-size: 12px;
}
.crm-v2026 .crm-task-339-appointment-detail__history .appointment-history-meta {
    color: var(--task-339-muted);
    font-size: 10px;
}
.crm-v2026 .crm-task-339-appointment-detail__cancel-form fieldset {
    margin: 0;
    padding: 8px;
    border: 1px solid var(--task-339-line);
    border-radius: 8px;
}
.crm-v2026 .crm-task-339-appointment-detail__cancel-form fieldset label,
.crm-v2026 .crm-task-339-appointment-detail__cancel-form .paid-cancel-warning label {
    display: flex;
    align-items: flex-start;
    gap: 6px;
}
.crm-v2026 .crm-task-339-appointment-detail__cancel-form .paid-cancel-warning {
    margin: 0;
    padding: 9px;
    border: 1px solid var(--task-339-danger);
    border-left: 3px solid var(--task-339-danger);
    border-radius: 8px;
    background: var(--task-339-page);
    color: var(--task-339-danger);
}
.crm-v2026 .crm-task-339-appointment-detail__cancel-form .paid-cancel-warning p {
    margin: 3px 0 0;
    font-size: 11px;
}
@media (max-width: 899px) {
    .crm-v2026 .crm-task-339-operational-queue__header,
    .crm-v2026 .crm-task-339-operational-queue__section-head,
    .crm-v2026 .crm-task-339-appointment-detail__header {
        align-items: flex-start;
    }
    .crm-v2026 .crm-task-339-operational-queue__table-wrap {
        overflow: visible;
        border: 0;
    }
    .crm-v2026 .crm-task-339-operational-queue__table {
        display: block;
        width: 100%;
        min-width: 0;
        background: transparent;
    }
    .crm-v2026 .crm-task-339-operational-queue__table thead {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
        white-space: nowrap;
    }
    .crm-v2026 .crm-task-339-operational-queue__table tbody {
        display: grid;
        gap: 8px;
    }
    .crm-v2026 .crm-task-339-operational-queue__table tbody tr {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 7px;
        border: 1px solid var(--task-339-line);
        border-radius: 8px;
        background: var(--task-339-surface);
    }
    .crm-v2026 .crm-task-339-operational-queue__table tbody td {
        display: grid;
        grid-template-columns: minmax(92px, .42fr) minmax(0, 1fr);
        gap: 7px;
        padding: 7px;
        border: 0;
        border-bottom: 1px solid var(--task-339-line);
        overflow-wrap: anywhere;
    }
    .crm-v2026 .crm-task-339-operational-queue__table tbody td::before {
        color: var(--task-339-muted);
        font-size: 10px;
        font-weight: 700;
        content: attr(data-label);
    }
    .crm-v2026 .crm-task-339-operational-queue__actions,
    .crm-v2026 .crm-task-339-operational-queue__financial-action {
        align-items: stretch;
    }
    .crm-v2026 .crm-task-339-operational-queue__actions button,
    .crm-v2026 .crm-task-339-operational-queue__financial-action a,
    .crm-v2026 .crm-task-339-operational-queue__table td > a,
    .crm-v2026 .crm-task-339-operational-queue__dialog .dialog-actions button,
    .crm-v2026 .crm-task-339-operational-queue__outcome-form input:not([type="hidden"]),
    .crm-v2026 .crm-task-339-operational-queue__outcome-form select,
    .crm-v2026 .crm-task-339-operational-queue__outcome-form textarea,
    .crm-v2026 .crm-task-339-appointment-detail__back a,
    .crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list a,
    .crm-v2026 .crm-task-339-appointment-detail__history a,
    .crm-v2026 .crm-task-339-appointment-detail__actions button,
    .crm-v2026 .crm-task-339-appointment-detail__actions > a,
    .crm-v2026 .crm-task-339-appointment-detail__outcome summary,
    .crm-v2026 .crm-task-339-appointment-detail__outcome-form input:not([type="hidden"]),
    .crm-v2026 .crm-task-339-appointment-detail__outcome-form select,
    .crm-v2026 .crm-task-339-appointment-detail__outcome-form textarea,
    .crm-v2026 .crm-task-339-appointment-detail__cancel-form input:not([type="hidden"]):not([type="radio"]):not([type="checkbox"]),
    .crm-v2026 .crm-task-339-appointment-detail__cancel-form select,
    .crm-v2026 .crm-task-339-appointment-detail__cancel-form textarea,
    .crm-v2026 .crm-task-339-appointment-detail__cancel-dialog .dialog-actions button {
        min-height: 44px;
    }
    .crm-v2026 .crm-task-339-appointment-detail .appointment-detail-layout {
        grid-template-columns: minmax(0, 1fr);
    }
}
@media (max-width: 540px) {
    .crm-v2026 .crm-task-339-operational-queue__header,
    .crm-v2026 .crm-task-339-operational-queue__section-head,
    .crm-v2026 .crm-task-339-appointment-detail__header {
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
    }
    .crm-v2026 .crm-task-339-operational-queue__clinical,
    .crm-v2026 .crm-task-339-operational-queue__financial,
    .crm-v2026 .crm-task-339-appointment-detail__summary,
    .crm-v2026 .crm-task-339-appointment-detail__history {
        padding: 9px;
    }
    .crm-v2026 .crm-task-339-operational-queue__table tbody tr {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 .crm-task-339-operational-queue__table tbody td {
        grid-template-columns: minmax(86px, .4fr) minmax(0, 1fr);
    }
    .crm-v2026 .crm-task-339-operational-queue__actions,
    .crm-v2026 .crm-task-339-operational-queue__dialog .dialog-actions,
    .crm-v2026 .crm-task-339-appointment-detail__actions .inline-status-form,
    .crm-v2026 .crm-task-339-appointment-detail__cancel-dialog .dialog-actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 .crm-task-339-appointment-detail__header .crm-task-339-appointment-detail__status {
        justify-self: end;
    }
    .crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list,
    .crm-v2026 .crm-task-339-appointment-detail__outcome-form {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list dt {
        padding-bottom: 0;
        border-bottom: 0;
    }
    .crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list dd {
        padding-top: 2px;
    }
}
/* END TASK-339: compact appointments and operational queue family. */
/* TASK-340: compact authentication and invitation family. */
.crm-v2026 [data-auth-surface] {
    --crm-auth-primary: #3e63dd;
    --crm-auth-primary-strong: #3451b2;
    --crm-auth-primary-soft: #f0f4ff;
    --crm-auth-page: #fcfcfc;
    --crm-auth-panel: #ffffff;
    --crm-auth-ink: #333333;
    --crm-auth-copy: #666666;
    --crm-auth-muted: #667085;
    --crm-auth-line: #d6d6d6;
    --crm-auth-line-soft: #ebebeb;
    --crm-auth-danger: #b4233b;
    --crm-auth-primary-line: #e6edfe;
    --crm-auth-focus: #3e63dd;
    position: relative;
    z-index: 0;
    display: grid;
    width: min(100%, 720px);
    min-height: calc(100dvh - 4rem);
    align-content: center;
    box-sizing: border-box;
    margin: 0 auto;
    padding: clamp(16px, 4vw, 36px);
    border-radius: 8px;
    background: var(--crm-auth-page-bg, transparent);
    color: var(--crm-auth-ink);
    font-size: 13px;
    isolation: isolate;
}

.crm-v2026 [data-auth-surface] .crm-auth-card {
    width: min(100%, 440px);
    box-sizing: border-box;
    margin: 0 auto;
    padding: 20px;
    border: 1px solid var(--crm-auth-line);
    border-radius: 8px;
    background: var(--crm-auth-surface, var(--crm-auth-panel));
    color: var(--crm-auth-surface-text, var(--crm-auth-ink));
    box-shadow: 0 8px 24px rgba(31, 35, 40, .08);
    backdrop-filter: none;
}

.crm-v2026 [data-auth-surface="login"] .crm-auth-card--login {
    border-top: 3px solid var(--crm-auth-action, var(--crm-auth-primary));
}

.crm-v2026 [data-auth-surface="login"] .brand-login {
    display: contents;
}

.crm-v2026 [data-auth-surface="login"]::before {
    position: fixed;
    z-index: -1;
    inset: 0;
    background: var(--crm-auth-page-bg, var(--crm-auth-page));
    content: "";
    pointer-events: none;
}

.crm-v2026 [data-auth-surface] .brand-login::after {
    display: none;
}

.crm-v2026 [data-auth-surface] .crm-auth-card--invitation {
    width: min(100%, 720px);
    padding: 0;
    overflow: hidden;
}

.crm-v2026 [data-auth-surface] .crm-auth-head,
.crm-v2026 [data-auth-surface] .invite-head {
    display: grid;
    gap: 6px;
    margin: 0 0 16px;
}

.crm-v2026 [data-auth-surface] .crm-auth-head h1,
.crm-v2026 [data-auth-surface] .invite-head h1,
.crm-v2026 [data-auth-surface] .invite-create-head h2 {
    margin: 0;
    color: inherit;
    font-size: clamp(20px, 4vw, 24px);
    line-height: 1.2;
    letter-spacing: -.02em;
}

.crm-v2026 [data-auth-surface] .invite-create-head h2 {
    font-size: 18px;
}

.crm-v2026 [data-auth-surface] .brand-login-name,
.crm-v2026 [data-auth-surface] .crm-auth-kicker,
.crm-v2026 [data-auth-surface] .invite-head > p {
    margin: 0;
    color: var(--crm-auth-action, var(--crm-auth-primary-strong));
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .08em;
    line-height: 1.35;
    text-transform: uppercase;
}

.crm-v2026 [data-auth-surface="login"] .brand-login-name {
    color: var(--crm-auth-surface-text, var(--crm-auth-ink));
}

.crm-v2026 [data-auth-surface] .crm-auth-head .hint,
.crm-v2026 [data-auth-surface] .invite-create-head .hint,
.crm-v2026 [data-auth-surface] .crm-auth-footnote {
    margin: 0;
    color: var(--crm-auth-copy);
    font-size: 12px;
    line-height: 1.5;
}

.crm-v2026 [data-auth-surface] .crm-auth-form,
.crm-v2026 [data-auth-surface] .crm-auth-field,
.crm-v2026 [data-auth-surface] .invite-form {
    display: grid;
    gap: 8px;
}

.crm-v2026 [data-auth-surface] .crm-auth-form {
    gap: 12px;
}

.crm-v2026 [data-auth-surface] label {
    margin: 0;
    color: inherit;
    font-size: 12px;
    font-weight: 650;
}

.crm-v2026 [data-auth-surface] input:not([type="hidden"]),
.crm-v2026 [data-auth-surface] select,
.crm-v2026 [data-auth-surface] textarea {
    width: 100%;
    min-height: 36px;
    box-sizing: border-box;
    margin: 0;
    padding: 7px 10px;
    border: 1px solid var(--crm-auth-line);
    border-radius: 4px;
    background: var(--crm-auth-panel);
    color: var(--crm-auth-ink);
    font: inherit;
}

.crm-v2026 [data-auth-surface] button,
.crm-v2026 [data-auth-surface] .button {
    min-height: 36px;
    box-sizing: border-box;
    margin: 0;
    padding: 8px 14px;
    border: 1px solid var(--crm-auth-primary);
    border-radius: 4px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.25;
}

.crm-v2026 [data-auth-surface] .crm-auth-primary,
.crm-v2026 [data-auth-surface="invitation"] button:not(.secondary),
.crm-v2026 [data-auth-surface="invitation"] .button:not(.secondary) {
    background: var(--crm-auth-action, var(--crm-auth-primary));
    color: var(--crm-auth-action-text, #ffffff);
}

.crm-v2026 [data-auth-surface="login"] .crm-auth-primary {
    border-color: var(--crm-auth-action, var(--crm-auth-primary));
}

.crm-v2026 [data-auth-surface] .crm-auth-primary:hover,
.crm-v2026 [data-auth-surface="invitation"] button:not(.secondary):hover,
.crm-v2026 [data-auth-surface="invitation"] .button:not(.secondary):hover {
    border-color: var(--crm-auth-primary-strong);
    background: var(--crm-auth-primary-strong);
}

.crm-v2026 [data-auth-surface] .crm-auth-secondary {
    display: inline-flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    border-color: var(--crm-auth-line);
    background: var(--crm-auth-panel);
    color: var(--crm-auth-primary-strong);
}

.crm-v2026 [data-auth-surface] .crm-auth-divider {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 16px 0;
    color: var(--crm-auth-muted);
    font-size: 12px;
}

.crm-v2026 [data-auth-surface] .crm-auth-divider::before,
.crm-v2026 [data-auth-surface] .crm-auth-divider::after {
    height: 1px;
    flex: 1;
    background: var(--crm-auth-line-soft);
    content: "";
}

.crm-v2026 [data-auth-surface] .crm-auth-footnote {
    margin-top: 10px;
}

.crm-v2026 [data-auth-surface] .crm-auth-notice,
.crm-v2026 [data-auth-surface] .invite-error,
.crm-v2026 [data-auth-surface] .errorlist {
    margin: 0 0 12px;
    padding: 9px 10px;
    border: 1px solid color-mix(in srgb, var(--crm-auth-danger) 28%, transparent);
    border-radius: 4px;
    background: color-mix(in srgb, var(--crm-auth-danger) 8%, var(--crm-auth-panel));
    color: var(--crm-auth-danger);
    font-size: 12px;
    line-height: 1.45;
}

.crm-v2026 [data-auth-surface] .crm-auth-field .errorlist,
.crm-v2026 [data-auth-surface] .invite-form .errorlist {
    margin: 0;
    list-style: none;
}

.crm-v2026 [data-auth-surface] .crm-auth-cancel {
    margin-top: 10px;
}

.crm-v2026 [data-auth-surface] .invite-head {
    margin: 0;
    padding: 18px 20px;
    border-bottom: 1px solid var(--crm-auth-line-soft);
    background: var(--crm-auth-primary-soft);
    color: var(--crm-auth-ink);
}

.crm-v2026 [data-auth-surface] .invite-body {
    display: grid;
    gap: 16px;
    padding: 20px;
}

.crm-v2026 [data-auth-surface] .invite-summary {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 12px;
    border: 1px solid var(--crm-auth-line-soft);
    border-radius: 8px;
    background: var(--crm-auth-page);
}

.crm-v2026 [data-auth-surface] .invite-summary > div,
.crm-v2026 [data-auth-surface] .invite-create-head {
    display: grid;
    gap: 4px;
}

.crm-v2026 [data-auth-surface] .invite-summary span {
    color: var(--crm-auth-muted);
    font-size: 12px;
}

.crm-v2026 [data-auth-surface] .invite-summary strong {
    overflow-wrap: anywhere;
}

.crm-v2026 [data-auth-surface] .invite-roles,
.crm-v2026 [data-auth-surface] .invite-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.crm-v2026 [data-auth-surface] .invite-role {
    padding: 4px 8px;
    border: 1px solid var(--crm-auth-primary-line);
    border-radius: 4px;
    background: var(--crm-auth-primary-soft);
    color: var(--crm-auth-primary-strong);
    font-size: 12px;
    font-weight: 700;
}

.crm-v2026 [data-auth-surface] .invite-form {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}

.crm-v2026 [data-auth-surface] .invite-form > div,
.crm-v2026 [data-auth-surface] .invite-form .full,
.crm-v2026 [data-auth-surface] .invite-form > button {
    grid-column: 1 / -1;
}

.crm-v2026 [data-auth-surface] .invite-form small {
    display: block;
    margin-top: 4px;
    font-size: 12px;
    line-height: 1.4;
}

.crm-v2026 [data-auth-surface] :is(input, select, textarea, button, .button):focus-visible {
    outline: 3px solid color-mix(in srgb, var(--crm-auth-primary) 36%, transparent);
    outline-offset: 2px;
}

@media (max-width: 899px) {
    .crm-v2026 [data-auth-surface] {
        min-height: calc(100dvh - 2rem);
        padding: 16px;
    }

    .crm-v2026 [data-auth-surface] input:not([type="hidden"]),
    .crm-v2026 [data-auth-surface] select,
    .crm-v2026 [data-auth-surface] textarea,
    .crm-v2026 [data-auth-surface] button,
    .crm-v2026 [data-auth-surface] .button {
        min-height: 44px;
    }
}

@media (max-width: 640px) {
    .crm-v2026 [data-auth-surface] {
        padding: 8px 0;
        border-radius: 0;
    }

    .crm-v2026 [data-auth-surface] .crm-auth-card {
        padding: 16px;
        border-radius: 8px;
    }

    .crm-v2026 [data-auth-surface] .crm-auth-card.crm-auth-card--invitation {
        padding: 0;
    }

    .crm-v2026 [data-auth-surface] .invite-head,
    .crm-v2026 [data-auth-surface] .invite-body {
        padding: 16px;
    }

    .crm-v2026 [data-auth-surface] .invite-summary,
    .crm-v2026 [data-auth-surface] .invite-form {
        grid-template-columns: minmax(0, 1fr);
    }

    .crm-v2026 [data-auth-surface] .invite-actions,
    .crm-v2026 [data-auth-surface] .invite-actions .button {
        width: 100%;
    }
}

@media (prefers-reduced-motion: reduce) {
    .crm-v2026 [data-auth-surface][data-auth-surface] *,
    .crm-v2026 [data-auth-surface][data-auth-surface] *::before,
    .crm-v2026 [data-auth-surface][data-auth-surface] *::after {
        scroll-behavior: auto;
        transition: none;
        animation: none;
    }
}
/* END TASK-340: compact authentication and invitation family. */

/* TASK-341: compact medical document editor chrome. */
.crm-v2026 [data-crm-component="medical-document-editor"].crm-compact-document-editor {
    --crm-document-primary: var(--crm-color-primary);
    --crm-document-primary-strong: var(--crm-color-primary-strong);
    --crm-document-primary-soft: var(--crm-color-primary-subtle);
    --crm-document-primary-soft-strong: var(--crm-color-primary-line);
    --crm-document-ink: var(--crm-color-text);
    --crm-document-copy: var(--crm-color-text-secondary);
    --crm-document-muted: var(--crm-color-text-muted);
    --crm-document-line: var(--crm-color-border);
    --crm-document-control-line: var(--crm-color-control-border);
    --crm-document-surface: var(--crm-color-surface);
    --crm-document-canvas: var(--crm-color-canvas);
    --crm-document-quiet: var(--crm-color-surface-subtle);
    --crm-document-danger: #e5484d;
    --crm-document-warning: #f5d90a;
    --crm-document-success: #18794e;
    --crm-document-focus: #aec0f5;
    box-sizing: border-box;
    width: min(100%, 1200px);
    min-width: 0;
    margin: 0 auto;
    overflow-x: clip;
    color: var(--crm-document-ink);
    font-size: 13px;
    line-height: 1.4;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-header,
.crm-v2026 [data-crm-component="medical-document-editor"] .document-resume-notice,
.crm-v2026 [data-crm-component="medical-document-editor"] .document-smart-tools,
.crm-v2026 [data-crm-component="medical-document-editor"] .custom-document-fields,
.crm-v2026 [data-crm-component="medical-document-editor"] .pdf-draft-notice,
.crm-v2026 [data-crm-component="medical-document-editor"] > .card {
    box-sizing: border-box;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin: 0 0 8px;
    padding: 12px 14px;
    border: 1px solid var(--crm-document-line);
    border-radius: 8px;
    background: var(--crm-document-surface);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-header > div {
    min-width: 0;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-header h1 {
    margin: 3px 0 2px;
    color: var(--crm-document-ink);
    font-size: 20px;
    line-height: 1.2;
    letter-spacing: -.02em;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-header .hint {
    margin: 0;
    color: var(--crm-document-copy);
    font-size: 12px;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .back-link {
    display: inline-flex;
    align-items: center;
    color: var(--crm-document-primary-strong);
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}
.crm-v2026 [data-crm-component="medical-document-editor"] input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.crm-v2026 [data-crm-component="medical-document-editor"] select,
.crm-v2026 [data-crm-component="medical-document-editor"] button,
.crm-v2026 [data-crm-component="medical-document-editor"] .button,
.crm-v2026 [data-crm-component="medical-document-editor"] summary {
    box-sizing: border-box;
    min-height: 34px;
    border-radius: 4px;
    font-size: 13px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.crm-v2026 [data-crm-component="medical-document-editor"] select,
.crm-v2026 [data-crm-component="medical-document-editor"] textarea {
    border-color: var(--crm-document-control-line);
    background: var(--crm-document-surface);
    color: var(--crm-document-ink);
}
.crm-v2026 [data-crm-component="medical-document-editor"] button:not(.secondary),
.crm-v2026 [data-crm-component="medical-document-editor"] .button:not(.secondary) {
    border-color: var(--crm-document-primary);
    background: var(--crm-document-primary);
    color: var(--crm-document-surface);
}
.crm-v2026 [data-crm-component="medical-document-editor"] button.secondary,
.crm-v2026 [data-crm-component="medical-document-editor"] .button.secondary {
    border-color: var(--crm-document-control-line);
    background: var(--crm-document-surface);
    color: var(--crm-document-primary-strong);
}
.crm-v2026 [data-crm-component="medical-document-editor"] :is(a, button, input, select, textarea, summary):focus-visible {
    outline: 3px solid var(--crm-document-focus);
    outline-offset: 2px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-header .button {
    flex: 0 0 auto;
    width: auto;
    margin: 0;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-resume-notice {
    display: grid;
    gap: 2px;
    margin: 0 0 8px;
    padding: 8px 10px;
    border: 1px solid var(--crm-document-primary-soft-strong);
    border-radius: 8px;
    background: var(--crm-document-primary-soft);
    color: var(--crm-document-copy);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-resume-notice strong {
    color: var(--crm-document-primary-strong);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-resume-notice span {
    font-size: 12px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] > .card {
    margin: 0;
    padding: 12px;
    border: 1px solid var(--crm-document-line);
    border-radius: 8px;
    background: var(--crm-document-surface);
    box-shadow: none;
}
.crm-v2026 [data-crm-component="medical-document-editor"] > .card h2 {
    margin: 0 0 4px;
    color: var(--crm-document-ink);
    font-size: 16px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] > .card p {
    margin: 0;
    color: var(--crm-document-copy);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] > .card .button {
    margin: 8px 0 0;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-readonly-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    margin: 10px 0 0;
    border-top: 1px solid var(--crm-document-line);
    border-left: 1px solid var(--crm-document-line);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-readonly-fields div {
    min-width: 0;
    padding: 8px;
    border-right: 1px solid var(--crm-document-line);
    border-bottom: 1px solid var(--crm-document-line);
    background: var(--crm-document-canvas);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-readonly-fields dt {
    color: var(--crm-document-muted);
    font-size: 11px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-readonly-fields dd {
    margin: 3px 0 0;
    color: var(--crm-document-ink);
    font-size: 13px;
    overflow-wrap: anywhere;
    white-space: normal;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-smart-tools {
    position: relative;
    width: min(100%, 980px);
    margin: 0 auto 8px;
    padding: 10px;
    border: 1px solid var(--crm-document-primary-soft-strong);
    border-radius: 8px;
    background: var(--crm-document-primary-soft);
    box-shadow: none;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-smart-tools h2 {
    margin: 2px 0 3px;
    color: var(--crm-document-ink);
    font-size: 16px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-smart-tools .hint {
    margin: 0;
    color: var(--crm-document-copy);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-tools-eyebrow {
    margin: 0;
    color: var(--crm-document-primary-strong);
    font-size: 11px;
    font-weight: 750;
    letter-spacing: .08em;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-clinical-apply {
    display: grid;
    grid-template-columns: minmax(240px, 1.5fr) minmax(180px, .8fr) auto;
    align-items: end;
    gap: 6px;
    margin-top: 8px;
    padding-top: 8px;
    border-top: 1px solid var(--crm-document-primary-soft-strong);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-clinical-apply label {
    min-width: 0;
    margin: 0;
    color: var(--crm-document-copy);
    font-size: 12px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-clinical-apply input,
.crm-v2026 [data-crm-component="medical-document-editor"] .document-clinical-apply select {
    display: block;
    width: 100%;
    margin-top: 3px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-clinical-apply button {
    margin: 0;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-clinical-apply [data-clinical-status] {
    grid-column: 1 / -1;
    min-width: 0;
    color: var(--crm-document-copy);
    font-size: 12px;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-tools-empty {
    margin: 8px 0 0;
    color: var(--crm-document-copy);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-panel {
    position: fixed;
    z-index: 70;
    width: min(420px, calc(100vw - 32px));
    max-height: min(480px, 70vh);
    overflow: auto;
    padding: 10px;
    border: 1px solid var(--crm-document-primary-soft-strong);
    border-radius: 8px;
    background: var(--crm-document-surface);
    box-shadow: 0 12px 32px rgb(51 51 51 / 14%);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 8px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-head > div {
    min-width: 0;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-head strong,
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-head small {
    display: block;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-head small {
    margin-top: 2px;
    overflow: hidden;
    color: var(--crm-document-muted);
    font-size: 11px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-head button {
    flex: 0 0 auto;
    width: 34px;
    margin: 0;
    padding: 4px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-panel label {
    display: block;
    margin: 8px 0 5px;
    color: var(--crm-document-copy);
    font-size: 12px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-panel select {
    width: 100%;
    margin-top: 3px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-results > p {
    margin: 6px 0 0;
    padding: 8px;
    border-radius: 4px;
    background: var(--crm-document-quiet);
    color: var(--crm-document-copy);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-result {
    display: block;
    width: 100%;
    margin: 5px 0 0;
    padding: 7px 8px;
    border: 1px solid var(--crm-document-line);
    border-radius: 4px;
    background: var(--crm-document-canvas);
    color: var(--crm-document-ink);
    text-align: left;
    transition: border-color .16s ease, background-color .16s ease;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-result:hover,
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-result:focus-visible {
    border-color: var(--crm-document-primary-soft-strong);
    background: var(--crm-document-primary-soft);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-result strong,
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-result small {
    display: block;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-result small {
    margin-top: 2px;
    color: var(--crm-document-muted);
    font-size: 11px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-form {
    min-width: 0;
    margin: 0;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .custom-document-fields,
.crm-v2026 [data-crm-component="medical-document-editor"] .pdf-draft-notice {
    width: min(100%, 210mm);
    margin: 0 auto 8px;
    padding: 10px;
    border: 1px solid var(--crm-document-line);
    border-radius: 8px;
    background: var(--crm-document-surface);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .custom-document-fields h2,
.crm-v2026 [data-crm-component="medical-document-editor"] .pdf-draft-notice h2 {
    margin: 0 0 3px;
    color: var(--crm-document-ink);
    font-size: 16px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .custom-document-fields > .hint,
.crm-v2026 [data-crm-component="medical-document-editor"] .pdf-draft-notice p {
    margin: 0;
    color: var(--crm-document-copy);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .custom-document-field-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    margin-top: 8px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .custom-document-field-grid label {
    min-width: 0;
    color: var(--crm-document-copy);
    font-size: 12px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .custom-document-field-grid input,
.crm-v2026 [data-crm-component="medical-document-editor"] .custom-document-field-grid textarea {
    display: block;
    width: 100%;
    margin-top: 3px;
    padding: 6px 8px;
    border: 1px solid var(--crm-document-control-line);
    border-radius: 4px;
    font: inherit;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .custom-document-field-grid textarea {
    min-height: 96px;
    resize: vertical;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .docx-document-field-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 6px;
    width: min(100%, 760px);
    margin: 8px auto 0;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .docx-document-field-grid label {
    display: block;
    padding: 8px;
    border: 1px solid var(--crm-document-line);
    border-radius: 8px;
    background: var(--crm-document-canvas);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .docx-document-field-grid input,
.crm-v2026 [data-crm-component="medical-document-editor"] .docx-document-field-grid textarea {
    margin-top: 4px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .docx-document-field-grid textarea {
    min-height: 120px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .custom-document-field-grid label small {
    display: block;
    margin-top: 3px;
    color: var(--crm-document-muted);
    font-size: 11px;
    font-weight: 500;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-auto-fields {
    margin: 8px 0;
    padding: 6px 8px;
    border: 1px solid var(--crm-document-line);
    border-radius: 8px;
    background: var(--crm-document-canvas);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-auto-fields summary {
    display: flex;
    align-items: center;
    cursor: pointer;
    color: var(--crm-document-primary-strong);
    font-weight: 700;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-auto-fields dl {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 4px;
    margin: 6px 0 0;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-auto-fields dl div {
    min-width: 0;
    padding: 6px;
    border-radius: 4px;
    background: var(--crm-document-surface);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-auto-fields dt {
    color: var(--crm-document-muted);
    font-size: 11px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-auto-fields dd {
    margin: 2px 0 0;
    color: var(--crm-document-ink);
    font-size: 12px;
    font-weight: 700;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-no-manual-fields {
    margin: 8px 0 0;
    padding: 8px;
    border: 1px dashed var(--crm-document-control-line);
    border-radius: 8px;
    background: var(--crm-document-canvas);
    color: var(--crm-document-copy);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .pdf-draft-notice img {
    display: block;
    width: 100%;
    max-height: 600px;
    margin-top: 8px;
    border: 1px solid var(--crm-document-line);
    object-fit: contain;
    object-position: top;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-paper {
    box-sizing: border-box;
    width: min(100%, 210mm);
    min-height: 297mm;
    margin: 0 auto;
    padding: 13mm 15mm;
    background: var(--crm-color-surface);
    box-shadow: 0 8px 24px rgb(51 51 51 / 10%);
    color: #111;
    font-family: "Times New Roman", serif;
    font-size: 14px;
    line-height: 1.28;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-paper h2 {
    margin: 28px 0 20px;
    font-size: 18px;
    line-height: 1.2;
    text-align: center;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-paper h3 {
    margin: 0 0 7px;
    font-size: 14px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-form-code {
    font-size: 10px;
    line-height: 1.25;
    text-align: right;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-institution {
    margin-top: 20px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-institution input {
    display: block;
    width: 100%;
    padding: 4px 0;
    border: 0;
    border-bottom: 1px solid var(--crm-color-text-muted);
    border-radius: 0;
    background: var(--crm-color-surface);
    font: inherit;
    text-align: center;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-field-row {
    margin: 14px 0;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-field-row input,
.crm-v2026 [data-crm-component="medical-document-editor"] .document-signature input {
    min-width: 180px;
    border: 0;
    border-bottom: 1px solid var(--crm-color-text-muted);
    border-radius: 0;
    background: var(--crm-color-surface);
    font: inherit;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-field-row > input {
    width: calc(100% - 110px);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .small-field input {
    width: 150px;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-section {
    margin: 18px 0;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-section textarea {
    box-sizing: border-box;
    width: 100%;
    padding: 8px;
    border: 1px solid #acbcd0;
    border-radius: 4px;
    background: #fffdf8;
    font: inherit;
    line-height: 1.3;
    resize: vertical;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-signature {
    margin-top: 32px;
    text-align: right;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .custom-document-paper {
    overflow: hidden;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .custom-document-paper .medical-form {
    min-height: 270mm;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-actions {
    display: flex;
    justify-content: flex-end;
    gap: 6px;
    margin: 8px 0 0;
    padding: 8px 0 0;
    border-top: 1px solid var(--crm-document-line);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-actions button {
    width: auto;
    margin: 0;
}
.crm-v2026 [data-crm-component="medical-document-editor"] .document-restore-action {
    border-color: var(--crm-document-warning);
    background: var(--crm-document-surface);
    color: var(--crm-document-ink);
}
.crm-v2026 [data-crm-component="medical-document-editor"] .errorlist {
    margin: 3px 0 0;
    padding: 0;
    color: var(--crm-document-danger);
    font-size: 11px;
    list-style: none;
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-component="medical-document-editor"] input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
    .crm-v2026 [data-crm-component="medical-document-editor"] select,
    .crm-v2026 [data-crm-component="medical-document-editor"] button,
    .crm-v2026 [data-crm-component="medical-document-editor"] .button,
    .crm-v2026 [data-crm-component="medical-document-editor"] summary,
    .crm-v2026 [data-crm-component="medical-document-editor"] .back-link {
        min-height: 44px;
    }
    .crm-v2026 [data-crm-component="medical-document-editor"] .back-link {
        align-items: center;
    }
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-head button,
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-auto-fields summary {
        min-height: 44px;
    }
}
@media (max-width: 760px) {
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-clinical-apply {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-clinical-apply button {
        width: 100%;
    }
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-panel {
        max-height: 55vh;
    }
}
@media (max-width: 700px) {
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-header {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        padding: 10px;
    }
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-header .button {
        width: 100%;
    }
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-paper {
        min-height: auto;
        padding: 8mm 7mm;
        font-size: 13px;
    }
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-paper h2 {
        font-size: 16px;
    }
    .crm-v2026 [data-crm-component="medical-document-editor"] .small-field input,
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-field-row > input {
        width: 100%;
        margin: 3px 0;
    }
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-actions {
        position: sticky;
        z-index: 4;
        bottom: 0;
        flex-wrap: wrap;
        padding: 8px 0 calc(8px + env(safe-area-inset-bottom));
        background: var(--crm-document-canvas);
    }
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-actions button {
        flex: 1 1 180px;
    }
}
@media (max-width: 640px) {
    .crm-v2026 [data-crm-component="medical-document-editor"] .custom-document-field-grid,
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-readonly-fields,
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-auto-fields dl {
        grid-template-columns: minmax(0, 1fr);
    }
}
@media (max-width: 540px) {
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-editor-actions button {
        flex-basis: 100%;
        width: 100%;
    }
}
@media (prefers-reduced-motion: reduce) {
    .crm-v2026 [data-crm-component="medical-document-editor"] .document-icd-result {
        transition: none;
    }
}
/* END TASK-341: compact medical document editor chrome. */

/* TASK-343: compact medical library and template surfaces. */
.crm-v2026 :is(
    [data-crm-component="user-settings"] .crm-compact-medical-library,
    [data-crm-component="patient-detail"] .crm-compact-medical-conclusions,
    [data-crm-component="patient-detail"] .crm-compact-medical-documents,
    [data-crm-component="medical-template-designer"],
    [data-crm-component="pdf-overlay-designer"],
    [data-crm-component="docx-variable-builder"]
) {
    --crm-medical-primary: var(--crm-color-primary);
    --crm-medical-primary-strong: var(--crm-color-primary-strong);
    --crm-medical-primary-soft: var(--crm-color-primary-subtle);
    --crm-medical-primary-soft-strong: var(--crm-color-primary-line);
    --crm-medical-ink: var(--crm-color-text);
    --crm-medical-copy: var(--crm-color-text-secondary);
    --crm-medical-muted: var(--crm-color-text-muted);
    --crm-medical-line: var(--crm-color-border);
    --crm-medical-control-line: var(--crm-color-control-border);
    --crm-medical-surface: var(--crm-color-surface);
    --crm-medical-page: var(--crm-color-canvas);
}
.crm-v2026 :is(
    [data-crm-component="user-settings"] .crm-compact-medical-library,
    [data-crm-component="patient-detail"] .crm-compact-medical-conclusions,
    [data-crm-component="patient-detail"] .crm-compact-medical-documents,
    [data-crm-component="medical-template-designer"],
    [data-crm-component="pdf-overlay-designer"],
    [data-crm-component="docx-variable-builder"]
) button[type="submit"]:not(.secondary):not(.danger):not(.danger-outline) {
    border-color: var(--crm-medical-primary);
    background: var(--crm-medical-primary);
    color: var(--crm-medical-surface);
}
.crm-v2026 :is(
    [data-crm-component="user-settings"] .crm-compact-medical-library,
    [data-crm-component="patient-detail"] .crm-compact-medical-conclusions,
    [data-crm-component="patient-detail"] .crm-compact-medical-documents,
    [data-crm-component="medical-template-designer"],
    [data-crm-component="pdf-overlay-designer"],
    [data-crm-component="docx-variable-builder"]
) button[type="submit"]:not(.secondary):not(.danger):not(.danger-outline):hover {
    border-color: var(--crm-medical-primary-strong);
    background: var(--crm-medical-primary-strong);
}
.crm-v2026 :is(
    [data-crm-component="user-settings"] .crm-compact-medical-library,
    [data-crm-component="patient-detail"] .crm-compact-medical-conclusions,
    [data-crm-component="patient-detail"] .crm-compact-medical-documents,
    [data-crm-component="medical-template-designer"],
    [data-crm-component="pdf-overlay-designer"],
    [data-crm-component="docx-variable-builder"]
) :is(a, button, input, select, textarea, summary):focus-visible {
    outline: 2px solid var(--crm-medical-primary);
    outline-offset: 2px;
}

.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-library {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-library-header,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-library-card-wide {
    grid-column: 1 / -1;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-library-header {
    display: flex;
    align-items: end;
    justify-content: space-between;
    min-width: 0;
    padding: 2px 0 4px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-library-header h1,
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-section-head h2 {
    margin: 2px 0 0;
    color: var(--crm-medical-ink);
    font-size: 20px;
    line-height: 1.25;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-library-header > div > p:last-child,
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-section-head > p {
    max-width: 560px;
    margin: 4px 0 0;
    color: var(--crm-medical-muted);
    font-size: 12px;
    line-height: 1.4;
}
.crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-eyebrow {
    margin: 0;
    color: var(--crm-medical-primary-strong);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-library-card {
    min-width: 0;
    margin: 0;
    padding: 12px;
    border: 1px solid var(--crm-medical-line);
    border-radius: 8px;
    background: var(--crm-medical-surface);
    box-shadow: none;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-library-card > h2 {
    margin: 0 0 3px;
    color: var(--crm-medical-ink);
    font-size: 15px;
}
.crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-disclosure {
    margin-top: 8px;
    border: 1px solid var(--crm-medical-line);
    border-radius: 8px;
    background: var(--crm-medical-page);
}
.crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-disclosure > summary {
    display: flex;
    min-height: 34px;
    box-sizing: border-box;
    align-items: center;
    padding: 6px 10px;
    color: var(--crm-medical-ink);
    cursor: pointer;
    list-style-position: inside;
}
.crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-disclosure > summary > span {
    display: inline-flex;
    min-width: 0;
    flex: 1;
    align-items: baseline;
    justify-content: space-between;
    gap: 10px;
}
.crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-disclosure > summary small {
    color: var(--crm-medical-muted);
    font-size: 10px;
    font-weight: 600;
}
.crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-disclosure[open] > summary {
    border-bottom: 1px solid var(--crm-medical-line);
    background: var(--crm-medical-primary-soft);
    color: var(--crm-medical-primary-strong);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-disclosure > form,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-disclosure > .crm-compact-medical-template-forms,
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-disclosure > form,
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-disclosure > .crm-compact-medical-revisions {
    margin: 0;
    padding: 10px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-create-card > summary {
    min-height: 48px;
    padding: 8px 10px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-create-card > .hint {
    margin: 8px 10px 0;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-template-list {
    display: grid;
    gap: 8px;
    margin: 10px 0 0;
    padding: 0;
    list-style: none;
}
.crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-template-list > li {
    min-width: 0;
    margin: 0;
    padding: 10px;
    border: 1px solid var(--crm-medical-line);
    border-radius: 8px;
    background: var(--crm-medical-surface);
}
.crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-template-head {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-template-head > span:first-child {
    display: grid;
    min-width: 0;
    gap: 2px;
}
.crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-template-head strong {
    color: var(--crm-medical-ink);
    font-size: 13px;
}
.crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-template-head small {
    overflow-wrap: anywhere;
    color: var(--crm-medical-muted);
    font-size: 10px;
}
.crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-template-actions {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 6px;
}
.crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-template-head a,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-template-actions a {
    display: inline-flex;
    min-height: 32px;
    box-sizing: border-box;
    align-items: center;
    margin: 0;
    padding: 5px 9px;
    border: 1px solid var(--crm-medical-control-line);
    border-radius: 4px;
    background: var(--crm-medical-surface);
    color: var(--crm-medical-primary-strong);
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-template-forms {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 10px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-template-forms > form,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-template-list details > form {
    margin: 0;
}

.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-conclusions,
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-documents {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--crm-medical-line);
    border-radius: 8px;
    background: var(--crm-medical-surface);
    box-shadow: none;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-section-head {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 16px;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--crm-medical-line);
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-section-head > p {
    margin: 0;
    text-align: right;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record-list {
    display: grid;
    gap: 8px;
    margin-top: 10px;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record {
    min-width: 0;
    padding: 10px;
    border: 1px solid var(--crm-medical-line);
    border-radius: 8px;
    background: var(--crm-medical-page);
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record > header {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record h3,
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-list-title {
    margin: 0;
    color: var(--crm-medical-ink);
    font-size: 13px;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record header p {
    margin: 2px 0 0;
    color: var(--crm-medical-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-status {
    flex: 0 0 auto;
    padding: 3px 7px;
    border-radius: 999px;
    background: var(--crm-medical-primary-soft-strong);
    color: var(--crm-medical-primary-strong);
    font-size: 10px;
    font-weight: 800;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record > form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px 10px;
    margin: 0;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record > form > label,
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record > form > textarea,
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record > form > .errorlist {
    grid-column: 1 / -1;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record > form textarea {
    min-height: 104px;
    margin: 0;
    resize: vertical;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record > form > button {
    grid-column: 2;
    min-height: 32px;
    margin: 0;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-readonly {
    padding: 8px 10px;
    border-left: 3px solid var(--crm-medical-primary);
    background: var(--crm-medical-surface);
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-readonly p {
    margin: 5px 0;
    color: var(--crm-medical-copy);
    font-size: 12px;
    line-height: 1.5;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-readonly small,
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-revisions small {
    display: block;
    color: var(--crm-medical-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-revisions {
    display: grid;
    gap: 8px;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-revisions > section {
    padding-bottom: 8px;
    border-bottom: 1px solid var(--crm-medical-line);
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-revisions > section:last-child {
    padding-bottom: 0;
    border-bottom: 0;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-revisions p {
    margin: 4px 0 0;
    color: var(--crm-medical-copy);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-create-document {
    margin: 10px 0;
}
.crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-list-title {
    margin-top: 12px;
}

.crm-v2026 [data-crm-component="medical-template-designer"].crm-compact-medical-designer,
.crm-v2026 [data-crm-component="pdf-overlay-designer"].crm-compact-medical-designer,
.crm-v2026 [data-crm-component="docx-variable-builder"].crm-compact-medical-designer {
    width: 100%;
    max-width: 1500px;
    min-width: 0;
    margin: 0 auto;
    color: var(--crm-medical-ink);
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-header,
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-header {
    display: flex;
    align-items: start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 10px;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-header h1,
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-header h1,
.crm-v2026 [data-crm-component="docx-variable-builder"] h1 {
    margin: 4px 0 2px;
    font-size: 20px;
    line-height: 1.25;
}
.crm-v2026 :is(
    [data-crm-component="medical-template-designer"],
    [data-crm-component="pdf-overlay-designer"],
    [data-crm-component="docx-variable-builder"]
) .back-link {
    display: inline-flex;
    min-height: 32px;
    align-items: center;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-save,
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-header form button {
    width: auto;
    min-height: 34px;
    margin: 0;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-tabs {
    display: flex;
    gap: 4px;
    margin: 0 0 10px;
    padding: 3px;
    border: 1px solid var(--crm-medical-line);
    border-radius: 8px;
    background: var(--crm-medical-page);
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-tabs button {
    width: auto;
    min-height: 32px;
    margin: 0;
    padding: 5px 12px;
    border: 0;
    border-radius: 4px;
    background: transparent;
    color: var(--crm-medical-copy);
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-tabs button.is-active {
    background: var(--crm-medical-primary-strong);
    color: var(--crm-medical-surface);
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-grid {
    display: grid;
    grid-template-columns: 220px minmax(420px, 1fr) 250px;
    gap: 10px;
    align-items: start;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-panel,
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-code-panel,
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-sidebar,
.crm-v2026 [data-crm-component="docx-variable-builder"] > :is(article, header) {
    padding: 12px;
    border: 1px solid var(--crm-medical-line);
    border-radius: 8px;
    background: var(--crm-medical-surface);
    box-shadow: none;
}
.crm-v2026 [data-crm-component="medical-template-designer"] :is(.designer-panel, .designer-code-panel) h2,
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-sidebar h2,
.crm-v2026 [data-crm-component="docx-variable-builder"] h2 {
    margin: 0 0 8px;
    font-size: 14px;
}
.crm-v2026 [data-crm-component="medical-template-designer"] :is(.designer-block-buttons, .designer-variable-buttons) {
    display: grid;
    gap: 5px;
}
.crm-v2026 [data-crm-component="medical-template-designer"] :is(.designer-block-buttons, .designer-variable-buttons) button {
    min-height: 32px;
    margin: 0;
    padding: 5px 8px;
    border: 1px solid var(--crm-medical-control-line);
    border-radius: 4px;
    background: var(--crm-medical-surface);
    color: var(--crm-medical-primary-strong);
    text-align: left;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-stage {
    min-width: 0;
    overflow: auto;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-toolbar {
    display: flex;
    justify-content: space-between;
    padding: 7px 10px;
    border-radius: 8px 8px 0 0;
    background: var(--crm-medical-primary-strong);
    color: var(--crm-medical-surface);
    font-size: 12px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-page-chip {
    font-size: 10px;
    opacity: .9;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-format-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    padding: 6px;
    border: 1px solid var(--crm-medical-line);
    border-top: 0;
    background: var(--crm-medical-surface);
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-format-toolbar button {
    width: auto;
    min-height: 32px;
    margin: 0;
    padding: 4px 8px;
    border: 1px solid var(--crm-medical-control-line);
    border-radius: 4px;
    background: var(--crm-medical-surface);
    color: var(--crm-medical-primary-strong);
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-paper {
    box-sizing: border-box;
    width: min(100%, 210mm);
    margin: 0 auto;
    overflow: auto;
    background: var(--crm-medical-surface);
    box-shadow: 0 8px 24px rgb(52 81 178 / 12%);
    color: var(--crm-color-text);
    font-family: "Times New Roman", serif;
    font-size: 14px;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .visual-document {
    outline: 0;
    cursor: text;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .visual-document > .medical-form {
    box-sizing: border-box;
    min-height: 297mm;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .visual-document > .medical-form.is-empty-form {
    padding: 13mm 15mm;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .visual-document > .medical-form:empty::before {
    display: block;
    margin-top: 30mm;
    color: var(--crm-medical-muted);
    content: attr(data-placeholder);
    font-family: system-ui, sans-serif;
    text-align: center;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .visual-document .medical-form > * {
    position: relative;
    margin: 0 0 14px;
    padding: 4px;
    border: 1px dashed transparent;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .visual-document .medical-form > :is(.is-selected, :hover) {
    border-color: var(--crm-medical-primary);
    background: var(--crm-medical-primary-soft);
}
.crm-v2026 [data-crm-component="medical-template-designer"] .visual-document .medical-form > .is-dragging {
    opacity: .45;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .visual-document table {
    width: 100%;
    border-collapse: collapse;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .visual-document :is(td, th) {
    padding: 6px;
    border-bottom: 1px solid var(--crm-medical-control-line);
    text-align: left;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-selected {
    min-height: 40px;
    color: var(--crm-medical-primary-strong);
    font-weight: 700;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-danger {
    width: 100%;
}
.crm-v2026 [data-crm-component="medical-template-designer"] :is(.designer-inspector, .designer-library) hr {
    margin: 12px 0;
    border: 0;
    border-top: 1px solid var(--crm-medical-line);
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-code-workspace {
    display: grid;
    grid-template-columns: minmax(320px, 1fr) minmax(280px, 1fr);
    gap: 10px;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-code-workspace textarea {
    box-sizing: border-box;
    width: 100%;
    margin-top: 4px;
    font-family: ui-monospace, Consolas, monospace;
    font-size: 12px;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-code-workspace label {
    display: block;
    margin-top: 8px;
    font-size: 12px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-code-workspace iframe {
    width: 100%;
    min-height: 560px;
    border: 1px solid var(--crm-medical-line);
    border-radius: 8px;
    background: var(--crm-medical-surface);
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-variables {
    margin: 10px 0;
    padding: 10px;
    border: 1px solid var(--crm-medical-primary-soft-strong);
    border-radius: 8px;
    background: var(--crm-medical-primary-soft);
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-variables span {
    display: block;
    margin: 2px 0 6px;
    color: var(--crm-medical-copy);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="medical-template-designer"] .designer-variables button {
    width: auto;
    min-height: 32px;
    margin: 3px 3px 0 0;
    padding: 4px 8px;
    border: 1px solid var(--crm-medical-control-line);
    border-radius: 4px;
    background: var(--crm-medical-surface);
    color: var(--crm-medical-primary-strong);
}

.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-layout {
    display: grid;
    grid-template-columns: 220px minmax(420px, 1fr) 220px;
    gap: 10px;
    align-items: start;
}
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-sidebar {
    position: sticky;
    top: 10px;
}
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-sidebar label {
    display: block;
    margin: 8px 0;
    font-size: 12px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-sidebar :is(input, select) {
    display: block;
    width: 100%;
    min-height: 32px;
    box-sizing: border-box;
    margin-top: 4px;
    padding: 5px 7px;
    border: 1px solid var(--crm-medical-control-line);
    border-radius: 4px;
    font: inherit;
}
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-paper-wrap {
    min-width: 0;
    min-height: 520px;
    overflow: auto;
    padding: 12px;
    border-radius: 8px;
    background: var(--crm-medical-primary-soft);
}
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-paper {
    position: relative;
    max-width: 850px;
    margin: 0 auto;
    background: var(--crm-medical-surface);
    box-shadow: 0 6px 20px rgb(52 81 178 / 16%);
}
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-paper img {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: auto;
}
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-overlay-layer {
    position: absolute;
    z-index: 2;
    inset: 0;
    pointer-events: auto;
}
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-overlay-layer.placing {
    cursor: crosshair;
}
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-overlay-marker {
    position: absolute;
    min-width: 70px;
    box-sizing: border-box;
    overflow: hidden;
    padding: 4px 6px;
    border: 1px dashed var(--crm-medical-primary);
    background: var(--crm-medical-primary-soft);
    color: var(--crm-medical-primary-strong);
    font: 700 12px/1.2 system-ui, sans-serif;
    cursor: grab;
    user-select: none;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-overlay-marker.selected {
    border: 2px solid var(--crm-medical-primary);
    background: var(--crm-medical-primary-soft-strong);
}
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-field-list {
    display: grid;
    gap: 5px;
}
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-field-row {
    width: 100%;
    min-height: 32px;
    padding: 5px 7px;
    border: 1px solid var(--crm-medical-line);
    border-radius: 4px;
    background: var(--crm-medical-surface);
    text-align: left;
}
.crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-field-row.selected {
    border-color: var(--crm-medical-primary);
    background: var(--crm-medical-primary-soft);
}

.crm-v2026 [data-crm-component="docx-variable-builder"] {
    max-width: 1040px;
    gap: 10px;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] > header {
    order: -1;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-variable-list,
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-contract-list {
    display: grid;
    gap: 8px;
    margin: 10px 0;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-variable-item {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    padding: 8px;
    border: 1px solid var(--crm-medical-line);
    border-radius: 8px;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-variable-item > div {
    flex: 1 1 230px;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-variable-item small {
    display: block;
    margin-top: 2px;
    color: var(--crm-medical-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] :is(.docx-variable-item, .docx-contract-title, .docx-binding-state) code {
    padding: 3px 6px;
    border-radius: 4px;
    background: var(--crm-medical-primary-soft);
    color: var(--crm-medical-primary-strong);
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-variable-item :is(button, form) {
    margin: 0;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-variable-item .secondary {
    min-height: 32px;
    margin: 0;
    border: 1px solid var(--crm-medical-control-line);
    background: var(--crm-medical-surface);
    color: var(--crm-medical-primary-strong);
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-contract-row {
    display: grid;
    grid-template-columns: minmax(180px, 1fr) minmax(210px, 1fr);
    gap: 8px;
    padding: 10px;
    border: 1px solid var(--crm-medical-line);
    border-radius: 8px;
    background: var(--crm-medical-page);
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-contract-title {
    display: flex;
    grid-column: 1 / -1;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-contract-row label {
    font-size: 12px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-contract-row select {
    display: block;
    width: 100%;
    min-height: 32px;
    margin-top: 4px;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-contract-check {
    display: flex;
    align-items: center;
    gap: 5px;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-contract-check input {
    margin: 0;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-contract-form > button {
    width: auto;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-binding-state,
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-manual-only {
    padding: 8px;
    border: 1px solid var(--crm-medical-primary-soft-strong);
    border-radius: 8px;
    background: var(--crm-medical-primary-soft);
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-binding-state :is(strong, small) {
    display: block;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-binding-state small {
    margin-top: 2px;
    color: var(--crm-medical-copy);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-clinical-fields {
    grid-column: 1 / -1;
    border: 1px solid var(--crm-medical-line);
    border-radius: 8px;
    background: var(--crm-medical-surface);
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-clinical-fields summary {
    min-height: 34px;
    box-sizing: border-box;
    padding: 7px 9px;
    cursor: pointer;
    font-weight: 800;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-clinical-fields summary span {
    float: right;
    color: var(--crm-medical-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-clinical-filter {
    width: calc(100% - 18px);
    min-height: 32px;
    box-sizing: border-box;
    margin: 0 9px 7px;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-clinical-field-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 5px;
    padding: 0 9px 9px;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-clinical-field-list label {
    display: flex;
    align-items: flex-start;
    gap: 5px;
    padding: 7px;
    border: 1px solid var(--crm-medical-line);
    border-radius: 4px;
}
.crm-v2026 [data-crm-component="docx-variable-builder"] .docx-clinical-field-list small {
    display: block;
    margin-top: 2px;
    color: var(--crm-medical-muted);
    font-size: 10px;
    font-weight: 500;
}

@media (max-width: 1100px) {
    .crm-v2026 [data-crm-component="medical-template-designer"] :is(.designer-grid, .designer-code-workspace),
    .crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-layout {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-sidebar {
        position: static;
    }
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-library,
    .crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-template-forms,
    .crm-v2026 [data-crm-component="docx-variable-builder"] :is(.docx-contract-row, .docx-clinical-field-list) {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-library-header,
    .crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-section-head,
    .crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-template-head,
    .crm-v2026 [data-crm-component="medical-template-designer"] .designer-header,
    .crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-header,
    .crm-v2026 [data-crm-component="docx-variable-builder"] .docx-contract-title {
        align-items: stretch;
        flex-direction: column;
    }
    .crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-section-head > p {
        text-align: left;
    }
    .crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-template-actions {
        justify-content: flex-start;
    }
    .crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-disclosure > summary,
    .crm-v2026 :is([data-crm-component="user-settings"], [data-crm-component="patient-detail"]) .crm-compact-medical-template-head a,
    .crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-template-actions a,
    .crm-v2026 [data-crm-component="user-settings"] .crm-compact-medical-library .checkbox-field,
    .crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record > form > button,
    .crm-v2026 [data-crm-component="medical-template-designer"] :is(button, .designer-save),
    .crm-v2026 [data-crm-component="pdf-overlay-designer"] :is(button, input, select),
    .crm-v2026 [data-crm-component="docx-variable-builder"] :is(button, input:not([type="hidden"]), select, summary, a.secondary-link) {
        min-height: 44px;
    }
    .crm-v2026 [data-crm-component="medical-template-designer"] :is(
        .back-link,
        .designer-tabs button,
        .designer-block-buttons button,
        .designer-variable-buttons button,
        .designer-format-toolbar button,
        .designer-variables button,
        .designer-danger,
        .designer-save
    ),
    .crm-v2026 [data-crm-component="pdf-overlay-designer"] :is(.back-link, .pdf-field-row),
    .crm-v2026 [data-crm-component="docx-variable-builder"] :is(.back-link, .docx-variable-item .secondary, .docx-contract-form > button, .docx-clinical-fields summary) {
        min-height: 44px;
    }
    .crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record > form {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="patient-detail"] .crm-compact-medical-record > form > button {
        grid-column: 1;
        width: 100%;
    }
    .crm-v2026 [data-crm-component="medical-template-designer"] .designer-save,
    .crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-header form button {
        width: 100%;
        margin-top: 8px;
    }
    .crm-v2026 [data-crm-component="medical-template-designer"] .designer-paper {
        font-size: 12px;
    }
    .crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-paper-wrap {
        min-height: 0;
        padding: 8px;
    }
    .crm-v2026 [data-crm-component="pdf-overlay-designer"] .pdf-mapper-paper {
        min-width: 520px;
    }
    .crm-v2026 [data-crm-component="docx-variable-builder"] .docx-variable-item {
        align-items: stretch;
    }
    .crm-v2026 [data-crm-component="docx-variable-builder"] .docx-variable-item :is(button, form, form button),
    .crm-v2026 [data-crm-component="docx-variable-builder"] .docx-contract-form > button {
        width: 100%;
    }
}
/* END TASK-343: compact medical library and template surfaces. */

/* TASK-344: compact superadmin overview. */
.crm-v2026 [data-crm-superadmin-overview-root] {
    --crm-superadmin-primary: #3e63dd;
    --crm-superadmin-primary-strong: #3451b2;
    --crm-superadmin-primary-soft: #f0f4ff;
    --crm-superadmin-primary-soft-strong: #e6edfe;
    --crm-superadmin-ink: #333;
    --crm-superadmin-copy: #666;
    --crm-superadmin-line: #d6d6d6;
    --crm-superadmin-surface: #fff;
    width: min(100%, 1040px);
    margin: 0 auto;
    color: var(--crm-superadmin-ink);
    font-size: 13px;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 14px;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-eyebrow {
    margin: 0 0 3px;
    color: var(--crm-superadmin-primary-strong);
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-superadmin-overview-root] h1 {
    margin: 0;
    color: var(--crm-superadmin-ink);
    font-size: clamp(22px, 2vw, 28px);
    line-height: 1.15;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-intro {
    max-width: 480px;
    margin: 0;
    color: var(--crm-superadmin-copy);
    font-size: 12px;
    line-height: 1.45;
    text-align: right;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card {
    min-width: 0;
    padding: 14px;
    border: 1px solid var(--crm-superadmin-line);
    border-radius: 8px;
    background: var(--crm-superadmin-surface);
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card-heading {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
    margin-bottom: 12px;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-icon {
    display: inline-flex;
    flex: 0 0 34px;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--crm-superadmin-primary-soft-strong);
    border-radius: 8px;
    background: var(--crm-superadmin-primary-soft);
    color: var(--crm-superadmin-primary-strong);
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-icon svg {
    width: 18px;
    height: 18px;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card h2 {
    margin: 0;
    color: var(--crm-superadmin-ink);
    font-size: 15px;
    line-height: 1.25;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card-heading p {
    margin: 2px 0 0;
    overflow-wrap: anywhere;
    color: var(--crm-superadmin-copy);
    font-size: 12px;
    line-height: 1.35;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card form {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 6px 8px;
    margin: 0;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card label {
    grid-column: 1 / -1;
    margin: 0;
    color: var(--crm-superadmin-copy);
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card select,
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card button {
    min-width: 0;
    min-height: 34px;
    margin: 0;
    border-radius: 4px;
    font-size: 13px;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card select {
    width: 100%;
    border-color: var(--crm-superadmin-line);
    background: var(--crm-superadmin-surface);
    text-overflow: ellipsis;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card button {
    padding-inline: 14px;
    border-color: var(--crm-superadmin-primary);
    background: var(--crm-superadmin-primary);
    color: var(--crm-superadmin-surface);
    white-space: nowrap;
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card button:hover {
    border-color: var(--crm-superadmin-primary-strong);
    background: var(--crm-superadmin-primary-strong);
}
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card select:focus-visible,
.crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card button:focus-visible {
    outline: 2px solid var(--crm-superadmin-primary);
    outline-offset: 2px;
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card select,
    .crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card button {
        min-height: 44px;
    }
}
@media (max-width: 679px) {
    .crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-header {
        display: grid;
        gap: 5px;
    }
    .crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-intro {
        max-width: none;
        text-align: left;
    }
    .crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card form {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card button {
        width: 100%;
    }
}
@media (prefers-reduced-motion: reduce) {
    .crm-v2026 [data-crm-superadmin-overview-root] .crm-compact-superadmin-card button {
        transition: none;
    }
}
/* END TASK-344: compact superadmin overview. */
/* TASK-348: compact workspace access family. */
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-page {
    --crm-compact-primary: #3e63dd;
    --crm-compact-primary-strong: #3451b2;
    --crm-compact-primary-soft: #f0f4ff;
    --crm-compact-danger: #e5484d;
    --crm-compact-success: #18794e;
    --crm-compact-warning: #3451b2;
    --crm-compact-ink: #333;
    --crm-compact-muted: #666;
    --crm-compact-line: #ebebeb;
    --crm-compact-control-line: #d6d6d6;
    --crm-compact-surface: #fff;
    --crm-compact-page: #fcfcfc;
    --crm-compact-shadow: none;
    --crm-compact-access-line: var(--crm-compact-line);
    --crm-compact-access-ink: var(--crm-compact-ink);
    --crm-compact-access-muted: var(--crm-compact-muted);
    --crm-compact-access-primary: var(--crm-compact-primary);
    display: grid;
    min-width: 0;
    gap: 10px;
    color: var(--crm-compact-access-ink);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-heading {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 0 8px;
    border-bottom: 1px solid var(--crm-compact-access-line);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-heading > div {
    min-width: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-heading h2,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-heading p {
    margin: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-heading h2 {
    overflow-wrap: anywhere;
    font-size: 20px;
    line-height: 1.2;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-heading p:not(.crm-compact-access-eyebrow) {
    margin-top: 3px;
    color: var(--crm-compact-access-muted);
    font-size: 11px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-eyebrow {
    color: var(--crm-compact-access-muted);
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-heading > :is(a.button, button) {
    min-height: 34px;
    box-sizing: border-box;
    flex: 0 0 auto;
    margin: 0;
    padding: 6px 10px;
    border-radius: 5px;
    font-size: 12px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-tabs {
    display: flex;
    max-width: 100%;
    gap: 3px;
    overflow-x: auto;
    padding: 3px;
    border: 1px solid var(--crm-compact-access-line);
    border-radius: 7px;
    background: var(--crm-compact-page);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-tabs a {
    display: inline-flex;
    min-height: 34px;
    box-sizing: border-box;
    flex: 0 0 auto;
    align-items: center;
    gap: 5px;
    padding: 5px 9px;
    border-radius: 4px;
    color: var(--crm-compact-access-muted);
    font-size: 12px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-tabs a.active {
    background: var(--crm-compact-primary-soft);
    color: var(--crm-compact-primary-strong);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-tabs a span {
    display: inline-grid;
    min-width: 18px;
    min-height: 18px;
    place-items: center;
    padding-inline: 4px;
    border-radius: 999px;
    background: var(--crm-compact-surface);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-surface,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-summary,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-toolbar,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-disclosure {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--crm-compact-access-line);
    border-radius: 8px;
    background: var(--crm-compact-surface);
    box-shadow: none;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-section-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 9px 12px 7px;
    border-bottom: 1px solid var(--crm-compact-access-line);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-section-head h3,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-section-head p {
    margin: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-section-head h3 {
    font-size: 14px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-section-head p {
    margin-top: 2px;
    color: var(--crm-compact-access-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table-wrap {
    min-width: 0;
    overflow-x: auto;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    table-layout: auto;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table th {
    padding: 6px 9px;
    border: 0;
    border-bottom: 1px solid var(--crm-compact-access-line);
    background: var(--crm-compact-page);
    color: var(--crm-compact-access-muted);
    font-size: 10px;
    letter-spacing: .04em;
    text-align: left;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table td {
    min-width: 0;
    padding: 7px 9px;
    border: 0;
    border-bottom: 1px solid var(--crm-compact-access-line);
    color: var(--crm-compact-access-ink);
    font-size: 12px;
    vertical-align: middle;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table tr:last-child td {
    border-bottom: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table td > small,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table td > strong {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table td > small {
    margin-top: 2px;
    color: var(--crm-compact-access-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-person {
    display: grid;
    grid-template-columns: 30px minmax(0, 1fr);
    gap: 7px;
    align-items: center;
    min-width: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-person > div {
    display: grid;
    min-width: 0;
    gap: 1px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-person :is(strong, small) {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-person small {
    color: var(--crm-compact-access-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-avatar {
    display: grid;
    width: 30px;
    height: 30px;
    place-items: center;
    overflow: hidden;
    border-radius: 50%;
    background: var(--crm-compact-primary-soft);
    color: var(--crm-compact-primary-strong);
    font-size: 11px;
    font-weight: 800;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-pills {
    display: flex;
    min-width: 0;
    flex-wrap: wrap;
    gap: 3px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-pill {
    display: inline-flex;
    min-height: 20px;
    box-sizing: border-box;
    align-items: center;
    padding: 2px 6px;
    border: 1px solid var(--crm-compact-access-line);
    border-radius: 999px;
    background: var(--crm-compact-page);
    color: var(--crm-compact-access-muted);
    font-size: 10px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-pill.is-owner {
    border-color: var(--crm-compact-primary);
    background: var(--crm-compact-primary-soft);
    color: var(--crm-compact-primary-strong);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-pill.is-success {
    color: var(--crm-compact-success);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-pill.is-warning {
    color: var(--crm-compact-warning);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-pill.is-danger {
    color: var(--crm-compact-danger);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-actions {
    display: flex;
    min-width: 0;
    flex-wrap: wrap;
    align-items: center;
    gap: 5px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-actions :is(form, button, a.button) {
    margin: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-actions :is(button, a.button) {
    min-height: 34px;
    box-sizing: border-box;
    padding: 6px 9px;
    border-radius: 5px;
    font-size: 12px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-empty {
    display: grid;
    gap: 3px;
    padding: 20px 12px;
    color: var(--crm-compact-access-muted);
    font-size: 12px;
    text-align: center;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-empty strong {
    color: var(--crm-compact-access-ink);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-note,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-secret {
    display: grid;
    min-width: 0;
    gap: 2px;
    padding: 8px 10px;
    border: 1px solid var(--crm-compact-access-line);
    border-left: 3px solid var(--crm-compact-primary);
    border-radius: 6px;
    background: var(--crm-compact-primary-soft);
    color: var(--crm-compact-access-muted);
    font-size: 11px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-note strong,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-secret strong {
    color: var(--crm-compact-access-ink);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-note a {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-secret code {
    overflow-wrap: anywhere;
    color: var(--crm-compact-primary-strong);
    font-size: 11px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-form-surface {
    max-width: 720px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-form {
    display: grid;
    min-width: 0;
    gap: 9px;
    margin: 0;
    padding: 12px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-form-grid,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-role-identity {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-role-identity {
    padding: 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-field {
    display: grid;
    min-width: 0;
    gap: 3px;
    margin: 0;
    color: var(--crm-compact-access-muted);
    font-size: 10px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-page .crm-compact-access-field :is(input, select, textarea),
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-picker summary {
    width: 100%;
    min-height: 34px;
    box-sizing: border-box;
    margin: 0;
    padding: 6px 8px;
    border: 1px solid var(--crm-compact-control-line);
    border-radius: 5px;
    background: var(--crm-compact-surface);
    color: var(--crm-compact-access-ink);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-picker {
    position: relative;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-picker summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    list-style: none;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-picker-menu {
    position: absolute;
    z-index: 20;
    top: calc(100% + 4px);
    left: 0;
    width: min(100%, 420px);
    max-height: 260px;
    overflow: auto;
    padding: 7px;
    border: 1px solid var(--crm-compact-access-line);
    border-radius: 6px;
    background: var(--crm-compact-surface);
    box-shadow: var(--crm-compact-shadow);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-picker-menu label {
    display: flex;
    min-height: 34px;
    align-items: center;
    gap: 7px;
    margin: 0;
    padding: 4px 6px;
    border-radius: 4px;
    font-size: 12px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-picker-menu input {
    margin: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 1px;
    background: var(--crm-compact-access-line);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-summary > div {
    display: grid;
    min-width: 0;
    gap: 3px;
    padding: 8px 10px;
    background: var(--crm-compact-surface);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-summary > div > span {
    color: var(--crm-compact-access-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-summary > div > strong {
    overflow-wrap: anywhere;
    font-size: 13px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-disclosure > summary {
    display: flex;
    min-height: 42px;
    box-sizing: border-box;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 7px 10px;
    cursor: pointer;
    list-style: none;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-disclosure > summary > span:first-child {
    display: grid;
    gap: 1px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-disclosure > summary small {
    color: var(--crm-compact-access-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-disclosure[open] > summary {
    border-bottom: 1px solid var(--crm-compact-access-line);
    background: var(--crm-compact-primary-soft);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list {
    display: grid;
    min-width: 0;
    gap: 0;
    margin: 0;
    padding: 0;
    list-style: none;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto auto;
    min-width: 0;
    gap: 10px;
    align-items: center;
    padding: 8px 10px;
    border-bottom: 1px solid var(--crm-compact-access-line);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list-row:last-child {
    border-bottom: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list-main {
    display: grid;
    min-width: 0;
    gap: 2px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list-main > :is(strong, small) {
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list-main > small,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-count {
    color: var(--crm-compact-access-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list-row > a.button,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list-row > form > button {
    min-height: 34px;
    box-sizing: border-box;
    margin: 0;
    padding: 6px 9px;
    border-radius: 5px;
    font-size: 12px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-inline-details {
    margin-top: 3px;
    color: var(--crm-compact-primary-strong);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-inline-details summary {
    cursor: pointer;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-toolbar {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, .55fr);
    gap: 10px;
    align-items: center;
    padding: 8px 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-check {
    display: flex;
    min-height: 34px;
    align-items: center;
    gap: 7px;
    margin: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-check input {
    margin: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-check span {
    display: grid;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-check small {
    color: var(--crm-compact-access-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-permissions {
    padding: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-permission-groups {
    display: grid;
    gap: 6px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-permission-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(170px, .32fr);
    gap: 10px;
    align-items: center;
    padding: 6px 10px;
    border-bottom: 1px solid var(--crm-compact-access-line);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-permission-row:last-child {
    border-bottom: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-permission-row > label {
    display: grid;
    min-height: 34px;
    grid-template-columns: auto minmax(0, 1fr);
    min-width: 0;
    gap: 8px;
    align-items: center;
    margin: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-permission-row > label > span {
    display: grid;
    min-width: 0;
    gap: 1px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-permission-row small {
    color: var(--crm-compact-access-muted);
    font-size: 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-page .crm-compact-access-scope select {
    width: 100%;
    min-height: 34px;
    margin: 0;
    font-size: 11px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-form #id_roles > div > label {
    display: flex;
    min-height: 34px;
    align-items: center;
    gap: 7px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-sticky-actions {
    position: sticky;
    z-index: 5;
    bottom: 0;
    justify-content: flex-end;
    padding: 8px 0;
    background: var(--crm-compact-surface);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-guide > div {
    display: grid;
    gap: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-guide article {
    display: grid;
    gap: 2px;
    padding: 7px 10px;
    border-bottom: 1px solid var(--crm-compact-access-line);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-guide article:last-child {
    border-bottom: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-guide article span {
    color: var(--crm-compact-access-muted);
    font-size: 10px;
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-page {
        gap: 8px;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-heading {
        align-items: stretch;
        flex-direction: column;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-heading > :is(a.button, button),
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-tabs a,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-actions :is(button, a.button),
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list-row > a.button,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list-row > form > button,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-page .crm-compact-access-field :is(input, select, textarea),
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-picker summary,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-picker-menu label,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-check,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-page .crm-compact-access-scope select,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-permission-row > label,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-form #id_roles > div > label,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-note a,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-disclosure > summary {
        min-height: 44px;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-tabs {
        width: 100%;
        box-sizing: border-box;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-form-grid,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-role-identity,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-toolbar,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-permission-row {
        grid-template-columns: 1fr;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table thead {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip-path: inset(50%);
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table :is(tbody, tr, td) {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table tr {
        padding: 6px 9px;
        border-bottom: 1px solid var(--crm-compact-access-line);
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table td {
        display: grid;
        grid-template-columns: minmax(90px, .35fr) minmax(0, 1fr);
        min-height: 34px;
        gap: 8px;
        align-items: center;
        padding: 4px 0;
        border: 0;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table td::before {
        content: attr(data-label);
        color: var(--crm-compact-access-muted);
        font-size: 10px;
        font-weight: 700;
        text-transform: uppercase;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table td[colspan] {
        display: block;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table td[colspan]::before {
        content: none;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list-row {
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: start;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list-row .crm-compact-access-count {
        grid-column: 1;
    }
}
@media (max-width: 520px) {
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-summary,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list-row {
        grid-template-columns: 1fr;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-list-row > :is(a.button, form, form button) {
        width: 100%;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-actions {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-actions :is(form, button, a.button) {
        width: 100%;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-table td {
        grid-template-columns: 1fr;
        gap: 2px;
    }
}
/* END TASK-348: compact workspace access family. */

/* TASK-349: premium workspace clinics. */
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-workspace-clinics {
    --crm-clinics-primary: #3E63DD;
    --crm-clinics-primary-strong: #3451B2;
    --crm-clinics-ink: #1F2937;
    --crm-clinics-copy: #5F6B7A;
    --crm-clinics-muted: #8B97A6;
    --crm-clinics-line: #DDE3EC;
    --crm-clinics-soft: #F5F7FB;
    --crm-clinics-surface: #FFFFFF;
    display: grid;
    gap: 12px;
    min-width: 0;
    color: var(--crm-clinics-ink);
    font-size: 13px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    min-width: 0;
    padding-bottom: 10px;
    border-bottom: 1px solid var(--crm-clinics-line);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-header > div:first-child {
    min-width: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-header h2,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-panel h3 {
    margin: 0;
    color: var(--crm-clinics-ink);
    line-height: 1.2;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-header h2 {
    font-size: 20px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-panel h3 {
    font-size: 14px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-panel h3 span {
    color: var(--crm-clinics-muted);
    font-size: 11px;
    font-weight: 700;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-eyebrow,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-subtitle {
    margin: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-eyebrow {
    color: var(--crm-clinics-primary-strong);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-subtitle {
    margin-top: 3px;
    color: var(--crm-clinics-copy);
    font-size: 12px;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-actions,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-form-actions {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-workspace-clinics :is(a.button, button, input, select, textarea, summary) {
    font-size: 13px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-workspace-clinics :is(a.button, button, input, select) {
    min-height: 34px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-workspace-clinics :is(a.button, button) {
    margin: 0;
    border-radius: 5px;
    padding: 6px 12px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-list {
    overflow: hidden;
    border: 1px solid var(--crm-clinics-line);
    border-radius: 7px;
    background: var(--crm-clinics-surface);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    min-width: 0;
    border-bottom: 1px solid var(--crm-clinics-line);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-row:last-child {
    border-bottom: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-row:hover {
    background: var(--crm-clinics-soft);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-row-main {
    display: grid;
    grid-template-columns: 30px minmax(160px, 1.5fr) minmax(120px, .8fr) minmax(88px, .45fr) 14px;
    align-items: center;
    gap: 9px;
    min-width: 0;
    min-height: 52px;
    padding: 7px 10px;
    color: inherit;
    text-decoration: none;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-row > form {
    margin: 0 8px 0 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-icon {
    display: grid;
    place-items: center;
    width: 30px;
    height: 30px;
    border: 1px solid #C7D2FE;
    border-radius: 5px;
    background: #EEF2FF;
    color: var(--crm-clinics-primary-strong);
    font-size: 15px;
    font-weight: 800;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-identity,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-meta {
    display: grid;
    gap: 2px;
    min-width: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-identity strong,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-person-main strong,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-location strong {
    overflow: hidden;
    font-size: 13px;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-identity small,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-meta small,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-person-main small,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-location small,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-facts small {
    display: block;
    min-width: 0;
    color: var(--crm-clinics-copy);
    font-size: 11px;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-kind,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-functions span,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-unassigned {
    width: fit-content;
    max-width: 100%;
    border-radius: 999px;
    background: #EEF2FF;
    color: var(--crm-clinics-primary-strong);
    font-size: 10px;
    font-weight: 750;
    line-height: 1.3;
    padding: 3px 7px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-team {
    color: var(--crm-clinics-ink);
    font-size: 12px;
    font-weight: 750;
    text-align: right;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-team small {
    color: var(--crm-clinics-muted);
    font-size: 10px;
    font-weight: 650;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-chevron {
    color: var(--crm-clinics-primary);
    font-size: 20px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-empty {
    display: grid;
    gap: 3px;
    min-width: 0;
    padding: 18px;
    border: 1px dashed var(--crm-clinics-line);
    border-radius: 7px;
    background: var(--crm-clinics-soft);
    color: var(--crm-clinics-copy);
    text-align: center;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-empty strong {
    color: var(--crm-clinics-ink);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-form,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-panel,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-details {
    min-width: 0;
    border: 1px solid var(--crm-clinics-line);
    border-radius: 7px;
    background: var(--crm-clinics-surface);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-form,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-panel {
    padding: 12px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-form {
    display: grid;
    gap: 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-fieldset,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-workspace-clinics form fieldset {
    min-width: 0;
    margin: 0;
    padding: 0;
    border: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-fieldset > legend,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-workspace-clinics form fieldset > legend {
    margin: 0 0 6px;
    color: var(--crm-clinics-copy);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
    min-width: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-field {
    display: grid;
    align-content: start;
    gap: 3px;
    min-width: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-field-wide {
    grid-column: span 2;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-field label,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-workspace-clinics form > label {
    margin: 0;
    color: var(--crm-clinics-copy);
    font-size: 10px;
    font-weight: 750;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-field :is(input, select, textarea) {
    width: 100%;
    min-width: 0;
    margin: 0;
    border-color: var(--crm-clinics-line);
    border-radius: 5px;
    background: var(--crm-clinics-surface);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-field textarea {
    min-height: 64px;
    resize: vertical;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-check {
    display: flex;
    align-items: center;
    gap: 7px;
    min-height: 34px;
    align-self: end;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-check input {
    width: 16px;
    min-height: 16px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-details {
    overflow: clip;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-details > summary,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-editor > summary {
    cursor: pointer;
    color: var(--crm-clinics-primary-strong);
    font-weight: 750;
    list-style-position: inside;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-details > summary {
    display: flex;
    align-items: center;
    min-height: 34px;
    padding: 6px 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-details[open] > summary {
    border-bottom: 1px solid var(--crm-clinics-line);
    background: var(--crm-clinics-soft);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-details > :not(summary) {
    margin: 0;
    padding: 10px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-form-actions {
    padding-top: 2px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-detail-grid {
    display: grid;
    grid-template-columns: minmax(260px, .7fr) minmax(0, 1.3fr);
    gap: 10px;
    min-width: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0;
    margin: 8px 0 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-facts > div {
    min-width: 0;
    padding: 7px 8px;
    border-top: 1px solid var(--crm-clinics-line);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-facts dt {
    color: var(--crm-clinics-muted);
    font-size: 10px;
    font-weight: 750;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-facts dd {
    min-width: 0;
    margin: 2px 0 0;
    color: var(--crm-clinics-ink);
    font-size: 12px;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-panel-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-panel-head a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    color: var(--crm-clinics-primary-strong);
    font-size: 11px;
    font-weight: 750;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-facts a {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-people,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-assignment-list,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-location-list {
    display: grid;
    min-width: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-people,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-assignment-list {
    margin-top: 7px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-person,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-assignment-person {
    display: grid;
    grid-template-columns: minmax(180px, 1fr) minmax(120px, .75fr) auto;
    align-items: center;
    gap: 8px;
    min-width: 0;
    padding: 7px 0;
    border-top: 1px solid var(--crm-clinics-line);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-assignment-person {
    grid-template-columns: minmax(180px, .7fr) minmax(0, 1.3fr);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-person-main {
    display: flex;
    align-items: center;
    gap: 7px;
    min-width: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-person-main > span:last-child {
    display: grid;
    gap: 1px;
    min-width: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-functions {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-editor {
    position: relative;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-editor > summary {
    min-height: 34px;
    padding: 6px 8px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-editor > form {
    display: grid;
    gap: 8px;
    min-width: 230px;
    margin-top: 5px;
    padding: 9px;
    border: 1px solid var(--crm-clinics-line);
    border-radius: 6px;
    background: var(--crm-clinics-soft);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-workspace-clinics form fieldset label {
    display: flex;
    align-items: center;
    gap: 6px;
    min-height: 34px;
    margin: 0;
    color: var(--crm-clinics-ink);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-workspace-clinics form fieldset input[type="checkbox"] {
    width: 16px;
    min-height: 16px;
    margin: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-add-team,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-create-assignment {
    margin-top: 9px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-add-team form,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-create-assignment form {
    display: grid;
    gap: 8px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-location-list {
    gap: 4px;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-location {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    min-width: 0;
    padding: 5px 7px;
    border-radius: 5px;
    background: var(--crm-clinics-soft);
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-location > span {
    display: grid;
    min-width: 0;
}
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-workspace-clinics :is(a, button, input, select, textarea, summary):focus-visible {
    outline: 2px solid var(--crm-clinics-primary);
    outline-offset: 2px;
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-workspace-clinics :is(a.button, button, input, select, summary) {
        min-height: 44px;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-row-main {
        min-height: 56px;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-team small {
        display: none;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-editor > summary {
        display: flex;
        align-items: center;
        min-height: 44px;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-panel-head a,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-facts a {
        min-height: 44px;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-workspace-clinics form fieldset label {
        min-height: 44px;
    }
}
@media (max-width: 767px) {
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-header,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-detail-grid,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-person,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-assignment-person {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-header {
        display: grid;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-actions {
        width: 100%;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-actions > :is(a, button, form) {
        flex: 1 1 auto;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-actions > form button {
        width: 100%;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-row {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-row-main {
        grid-template-columns: 30px minmax(0, 1fr) 14px;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-meta,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-team {
        grid-column: 2;
        text-align: left;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-chevron {
        grid-column: 3;
        grid-row: 1 / span 3;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-row > form {
        margin: 0 8px 8px 48px;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-facts,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-fields {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-field-wide {
        grid-column: auto;
    }
}
@media (max-width: 479px) {
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-form,
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-panel {
        padding: 10px;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-form-actions > :is(a, button) {
        flex: 1 1 100%;
        width: 100%;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-clinics-location {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* END TASK-349: premium workspace clinics. */
/* TASK-352A: premium compact personal settings directory and leaves. */
.crm-v2026 [data-crm-component="user-settings"] {
    --crm-settings-primary: #3E63DD;
    --crm-settings-primary-strong: #3451B2;
    --crm-settings-primary-soft: rgba(62, 99, 221, .08);
    --crm-settings-primary-line: rgba(62, 99, 221, .24);
    color: var(--crm-ink);
}
.crm-v2026 [data-crm-component="user-settings"] .settings-layout {
    grid-template-columns: minmax(188px, 220px) minmax(0, 960px);
    justify-content: start;
    gap: 16px;
}
.crm-v2026 [data-crm-component="user-settings"] .settings-layout.crm-settings-layout--home {
    display: block;
    max-width: 1080px;
}
.crm-v2026 [data-crm-component="user-settings"] .settings-panel,
.crm-v2026 [data-crm-component="user-settings"] .settings-form,
.crm-v2026 [data-crm-component="user-settings"] .compact-form {
    max-width: none;
}
.crm-v2026 [data-crm-component="user-settings"] .settings-section-stack,
.crm-v2026 [data-crm-component="user-settings"] .settings-form {
    gap: 10px;
}
.crm-v2026 [data-crm-component="user-settings"] .settings-section {
    padding: 14px 16px;
    border-color: var(--crm-border);
    border-radius: 10px;
    box-shadow: none;
}
.crm-v2026 [data-crm-component="user-settings"] .settings-section h2 {
    margin: 0 0 6px;
    color: var(--crm-ink);
    font-size: 16px;
}
.crm-v2026 [data-crm-component="user-settings"] .settings-section h3 {
    margin-block: 10px 5px;
    font-size: 14px;
}
.crm-v2026 [data-crm-component="user-settings"] .settings-section .hint {
    margin-block: 4px 9px;
    font-size: 12px;
    line-height: 1.4;
}
.crm-v2026 [data-crm-component="user-settings"] :is(input, select, button, .button, .secondary-link) {
    min-height: 34px;
    border-radius: 6px;
    font-size: 13px;
}
.crm-v2026 [data-crm-component="user-settings"] :is(input, select, textarea):focus-visible,
.crm-v2026 [data-crm-component="user-settings"] :is(button, .button, a):focus-visible {
    outline: 2px solid var(--crm-settings-primary);
    outline-offset: 2px;
}
.crm-v2026 [data-crm-component="user-settings"] :is(button:not(.danger):not(.secondary), .button:not(.danger):not(.secondary)) {
    background: var(--crm-settings-primary);
}
.crm-v2026 [data-crm-component="user-settings"] :is(button:not(.danger):not(.secondary), .button:not(.danger):not(.secondary)):hover {
    background: var(--crm-settings-primary-strong);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-leaf-nav {
    position: sticky;
    top: 12px;
    display: grid;
    gap: 8px;
    min-width: 0;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-back {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    gap: 6px;
    box-sizing: border-box;
    padding: 6px 9px;
    border: 1px solid var(--crm-settings-primary-line);
    border-radius: 7px;
    background: var(--crm-surface);
    color: var(--crm-settings-primary-strong);
    font-size: 12px;
    font-weight: 750;
    text-decoration: none;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-leaf-tabs {
    display: grid;
    gap: 3px;
    padding: 8px;
    border: 1px solid var(--crm-border);
    border-radius: 9px;
    background: var(--crm-surface);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-leaf-group {
    padding: 3px 7px 5px;
    color: var(--crm-text-muted);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-leaf-link {
    display: flex;
    min-height: 34px;
    align-items: center;
    box-sizing: border-box;
    padding: 6px 8px;
    border-radius: 6px;
    color: var(--crm-ink);
    font-size: 13px;
    font-weight: 700;
    text-decoration: none;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-leaf-link:is(:hover, .is-active) {
    background: var(--crm-settings-primary-soft);
    color: var(--crm-settings-primary-strong);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-leaf-link.is-active {
    box-shadow: inset 3px 0 var(--crm-settings-primary);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-directory {
    display: grid;
    gap: 16px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-directory__header {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 20px;
    padding: 3px 1px 13px;
    border-bottom: 1px solid var(--crm-border);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-directory__header h1 {
    margin: 2px 0 0;
    color: var(--crm-ink);
    font-size: 22px;
    line-height: 1.2;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-directory__header > p {
    max-width: 430px;
    margin: 0;
    color: var(--crm-text-muted);
    font-size: 12px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-eyebrow {
    margin: 0;
    color: var(--crm-settings-primary);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-directory__groups {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-directory__group {
    min-width: 0;
    padding: 12px;
    border: 1px solid var(--crm-border);
    border-radius: 10px;
    background: var(--crm-surface);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-directory__group h2 {
    margin: 0 0 7px;
    color: var(--crm-text-muted);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-directory__grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-directory__item {
    display: flex;
    min-height: 36px;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    box-sizing: border-box;
    padding: 7px 9px;
    border: 1px solid var(--crm-border);
    border-radius: 7px;
    background: var(--crm-surface-muted);
    color: var(--crm-ink);
    font-size: 12px;
    font-weight: 750;
    text-decoration: none;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-directory__item:hover {
    border-color: var(--crm-settings-primary-line);
    background: var(--crm-settings-primary-soft);
    color: var(--crm-settings-primary-strong);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-settings-recovery-codes {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 7px;
    user-select: all;
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-component="user-settings"] .settings-layout {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="user-settings"] .crm-settings-leaf-nav {
        position: static;
    }
    .crm-v2026 [data-crm-component="user-settings"] .crm-settings-leaf-tabs {
        display: none;
    }
    .crm-v2026 [data-crm-component="user-settings"] .settings-mobile-select {
        display: grid;
        gap: 4px;
        margin: 0;
    }
    .crm-v2026 [data-crm-component="user-settings"] :is(input, select, button, .button, .secondary-link, .crm-settings-back, .crm-settings-directory__item) {
        min-height: 44px;
    }
}
@media (max-width: 679px) {
    .crm-v2026 [data-crm-component="user-settings"] .crm-settings-directory__header {
        display: grid;
        gap: 6px;
    }
    .crm-v2026 [data-crm-component="user-settings"] .crm-settings-directory__groups,
    .crm-v2026 [data-crm-component="user-settings"] .crm-settings-directory__grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="user-settings"] .settings-section {
        padding: 12px;
    }
}
/* END TASK-352A: premium compact personal settings directory and leaves. */

/* TASK-350: compact workspace operations family. */
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-page { --ops-blue:var(--crm-color-primary); --ops-blue-strong:var(--crm-color-primary-strong); --ops-blue-soft:var(--crm-color-primary-subtle); --ops-ink:var(--crm-color-text); --ops-muted:var(--crm-color-text-secondary); --ops-line:var(--crm-color-border); --ops-surface:var(--crm-color-surface); display:grid; min-width:0; gap:10px; color:var(--ops-ink); }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-heading { display:flex; min-width:0; align-items:center; justify-content:space-between; gap:10px; padding-bottom:8px; border-bottom:1px solid var(--ops-line); }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-heading :is(h2,p) { margin:0; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-heading h2 { font-size:20px; line-height:1.2; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-heading p { color:var(--ops-muted); font-size:10px; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-heading > a.button,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-section-head > a.button { min-height:34px; box-sizing:border-box; padding:6px 10px; border-radius:5px; font-size:12px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-catalog { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-catalog > a { display:grid; min-width:0; min-height:58px; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:10px; padding:9px 11px; border:1px solid var(--ops-line); border-radius:8px; background:var(--ops-surface); color:var(--ops-ink); text-decoration:none; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-catalog > a:hover,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-catalog > a:focus-visible { border-color:var(--ops-blue); box-shadow:0 0 0 2px var(--ops-blue-soft); }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-catalog span { display:grid; min-width:0; gap:2px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-catalog strong { overflow-wrap:anywhere; font-size:13px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-catalog small { overflow-wrap:anywhere; color:var(--ops-muted); font-size:10px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-catalog b { color:var(--ops-blue-strong); font-size:12px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-surface,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-preview { min-width:0; overflow:hidden; border:1px solid var(--ops-line); border-radius:8px; background:var(--ops-surface); }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-narrow { max-width:760px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-section-head { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:8px 11px; border-bottom:1px solid var(--ops-line); }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-section-head h3 { margin:0; font-size:14px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-form { display:grid; min-width:0; gap:9px; padding:11px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-grid { display:grid; min-width:0; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-field { display:grid; min-width:0; gap:3px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-field label { color:var(--ops-ink); font-size:11px; font-weight:700; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-field :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea) { width:100%; min-width:0; min-height:34px; box-sizing:border-box; margin:0; padding:5px 8px; border:1px solid var(--crm-color-control-border); border-radius:5px; font-size:12px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-field select[multiple] { min-height:96px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-field small,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-disclosure > div + small { color:var(--ops-muted); font-size:10px; line-height:1.35; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-check { display:flex; min-height:34px; align-items:center; gap:7px; font-size:12px; font-weight:650; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-check input { margin:0; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-actions { display:flex; min-width:0; flex-wrap:wrap; align-items:center; gap:6px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-actions :is(button,a.button) { min-height:34px; box-sizing:border-box; margin:0; padding:6px 10px; border-radius:5px; font-size:12px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-secondary-actions { padding:0 11px 11px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-note,
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-secret { display:grid; min-width:0; gap:3px; padding:8px 10px; border:1px solid #c6d4f9; border-radius:7px; background:var(--ops-blue-soft); font-size:11px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-note :is(span,small),
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-secret span { overflow-wrap:anywhere; color:var(--ops-muted); font-size:10px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-secret code { overflow-wrap:anywhere; white-space:pre-wrap; font-size:11px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-table-wrap { min-width:0; overflow-x:auto; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-table { width:100%; margin:0; border-collapse:collapse; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-table :is(th,td) { padding:7px 9px; border:0; border-bottom:1px solid var(--ops-line); font-size:11px; text-align:left; vertical-align:middle; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-table th { background:var(--crm-color-canvas); color:var(--ops-muted); font-size:10px; letter-spacing:.04em; text-transform:uppercase; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-table td :is(strong,small) { display:block; overflow-wrap:anywhere; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-table td small { color:var(--ops-muted); font-size:10px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-pill { display:inline-flex; min-height:22px; align-items:center; padding:2px 7px; border-radius:999px; background:#f3f3f3; color:var(--ops-muted); font-size:10px; font-weight:700; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-pill.is-primary { background:var(--ops-blue-soft); color:var(--ops-blue-strong); }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-pill.is-success { background:#ecfbf3; color:#18794e; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-pill.is-warning { background:#fff8e6; color:#8a5a00; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-pill.is-danger { background:#fff0f0; color:#b42318; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-empty { display:grid; gap:3px; padding:18px; text-align:center; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-empty span { color:var(--ops-muted); font-size:10px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-disclosure { border:1px solid var(--ops-line); border-radius:6px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-disclosure summary { display:flex; min-height:34px; align-items:center; padding:6px 9px; color:var(--ops-blue-strong); font-size:12px; font-weight:750; cursor:pointer; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-disclosure > div { padding:8px 9px; border-top:1px solid var(--ops-line); }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-disclosure > div + small { display:block; padding:0 9px 8px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-split { display:grid; min-width:0; grid-template-columns:minmax(0,1.65fr) minmax(220px,.65fr); gap:10px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-preview { display:grid; align-content:center; justify-items:center; gap:6px; min-height:220px; padding:14px; text-align:center; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-preview > div { display:grid; width:36px; height:36px; place-items:center; overflow:hidden; border-radius:8px; background:var(--ops-blue-strong); color:var(--crm-color-surface); }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-preview img { width:100%; height:100%; object-fit:contain; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-preview :is(h3,p) { margin:0; overflow-wrap:anywhere; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-preview h3 { font-size:14px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-preview p { color:var(--ops-muted); font-size:10px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-preview > span { padding:6px 10px; border-radius:5px; background:var(--ops-blue); color:var(--crm-color-surface); font-size:11px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-guide { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; padding:11px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-guide article { display:grid; gap:3px; padding:8px; border:1px solid var(--ops-line); border-radius:6px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-guide article span { color:var(--ops-muted); font-size:10px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-filters { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:7px; padding:8px; border-bottom:1px solid var(--ops-line); }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-filters label { display:grid; gap:3px; color:var(--ops-muted); font-size:10px; font-weight:700; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-filters select { min-width:0; min-height:34px; margin:0; padding:5px 8px; border:1px solid var(--crm-color-control-border); border-radius:5px; font-size:12px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-audit-list { min-width:0; padding:8px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-audit-list .ws-audit { display:grid; gap:0; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-audit-list .ws-audit-item { display:grid; min-width:0; grid-template-columns:22px minmax(0,1fr) auto; gap:8px; padding:8px 4px; border:0; border-bottom:1px solid var(--ops-line); border-radius:0; background:transparent; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-audit-list .ws-audit-dot { display:grid; width:20px; height:20px; place-items:center; border-radius:5px; font-size:10px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-audit-list .ws-audit-item :is(strong,p,time) { margin:0; overflow-wrap:anywhere; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-audit-list .ws-audit-item strong { font-size:12px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-audit-list .ws-audit-item :is(p,time) { color:var(--ops-muted); font-size:10px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-audit-list .ws-audit-details { margin-top:4px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-audit-list .ws-audit-details summary { min-height:34px; font-size:10px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-audit-list .ws-pagination { margin-top:8px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-audit-list .ws-pagination :is(a,span) { display:inline-flex; min-width:34px; min-height:34px; box-sizing:border-box; align-items:center; justify-content:center; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-metrics article { display:grid; gap:2px; padding:9px 10px; border:1px solid var(--ops-line); border-radius:7px; background:var(--ops-surface); }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-metrics small { color:var(--ops-muted); font-size:10px; }
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-metrics strong { color:var(--ops-blue-strong); font-size:18px; }
@media (max-width: 899px) {
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-catalog,
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-split,
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-guide { grid-template-columns:1fr; }
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-grid,
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-heading > a.button,
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-section-head > a.button,
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-actions :is(button,a.button),
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-field :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea),
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-check,
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-disclosure summary,
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-audit-list .ws-audit-details summary,
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-audit-list .ws-pagination :is(a,span),
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-filters select { min-height:44px; }
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-table thead { display:none; }
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-table :is(tbody,tr,td) { display:block; width:100%; box-sizing:border-box; }
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-table tr { padding:7px 9px; border-bottom:1px solid var(--ops-line); }
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-table td { display:grid; min-height:34px; grid-template-columns:minmax(88px,.4fr) minmax(0,1fr); align-items:center; gap:8px; padding:4px 0; border:0; overflow-wrap:anywhere; }
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-table td::before { content:attr(data-label); color:var(--ops-muted); font-size:10px; font-weight:700; }
}
@media (max-width: 520px) {
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-heading { align-items:flex-start; }
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-grid,
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-metrics,
  .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-operations-filters { grid-template-columns:1fr; }
}
/* END TASK-350: compact workspace operations family. */

/* TASK-353: premium global CRM shell. */
body.crm-v2026.workspace-shell {
    --crm-shell-primary: var(--crm-color-primary);
    --crm-shell-primary-strong: var(--crm-color-primary-strong);
    --crm-shell-deep: #1F2A44;
    --crm-shell-copy: #C7D2FE;
    --crm-shell-muted: #A8B3CF;
    --crm-shell-line: var(--crm-color-border);
    --crm-shell-soft: var(--crm-color-primary-subtle);
    --crm-shell-surface: var(--crm-color-surface);
    --crm-shell-control: 34px;
}
.crm-v2026 .app-sidebar {
    padding: 10px 9px;
    border: 1px solid #4967B7;
    border-radius: 16px;
    background: linear-gradient(180deg, #3451B2 0%, #2D458F 52%, #1F2A44 100%);
    box-shadow: 0 14px 34px rgba(31, 42, 68, .2);
}
.crm-v2026 .workspace-brand {
    width: var(--crm-shell-control);
    height: var(--crm-shell-control);
    margin: 0 auto 7px;
}
.crm-v2026 .workspace-brand-mark {
    width: 34px;
    height: 34px;
    border: 1px solid #A5B4FC;
    border-radius: 8px;
    background: #FFFFFF;
    box-shadow: none;
    color: #3451B2;
    font-size: 13px;
}
.crm-v2026 .app-sidebar .crm-premium-navigation {
    gap: 2px;
    padding: 2px 0;
}
.crm-v2026 .app-sidebar .workspace-navigation-label {
    color: #C7D2FE;
    font-size: 10px;
    font-weight: 750;
    letter-spacing: .06em;
}
.crm-v2026 .app-sidebar .workspace-link,
.crm-v2026 .app-sidebar:hover .workspace-link,
.crm-v2026 .app-sidebar:focus-within .workspace-link {
    width: var(--crm-shell-control);
    height: var(--crm-shell-control);
    min-height: var(--crm-shell-control);
    grid-template-columns: 1fr;
    place-items: center;
    margin: 0 auto;
    padding: 0;
    border: 1px solid transparent;
    border-radius: 8px;
    color: #C7D2FE;
    box-shadow: none;
    transition: color .14s ease, background .14s ease, border-color .14s ease;
}
.crm-v2026 .app-sidebar .workspace-link:hover,
.crm-v2026 .app-sidebar .workspace-link:focus-visible {
    border-color: #6F87D8;
    background: rgba(255, 255, 255, .1);
    box-shadow: none;
    color: #FFFFFF;
    transform: none;
}
.crm-v2026 .app-sidebar .workspace-link.active,
.crm-v2026.sidebar-expanded .app-sidebar .workspace-link.active {
    border-color: #C7D2FE;
    background: #FFFFFF;
    box-shadow: 0 5px 12px rgba(17, 24, 39, .16);
    color: #3451B2;
}
.crm-v2026 .app-sidebar .workspace-link.active::before {
    left: -10px;
    width: 3px;
    height: 18px;
    border-radius: 0 3px 3px 0;
    background: #FFFFFF;
    box-shadow: none;
}
.crm-v2026 .app-sidebar .workspace-link::after {
    left: calc(100% + 11px);
    padding: 6px 8px;
    border: 1px solid #3E4C6E;
    border-radius: 6px;
    background: #1F2A44;
    box-shadow: 0 8px 20px rgba(17, 24, 39, .22);
    color: #FFFFFF;
    content: attr(aria-label);
    font-size: 12px;
    font-weight: 700;
}
.crm-v2026 .workspace-link-icon,
.crm-v2026 .workspace-link-icon .workspace-icon {
    width: 19px;
    height: 19px;
}
.crm-v2026 .workspace-link-badge,
.crm-v2026 .notification-count {
    min-width: 16px;
    min-height: 16px;
    border-color: #2D458F;
    background: #D64B64;
    box-shadow: none;
    font-size: 10px;
}
.crm-v2026 .workspace-sidebar-footer {
    gap: 4px;
    padding-top: 6px;
    border-top: 1px solid rgba(199, 210, 254, .16);
}
.crm-v2026 .workspace-account {
    min-height: var(--crm-shell-control);
}
.crm-v2026 .workspace-account-avatar {
    width: 30px;
    height: 30px;
    flex-basis: 30px;
    border-color: #7289D6;
    background: #3E63DD;
    box-shadow: none;
    color: #FFFFFF;
}
.crm-v2026 .workspace-sidebar-actions {
    gap: 3px;
}
.crm-v2026 .workspace-sidebar-actions .notification-toggle,
.crm-v2026 .workspace-sidebar-actions .workspace-logout,
.crm-v2026 .app-sidebar:hover .workspace-sidebar-actions .notification-toggle,
.crm-v2026 .app-sidebar:focus-within .workspace-sidebar-actions .notification-toggle,
.crm-v2026 .app-sidebar:hover .workspace-sidebar-actions .workspace-logout,
.crm-v2026 .app-sidebar:focus-within .workspace-sidebar-actions .workspace-logout {
    width: var(--crm-shell-control);
    max-width: var(--crm-shell-control);
    height: var(--crm-shell-control);
    min-height: var(--crm-shell-control);
    padding: 0;
    border: 1px solid transparent;
    border-radius: 8px;
    background: transparent;
    box-shadow: none;
    color: #C7D2FE;
}
.crm-v2026 .workspace-sidebar-actions .notification-toggle:hover,
.crm-v2026 .workspace-sidebar-actions .notification-toggle[aria-expanded="true"] {
    border-color: #6F87D8;
    background: rgba(255, 255, 255, .1);
    color: #FFFFFF;
}
.crm-v2026 .workspace-sidebar-actions .workspace-logout,
.crm-v2026.sidebar-expanded .workspace-sidebar-actions .workspace-logout {
    border-color: transparent;
    background: transparent;
    color: #C7D2FE;
}
.crm-v2026 .workspace-sidebar-actions .workspace-logout:hover {
    border-color: #DFA3AE;
    background: rgba(214, 75, 100, .16);
    color: #FFFFFF;
}
.crm-v2026 .sidebar-resizer span {
    width: 4px;
    height: 34px;
    border-color: #C7D2FE;
    background: #A5B4FC;
    box-shadow: 0 0 0 3px rgba(199, 210, 254, .16);
}
.crm-v2026 .sidebar-resizer:hover span,
.crm-v2026 .sidebar-resizer:focus-visible span,
.crm-v2026.sidebar-resizing .sidebar-resizer span {
    width: 6px;
    background: #FFFFFF;
    box-shadow: 0 0 0 4px rgba(199, 210, 254, .2);
}
.crm-v2026 .sidebar-resizer:focus-visible {
    outline: 2px solid #A5B4FC;
    outline-offset: 2px;
}
@media (min-width: 900px) {
    .crm-v2026.sidebar-expanded .app-sidebar {
        padding-inline: 10px;
    }
    .crm-v2026.sidebar-expanded .workspace-brand {
        gap: 8px;
        margin-bottom: 8px;
    }
    .crm-v2026.sidebar-expanded .workspace-brand-label {
        color: #FFFFFF;
        font-size: 13px;
        font-weight: 780;
    }
    .crm-v2026.sidebar-expanded .workspace-navigation-label {
        padding: 4px 8px 3px;
        color: #A8B3CF;
        font-size: 10px;
    }
    .crm-v2026.sidebar-expanded .app-sidebar .workspace-link,
    .crm-v2026.sidebar-expanded .app-sidebar:hover .workspace-link,
    .crm-v2026.sidebar-expanded .app-sidebar:focus-within .workspace-link {
        width: 100%;
        height: auto;
        min-height: var(--crm-shell-control);
        grid-template-columns: 32px minmax(0, 1fr) auto;
        gap: 5px;
        justify-items: stretch;
        padding: 3px 8px 3px 2px;
        overflow: hidden;
        color: #E0E7FF;
        text-align: left;
    }
    .crm-v2026.sidebar-expanded .workspace-link-icon {
        justify-self: center;
    }
    .crm-v2026.sidebar-expanded .workspace-link-label {
        align-self: center;
        color: inherit;
        font-size: 13px;
        font-weight: 680;
        line-height: 1.2;
    }
    .crm-v2026.sidebar-expanded .app-sidebar .workspace-link-badge {
        position: static;
        align-self: center;
        margin-left: 4px;
        border-color: transparent;
    }
    .crm-v2026.sidebar-expanded .workspace-account {
        padding-inline: 5px;
    }
    .crm-v2026.sidebar-expanded .workspace-account-name {
        color: #FFFFFF;
        font-size: 12px;
        font-weight: 680;
    }
    .crm-v2026.sidebar-expanded .workspace-sidebar-actions {
        grid-template-columns: var(--crm-shell-control) minmax(0, 1fr);
        gap: 4px;
    }
    .crm-v2026.sidebar-expanded .workspace-sidebar-actions .notification-toggle {
        width: var(--crm-shell-control);
    }
    .crm-v2026.sidebar-expanded .workspace-sidebar-actions .workspace-logout {
        width: 100%;
        max-width: none;
        grid-template-columns: 20px minmax(0, 1fr);
        gap: 6px;
        padding-inline: 8px;
    }
    .crm-v2026.sidebar-expanded .workspace-sidebar-note {
        padding: 2px 7px 0;
        color: #A8B3CF;
        font-size: 10px;
    }
}
@media (max-width: 899px) {
    .crm-v2026 .workspace-utility-bar {
        min-height: 54px;
        border-bottom: 1px solid #DDE3EC;
        background: rgba(255, 255, 255, .96);
        box-shadow: 0 5px 16px rgba(31, 42, 68, .07);
    }
    .crm-v2026 .mobile-brand {
        color: #1F2A44;
        font-size: 13px;
        min-height: 44px;
    }
    .crm-v2026 .mobile-brand .workspace-brand-mark {
        width: 32px;
        height: 32px;
        flex-basis: 32px;
        border-radius: 7px;
        box-shadow: none;
    }
    .crm-v2026 .mobile-utility-actions :is(.notification-toggle, .mobile-account-toggle) {
        width: 44px;
        height: 44px;
        min-height: 44px;
        border: 1px solid #DDE3EC;
        border-radius: 8px;
        background: #FFFFFF;
        box-shadow: none;
        color: #3451B2;
    }
    .crm-v2026 .mobile-bottom-navigation {
        min-height: 64px;
        border-top: 1px solid #DDE3EC;
        background: rgba(255, 255, 255, .97);
        box-shadow: 0 -8px 24px rgba(31, 42, 68, .1);
    }
    .crm-v2026 .mobile-bottom-link {
        min-height: 56px;
        border-radius: 8px;
        color: #667085;
        font-size: 10px;
        font-weight: 700;
    }
    .crm-v2026 .mobile-bottom-link:hover,
    .crm-v2026 .mobile-bottom-link.active,
    .crm-v2026 .mobile-navigation-toggle.is-open > .mobile-bottom-link {
        background: #EEF2FF;
        color: #3451B2;
    }
    .crm-v2026 .mobile-bottom-link.active::before,
    .crm-v2026 .mobile-navigation-toggle.is-open > .mobile-bottom-link::before {
        width: 24px;
        height: 3px;
        background: #3E63DD;
    }
    .crm-v2026 .mobile-bottom-icon,
    .crm-v2026 .mobile-bottom-icon .workspace-icon {
        width: 20px;
        height: 20px;
    }
    .crm-v2026 .mobile-navigation {
        border: 1px solid #DDE3EC;
        border-radius: 14px 14px 10px 10px;
        background: #FFFFFF;
        box-shadow: 0 -18px 48px rgba(31, 42, 68, .2);
    }
    .crm-v2026 .mobile-navigation-header {
        min-height: 44px;
        padding-bottom: 7px;
        border-bottom: 1px solid #DDE3EC;
    }
    .crm-v2026 .mobile-navigation-header strong {
        color: #1F2A44;
        font-size: 13px;
    }
    .crm-v2026 .mobile-navigation-close {
        width: 44px;
        height: 44px;
        min-height: 44px;
        border: 1px solid #DDE3EC;
        border-radius: 8px;
        background: #FFFFFF;
        color: #3451B2;
    }
    .crm-v2026 .mobile-navigation .workspace-navigation {
        gap: 5px;
        padding-top: 7px;
    }
    .crm-v2026 .mobile-navigation .workspace-link {
        min-height: 48px;
        grid-template-columns: 30px minmax(0, 1fr) auto;
        gap: 5px;
        padding: 5px 7px;
        border: 1px solid #DDE3EC;
        border-radius: 8px;
        background: #F8F9FC;
        color: #344054;
        font-size: 12px;
    }
    .crm-v2026 .mobile-navigation .workspace-link:hover,
    .crm-v2026 .mobile-navigation .workspace-link.active {
        border-color: #A5B4FC;
        background: #EEF2FF;
        color: #3451B2;
    }
    .crm-v2026 .mobile-account-popover {
        border-color: #DDE3EC;
        border-radius: 12px;
        box-shadow: 0 16px 40px rgba(31, 42, 68, .18);
    }
    .crm-v2026 .mobile-account-link,
    .crm-v2026 .mobile-account-popover .workspace-logout {
        min-height: 44px;
        border-radius: 8px;
        color: #3451B2;
        font-size: 13px;
    }
}
@media (max-width: 420px) {
    .crm-v2026 .mobile-navigation .workspace-navigation {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 .mobile-navigation .workspace-link {
        min-height: 48px;
    }
}
@media (prefers-reduced-motion: reduce) {
    .crm-v2026 .app-sidebar .workspace-link,
    .crm-v2026 .sidebar-resizer span {
        transition: none;
    }
}
/* END TASK-353: premium global CRM shell. */

/* TASK-351: premium compact clinical settings and builders. */
.crm-v2026 [data-crm-component="icd-preferences"],
.crm-v2026 [data-crm-component="clinical-library"],
.crm-v2026 [data-crm-component="smart-data-field-builder"],
.crm-v2026 [data-crm-component="communication-template-builder"] { --crm-clinical-accent:#3E63DD;--crm-clinical-accent-strong:#3451B2;--crm-clinical-line:#D6D6D6;--crm-clinical-soft:#F0F4FF;--crm-clinical-ink:#333;max-width:1480px;margin:0 auto;color:var(--crm-clinical-ink);min-width:0; }
.crm-v2026 [data-crm-component="icd-preferences"] *,
.crm-v2026 [data-crm-component="clinical-library"] *,
.crm-v2026 [data-crm-component="smart-data-field-builder"] *,
.crm-v2026 [data-crm-component="communication-template-builder"] * { box-sizing:border-box; }
.crm-v2026 [data-crm-component="icd-preferences"] .crm-compact-clinical-heading,
.crm-v2026 [data-crm-component="clinical-library"] .crm-compact-clinical-heading,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-heading,
.crm-v2026 [data-crm-component="communication-template-builder"] .smart-field-heading { display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin:0 0 12px;padding:0; }
.crm-v2026 [data-crm-component="icd-preferences"] .crm-compact-clinical-heading h1,
.crm-v2026 [data-crm-component="clinical-library"] .crm-compact-clinical-heading h1,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-heading h1,
.crm-v2026 [data-crm-component="communication-template-builder"] .smart-field-heading h1 { margin:4px 0;font-size:22px;line-height:1.2;color:#333; }
.crm-v2026 [data-crm-component="icd-preferences"] .crm-compact-clinical-heading p,
.crm-v2026 [data-crm-component="clinical-library"] .crm-compact-clinical-heading p,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-heading p,
.crm-v2026 [data-crm-component="communication-template-builder"] .smart-field-heading p { max-width:760px;margin:2px 0;color:#666;font-size:12px;line-height:1.45; }
.crm-v2026 [data-crm-component="icd-preferences"] .settings-layout,
.crm-v2026 [data-crm-component="clinical-library"] .settings-layout { display:grid;grid-template-columns:230px minmax(0,1fr);gap:14px;align-items:start; }
.crm-v2026 [data-crm-component="icd-preferences"] .crm-compact-clinical-panel,
.crm-v2026 [data-crm-component="clinical-library"] .crm-compact-clinical-panel { min-width:0;padding:14px;border:1px solid var(--crm-clinical-line);border-radius:12px;background:#FFF;box-shadow:none; }
.crm-v2026 [data-crm-component="icd-preferences"] .settings-context-tabs,
.crm-v2026 [data-crm-component="clinical-library"] .settings-context-tabs { display:flex;gap:4px;overflow-x:auto;margin:0 0 10px;padding:3px;border:1px solid #EBEBEB;border-radius:10px;background:#FCFCFC;scrollbar-width:thin; }
.crm-v2026 [data-crm-component="icd-preferences"] .settings-context-tabs a,
.crm-v2026 [data-crm-component="clinical-library"] .settings-context-tabs a { display:inline-flex;align-items:center;min-height: 34px;padding:5px 10px;border-radius:8px;color:#666;font-size:12px;font-weight:750;text-decoration:none;white-space:nowrap; }
.crm-v2026 [data-crm-component="icd-preferences"] .settings-context-tabs a.active,
.crm-v2026 [data-crm-component="clinical-library"] .settings-context-tabs a.active { background:var(--crm-clinical-accent);color:#FFF;box-shadow:none; }
.crm-v2026 [data-crm-component="icd-preferences"] .settings-form { display:grid;gap:10px; }
.crm-v2026 [data-crm-component="icd-preferences"] .settings-section { margin:0;padding:12px;border:1px solid #EBEBEB;border-radius:10px;box-shadow:none; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-preference-card-heading { gap:12px;margin-bottom:8px; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-preference-card-heading h2 { margin:2px 0;font-size:15px;color:#333; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-preference-card-heading p:not(.clinical-library-eyebrow) { max-width:720px;font-size:11px;color:#666; }
.crm-v2026 [data-crm-component="icd-preferences"] .clinical-library-eyebrow,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-eyebrow { color:var(--crm-clinical-accent);font-size:10px;letter-spacing:.11em; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-source-badge { padding:3px 7px;border-color:#D6D6D6;background:var(--crm-clinical-soft);color:var(--crm-clinical-accent-strong);font-size:10px; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-override-switch { gap:7px;margin:6px 0;padding:8px;border-radius:9px;background:#FCFCFC; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-override-switch small { font-size:10px;color:#666; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-format-controls { gap:8px; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-format-preview { padding:8px 10px;border-color:#E6EDFE;border-radius:9px;background:var(--crm-clinical-soft);box-shadow:inset 3px 0 var(--crm-clinical-accent); }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-format-presets > div { gap:5px; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-format-presets label > span { min-height:48px;padding:7px 9px;border-radius:9px; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-format-presets input:checked + span { border-color:var(--crm-clinical-accent);background:var(--crm-clinical-soft);box-shadow:0 0 0 2px #E6EDFE; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-custom-format input,
.crm-v2026 [data-crm-component="icd-preferences"] .icd-format-token-buttons button,
.crm-v2026 [data-crm-component="icd-preferences"] .icd-preferences-actions button { min-height:34px; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-letter-grid { grid-template-columns:repeat(13,minmax(32px,1fr));gap:4px; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-letter-option span { display:grid;min-height:34px;place-items:center;padding:3px;border-radius:8px;font-size:11px; }
.crm-v2026 [data-crm-component="icd-preferences"] .icd-preferences-actions { position:static;display:flex;justify-content:flex-end;gap:7px;padding:8px;border-radius:10px;background:#FCFCFC;backdrop-filter:none; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-toolbar { gap:8px;margin-bottom:6px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-search { min-width:min(320px,100%);padding:0 8px;border-radius:9px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-search input,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-toolbar-actions button { min-height:34px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-board { grid-template-columns:minmax(175px,.68fr) minmax(210px,.86fr) minmax(245px,1fr);min-height:430px;border-color:#E6EDFE;border-radius:11px;box-shadow:none; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-column { padding:8px;border-color:#EBEBEB; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-column > header { min-height:34px;margin-bottom:4px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-column h2 { font-size:13px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-list { gap:4px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-category-card { min-height:48px;padding:6px;border-radius:9px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-field-card { border-radius:9px;box-shadow:none; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-field-card > button:first-child { min-height:52px;padding:7px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-drag-handle,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-composer-title button { min-width:34px;min-height:34px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-add-field,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-remove-field,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-more-button { min-width:34px;min-height:34px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-color-picker label { min-width:34px;min-height:34px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-color-picker span { width:34px;min-height:34px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-dropzone { min-height:250px;padding:6px;border-radius:10px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-composer-title { padding:7px;border-radius:9px;background:var(--crm-clinical-soft); }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-dialog { border-radius:14px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-dialog form { gap:10px;padding:14px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-dialog-close,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-dialog-actions button,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-editor-toolbar button { min-height:34px; }
.crm-v2026 [data-crm-component="clinical-library"] .clinical-token-editor { min-height:150px;max-height:260px;padding:9px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"],
.crm-v2026 [data-crm-component="communication-template-builder"] { padding:0; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .back-link,
.crm-v2026 [data-crm-component="communication-template-builder"] .back-link { display:inline-flex;min-height:34px;align-items:center;color:var(--crm-clinical-accent-strong);font-size:11px;font-weight:750;text-decoration:none; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-layout { display:grid;grid-template-columns:minmax(0,1fr);gap:10px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-context-selector { display:grid;grid-template-columns:minmax(240px,480px) auto;gap:6px 10px;align-items:end;margin:0 0 10px;padding:10px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-context-selector p { grid-column:1/-1;margin:0;font-size:11px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-context-selector select,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-context-selector button { min-height:34px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-safe-preview { display:flex;align-items:end;justify-content:space-between;gap:10px;margin:0 0 10px;padding:10px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-safe-preview h2 { margin:0 0 3px;font-size:14px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-safe-preview p { margin:0;color:#666;font-size:11px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-preview-form,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-transfer,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-transfer form { display:flex;align-items:end;gap:6px;flex-wrap:wrap; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-preview-form label,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-transfer label { display:grid;gap:3px;font-size:10px;font-weight:700; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-preview-form select { min-width:240px;max-width:340px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-preview-form select,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-preview-form button,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-transfer input,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-transfer button { min-height:34px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-library { margin:0; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-library summary { display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;font-size:13px;font-weight:800;color:#333;list-style:none; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-library summary::-webkit-details-marker { display:none; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-library summary::before { content:'▸';color:var(--crm-clinical-accent); }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-library[open] summary::before { transform:rotate(90deg); }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-filter { display:grid;grid-template-columns:minmax(0,1fr) 160px auto;gap:6px;margin:8px 0; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-filter input,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-filter select,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-filter button { min-width:0;min-height:34px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-list { display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:5px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-list-item { display:grid;gap:2px;padding:8px;border:1px solid #EBEBEB;border-radius:9px;color:#333;text-decoration:none;overflow-wrap:anywhere; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-list-item:hover,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-list-item.is-selected { border-color:var(--crm-clinical-accent);background:var(--crm-clinical-soft); }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-list-item span,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-list-item small,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-list-item code { color:#666;font-size:10px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-editor-card { min-width:0;margin:0 0 10px;padding:12px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-editor-title,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .composition-header { display:flex;align-items:flex-start;justify-content:space-between;gap:10px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-meta,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-management { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-management { grid-template-columns:1fr 1fr;margin-top:8px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-meta label,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-management label,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .inspector-panel label { display:block;margin:0 0 3px;font-size:11px;font-weight:700; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-meta input,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-management select,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .inspector-panel input,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .inspector-panel select { width:100%;min-height:34px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-composer { display:grid;grid-template-columns:210px minmax(320px,1fr) 250px;gap:8px;align-items:start; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .source-picker,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .composition-panel,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .inspector-panel { min-width:0;min-height:360px;padding:10px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .source-group { margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid #EBEBEB; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .source-group h3 { margin:0 0 4px;font-size:11px;color:#666; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .source-group button,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .add-literal { display:block;width:100%;min-height:34px;margin:3px 0;padding:5px 7px;border:1px solid #D6D6D6;border-radius:8px;background:#FFF;color:#333;text-align:left;cursor:pointer; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .source-group button:hover,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .add-literal:hover { border-color:var(--crm-clinical-accent);background:var(--crm-clinical-soft); }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .composition-items { display:grid;gap:5px;min-height:190px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .composition-empty { padding:18px 12px;border:1px dashed #D6D6D6;border-radius:9px;color:#666;text-align:center; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .composition-item { display:grid;grid-template-columns:34px minmax(0,1fr) auto auto auto;align-items:center;gap:5px;padding:6px;border:1px solid #D6D6D6;border-radius:8px;background:#FFF;cursor:grab; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .composition-item.is-selected { border-color:var(--crm-clinical-accent);box-shadow:0 0 0 2px #E6EDFE; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .composition-item button { width:34px;min-height:34px;padding:0; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .preview-box { margin-top:8px;padding:8px;border:1px solid #E6EDFE;border-radius:8px;background:var(--crm-clinical-soft); }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .preview-box strong { overflow-wrap:anywhere;white-space:pre-wrap; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .digit-settings,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .transform-settings,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .condition-settings { margin-top:8px;padding-top:8px;border-top:1px solid #EBEBEB; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .condition-rules { display:grid;gap:5px;margin:6px 0; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .condition-rule { display:grid;grid-template-columns:1fr 1fr minmax(110px,1fr) minmax(100px,.7fr) 32px;gap:5px;align-items:center;padding:6px;border:1px solid #EBEBEB;border-radius:8px;background:#FCFCFC; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .resource-access-editor { display:grid;grid-template-columns:minmax(200px,.7fr) minmax(0,1.3fr);gap:10px;margin-top:10px;padding-top:10px;border-top:1px solid #EBEBEB; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .resource-access-selected { display:grid;grid-template-columns:1fr 1fr;gap:8px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .resource-access-selected[hidden] { display:none; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .resource-access-selected fieldset { min-width:0;margin:0;padding:8px;border:1px solid #D6D6D6;border-radius:8px; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-save-row { display:flex;align-items:center;gap:7px;margin:10px 0;flex-wrap:wrap; }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-save-row button,
.crm-v2026 [data-crm-component="smart-data-field-builder"] .danger-link { min-height:34px; }
.crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-layout { display:grid;grid-template-columns:235px minmax(340px,1fr) 240px;gap:10px;align-items:start; }
.crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-editor,
.crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-fields,
.crm-v2026 [data-crm-component="communication-template-builder"] .smart-field-library { min-width:0;margin:0;padding:10px; }
.crm-v2026 [data-crm-component="communication-template-builder"] .smart-field-list { display:grid;gap:5px; }
.crm-v2026 [data-crm-component="communication-template-builder"] .smart-field-list-item { display:grid;gap:2px;padding:8px;border:1px solid #EBEBEB;border-radius:8px;color:#333;text-decoration:none;overflow-wrap:anywhere; }
.crm-v2026 [data-crm-component="communication-template-builder"] .smart-field-list-item.is-selected { border-color:var(--crm-clinical-accent);background:var(--crm-clinical-soft); }
.crm-v2026 [data-crm-component="communication-template-builder"] .smart-field-list-item span,
.crm-v2026 [data-crm-component="communication-template-builder"] .smart-field-list-item small,
.crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-fields code { color:#666;font-size:10px; }
.crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-form-grid { display:grid;gap:7px; }
.crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-form-grid label { display:grid;gap:3px;font-size:11px;font-weight:750; }
.crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-form-grid input,
.crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-form-grid select { min-height:34px; }
.crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-editor textarea { min-height:150px; }
.crm-v2026 [data-crm-component="communication-template-builder"] .template-sharing { display:grid;gap:7px;margin-top:9px;padding-top:9px;border-top:1px solid #EBEBEB; }
.crm-v2026 [data-crm-component="communication-template-builder"] .template-sharing-targets { display:grid;grid-template-columns:1fr 1fr;gap:7px; }
.crm-v2026 [data-crm-component="communication-template-builder"] .template-sharing-targets[hidden] { display:none; }
.crm-v2026 [data-crm-component="communication-template-builder"] .template-sharing fieldset { min-width:0;margin:0;padding:7px;border:1px solid #D6D6D6;border-radius:8px; }
.crm-v2026 [data-crm-component="communication-template-builder"] .shared-template-list { margin-top:10px;padding-top:8px;border-top:1px solid #EBEBEB; }
.crm-v2026 [data-crm-component="communication-template-builder"] .shared-template-card { display:grid;gap:2px;padding:7px 0;border-bottom:1px solid #EBEBEB; }
.crm-v2026 [data-crm-component="communication-template-builder"] .communication-marker { display:block;width:100%;min-height:34px;margin:4px 0;padding:6px 8px;border:1px solid #D6D6D6;border-radius:8px;background:#FCFCFC;color:#333;text-align:left;cursor:pointer; }
.crm-v2026 [data-crm-component="communication-template-builder"] .communication-marker:hover { border-color:var(--crm-clinical-accent);background:var(--crm-clinical-soft); }
.crm-v2026 [data-crm-component="smart-data-field-builder"] .secondary-link,
.crm-v2026 [data-crm-component="communication-template-builder"] .secondary-link { display:inline-flex;min-height:34px;align-items:center; }
.crm-v2026 [data-crm-component="communication-template-builder"] .settings-actions button { min-height:34px; }
@media (max-width: 1050px) {
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-composer { grid-template-columns:1fr 1fr; }
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .inspector-panel { grid-column:1/-1;min-height:auto; }
  .crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-layout { grid-template-columns:220px minmax(0,1fr); }
  .crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-fields { grid-column:1/-1; }
}
@media (max-width: 899px) {
  .crm-v2026 [data-crm-component="icd-preferences"] .settings-layout,
  .crm-v2026 [data-crm-component="clinical-library"] .settings-layout,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-composer,
  .crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-layout { grid-template-columns:1fr; }
  .crm-v2026 [data-crm-component="icd-preferences"] .settings-context-tabs a,
  .crm-v2026 [data-crm-component="clinical-library"] .settings-context-tabs a,
  .crm-v2026 [data-crm-component="icd-preferences"] button,
  .crm-v2026 [data-crm-component="icd-preferences"] input,
  .crm-v2026 [data-crm-component="icd-preferences"] select,
  .crm-v2026 [data-crm-component="clinical-library"] button,
  .crm-v2026 [data-crm-component="clinical-library"] input,
  .crm-v2026 [data-crm-component="clinical-library"] select,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] button,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] input,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] select,
  .crm-v2026 [data-crm-component="communication-template-builder"] button,
  .crm-v2026 [data-crm-component="communication-template-builder"] input,
  .crm-v2026 [data-crm-component="communication-template-builder"] select,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .back-link,
  .crm-v2026 [data-crm-component="communication-template-builder"] .back-link,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .secondary-link,
  .crm-v2026 [data-crm-component="communication-template-builder"] .secondary-link { min-width: 44px; min-height: 44px; }
  .crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-form-grid input,
  .crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-form-grid select,
  .crm-v2026 [data-crm-component="communication-template-builder"] .settings-actions button,
  .crm-v2026 [data-crm-component="communication-template-builder"] .communication-marker,
  .crm-v2026 [data-crm-component="communication-template-builder"] .smart-field-list-item { min-height:44px; }
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-context-selector select,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-context-selector button,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-preview-form select,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-preview-form button,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-transfer input,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-transfer button,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-filter input,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-filter select,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-filter button,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-meta input,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-management select,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .inspector-panel input,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .inspector-panel select,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .source-group button,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .add-literal,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .composition-item button,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-save-row button,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .danger-link { min-height:44px; }
  .crm-v2026 [data-crm-component="icd-preferences"] button,
  .crm-v2026 [data-crm-component="clinical-library"] button,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] button,
  .crm-v2026 [data-crm-component="communication-template-builder"] button { min-width:44px; }
  .crm-v2026 [data-crm-component="clinical-library"] .clinical-color-picker label { min-width:44px;min-height:44px; }
  .crm-v2026 [data-crm-component="clinical-library"] .clinical-color-picker span { width:44px;min-height:44px; }
  .crm-v2026 [data-crm-component="icd-preferences"] .icd-letter-option span { min-height:44px; }
  .crm-v2026 [data-crm-component="clinical-library"] .clinical-library-board { grid-template-columns:1fr;min-height:0;overflow:visible;border:0; }
  .crm-v2026 [data-crm-component="clinical-library"] .clinical-library-column { min-height:0;margin-bottom:7px;border:1px solid #EBEBEB;border-radius:10px; }
  .crm-v2026 [data-crm-component="clinical-library"] .clinical-library-list { max-height:330px; }
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .source-picker,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .composition-panel,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .inspector-panel { min-height:auto; }
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-meta,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-management,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .resource-access-editor,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .resource-access-selected,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .condition-rule,
  .crm-v2026 [data-crm-component="communication-template-builder"] .template-sharing-targets { grid-template-columns:1fr; }
}
@media (max-width: 520px) {
  .crm-v2026 [data-crm-component="icd-preferences"] .crm-compact-clinical-heading,
  .crm-v2026 [data-crm-component="clinical-library"] .crm-compact-clinical-heading,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-heading,
  .crm-v2026 [data-crm-component="communication-template-builder"] .smart-field-heading { display:grid; }
  .crm-v2026 [data-crm-component="icd-preferences"] .crm-compact-clinical-panel,
  .crm-v2026 [data-crm-component="clinical-library"] .crm-compact-clinical-panel,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-editor-card,
  .crm-v2026 [data-crm-component="communication-template-builder"] .communication-template-editor { padding:9px; }
  .crm-v2026 [data-crm-component="icd-preferences"] .icd-format-presets > div,
  .crm-v2026 [data-crm-component="icd-preferences"] .icd-custom-format,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-context-selector,
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-filter { grid-template-columns:1fr; }
  .crm-v2026 [data-crm-component="icd-preferences"] .icd-letter-grid { grid-template-columns:repeat(6,minmax(44px,1fr)); }
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-safe-preview { display:grid; }
}
/* END TASK-351: premium compact clinical settings and builders. */

/* TASK-352D: premium compact business settings directory and leaves. */
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business {
  --crm-business-accent:#3E63DD;
  --crm-business-accent-strong:#3451B2;
  --crm-business-soft:#F0F4FF;
  --crm-business-line:#D6D6D6;
  display:grid;
  gap:12px;
  min-width:0;
  color:#333;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business__header {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business__header h1,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-card h2 {
  margin:0;
  color:#333;
  line-height:1.2;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business__header h1 { font-size:20px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-card h2 { font-size:16px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business__header p,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-card p {
  margin:3px 0 0;
  color:#666;
  font-size:11px;
  line-height:1.45;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business__header .crm-compact-business__eyebrow {
  margin:0 0 3px;
  color:var(--crm-business-accent-strong);
  font-size:10px;
  font-weight:800;
  letter-spacing:.08em;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business__back,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-card__head > a,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-actions a,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-list > li > a {
  display:inline-flex;
  min-height:34px;
  align-items:center;
  justify-content:center;
  padding:5px 9px;
  border:1px solid var(--crm-business-line);
  border-radius:8px;
  color:var(--crm-business-accent-strong);
  font-size:11px;
  font-weight:750;
  text-decoration:none;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-directory {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-directory__item {
  display:flex;
  min-width:0;
  min-height:58px;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:9px 11px;
  border:1px solid var(--crm-business-line);
  border-radius:10px;
  background:#FFF;
  color:#333;
  text-decoration:none;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-directory__item:hover,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-directory__item:focus-visible {
  border-color:var(--crm-business-accent);
  background:var(--crm-business-soft);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-directory__item > span:first-child {
  display:grid;
  min-width:0;
  gap:2px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-directory__item strong {
  overflow:hidden;
  font-size:12px;
  text-overflow:ellipsis;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-directory__item small,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-list small {
  color:#666;
  font-size:10px;
  line-height:1.35;
  overflow-wrap:anywhere;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-directory__item > span:last-child {
  color:var(--crm-business-accent);
  font-size:18px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-tabs {
  display:flex;
  gap:4px;
  max-width:100%;
  padding:3px;
  overflow-x:auto;
  border:1px solid var(--crm-business-line);
  border-radius:9px;
  background:#FCFCFC;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-tabs a,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-tabs span {
  display:inline-flex;
  min-height:34px;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  padding:5px 10px;
  border-radius:7px;
  color:#666;
  font-size:11px;
  font-weight:750;
  text-decoration:none;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-tabs .is-active {
  background:var(--crm-business-accent);
  color:#FFF;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-card {
  min-width:0;
  padding:12px;
  border:1px solid var(--crm-business-line);
  border-radius:11px;
  background:#FFF;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-card__head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-card__head > a {
  border-color:var(--crm-business-accent);
  background:var(--crm-business-accent);
  color:#FFF;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-list {
  display:grid;
  gap:0;
  margin:0;
  padding:0;
  list-style:none;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-list > li {
  display:flex;
  min-width:0;
  min-height:45px;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding:6px 0;
  border-top:1px solid #EBEBEB;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-list > li:first-child { border-top:0; }
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-list > li > span:first-child {
  display:grid;
  min-width:0;
  gap:2px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-list strong {
  font-size:12px;
  overflow-wrap:anywhere;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-list .empty-state {
  display:block;
  min-height:0;
  color:#666;
  font-size:11px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-actions {
  display:flex;
  flex:0 0 auto;
  gap:5px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form-card { max-width:720px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form {
  display:grid;
  max-width:620px;
  gap:7px;
  margin-top:9px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form > label {
  display:grid;
  gap:3px;
  color:#333;
  font-size:11px;
  font-weight:750;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form > label small {
  color:#666;
  font-size:10px;
  font-weight:500;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form input:not([type="checkbox"]),
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form select,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form textarea,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form button,
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-danger button {
  min-height:34px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form > button {
  justify-self:start;
  background:var(--crm-business-accent);
  border-color:var(--crm-business-accent);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-options {
  display:grid;
  gap:4px;
  margin:2px 0;
  padding:7px;
  border:1px solid #EBEBEB;
  border-radius:8px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-options legend {
  padding:0 4px;
  color:#666;
  font-size:10px;
  font-weight:750;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form .crm-compact-business-check {
  display:flex;
  min-height:34px;
  align-items:center;
  gap:7px;
  font-size:11px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form .crm-compact-business-check > input {
  flex:0 0 auto;
  margin:0;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form .crm-compact-business-check > span {
  display:grid;
  gap:2px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-publications {
  display:grid;
  gap:5px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-publication-row {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(170px,.8fr);
  gap:8px;
  padding:6px 8px;
  border:1px solid #EBEBEB;
  border-radius:8px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-danger {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:9px;
  margin-top:10px;
  padding-top:9px;
  border-top:1px solid #EBEBEB;
  color:#666;
  font-size:10px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-danger__action {
  border:1px solid var(--crm-business-line);
  background:#FFF;
  color:var(--crm-business-accent-strong);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-danger__action--delete {
  border-color:var(--crm-business-accent-strong);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-history { margin-top:9px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-compact-business .errorlist {
  margin:3px 0;
  color:#3451B2;
  font-size:10px;
}
@media (max-width: 899px) {
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-directory { grid-template-columns:1fr; }
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-directory__item,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-tabs a,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-tabs span,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business__back,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-card__head > a,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-actions a,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-list > li > a,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form input:not([type="checkbox"]),
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form select,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form textarea,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form button,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-danger button,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form .crm-compact-business-check { min-height:44px; }
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-form button,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-danger button { min-width:44px; }
}
@media (max-width: 560px) {
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business__header,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-card__head,
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-danger { align-items:stretch;flex-direction:column; }
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-card { padding:9px; }
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-list > li { align-items:flex-start;flex-direction:column; }
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-actions { width:100%; }
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-actions a { flex:1; }
  .crm-v2026 [data-crm-component="user-settings"] .crm-compact-business-publication-row { grid-template-columns:1fr; }
}
/* END TASK-352D: premium compact business settings directory and leaves. */

/* Integrated settings cascade hardening. */
.crm-v2026 :is(
  [data-crm-component="icd-preferences"],
  [data-crm-component="clinical-library"],
  [data-crm-component="smart-data-field-builder"],
  [data-crm-component="communication-template-builder"]
) .crm-settings-leaf-nav {
  position:sticky;
  top:12px;
  display:grid;
  min-width:0;
  gap:8px;
}
.crm-v2026 :is(
  [data-crm-component="icd-preferences"],
  [data-crm-component="clinical-library"],
  [data-crm-component="smart-data-field-builder"],
  [data-crm-component="communication-template-builder"]
) .crm-settings-back {
  display:inline-flex;
  min-height:34px;
  align-items:center;
  gap:6px;
  box-sizing:border-box;
  padding:6px 9px;
  border:1px solid #D6D6D6;
  border-radius:7px;
  background:#FFFFFF;
  color:#3451B2;
  font-size:12px;
  font-weight:750;
  text-decoration:none;
}
.crm-v2026 :is(
  [data-crm-component="icd-preferences"],
  [data-crm-component="clinical-library"],
  [data-crm-component="smart-data-field-builder"],
  [data-crm-component="communication-template-builder"]
) .crm-settings-leaf-tabs {
  display:grid;
  gap:3px;
  padding:8px;
  border:1px solid #D6D6D6;
  border-radius:8px;
  background:#FFFFFF;
}
.crm-v2026 :is(
  [data-crm-component="icd-preferences"],
  [data-crm-component="clinical-library"],
  [data-crm-component="smart-data-field-builder"],
  [data-crm-component="communication-template-builder"]
) .crm-settings-leaf-group {
  padding:3px 7px 5px;
  color:#666666;
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.crm-v2026 :is(
  [data-crm-component="icd-preferences"],
  [data-crm-component="clinical-library"],
  [data-crm-component="smart-data-field-builder"],
  [data-crm-component="communication-template-builder"]
) .crm-settings-leaf-link {
  display:flex;
  min-height:34px;
  align-items:center;
  box-sizing:border-box;
  padding:6px 8px;
  border-radius:4px;
  color:#333333;
  font-size:13px;
  font-weight:700;
  text-decoration:none;
}
.crm-v2026 :is(
  [data-crm-component="icd-preferences"],
  [data-crm-component="clinical-library"],
  [data-crm-component="smart-data-field-builder"],
  [data-crm-component="communication-template-builder"]
) .crm-settings-leaf-link:is(:hover, .is-active) {
  background:#F0F4FF;
  color:#3451B2;
}
.crm-v2026 :is(
  [data-crm-component="icd-preferences"],
  [data-crm-component="clinical-library"],
  [data-crm-component="smart-data-field-builder"],
  [data-crm-component="communication-template-builder"]
) .crm-settings-leaf-link.is-active {
  box-shadow:inset 3px 0 #3E63DD;
}
.crm-v2026 [data-crm-component="workspace-content"] .booking-interval-chip button {
  width:34px;
  min-width:34px;
  height:34px;
  min-height:34px;
}
.crm-v2026 [data-crm-component="workspace-content"] .payment-row-actions > a {
  min-height:34px;
}
.crm-v2026 [data-crm-component="workspace-content"] .payment-safety-note summary {
  min-height:34px;
}
@media (max-width: 899px) {
  .crm-v2026 :is(
    [data-crm-component="icd-preferences"],
    [data-crm-component="clinical-library"],
    [data-crm-component="smart-data-field-builder"],
    [data-crm-component="communication-template-builder"]
  ) .crm-settings-leaf-nav { position:static; }
  .crm-v2026 :is(
    [data-crm-component="icd-preferences"],
    [data-crm-component="clinical-library"],
    [data-crm-component="smart-data-field-builder"],
    [data-crm-component="communication-template-builder"]
  ) .crm-settings-leaf-tabs { display:none; }
  .crm-v2026 :is(
    [data-crm-component="icd-preferences"],
    [data-crm-component="clinical-library"],
    [data-crm-component="smart-data-field-builder"],
    [data-crm-component="communication-template-builder"]
  ) .settings-mobile-select { display:grid;gap:4px;margin:0; }
  .crm-v2026 :is(
    [data-crm-component="icd-preferences"],
    [data-crm-component="clinical-library"],
    [data-crm-component="smart-data-field-builder"],
    [data-crm-component="communication-template-builder"]
  ) .crm-settings-back { min-height:44px; }
  .crm-v2026 :is(
    [data-crm-component="icd-preferences"],
    [data-crm-component="clinical-library"],
    [data-crm-component="smart-data-field-builder"],
    [data-crm-component="communication-template-builder"]
  ) .settings-mobile-select select { min-height:44px; }
  .crm-v2026 [data-crm-component="workspace-content"] .booking-interval-chip button {
    width:44px;
    min-width:44px;
    height:44px;
    min-height:44px;
  }
  .crm-v2026 [data-crm-component="workspace-content"] .payment-row-actions > a {
    min-width:44px;
    min-height:44px;
  }
  .crm-v2026 [data-crm-component="workspace-content"] .payment-safety-note summary {
    min-width:44px;
    min-height:44px;
  }
}
/* END integrated settings cascade hardening. */

/* TASK-352C: premium compact channel settings directory and leaves. */
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-settings{display:grid;gap:12px;max-width:1040px;color:#333333}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-settings__header{display:grid;gap:3px;padding:4px 0 8px}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-settings__header :is(p,h2,span),
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-leaf__header :is(p,h2){margin:0}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-settings__header p,
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-leaf__header p{color:#666666;font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-settings__header h2,
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-leaf__header h2{color:#333333;font-size:20px;line-height:1.2}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-settings__header span{color:#666666;font-size:13px}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-directory>a{display:grid;grid-template-columns:1fr auto;grid-template-areas:"title arrow" "meta arrow";min-height:64px;box-sizing:border-box;align-items:center;padding:10px 12px;border:1px solid #D9D9D9;border-radius:8px;background:#FFFFFF;color:#333333;text-decoration:none}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-directory>a:hover{border-color:#3E63DD;background:#F0F4FF;color:#3451B2}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-directory span{grid-area:title;font-size:14px;font-weight:800}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-directory small{grid-area:meta;color:#666666;font-size:10px}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-directory b{grid-area:arrow;color:#3E63DD;font-size:20px}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-leaf__header{display:flex;align-items:center;gap:8px;padding-bottom:8px;border-bottom:1px solid #D9D9D9}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-leaf__header>a{display:grid;width:34px;min-width:34px;height:34px;place-items:center;border:1px solid #D9D9D9;border-radius:7px;color:#3451B2;text-decoration:none}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-card{display:grid;gap:10px;padding:14px;border:1px solid #D9D9D9;border-radius:8px;background:#FFFFFF}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-card :is(h3,p){margin:0}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-form label{display:grid;gap:4px;color:#333333;font-size:12px;font-weight:700}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-form :is(input,select,textarea,button),
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-card>form button,
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-confirm button{min-height:34px;box-sizing:border-box}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-list{display:grid;border:1px solid #D9D9D9;border-radius:8px;background:#FFFFFF;overflow:hidden}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-list article{display:flex;min-width:0;align-items:center;justify-content:space-between;gap:10px;padding:9px 12px;border-bottom:1px solid #D9D9D9}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-list article:last-child{border-bottom:0}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-list article>div:first-child{display:grid;min-width:0;gap:2px}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-list strong{overflow-wrap:anywhere;font-size:13px}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-list small{color:#666666;font-size:10px}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-actions>a,
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-list article>a,
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-subrow>a{display:inline-flex;min-height:34px;align-items:center;box-sizing:border-box;padding:5px 8px;border-radius:6px;color:#3451B2;font-size:12px;font-weight:700;text-decoration:none}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-check{display:flex;min-height:34px;align-items:center;gap:7px}
.crm-v2026 [data-crm-component="user-settings"] .crm-channel-subrow{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:7px;border-top:1px solid #D9D9D9}
@media (max-width:899px){
  .crm-v2026 [data-crm-component="user-settings"] .crm-channel-directory,
  .crm-v2026 [data-crm-component="user-settings"] .crm-channel-grid{grid-template-columns:1fr}
  .crm-v2026 [data-crm-component="user-settings"] .crm-channel-leaf__header>a{width:44px;min-width:44px;height:44px}
  .crm-v2026 [data-crm-component="user-settings"] .crm-channel-form :is(input,select,textarea,button),
  .crm-v2026 [data-crm-component="user-settings"] .crm-channel-card>form button,
  .crm-v2026 [data-crm-component="user-settings"] .crm-channel-confirm button,
  .crm-v2026 [data-crm-component="user-settings"] .crm-channel-actions>a,
  .crm-v2026 [data-crm-component="user-settings"] .crm-channel-list article>a,
  .crm-v2026 [data-crm-component="user-settings"] .crm-channel-subrow>a,
  .crm-v2026 [data-crm-component="user-settings"] .crm-channel-check{min-height:44px}
  .crm-v2026 [data-crm-component="user-settings"] .crm-channel-list article{align-items:flex-start;flex-direction:column;padding:10px}
  .crm-v2026 [data-crm-component="user-settings"] .crm-channel-actions{width:100%;justify-content:flex-start}
}
/* END TASK-352C: premium compact channel settings directory and leaves. */

/* TASK-352B: premium compact calendar and booking settings. */
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-settings {
  --crm-calendar-accent:#3E63DD;
  --crm-calendar-accent-strong:#3451B2;
  --crm-calendar-soft:#F0F4FF;
  --crm-calendar-line:#D9D9D9;
  display:grid;
  width:100%;
  max-width:1040px;
  min-width:0;
  gap:12px;
  color:#333333;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-header {
  display:flex;
  min-width:0;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:4px 0 8px;
  border-bottom:1px solid var(--crm-calendar-line);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-header>div { display:grid;min-width:0;gap:3px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-header :is(p,h1) { margin:0; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-eyebrow {
  color:#666666;
  font-size:10px;
  font-weight:800;
  letter-spacing:.06em;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-header h1 { font-size:20px;line-height:1.2; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-header p:last-child { color:#666666;font-size:12px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-back,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-card-head>a,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-list a,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-actions a {
  display:inline-flex;
  min-height:34px;
  align-items:center;
  box-sizing:border-box;
  padding:5px 9px;
  border:1px solid var(--crm-calendar-line);
  border-radius:7px;
  background:#FFFFFF;
  color:var(--crm-calendar-accent-strong);
  font-size:12px;
  font-weight:750;
  text-decoration:none;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-directory {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-directory>a {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  min-width:0;
  min-height:64px;
  align-items:center;
  gap:8px;
  box-sizing:border-box;
  padding:10px 12px;
  border:1px solid var(--crm-calendar-line);
  border-radius:8px;
  background:#FFFFFF;
  color:#333333;
  text-decoration:none;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-directory>a:is(:hover,:focus-visible) {
  border-color:var(--crm-calendar-accent);
  background:var(--crm-calendar-soft);
  color:var(--crm-calendar-accent-strong);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-directory span { display:grid;min-width:0;gap:2px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-directory strong { font-size:14px;overflow-wrap:anywhere; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-directory small { color:#666666;font-size:10px;overflow-wrap:anywhere; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-directory b { color:var(--crm-calendar-accent);font-size:20px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-leaf { display:grid;min-width:0;gap:10px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-card {
  display:grid;
  min-width:0;
  gap:9px;
  padding:12px;
  border:1px solid var(--crm-calendar-line);
  border-radius:8px;
  background:#FFFFFF;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-form-card { max-width:720px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-card :is(h2,p) { margin:0; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-card h2 { font-size:16px;line-height:1.25; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-card>p,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-card-head p { color:#666666;font-size:11px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-card-head {
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-card-head>div { display:grid;min-width:0;gap:2px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-form,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-inline-form { display:grid;min-width:0;gap:7px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-inline-form {
  grid-template-columns:minmax(180px,1fr) repeat(2,minmax(130px,.7fr)) auto;
  align-items:end;
  padding:8px;
  border-radius:8px;
  background:var(--crm-calendar-soft);
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-form>label,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-inline-form>label,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-public-url {
  display:grid;
  min-width:0;
  gap:3px;
  color:#333333;
  font-size:11px;
  font-weight:750;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-form label small { color:#666666;font-size:10px;font-weight:500; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-form :is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),select,textarea,button),
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-inline-form :is(input,select,button),
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-public-url input,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-confirm button,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-confirm-form button,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-danger-form button,
.crm-v2026 [data-crm-component="user-settings"] .schedule-template-interval :is(input:not([type="checkbox"]),select,button) {
  width:100%;
  min-width:0;
  min-height:34px;
  box-sizing:border-box;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-form textarea { min-height:90px;resize:vertical; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-form>button { width:auto;justify-self:start;background:var(--crm-calendar-accent);border-color:var(--crm-calendar-accent); }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-check {
  display:flex;
  min-height:34px;
  align-items:center;
  gap:7px;
  box-sizing:border-box;
  font-size:11px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-check>input { flex:0 0 auto;margin:0; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-check>span { display:grid;gap:2px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-disclosure,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-form fieldset {
  min-width:0;
  margin:0;
  padding:7px;
  border:1px solid var(--crm-calendar-line);
  border-radius:7px;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-disclosure summary { min-height:34px;box-sizing:border-box;padding:7px 2px;color:var(--crm-calendar-accent-strong);font-size:11px;font-weight:750;cursor:pointer; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-form legend { padding:0 4px;color:#666666;font-size:10px;font-weight:750; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-list,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-preview { display:grid;margin:0;padding:0;list-style:none; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-list>li,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-preview>li {
  display:flex;
  min-width:0;
  min-height:46px;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  box-sizing:border-box;
  padding:6px 0;
  border-top:1px solid #EBEBEB;
}
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-list>li:first-child,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-preview>li:first-child { border-top:0; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-list>li>span:first-child,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-preview>li { min-width:0; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-list strong,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-preview strong { display:block;font-size:12px;overflow-wrap:anywhere; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-list small,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-preview span { display:block;color:#666666;font-size:10px;overflow-wrap:anywhere; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-list .empty-state { display:block;min-height:0;color:#666666;font-size:11px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-actions { display:flex;flex:0 0 auto;gap:4px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-alert { margin:0;padding:8px 10px;border:1px solid var(--crm-calendar-accent);border-radius:7px;background:var(--crm-calendar-soft);font-size:11px; }
.crm-v2026 [data-crm-component="user-settings"] .schedule-template-working-fields,
.crm-v2026 [data-crm-component="user-settings"] #schedule-template-intervals { display:grid;min-width:0;gap:7px; }
.crm-v2026 [data-crm-component="user-settings"] .schedule-template-interval { display:grid;grid-template-columns:1.3fr repeat(3,minmax(110px,.7fr));min-width:0;gap:7px;padding:8px;border:1px solid var(--crm-calendar-line);border-radius:8px; }
.crm-v2026 [data-crm-component="user-settings"] .schedule-template-interval-heading { grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px; }
.crm-v2026 [data-crm-component="user-settings"] .schedule-template-interval fieldset { min-width:0; }
.crm-v2026 [data-crm-component="user-settings"] .schedule-template-interval>label { display:grid;min-width:0;gap:3px;font-size:10px;font-weight:750; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-danger-form,
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-confirm-form { display:flex;justify-content:flex-end;margin-top:3px;padding-top:9px;border-top:1px solid var(--crm-calendar-line); }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-confirm { max-width:620px; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-confirm form { display:flex;justify-content:flex-end; }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-preview>li.has-error { color:var(--crm-calendar-accent-strong); }
.crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-settings :is(a,button,input,select,textarea,summary):focus-visible { outline:2px solid var(--crm-calendar-accent);outline-offset:2px; }
@media (max-width:899px) {
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-directory { grid-template-columns:1fr; }
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-back,
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-card-head>a,
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-list a,
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-actions a,
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-form :is(input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),select,textarea,button),
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-inline-form :is(input,select,button),
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-public-url input,
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-confirm button,
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-confirm-form button,
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-danger-form button,
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-check,
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-disclosure summary,
  .crm-v2026 [data-crm-component="user-settings"] .schedule-template-interval :is(input:not([type="checkbox"]),select,button) { min-height:44px; }
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-inline-form { grid-template-columns:1fr; }
  .crm-v2026 [data-crm-component="user-settings"] .schedule-template-interval { grid-template-columns:1fr 1fr; }
}
@media (max-width:560px) {
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-header,
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-card-head,
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-list>li { align-items:stretch;flex-direction:column; }
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-card { padding:10px; }
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-actions { width:100%; }
  .crm-v2026 [data-crm-component="user-settings"] .crm-calendar-booking-actions a { flex:1;justify-content:center; }
  .crm-v2026 [data-crm-component="user-settings"] .schedule-template-interval { grid-template-columns:1fr; }
  .crm-v2026 [data-crm-component="user-settings"] .schedule-template-interval-heading { grid-column:1; }
}
/* END TASK-352B: premium compact calendar and booking settings. */

/* TASK-356: premium single-DOM notification center. */
.crm-v2026 .crm-notification-trigger-wrap {
  position:relative;
  display:grid;
  place-items:center;
}
.crm-v2026 .crm-notification-trigger {
  position:relative;
  display:grid;
  width:34px;
  min-width:34px;
  height:34px;
  min-height:34px;
  box-sizing:border-box;
  place-items:center;
  margin:0;
  padding:0;
  border:1px solid color-mix(in srgb,#3E63DD 24%,white);
  border-radius:8px;
  background:color-mix(in srgb,#3E63DD 10%,white);
  color:#3451B2;
}
.crm-v2026 .crm-notification-trigger:is(:hover,:focus-visible),
.crm-v2026 .crm-notification-trigger[aria-expanded="true"] {
  border-color:#3E63DD;
  background:color-mix(in srgb,#3E63DD 16%,white);
  color:#3451B2;
}
.crm-v2026 .crm-notification-trigger:focus-visible {
  outline:2px solid #3E63DD;
  outline-offset:2px;
}
.crm-v2026 .crm-notification-count {
  position:absolute;
  top:-5px;
  right:-5px;
  display:grid;
  min-width:16px;
  min-height:16px;
  box-sizing:border-box;
  place-items:center;
  padding:1px 4px;
  border:2px solid white;
  border-radius:999px;
  background:#3E63DD;
  color:white;
  font-size:10px;
  font-variant-numeric:tabular-nums;
  font-weight:800;
  line-height:1;
}
.crm-v2026 [data-notification-panel-root] {
  --crm-notification-accent:#3E63DD;
  --crm-notification-accent-strong:#3451B2;
  --crm-notification-line:color-mix(in srgb,var(--crm-notification-accent) 20%,white);
  --crm-notification-soft:color-mix(in srgb,var(--crm-notification-accent) 8%,white);
  color:var(--crm-ink);
}
.crm-v2026 [data-notification-panel-root].crm-notification-panel {
  position:fixed;
  z-index:10020;
  display:grid;
  grid-template-rows:auto auto auto minmax(0,1fr);
  box-sizing:border-box;
  width:min(400px,calc(100vw - 24px));
  max-height:min(560px,calc(100dvh - 24px));
  gap:8px;
  padding:10px;
  overflow:hidden;
  border:1px solid var(--crm-notification-line);
  border-radius:12px;
  background:white;
  box-shadow:0 16px 42px color-mix(in srgb,var(--crm-notification-accent-strong) 18%,transparent);
}
.crm-v2026 [data-notification-panel-root] .crm-notification-header {
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding-bottom:8px;
  border-bottom:1px solid var(--crm-notification-line);
}
.crm-v2026 [data-notification-panel-root] .crm-notification-header h2 {
  min-width:0;
  margin:0;
  color:var(--crm-notification-accent-strong);
  font-size:16px;
  line-height:1.25;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-actions {
  display:flex;
  flex:0 0 auto;
  align-items:center;
  gap:4px;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-action,
.crm-v2026 [data-notification-panel-root] .crm-notification-close,
.crm-v2026 [data-notification-panel-root] .crm-notification-tab,
.crm-v2026 [data-notification-panel-root] .crm-notification-item {
  min-height:34px;
  box-sizing:border-box;
}
.crm-v2026 [data-notification-panel-root] :is(.crm-notification-action,.crm-notification-close) {
  display:inline-flex;
  min-width:34px;
  align-items:center;
  justify-content:center;
  gap:5px;
  margin:0;
  padding:5px 8px;
  border:1px solid var(--crm-notification-line);
  border-radius:7px;
  background:var(--crm-notification-soft);
  color:var(--crm-notification-accent-strong);
  font-size:11px;
  font-weight:750;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-close {
  width:34px;
  min-width:34px;
  height:34px;
  min-height:34px;
  padding:0;
}
.crm-v2026 [data-notification-panel-root] :is(.crm-notification-action,.crm-notification-close):is(:hover,:focus-visible) {
  border-color:var(--crm-notification-accent);
  color:var(--crm-notification-accent-strong);
}
.crm-v2026 [data-notification-panel-root] .crm-notification-task-count {
  margin:0;
  padding:7px 9px;
  border:1px solid var(--crm-notification-line);
  border-radius:7px;
  background:var(--crm-notification-soft);
  color:var(--crm-notification-accent-strong);
  font-size:11px;
  font-weight:700;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-tabs {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:3px;
  padding:3px;
  border:1px solid var(--crm-notification-line);
  border-radius:8px;
  background:var(--crm-notification-soft);
}
.crm-v2026 [data-notification-panel-root] .crm-notification-tab {
  margin:0;
  padding:5px 8px;
  border:0;
  border-radius:6px;
  background:transparent;
  color:var(--crm-text-muted);
  font-size:11px;
  font-weight:750;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-tab[aria-selected="true"] {
  background:white;
  box-shadow:0 1px 4px color-mix(in srgb,var(--crm-notification-accent-strong) 12%,transparent);
  color:var(--crm-notification-accent-strong);
}
.crm-v2026 [data-notification-panel-root] .crm-notification-state,
.crm-v2026 [data-notification-panel-root] .crm-notification-empty {
  margin:0;
  padding:8px;
  color:var(--crm-text-muted);
  font-size:11px;
  line-height:1.35;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-state[data-state="error"] {
  color:var(--crm-notification-accent-strong);
}
.crm-v2026 [data-notification-panel-root] .crm-notification-list {
  display:grid;
  min-width:0;
  min-height:1px;
  align-content:start;
  gap:4px;
  margin:0;
  padding:0;
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-item {
  display:grid;
  min-width:0;
  width:100%;
  justify-items:start;
  gap:2px;
  margin:0;
  padding:7px 9px;
  border:1px solid var(--crm-border);
  border-radius:7px;
  background:white;
  color:var(--crm-ink);
  text-align:left;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-item:is(:hover,:focus-visible) {
  border-color:var(--crm-notification-accent);
  background:var(--crm-notification-soft);
}
.crm-v2026 [data-notification-panel-root] .crm-notification-item[data-unread="true"] {
  border-color:var(--crm-notification-line);
  background:var(--crm-notification-soft);
  box-shadow:inset 3px 0 var(--crm-notification-accent);
}
.crm-v2026 [data-notification-panel-root] .crm-notification-item :is(strong,span,time) {
  width:100%;
  min-width:0;
  margin:0;
  overflow-wrap:anywhere;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-item strong {
  color:var(--crm-notification-accent-strong);
  font-size:12px;
  line-height:1.3;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-item span {
  color:var(--crm-text-muted);
  font-size:11px;
  line-height:1.35;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-item time {
  color:var(--crm-text-muted);
  font-size:10px;
  font-variant-numeric:tabular-nums;
  line-height:1.3;
}
.crm-v2026 [data-notification-panel-root] :is(button,[role="tab"]):focus-visible {
  outline:2px solid var(--crm-notification-accent);
  outline-offset:2px;
}
@media (max-width:899px) {
  .crm-v2026 .crm-notification-trigger {
    width:44px;
    min-width:44px;
    height:44px;
    min-height:44px;
  }
  .crm-v2026 [data-notification-panel-root].crm-notification-panel {
    width:calc(100vw - 16px);
    max-width:none;
    max-height:calc(100dvh - 76px);
    padding:8px;
    border-radius:10px;
  }
  .crm-v2026 [data-notification-panel-root] :is(.crm-notification-action,.crm-notification-close,.crm-notification-tab,.crm-notification-item) {
    min-width:44px;
    min-height:44px;
  }
  .crm-v2026 [data-notification-panel-root] :is(.crm-notification-action,.crm-notification-close) {
    padding:7px 9px;
  }
  .crm-v2026 [data-notification-panel-root] .crm-notification-close {
    width:44px;
    min-width:44px;
    height:44px;
    padding:0;
  }
  .crm-v2026 [data-notification-panel-root] .crm-notification-item {
    padding:8px 10px;
  }
}
/* END TASK-356: premium single-DOM notification center. */

/* TASK-358: compact patient identity review. */
.crm-v2026 [data-crm-component="patient-duplicate-center"],
.crm-v2026 [data-crm-component="patient-merge-preview"] {
  --crm-patient-identity-accent:#3E63DD;
  --crm-patient-identity-accent-strong:#3451B2;
  --crm-patient-identity-soft:color-mix(in srgb,var(--crm-patient-identity-accent) 7%,white);
  --crm-patient-identity-line:color-mix(in srgb,var(--crm-patient-identity-accent) 18%,var(--crm-border));
  display:grid;
  min-width:0;
  gap:10px;
  color:var(--crm-ink);
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] :is(form,p,h1,h2,h3),
.crm-v2026 [data-crm-component="patient-merge-preview"] :is(form,p,h1,h2,h3,dl,dd) {
  margin:0;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__header,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__header {
  display:flex;
  min-width:0;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:12px 14px;
  border:1px solid var(--crm-patient-identity-line);
  border-radius:9px;
  background:linear-gradient(135deg,var(--crm-patient-identity-soft),white 58%);
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__heading,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__heading {
  display:grid;
  min-width:0;
  gap:3px;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__heading h1,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__heading h1 {
  color:var(--crm-patient-identity-accent-strong);
  font-size:20px;
  line-height:1.2;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__heading > p:last-child,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__heading > p:last-child {
  color:var(--crm-text-muted);
  font-size:12px;
  line-height:1.35;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__eyebrow,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__eyebrow,
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__label {
  color:var(--crm-patient-identity-accent-strong);
  font-size:10px;
  font-weight:800;
  letter-spacing:.055em;
  line-height:1.25;
  text-transform:uppercase;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__header-actions {
  display:flex;
  align-items:center;
  gap:8px;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__count {
  padding:4px 7px;
  border-radius:999px;
  background:var(--crm-patient-identity-soft);
  color:var(--crm-patient-identity-accent-strong);
  font-size:11px;
  font-weight:750;
  white-space:nowrap;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__control,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__control {
  display:inline-flex;
  min-height:34px;
  align-items:center;
  justify-content:center;
  gap:5px;
  box-sizing:border-box;
  padding:6px 10px;
  border:1px solid var(--crm-patient-identity-line);
  border-radius:7px;
  background:white;
  color:var(--crm-patient-identity-accent-strong);
  font:inherit;
  font-size:12px;
  font-weight:750;
  line-height:1.2;
  text-align:center;
  text-decoration:none;
  cursor:pointer;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__control--primary,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__control--primary {
  border-color:var(--crm-patient-identity-accent);
  background:var(--crm-patient-identity-accent);
  color:white;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__control--danger,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__control--danger {
  border-color:var(--crm-danger);
  background:var(--crm-danger);
  color:white;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__control:focus-visible,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__control:focus-visible {
  outline:2px solid var(--crm-patient-identity-accent);
  outline-offset:2px;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__back {
  display:flex;
  justify-content:flex-start;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__surface,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__surface {
  display:grid;
  min-width:0;
  gap:8px;
  padding:10px;
  border:1px solid var(--crm-border);
  border-radius:9px;
  background:white;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__surface-title,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__surface-title {
  color:var(--crm-ink);
  font-size:15px;
  line-height:1.25;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__list {
  display:grid;
  min-width:0;
  max-height:min(620px,calc(100dvh - 250px));
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
  border:1px solid var(--crm-border);
  border-radius:8px;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__pair {
  display:grid;
  grid-template-columns:minmax(180px,1fr) 24px minmax(180px,1fr) auto;
  min-width:0;
  align-items:center;
  gap:8px;
  padding:9px 10px;
  border-bottom:1px solid var(--crm-border);
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__pair:last-child {
  border-bottom:0;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__patient {
  display:grid;
  min-width:0;
  gap:2px;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__patient :is(strong,span),
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__record :is(h3,p,dt,dd) {
  min-width:0;
  overflow-wrap:anywhere;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__patient strong {
  font-size:13px;
  line-height:1.3;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__patient > span:last-child {
  color:var(--crm-text-muted);
  font-size:11px;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__compare {
  color:var(--crm-text-muted);
  text-align:center;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__score {
  padding:4px 7px;
  border-radius:999px;
  background:var(--crm-patient-identity-soft);
  color:var(--crm-patient-identity-accent-strong);
  font-size:12px;
  font-variant-numeric:tabular-nums;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__reasons,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__reasons {
  display:flex;
  grid-column:1 / -1;
  min-width:0;
  flex-wrap:wrap;
  gap:4px;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__reasons span,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__reasons span {
  padding:3px 6px;
  border:1px solid var(--crm-patient-identity-line);
  border-radius:999px;
  background:var(--crm-patient-identity-soft);
  color:var(--crm-patient-identity-accent-strong);
  font-size:10px;
  font-weight:700;
  overflow-wrap:anywhere;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__actions,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__footer-actions {
  display:flex;
  grid-column:1 / -1;
  min-width:0;
  flex-wrap:wrap;
  align-items:flex-start;
  gap:6px;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__confirm,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__confirm {
  min-width:0;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__confirm > summary,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__confirm > summary {
  list-style:none;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__confirm > summary::-webkit-details-marker,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__confirm > summary::-webkit-details-marker {
  display:none;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__confirm-body,
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__confirm-body {
  display:grid;
  min-width:0;
  gap:7px;
  margin-top:5px;
  padding:8px;
  border:1px solid var(--crm-patient-identity-line);
  border-radius:7px;
  background:var(--crm-patient-identity-soft);
  font-size:11px;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__pagination {
  display:flex;
  min-width:0;
  flex-wrap:wrap;
  justify-content:center;
  align-items:center;
  gap:4px;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__page {
  display:inline-flex;
  min-width:34px;
  min-height:34px;
  align-items:center;
  justify-content:center;
  border:1px solid var(--crm-border);
  border-radius:7px;
  color:var(--crm-patient-identity-accent-strong);
  font-size:12px;
  font-weight:750;
  text-decoration:none;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__page.is-active {
  border-color:var(--crm-patient-identity-accent);
  background:var(--crm-patient-identity-accent);
  color:white;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__ellipsis {
  color:var(--crm-text-muted);
  font-size:12px;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__empty {
  display:grid;
  justify-items:center;
  gap:3px;
  padding:20px 12px;
  color:var(--crm-text-muted);
  text-align:center;
}
.crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__empty h3 {
  color:var(--crm-ink);
  font-size:14px;
}
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__comparison {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  min-width:0;
  gap:8px;
}
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__record {
  display:grid;
  min-width:0;
  align-content:start;
  gap:6px;
  padding:10px;
  border:1px solid var(--crm-border);
  border-radius:8px;
  background:var(--crm-surface-soft);
}
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__record--canonical {
  border-color:var(--crm-patient-identity-accent);
  background:var(--crm-patient-identity-soft);
  box-shadow:inset 3px 0 var(--crm-patient-identity-accent);
}
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__record h3 {
  color:var(--crm-patient-identity-accent-strong);
  font-size:15px;
}
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__record > p:not(.crm-compact-patient-identity__eyebrow) {
  color:var(--crm-text-muted);
  font-size:12px;
  line-height:1.35;
}
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__facts {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:5px;
}
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__facts > div {
  display:grid;
  min-width:0;
  gap:1px;
  padding:5px;
  border-radius:6px;
  background:white;
}
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__facts dt {
  color:var(--crm-text-muted);
  font-size:10px;
}
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__facts dd {
  color:var(--crm-ink);
  font-size:13px;
  font-weight:800;
  font-variant-numeric:tabular-nums;
}
.crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__confirm--merge {
  max-width:380px;
}
@media (max-width:899px) {
  .crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__header,
  .crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__header {
    align-items:stretch;
    flex-direction:column;
  }
  .crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__header-actions {
    justify-content:space-between;
  }
  .crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__control,
  .crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__control,
  .crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__page {
    min-width:44px;
    min-height:44px;
  }
  .crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__pair {
    grid-template-columns:minmax(0,1fr) 24px minmax(0,1fr);
    padding:9px;
  }
  .crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__score {
    grid-column:1 / -1;
    justify-self:start;
  }
  .crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__list {
    max-height:min(640px,calc(100dvh - 300px));
  }
  .crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__actions > :is(a,details),
  .crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__footer-actions > :is(a,details) {
    flex:1 1 180px;
  }
  .crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__actions .crm-compact-patient-identity__control,
  .crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__footer-actions .crm-compact-patient-identity__control {
    width:100%;
  }
  .crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__comparison {
    grid-template-columns:1fr;
  }
}
@media (max-width:560px) {
  .crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__pair {
    grid-template-columns:1fr;
  }
  .crm-v2026 [data-crm-component="patient-duplicate-center"] .crm-compact-patient-identity__compare {
    display:none;
  }
  .crm-v2026 [data-crm-component="patient-merge-preview"] .crm-compact-patient-identity__facts {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
/* END TASK-358: compact patient identity review. */
/* TASK-367: notification panel hidden-state authority. */
.crm-v2026 [data-notification-panel-root][hidden] {
  display:none;
}
/* END TASK-367: notification panel hidden-state authority. */

/* TASK-370: single-owner account center and bounded shell cascade quarantine. */
.crm-v2026 .crm-account-trigger-wrap {
  display:grid;
  place-items:center;
}
.crm-v2026 .crm-account-trigger {
  display:grid;
  width:34px;
  min-width:34px;
  height:34px;
  min-height:34px;
  box-sizing:border-box;
  place-items:center;
  margin:0;
  padding:0;
  border:1px solid color-mix(in srgb,#3E63DD 24%,white);
  border-radius:8px;
  background:color-mix(in srgb,#3E63DD 10%,white);
  color:#3451B2;
}
.crm-v2026 .app-sidebar .crm-account-trigger {
  border-color:transparent;
  background:transparent;
  color:#C7D2FE;
}
.crm-v2026 .crm-account-trigger:is(:hover,:focus-visible),
.crm-v2026 .crm-account-trigger[aria-expanded="true"],
.crm-v2026 .app-sidebar .crm-account-trigger:is(:hover,:focus-visible),
.crm-v2026 .app-sidebar .crm-account-trigger[aria-expanded="true"] {
  border-color:#3E63DD;
  background:color-mix(in srgb,#3E63DD 16%,white);
  color:#3451B2;
}
.crm-v2026 .app-sidebar .crm-account-trigger:is(:hover,:focus-visible),
.crm-v2026 .app-sidebar .crm-account-trigger[aria-expanded="true"] {
  border-color:#6F87D8;
  background:rgba(255,255,255,.1);
  color:#FFFFFF;
}
.crm-v2026 .crm-account-trigger:focus-visible,
.crm-v2026 [data-account-panel-root] :is(a,button):focus-visible {
  outline:2px solid #3E63DD;
  outline-offset:2px;
}
.crm-v2026 [data-account-panel-root] {
  --crm-account-accent:#3E63DD;
  --crm-account-accent-strong:#3451B2;
  --crm-account-line:color-mix(in srgb,var(--crm-account-accent) 20%,white);
  --crm-account-soft:color-mix(in srgb,var(--crm-account-accent) 8%,white);
  position:fixed;
  z-index:10025;
  display:grid;
  box-sizing:border-box;
  gap:8px;
  padding:10px;
  overflow:auto;
  border:1px solid var(--crm-account-line);
  border-radius:12px;
  background:#FFFFFF;
  box-shadow:0 16px 42px color-mix(in srgb,var(--crm-account-accent-strong) 18%,transparent);
  color:var(--crm-ink);
}
.crm-v2026 [data-account-panel-root][hidden] {
  display:none;
}
.crm-v2026 [data-account-panel-root] .crm-account-header {
  display:flex;
  min-width:0;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  padding-bottom:8px;
  border-bottom:1px solid var(--crm-account-line);
}
.crm-v2026 [data-account-panel-root] .crm-account-header h2 {
  margin:0;
  color:var(--crm-account-accent-strong);
  font-size:16px;
  line-height:1.25;
}
.crm-v2026 [data-account-panel-root] .crm-account-close {
  display:grid;
  width:34px;
  min-width:34px;
  height:34px;
  min-height:34px;
  place-items:center;
  margin:0;
  padding:0;
  border:1px solid var(--crm-account-line);
  border-radius:7px;
  background:var(--crm-account-soft);
  color:var(--crm-account-accent-strong);
}
.crm-v2026 [data-account-panel-root] .crm-account-identity {
  display:grid;
  min-width:0;
  grid-template-columns:40px minmax(0,1fr);
  align-items:center;
  gap:9px;
  padding:7px 8px;
  border:1px solid var(--crm-account-line);
  border-radius:8px;
  background:var(--crm-account-soft);
}
.crm-v2026 [data-account-panel-root] .crm-account-avatar {
  display:grid;
  width:40px;
  height:40px;
  place-items:center;
  overflow:hidden;
  border-radius:50%;
  background:#3E63DD;
  color:#FFFFFF;
  font-size:14px;
  font-weight:800;
}
.crm-v2026 [data-account-panel-root] .crm-account-avatar img {
  width:100%;
  height:100%;
  object-fit:cover;
}
.crm-v2026 [data-account-panel-root] .crm-account-person {
  display:grid;
  min-width:0;
  gap:2px;
}
.crm-v2026 [data-account-panel-root] .crm-account-person :is(strong,span) {
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.crm-v2026 [data-account-panel-root] .crm-account-person strong {
  color:var(--crm-account-accent-strong);
  font-size:13px;
}
.crm-v2026 [data-account-panel-root] .crm-account-person span {
  color:var(--crm-text-muted);
  font-size:11px;
}
.crm-v2026 [data-account-panel-root] .crm-account-navigation {
  display:grid;
  gap:4px;
}
.crm-v2026 [data-account-panel-root] .crm-account-link,
.crm-v2026 [data-account-panel-root] .crm-account-logout {
  display:flex;
  min-height:34px;
  box-sizing:border-box;
  align-items:center;
  gap:7px;
  margin:0;
  padding:6px 9px;
  border:1px solid var(--crm-account-line);
  border-radius:7px;
  background:#FFFFFF;
  color:var(--crm-account-accent-strong);
  font-size:12px;
  font-weight:750;
  text-decoration:none;
}
.crm-v2026 [data-account-panel-root] :is(.crm-account-link,.crm-account-logout):is(:hover,:focus-visible) {
  border-color:var(--crm-account-accent);
  background:var(--crm-account-soft);
}
.crm-v2026 [data-account-panel-root] .crm-account-logout-form {
  width:100%;
  margin:0;
}
.crm-v2026 [data-account-panel-root] .crm-account-logout {
  width:100%;
  border-color:color-mix(in srgb,#D64B64 30%,white);
  color:#A23B52;
}
@media (min-width:900px) {
  .crm-v2026 .workspace-sidebar-actions {
    grid-template-columns:34px;
    justify-content:center;
  }
  .crm-v2026.sidebar-expanded .workspace-sidebar-actions {
    grid-template-columns:34px 34px;
    justify-content:start;
  }
}
@media (max-width:899px) {
  .crm-v2026 .crm-account-trigger {
    width:44px;
    min-width:44px;
    height:44px;
    min-height:44px;
  }
  .crm-v2026 [data-account-panel-root] {
    width:calc(100vw - 16px);
    max-width:none;
    max-height:calc(100dvh - 76px);
    padding:8px;
    border-radius:10px;
  }
  .crm-v2026 [data-account-panel-root] :is(.crm-account-close,.crm-account-link,.crm-account-logout) {
    min-width:44px;
    min-height:44px;
  }
  .crm-v2026 [data-account-panel-root] .crm-account-close {
    width:44px;
    height:44px;
    padding:0;
  }
}
/* END TASK-370: single-owner account center and bounded shell cascade quarantine. */

/* TASK-363W34: grouped payment and clinical density closure. */
.crm-v2026 .ws-drilldown-head:has(~ .ws-integration-panel) > a,
.crm-v2026 .payment-settings-surface a[href],
.crm-v2026 [data-crm-component="current-consultation"] .consultation-identity a[href^="tel:"],
.crm-v2026 [data-crm-component="current-consultation"] .consultation-documents a,
.crm-v2026 [data-crm-component="medical-document-editor"] .back-link,
.crm-v2026 .public-navigation a {
    display: inline-flex;
    min-height: 34px;
    align-items: center;
    box-sizing: border-box;
}
.crm-v2026 .payment-settings-surface :is(
    input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
    select,
    textarea,
    button,
    .button
) {
    min-height: 34px;
    box-sizing: border-box;
}
.crm-v2026 .payment-settings-surface :is(
    label:has(input[type="checkbox"]),
    label:has(input[type="radio"]),
    .crm-compact-rendered-control.is-single-checkbox > label,
    p:has(> input[type="checkbox"]) > label,
    p:has(> input[type="radio"]) > label
) {
    display: flex;
    min-height: 34px;
    align-items: center;
    box-sizing: border-box;
}
.crm-v2026 .messages button.crm-toast-close {
    width: 34px;
    min-width: 34px;
    height: 34px;
    min-height: 34px;
}
.crm-v2026 .crm-task-335-doctor-calendar :is(
    .calendar-mode-switcher button,
    .view-switcher button,
    .calendar-nav-button,
    .today-link,
    .calendar-edit-toggle,
    .calendar-more-actions button,
    .crm-task-335-doctor-calendar__more > summary,
    .calendar-filter-options label,
    .calendar-advanced-view-settings .checkbox-field
) {
    min-height: 34px;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation .calendar-nav-button {
    width: 34px;
    min-width: 34px;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation {
    grid-template-columns: 34px minmax(132px, 176px) 34px;
}
.crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation .crm-date-trigger {
    height: 34px;
    min-height: 34px;
}
@media (max-width: 899px) {
    .crm-v2026 .ws-drilldown-head:has(~ .ws-integration-panel) > a,
    .crm-v2026 .payment-settings-surface a[href],
    .crm-v2026 .payment-settings-surface :is(
        input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
        select,
        textarea,
        button,
        .button
    ),
    .crm-v2026 .payment-settings-surface :is(
        label:has(input[type="checkbox"]),
        label:has(input[type="radio"]),
        .crm-compact-rendered-control.is-single-checkbox > label,
        p:has(> input[type="checkbox"]) > label,
        p:has(> input[type="radio"]) > label
    ) {
        min-height: 44px;
    }
    .crm-v2026 .messages button.crm-toast-close {
        width: 44px;
        min-width: 44px;
        height: 44px;
        min-height: 44px;
    }
    .crm-v2026 .public-navigation a {
        min-width: 44px;
        min-height: 44px;
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-identity a[href^="tel:"],
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-documents a,
    .crm-v2026 [data-crm-component="medical-document-editor"] .back-link,
    .crm-v2026 .crm-task-335-doctor-calendar :is(
        .calendar-mode-switcher button,
        .view-switcher button,
        .calendar-nav-button,
        .today-link,
        .calendar-edit-toggle,
        .calendar-more-actions button,
        .crm-task-335-doctor-calendar__more > summary,
        .calendar-filter-options label,
        .calendar-advanced-view-settings .checkbox-field
    ) {
        min-height: 44px;
    }
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation {
        grid-template-columns: 44px minmax(0, 1fr) 44px;
    }
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation .calendar-nav-button {
        width: 44px;
        min-width: 44px;
    }
    .crm-v2026 .crm-task-335-doctor-calendar .calendar-navigation .crm-date-trigger {
        height: 44px;
        min-height: 44px;
    }
}
/* END TASK-363W34: grouped payment and clinical density closure. */

/* TASK-371: shared compact form field rendering wave. */
.crm-v2026 :is(
    [data-crm-component="work-item-detail"],
    [data-crm-component="workspace-content"] .crm-compact-access-member,
    [data-crm-component="current-consultation"],
    [data-crm-component="payment-detail"],
    [data-crm-component="appointment-payment"],
    [data-crm-component="workspace-content"] .payment-settings-surface
) .crm-compact-rendered-fields {
    display: grid;
    min-width: 0;
    gap: 8px;
}
.crm-v2026 :is(
    [data-crm-component="work-item-detail"],
    [data-crm-component="workspace-content"] .crm-compact-access-member,
    [data-crm-component="current-consultation"],
    [data-crm-component="payment-detail"],
    [data-crm-component="appointment-payment"],
    [data-crm-component="workspace-content"] .payment-settings-surface
) .crm-compact-rendered-field {
    display: grid;
    min-width: 0;
    gap: 3px;
    margin: 0;
}
.crm-v2026 :is(
    [data-crm-component="work-item-detail"],
    [data-crm-component="workspace-content"] .crm-compact-access-member,
    [data-crm-component="current-consultation"],
    [data-crm-component="payment-detail"],
    [data-crm-component="appointment-payment"],
    [data-crm-component="workspace-content"] .payment-settings-surface
) .crm-compact-rendered-control {
    display: grid;
    min-width: 0;
    gap: 4px;
}
.crm-v2026 :is(
    [data-crm-component="work-item-detail"],
    [data-crm-component="workspace-content"] .crm-compact-access-member,
    [data-crm-component="current-consultation"],
    [data-crm-component="payment-detail"],
    [data-crm-component="appointment-payment"],
    [data-crm-component="workspace-content"] .payment-settings-surface
) .crm-compact-rendered-control > label {
    margin: 0;
    color: var(--crm-color-text);
    font-size: 11px;
    font-weight: 650;
    line-height: 1.35;
}
.crm-v2026 :is(
    [data-crm-component="work-item-detail"],
    [data-crm-component="workspace-content"] .crm-compact-access-member,
    [data-crm-component="current-consultation"],
    [data-crm-component="payment-detail"],
    [data-crm-component="appointment-payment"],
    [data-crm-component="workspace-content"] .payment-settings-surface
) .crm-compact-rendered-control :is(
    input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
    select,
    textarea
) {
    width: 100%;
    min-width: 0;
    min-height: 34px;
    box-sizing: border-box;
    margin: 0;
}
.crm-v2026 :is(
    [data-crm-component="work-item-detail"],
    [data-crm-component="workspace-content"] .crm-compact-access-member,
    [data-crm-component="current-consultation"],
    [data-crm-component="payment-detail"],
    [data-crm-component="appointment-payment"],
    [data-crm-component="workspace-content"] .payment-settings-surface
) .crm-compact-rendered-control.is-single-checkbox {
    display: flex;
    min-height: 34px;
    align-items: center;
    gap: 7px;
}
.crm-v2026 :is(
    [data-crm-component="work-item-detail"],
    [data-crm-component="workspace-content"] .crm-compact-access-member,
    [data-crm-component="current-consultation"],
    [data-crm-component="payment-detail"],
    [data-crm-component="appointment-payment"],
    [data-crm-component="workspace-content"] .payment-settings-surface
) .crm-compact-rendered-control.is-single-checkbox > label {
    order: 2;
}
.crm-v2026 :is(
    [data-crm-component="work-item-detail"],
    [data-crm-component="workspace-content"] .crm-compact-access-member,
    [data-crm-component="current-consultation"],
    [data-crm-component="payment-detail"],
    [data-crm-component="appointment-payment"],
    [data-crm-component="workspace-content"] .payment-settings-surface
) .crm-compact-rendered-control > div > div > label {
    display: flex;
    min-height: 34px;
    align-items: center;
    gap: 7px;
    box-sizing: border-box;
}
.crm-v2026 :is(
    [data-crm-component="work-item-detail"],
    [data-crm-component="workspace-content"] .crm-compact-access-member,
    [data-crm-component="current-consultation"],
    [data-crm-component="payment-detail"],
    [data-crm-component="appointment-payment"],
    [data-crm-component="workspace-content"] .payment-settings-surface
) :is(
    .crm-compact-rendered-help,
    .crm-compact-rendered-error-label,
    .crm-compact-rendered-errors,
    .crm-compact-rendered-hidden-errors,
    .crm-compact-rendered-form-errors
) {
    min-width: 0;
    font-size: 11px;
    line-height: 1.4;
    overflow-wrap: anywhere;
}
.crm-v2026 :is(
    [data-crm-component="work-item-detail"],
    [data-crm-component="workspace-content"] .crm-compact-access-member,
    [data-crm-component="current-consultation"],
    [data-crm-component="payment-detail"],
    [data-crm-component="appointment-payment"],
    [data-crm-component="workspace-content"] .payment-settings-surface
) .crm-compact-rendered-help {
    color: var(--crm-color-text-secondary);
}
.crm-v2026 :is(
    [data-crm-component="work-item-detail"],
    [data-crm-component="workspace-content"] .crm-compact-access-member,
    [data-crm-component="current-consultation"],
    [data-crm-component="payment-detail"],
    [data-crm-component="appointment-payment"],
    [data-crm-component="workspace-content"] .payment-settings-surface
) :is(
    .crm-compact-rendered-errors,
    .crm-compact-rendered-hidden-errors,
    .crm-compact-rendered-form-errors
) {
    color: var(--crm-color-danger);
}
.crm-v2026 :is(
    [data-crm-component="work-item-detail"],
    [data-crm-component="workspace-content"] .crm-compact-access-member,
    [data-crm-component="current-consultation"],
    [data-crm-component="payment-detail"],
    [data-crm-component="appointment-payment"],
    [data-crm-component="workspace-content"] .payment-settings-surface
) :is(
    .crm-compact-rendered-errors,
    .crm-compact-rendered-hidden-errors,
    .crm-compact-rendered-form-errors
) .errorlist {
    margin: 0;
    padding-inline-start: 18px;
}
.crm-v2026 :is(
    [data-crm-component="work-item-detail"],
    [data-crm-component="current-consultation"],
    [data-crm-component="payment-detail"],
    [data-crm-component="appointment-payment"],
    [data-crm-component="workspace-content"] .payment-settings-surface
) form > .crm-compact-rendered-fields ~ button {
    min-height: 34px;
    box-sizing: border-box;
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-compact-mini-form {
    align-content: start;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-profile-form > .crm-compact-rendered-fields {
    grid-column: 1 / -1;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
}
@media (max-width: 899px) {
    .crm-v2026 :is(
        [data-crm-component="work-item-detail"],
        [data-crm-component="workspace-content"] .crm-compact-access-member,
        [data-crm-component="current-consultation"],
        [data-crm-component="payment-detail"],
        [data-crm-component="appointment-payment"],
        [data-crm-component="workspace-content"] .payment-settings-surface
    ) .crm-compact-rendered-control :is(
        input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
        select,
        textarea
    ),
    .crm-v2026 :is(
        [data-crm-component="work-item-detail"],
        [data-crm-component="workspace-content"] .crm-compact-access-member,
        [data-crm-component="current-consultation"],
        [data-crm-component="payment-detail"],
        [data-crm-component="appointment-payment"],
        [data-crm-component="workspace-content"] .payment-settings-surface
    ) :is(
        .crm-compact-rendered-control.is-single-checkbox,
        .crm-compact-rendered-control > div > div > label
    ),
    .crm-v2026 :is(
        [data-crm-component="work-item-detail"],
        [data-crm-component="current-consultation"],
        [data-crm-component="payment-detail"],
        [data-crm-component="appointment-payment"],
        [data-crm-component="workspace-content"] .payment-settings-surface
    ) form > .crm-compact-rendered-fields ~ button {
        min-height: 44px;
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-profile-form > .crm-compact-rendered-fields {
        grid-template-columns: minmax(0, 1fr);
    }
}
/* END TASK-371: shared compact form field rendering wave. */
/* TASK-372: progressive clinical workbench compression. */
.crm-v2026 [data-crm-component="smart-data-field-builder"] .crm-progressive-disclosure {
  min-width:0;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] [data-progressive-section="management-access"],
.crm-v2026 [data-crm-component="clinical-library"] [data-progressive-section="field-library"] {
  min-width:0;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .crm-progressive-disclosure > summary,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-progressive-summary {
  display:flex;
  min-width:0;
  min-height:34px;
  box-sizing:border-box;
  align-items:center;
  gap:7px;
  padding:5px 7px;
  cursor:pointer;
  list-style:none;
  color:var(--crm-clinical-accent-strong);
  font-size:12px;
  font-weight:800;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .crm-progressive-disclosure > summary::-webkit-details-marker,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-progressive-summary::-webkit-details-marker {
  display:none;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .crm-progressive-disclosure > summary::before,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-progressive-summary::before {
  content:'›';
  flex:0 0 auto;
  color:var(--crm-clinical-accent);
  font-size:16px;
  line-height:1;
  transition:transform .16s ease;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .crm-progressive-disclosure[open] > summary::before,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-progressive-section[open] > summary::before {
  transform:rotate(90deg);
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .crm-progressive-disclosure > summary > span:first-of-type,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-progressive-summary > span:first-of-type {
  display:grid;
  min-width:0;
  flex:1 1 auto;
  gap:1px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .crm-progressive-disclosure > summary small,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-progressive-summary small {
  color:var(--crm-text-muted);
  font-size:10px;
  font-weight:600;
  line-height:1.3;
  overflow-wrap:anywhere;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .crm-progressive-disclosure > summary:focus-visible,
.crm-v2026 [data-crm-component="clinical-library"] .clinical-progressive-summary:focus-visible {
  outline:2px solid var(--crm-clinical-accent);
  outline-offset:2px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-safe-preview {
  display:block;
  margin-bottom:8px;
  padding:5px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-safe-preview[open] .smart-field-progressive-body {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:10px;
  padding:7px;
  border-top:1px solid var(--crm-clinical-line);
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-library {
  padding:5px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-library > :not(summary),
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-usage > :not(summary) {
  margin-inline:7px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-secondary {
  margin-top:8px;
  border:1px solid var(--crm-clinical-line);
  border-radius:8px;
  background:var(--crm-clinical-soft);
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-secondary-body {
  padding:0 8px 8px;
  border-top:1px solid var(--crm-clinical-line);
  background:var(--crm-color-surface);
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-composer {
  grid-template-columns:minmax(190px,.48fr) minmax(390px,1fr) minmax(220px,.55fr);
  gap:7px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] :is(.source-picker,.inspector-panel) {
  min-height:0;
  padding:5px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] :is(.source-picker,.inspector-panel)[open] {
  padding-bottom:8px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] :is(.source-picker,.inspector-panel)[open] > :not(summary) {
  margin-inline:5px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .composition-panel {
  min-height:320px;
  padding:9px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .composition-items {
  min-height:150px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .inspector-panel > :is(#inspector-empty,#inspector-content) {
  margin-top:7px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .crm-progressive-disclosure--nested {
  margin-top:7px;
  padding:0;
  border:1px solid var(--crm-clinical-line);
  border-radius:8px;
  background:var(--crm-color-surface);
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .crm-progressive-disclosure--nested > summary {
  padding-inline:6px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .crm-progressive-disclosure--nested[open] > :not(summary) {
  margin-inline:7px;
}
.crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-usage {
  padding:5px;
}
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-board {
  grid-template-columns:minmax(190px,240px) minmax(0,1fr);
  min-height:0;
  overflow:visible;
}
.crm-v2026 [data-crm-component="clinical-library"] .clinical-category-column {
  grid-column:1;
  grid-row:1;
  min-height:310px;
}
.crm-v2026 [data-crm-component="clinical-library"] .clinical-composer-column {
  grid-column:2;
  grid-row:1;
  min-height:310px;
  border-right:0;
}
.crm-v2026 [data-crm-component="clinical-library"] .clinical-field-column {
  display:block;
  grid-column:1 / -1;
  grid-row:2;
  min-height:0;
  padding:5px;
  border-top:1px solid var(--crm-clinical-line);
  border-right:0;
  background:var(--crm-color-surface);
}
.crm-v2026 [data-crm-component="clinical-library"] .clinical-progressive-summary .clinical-count {
  margin-left:auto;
}
.crm-v2026 [data-crm-component="clinical-library"] .clinical-field-column > :not(summary) {
  margin-inline:7px;
}
.crm-v2026 [data-crm-component="clinical-library"] .clinical-field-column[open] .clinical-library-list {
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  max-height:260px;
  padding-bottom:3px;
}
.crm-v2026 [data-crm-component="clinical-library"] .clinical-library-toolbar :is(input,select,button,a[href]) {
  min-height:34px;
  box-sizing:border-box;
}
@media (max-width:1050px) {
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-composer {
    grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);
  }
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .inspector-panel {
    grid-column:1 / -1;
  }
}
@media (max-width:899px) {
  .crm-v2026 [data-crm-component="clinical-library"] .clinical-library-toolbar :is(input,select,button,a[href]) {
    min-height:44px;
  }
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .crm-progressive-disclosure > summary,
  .crm-v2026 [data-crm-component="clinical-library"] .clinical-progressive-summary {
    min-height:44px;
    padding-block:6px;
  }
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-safe-preview[open] .smart-field-progressive-body {
    display:grid;
  }
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .smart-field-composer,
  .crm-v2026 [data-crm-component="clinical-library"] .clinical-library-board {
    grid-template-columns:minmax(0,1fr);
  }
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .inspector-panel,
  .crm-v2026 [data-crm-component="clinical-library"] :is(.clinical-category-column,.clinical-field-column,.clinical-composer-column) {
    grid-column:auto;
    grid-row:auto;
  }
  .crm-v2026 [data-crm-component="clinical-library"] :is(.clinical-category-column,.clinical-composer-column) {
    min-height:0;
  }
  .crm-v2026 [data-crm-component="clinical-library"] .clinical-field-column[open] .clinical-library-list {
    grid-template-columns:minmax(0,1fr);
    max-height:330px;
  }
}
@media (prefers-reduced-motion:reduce) {
  .crm-v2026 [data-crm-component="smart-data-field-builder"] .crm-progressive-disclosure > summary::before,
  .crm-v2026 [data-crm-component="clinical-library"] .clinical-progressive-summary::before {
    transition:none;
  }
}
/* END TASK-372: progressive clinical workbench compression. */
/* TASK-373: bounded residual doctor-calendar dialog target remediation. */
.crm-v2026 [data-crm-component="doctor-calendar"] :is(
    #calendar-range-month-previous,
    #calendar-range-month-next
) {
    min-inline-size: 34px;
    box-sizing: border-box;
}
.crm-v2026 [data-crm-component="current-consultation"] .consultation-timeline-link {
    min-height: 34px;
    box-sizing: border-box;
}
.crm-v2026 [data-crm-component="workspace-content"] .ws-notice > a.button[data-crm-nav] {
    min-height: 34px;
    box-sizing: border-box;
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-component="doctor-calendar"] :is(
        #calendar-range-month-previous,
        #calendar-range-month-next
    ) {
        min-inline-size: 44px;
    }
    .crm-v2026 [data-crm-component="current-consultation"] .consultation-timeline-link {
        min-height: 44px;
    }
    .crm-v2026 [data-crm-component="workspace-content"] .ws-notice > a.button[data-crm-nav] {
        min-height: 44px;
    }
}
/* END TASK-373: bounded residual doctor-calendar dialog target remediation. */
/* TASK-363W35: bounded mobile navigation backdrop target closure. */
@media (max-width: 899px) {
  .crm-v2026 .mobile-navigation-toggle > .mobile-navigation-backdrop[data-mobile-menu-close] {
    min-width: 44px;
    min-height: 44px;
    box-sizing: border-box;
  }
}
/* END TASK-363W35: bounded mobile navigation backdrop target closure. */

/* TASK-374: wide operational canvas and stable desktop sidebar footer. */
/* Wide lists/workbenches consume the available desktop canvas; narrow forms keep
   their own component-level max-width. Footer controls never change geometry on hover. */
@media (min-width: 900px) {
    .crm-v2026.workspace-shell .container {
        width: 100%;
        max-width: 2048px;
        margin-inline: auto;
        padding-inline: clamp(16px, 1.4vw, 24px);
    }

    .crm-v2026 .ws-center,
    .crm-v2026 .ws-settings-shell {
        width: 100%;
        max-width: none;
    }

    .crm-v2026 .ws-settings-main > .ws-content {
        width: 100%;
        max-width: none;
    }

    .crm-v2026 .workspace-sidebar-footer {
        display: grid;
        gap: 6px;
    }

    .crm-v2026 .workspace-sidebar-action {
        display: grid;
        min-width: 0;
        margin: 0;
        place-items: center;
    }

    .crm-v2026 .workspace-sidebar-actions,
    .crm-v2026 .app-sidebar:hover .workspace-sidebar-actions,
    .crm-v2026 .app-sidebar:focus-within .workspace-sidebar-actions {
        display: grid;
        width: 100%;
        grid-template-columns: 34px;
        justify-content: center;
        gap: 4px;
    }

    .crm-v2026 .workspace-sidebar-action--account .crm-account-trigger-wrap,
    .crm-v2026 .workspace-sidebar-action .crm-notification-trigger-wrap {
        width: 34px;
        min-width: 34px;
    }

    .crm-v2026 .workspace-sidebar-action--account .crm-account-trigger,
    .crm-v2026 .workspace-sidebar-action .crm-notification-trigger {
        display: flex;
        width: 34px;
        min-width: 34px;
        max-width: none;
        height: 34px;
        min-height: 34px;
        box-sizing: border-box;
        align-items: center;
        justify-content: center;
        gap: 7px;
        margin: 0;
        padding: 0;
        border: 1px solid transparent;
        border-radius: 8px;
        background: transparent;
        box-shadow: none;
        color: var(--crm-shell-copy);
        font: inherit;
        font-size: 12px;
        font-weight: 700;
        line-height: 1;
        cursor: pointer;
        transform: none;
        transition: border-color .12s ease, background-color .12s ease, color .12s ease;
    }

    .crm-v2026 .workspace-sidebar-action--account .crm-account-trigger::after,
    .crm-v2026 .workspace-sidebar-action .crm-notification-trigger::after {
        display: none;
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .crm-v2026 .workspace-sidebar-action--account .crm-account-trigger::after {
        content: "Акаунт";
    }

    .crm-v2026 .workspace-sidebar-action .crm-notification-trigger::after {
        content: "Сповіщення";
    }

    .crm-v2026 .workspace-sidebar-action--account .crm-account-trigger .workspace-icon,
    .crm-v2026 .workspace-sidebar-action .crm-notification-trigger .workspace-icon {
        width: 18px;
        min-width: 18px;
        height: 18px;
        flex: 0 0 18px;
    }

    .crm-v2026.sidebar-expanded .workspace-sidebar-action--account .crm-account-trigger-wrap,
    .crm-v2026.sidebar-expanded .workspace-sidebar-action .crm-notification-trigger-wrap {
        width: 100%;
    }

    .crm-v2026.sidebar-expanded .workspace-sidebar-action--account .crm-account-trigger,
    .crm-v2026.sidebar-expanded .workspace-sidebar-action .crm-notification-trigger {
        width: 100%;
        min-width: 0;
        justify-content: flex-start;
        padding-inline: 8px;
    }

    .crm-v2026.sidebar-expanded .workspace-sidebar-action--account .crm-account-trigger::after,
    .crm-v2026.sidebar-expanded .workspace-sidebar-action .crm-notification-trigger::after {
        display: block;
    }

    .crm-v2026.sidebar-expanded .workspace-sidebar-actions,
    .crm-v2026.sidebar-expanded .app-sidebar:hover .workspace-sidebar-actions,
    .crm-v2026.sidebar-expanded .app-sidebar:focus-within .workspace-sidebar-actions {
        grid-template-columns: minmax(0, 1fr);
        justify-content: stretch;
    }
}
/* END TASK-374: wide operational canvas and stable desktop sidebar footer. */

/* TASK-374: actionable read-state notification center. */
.crm-v2026 [data-notification-panel-root].crm-notification-panel {
    grid-template-rows: auto auto auto auto auto minmax(0, 1fr);
    gap: 7px;
    width: min(410px, calc(100vw - 24px));
    max-height: min(600px, calc(100dvh - 24px));
    padding: 12px;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-header {
    padding-bottom: 9px;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-action:disabled {
    cursor: default;
    opacity: .48;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-tasks {
    display: grid;
    min-width: 0;
    gap: 5px;
    padding: 8px;
    border: 1px solid color-mix(in srgb, var(--crm-color-warning) 24%, var(--crm-color-surface));
    border-radius: 8px;
    background: var(--crm-color-warning-soft);
}
.crm-v2026 [data-notification-panel-root] .crm-notification-tasks[hidden] {
    display: none;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-tasks-heading {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-tasks-heading h3 {
    margin: 0;
    color: var(--crm-color-warning);
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .035em;
    line-height: 1.25;
    text-transform: uppercase;
}
.crm-v2026 [data-notification-panel-root] [data-notification-task-count] {
    display: grid;
    min-width: 20px;
    min-height: 20px;
    place-items: center;
    padding: 0 6px;
    border-radius: 999px;
    background: var(--crm-color-warning);
    color: var(--crm-color-surface);
    font-size: 10px;
    font-weight: 800;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-task-list {
    display: grid;
    min-width: 0;
    max-height: 170px;
    gap: 4px;
    overflow-x: hidden;
    overflow-y: auto;
    overscroll-behavior: contain;
}
.crm-v2026 [data-notification-panel-root] :is(.crm-notification-task, .crm-notification-item) {
    display: grid;
    min-width: 0;
    width: 100%;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    justify-items: stretch;
    gap: 8px;
    margin: 0;
    padding: 8px 9px;
    border: 1px solid var(--crm-border);
    border-radius: 7px;
    background: var(--crm-color-surface);
    color: var(--crm-ink);
    text-align: left;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-task {
    border-color: color-mix(in srgb, var(--crm-color-warning) 28%, var(--crm-color-surface));
}
.crm-v2026 [data-notification-panel-root] .crm-notification-task:is(:hover, :focus-visible) {
    border-color: var(--crm-color-warning);
    background: var(--crm-color-warning-soft);
}
.crm-v2026 [data-notification-panel-root] .crm-notification-item-copy {
    display: grid;
    min-width: 0;
    gap: 2px;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-item-copy :is(strong, span, time) {
    width: auto;
    min-width: 0;
    overflow-wrap: anywhere;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-task strong {
    color: var(--crm-color-warning);
    font-size: 12px;
    line-height: 1.3;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-task .crm-notification-item-copy > span {
    color: var(--crm-text-muted);
    font-size: 11px;
    line-height: 1.35;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-task time {
    color: var(--crm-color-warning);
    font-size: 10px;
    font-variant-numeric: tabular-nums;
    line-height: 1.3;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-item-action {
    width: auto;
    color: var(--crm-notification-accent-strong);
    font-size: 10px;
    font-weight: 800;
    white-space: nowrap;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-task .crm-notification-item-action {
    color: var(--crm-color-warning);
}
.crm-v2026 [data-notification-panel-root] .crm-notification-tabs {
    gap: 4px;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-categories {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 4px;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-category {
    min-height: 28px;
    margin: 0;
    padding: 4px 9px;
    border: 1px solid var(--crm-color-border);
    border-radius: 999px;
    background: var(--crm-color-surface);
    color: var(--crm-color-text-secondary);
    font-size: 10px;
    font-weight: 750;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-category.active {
    border-color: var(--crm-color-primary-line);
    background: var(--crm-color-primary-subtle);
    color: var(--crm-color-primary-strong);
}
.crm-v2026 [data-notification-panel-root] .crm-notification-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-tab > span {
    display: grid;
    min-width: 18px;
    min-height: 18px;
    place-items: center;
    padding: 0 5px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--crm-notification-accent) 10%, var(--crm-color-surface));
    color: var(--crm-notification-accent-strong);
    font-size: 10px;
    font-variant-numeric: tabular-nums;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-item[data-unread="true"] {
    position: relative;
    padding-left: 14px;
}
.crm-v2026 [data-notification-panel-root] .crm-notification-item[data-unread="true"]::before {
    position: absolute;
    top: 13px;
    left: 6px;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--crm-notification-accent);
    content: "";
}
.crm-v2026 [data-notification-panel-root] .crm-notification-empty {
    padding: 18px 10px;
    text-align: center;
}
@media (max-width: 899px) {
    .crm-v2026 [data-notification-panel-root].crm-notification-panel {
        width: calc(100vw - 16px);
        max-height: calc(100dvh - 68px);
        padding: 9px;
    }
    .crm-v2026 [data-notification-panel-root] :is(.crm-notification-task, .crm-notification-item) {
        min-height: 44px;
        grid-template-columns: minmax(0, 1fr);
        gap: 5px;
        padding: 9px 10px;
    }
    .crm-v2026 [data-notification-panel-root] .crm-notification-category {
        min-height: 44px;
    }
    .crm-v2026 [data-notification-panel-root] .crm-notification-item-action {
        justify-self: start;
    }
}
/* END TASK-374: actionable read-state notification center. */

/* TASK-374: compact task-detail workflow actions. */
.crm-v2026 [data-crm-component="work-item-detail"].task-detail-page {
    width: 100%;
    max-width: none;
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-layout {
    grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
    gap: 10px;
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-details,
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-history {
    align-content: start;
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-details > .crm-compact-note {
    margin: 0;
    padding: 8px 9px;
    border-left: 3px solid var(--crm-color-primary);
    border-radius: 0 7px 7px 0;
    background: var(--crm-color-primary-subtle);
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-compact-definition-list {
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-actions {
    display: grid;
    min-width: 0;
    gap: 7px;
    margin-top: 2px;
    padding-top: 10px;
    border-top: 1px solid var(--crm-color-border);
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-actions > .crm-compact-surface-title {
    margin: 0;
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-compact-command-grid {
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 8px;
    padding: 0;
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-command {
    min-width: 0;
    align-content: start;
    gap: 7px;
    margin: 0;
    padding: 9px;
    border: 1px solid var(--crm-color-border);
    border-radius: 8px;
    background: var(--crm-color-surface);
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-command--primary {
    border-left: 3px solid var(--crm-color-primary);
    background: var(--crm-color-primary-subtle);
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-command-copy {
    display: grid;
    gap: 2px;
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-command-copy h3,
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-command-copy p {
    margin: 0;
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-command-copy h3 {
    color: var(--crm-color-text);
    font-size: 12px;
    line-height: 1.3;
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-command-copy p {
    color: var(--crm-color-text-secondary);
    font-size: 11px;
    line-height: 1.35;
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-command > .crm-compact-action {
    width: auto;
    min-width: 0;
    min-height: 34px;
    justify-self: start;
    padding-inline: 10px;
    border-radius: 4px;
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-command--secondary > .crm-compact-action {
    border-color: var(--crm-color-control-border);
    background: var(--crm-color-surface);
    color: var(--crm-color-primary-strong);
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-history .crm-compact-timeline {
    margin: 0;
    padding: 0;
    list-style: none;
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-history .crm-compact-timeline-item {
    display: grid;
    gap: 2px;
    padding: 8px 9px;
}
.crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-history .crm-compact-timeline-item > time {
    margin-top: 2px;
}
@media (min-width: 1440px) {
    .crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-layout {
        grid-template-columns: minmax(0, 1.2fr) minmax(360px, .8fr);
    }
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-layout,
    .crm-v2026 [data-crm-component="work-item-detail"] .crm-compact-command-grid {
        grid-template-columns: minmax(0, 1fr);
    }
    .crm-v2026 [data-crm-component="work-item-detail"] .crm-task-detail-command > .crm-compact-action {
        width: 100%;
        min-height: 44px;
        justify-self: stretch;
    }
}
/* END TASK-374: compact task-detail workflow actions. */

/* TASK-374: truthful payment and settlement presentation. */
.crm-v2026 .crm-semantic-status {
    display: inline-flex;
    min-height: 20px;
    box-sizing: border-box;
    align-items: center;
    padding: 2px 7px;
    border: 1px solid transparent;
    border-radius: 999px;
    font-size: 10px;
    font-weight: 700;
    line-height: 1.2;
}
.crm-v2026 .crm-semantic-status--success {
    border-color: color-mix(in srgb, var(--crm-color-success) 24%, transparent);
    background: var(--crm-color-success-soft);
    color: var(--crm-color-success);
}
.crm-v2026 .crm-semantic-status--warning {
    border-color: color-mix(in srgb, var(--crm-color-warning) 24%, transparent);
    background: var(--crm-color-warning-soft);
    color: var(--crm-color-warning);
}
.crm-v2026 .crm-semantic-status--danger {
    border-color: color-mix(in srgb, var(--crm-color-danger) 24%, transparent);
    background: var(--crm-color-danger-soft);
    color: var(--crm-color-danger);
}
.crm-v2026 .crm-semantic-status--refund {
    border-color: var(--crm-color-primary-line);
    background: var(--crm-color-primary-subtle);
    color: var(--crm-color-primary-strong);
}
.crm-v2026 .crm-semantic-status--neutral {
    border-color: var(--crm-color-border);
    background: var(--crm-color-surface-subtle);
    color: var(--crm-color-text-secondary);
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-link-inactive {
    margin: 0;
    padding: 8px 9px;
    border-left: 3px solid var(--crm-color-danger);
    border-radius: 0 8px 8px 0;
    background: var(--crm-color-danger-soft);
    color: var(--crm-color-text-secondary);
    font-size: 12px;
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-link-inactive strong {
    color: var(--crm-color-danger);
}
.crm-v2026 .crm-compact-finance-payment-detail .payment-state.is-error,
.crm-v2026 .crm-compact-finance-payment-operations :is(.payment-status--failed, .payment-status--expired, .payment-status--cancelled) {
    background: var(--crm-color-danger-soft);
    color: var(--crm-color-danger);
}
.crm-v2026 .crm-compact-finance-payment-operations :is(.payment-status--reversed, .payment-status--partially_refunded) {
    background: var(--crm-color-primary-subtle);
    color: var(--crm-color-primary-strong);
}
.crm-v2026 .crm-compact-finance-payment-detail .fiscal-document-group + .fiscal-document-group {
    margin-top: 10px;
    padding-top: 10px;
    border-top: 1px solid var(--crm-color-border);
}
.crm-v2026 .crm-compact-finance-payment-detail .fiscal-document-group > h3,
.crm-v2026 .crm-compact-finance-payment-detail .receipt-card h4 {
    margin: 0 0 6px;
    color: var(--crm-color-text);
    font-size: 12px;
}
.crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list dd.crm-task-374-patient-fact {
    white-space: nowrap;
}
.crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list dd.crm-task-374-patient-fact a {
    display: inline;
    min-height: 0;
    padding: 0;
    line-height: inherit;
}
.crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list dd.crm-task-374-patient-fact a:focus-visible {
    border-radius: 2px;
    outline: 2px solid var(--crm-color-focus);
    outline-offset: 2px;
}
@media (max-width: 899px) {
    .crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list dd.crm-task-374-patient-fact {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        white-space: normal;
    }
    .crm-v2026 .crm-task-339-appointment-detail .appointment-detail-list dd.crm-task-374-patient-fact a {
        display: inline-flex;
        min-height: 44px;
        align-items: center;
    }
}
/* END TASK-374: truthful payment and settlement presentation. */

/* TASK-376: bounded delegation inline-summary target. */
.crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-delegations .crm-compact-access-inline-details > summary {
    display: inline-flex;
    min-height: 34px;
    box-sizing: border-box;
    align-items: center;
    padding: 4px 6px;
}
@media (max-width: 899px) {
    .crm-v2026 [data-crm-component="workspace-content"] .crm-compact-access-delegations .crm-compact-access-inline-details > summary {
        min-height: 44px;
    }
}
/* END TASK-376: bounded delegation inline-summary target. */
