﻿/* Shared presentation contract for all workspace views. */
:root{--crm-space:24px;--crm-control-height:44px;--crm-focus:#087f79;--crm-muted:#526477;--crm-surface-radius:16px}
:root[data-theme="dark"]{--crm-muted:#b5c3d3;--crm-focus:#6ce1d2;--ink-soft:#b5c3d3}
body{font-size:14px;line-height:1.5}.view-root{min-width:0;padding-bottom:32px}.workspace{min-width:0}.topbar h1{font-size:22px;font-weight:650;letter-spacing:-.5px}
:where(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:3px solid var(--crm-focus)!important;outline-offset:3px!important}
#page-title:focus,#dashboard-root:focus{outline:none}.skip-link:focus{z-index:1000}.button,select,input:not([type="checkbox"]),.crm-close{min-height:var(--crm-control-height)}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.6}
.button{font-size:13px;padding:10px 16px;border-radius:9px;font-weight:600}.button.secondary{color:var(--ink);background:var(--white);border:1px solid var(--line)}.button.primary{background:var(--action);color:#fff}.button.danger{background:var(--red-soft);color:var(--red);border:1px solid var(--red)}
.view-header,.crm-view-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:24px 0}.view-header h2,.crm-view-heading h2{font-size:28px;letter-spacing:-.7px;line-height:1.2;margin:0 0 8px}.view-header p,.crm-view-heading p{font-size:14px;color:var(--ink-soft);max-width:65ch;margin:0}.view-actions{gap:8px;flex-wrap:wrap}
:where(.panel,.settings-panel,.crm-panel,.knowledge-card,.assistant-card,.connection-card,.activation-card){border:1px solid var(--line);border-radius:var(--crm-surface-radius);background:var(--white);color:var(--ink);padding:var(--crm-space);box-shadow:0 2px 6px #142b3b04;min-width:0}
:where(.settings-grid,.connection-grid,.knowledge-grid,.cards-grid){gap:20px;min-width:0}.settings-panel>h3,.crm-panel>h3{font-size:17px;margin:0 0 12px}.settings-panel p{color:var(--ink-soft)}
.knowledge-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.knowledge-form label,.field{font-size:13px;color:var(--ink);min-width:0}.knowledge-form label>input,.knowledge-form label>select,.knowledge-form label>textarea{margin-top:7px;width:100%;font:inherit;color:var(--ink);background:var(--white);border:1px solid var(--line-strong);padding:11px 12px;box-sizing:border-box}.knowledge-form textarea{min-height:110px;resize:vertical}.knowledge-form label:has(textarea),.knowledge-form>p,.knowledge-form>[role="alert"]{grid-column:1/-1}.knowledge-form fieldset{display:contents}.knowledge-form fieldset[disabled]{opacity:.65}
.action-dialog{width:min(680px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:0;background:var(--white);color:var(--ink);overflow:auto}.action-dialog-shell{padding:28px;gap:24px}.action-dialog-shell header h2{font-size:24px;line-height:1.2}.action-dialog-shell header p{color:var(--ink-soft);font-size:14px}.action-dialog-shell footer{position:sticky;bottom:-28px;background:var(--white);padding:16px 0 0;border-top:1px solid var(--line);z-index:1}.action-dialog [data-validation-error],.crm-form-error{padding:12px 16px;background:var(--red-soft);color:var(--red);border:1px solid var(--red);border-radius:8px}
.crm-directory{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr));gap:16px}.crm-directory-card{display:flex;align-items:center;gap:16px;width:100%;min-height:134px;padding:22px;border:1px solid var(--line);border-radius:14px;background:var(--white);color:var(--ink);text-align:left;transition:border-color .15s,box-shadow .15s}.crm-directory-card:hover{border-color:var(--action);box-shadow:0 6px 18px #102d3b0c}.crm-directory-copy{flex:1;min-width:0;display:grid;gap:5px}.crm-directory-copy strong{font-size:16px;overflow-wrap:anywhere}.crm-directory-copy>span{font-size:13px;color:var(--ink-soft);overflow-wrap:anywhere}.crm-directory-copy small{font-size:12px;color:var(--ink-soft);margin-top:7px}.crm-legacy-panel{margin-top:28px}.crm-legacy-panel>p{color:var(--ink-soft);font-size:14px}.crm-data-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;padding:0 0 20px;border-bottom:1px solid var(--line)}.crm-data-list dt{font-size:12px;color:var(--ink-soft)}.crm-data-list dd{font-size:15px;margin:5px 0;overflow-wrap:anywhere}.crm-field-list{margin-top:20px}
.crm-contact-row{min-height:64px}.crm-contact-row strong{font-size:14px}.crm-contact-row small,.crm-count,.crm-task-row time{font-size:12px}.crm-card h4{font-size:15px}.crm-card p{font-size:13px}.crm-card>small,.crm-card footer,.crm-move-button{font-size:12px}.crm-source,.crm-interest{font-size:11px}.crm-stage{font-size:12px}.crm-record-grid dt{font-size:12px}.crm-record-grid dd{font-size:14px}.crm-record-grid main p{font-size:14px}.crm-record-grid>main{overflow-wrap:anywhere}.crm-record-header{position:sticky;top:0;background:var(--white);z-index:2}.crm-record-header h2{overflow-wrap:anywhere}.crm-close{min-width:44px}.crm-empty h3{font-size:18px}.crm-empty p{font-size:14px}.crm-task-row{flex-wrap:wrap}.crm-error{color:var(--amber);background:var(--amber-soft)}
.data-table th{font-size:12px}.data-table td{font-size:14px;padding:16px}.data-table td .button{margin:3px}.table-wrap{max-width:100%;overflow:auto;border:1px solid var(--line);border-radius:12px}.table-wrap:focus-visible{outline:3px solid var(--crm-focus)}.empty-state{padding:32px;border:1px dashed var(--line-strong);border-radius:14px;color:var(--ink-soft);text-align:center;background:var(--white);font-size:14px}
.crm-nav-group{display:grid;gap:4px}.crm-nav-label{padding:18px 12px 5px;color:#a9b7c7;font-size:10px;text-transform:uppercase;letter-spacing:1.3px}.main-nav .nav-item{font-size:13px;min-height:42px}.sidebar{overflow-y:auto}.crm-settings-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.crm-preferences{margin-bottom:24px}.crm-preferences .crm-segments{flex-wrap:wrap}.crm-advanced{margin-top:24px;border:1px solid var(--line);border-radius:14px;padding:20px;background:var(--white)}.crm-advanced>summary{cursor:pointer;font-weight:600;font-size:15px;min-height:32px}.crm-advanced[open]>summary{margin-bottom:20px}.crm-help{font-size:13px;color:var(--ink-soft)}.crm-readonly{padding:12px;background:var(--blue-soft);border-radius:8px;color:var(--ink-soft)}
body[data-density="compact"]{--crm-space:16px}body[data-density="compact"] .crm-contact-row{padding:10px;min-height:50px}body[data-density="compact"] .crm-directory-card{padding:16px;min-height:105px}body[data-density="compact"] .data-table td{padding:10px}
.toast{max-width:min(440px,calc(100vw - 32px));font-size:14px;overflow-wrap:anywhere;z-index:99}.crm-record .toast,.action-dialog .toast{position:sticky;bottom:12px;margin:12px 16px 12px auto;right:auto;max-width:calc(100% - 32px)}
@media(max-width:1000px){.settings-grid,.connection-grid{grid-template-columns:1fr}.view-header,.crm-view-heading{align-items:flex-start;flex-wrap:wrap}.topbar-controls{flex-wrap:wrap;gap:8px}}
@media(max-width:760px){.crm-nav-group{display:contents}.crm-nav-label{display:none}.main-nav{padding:3px 0 8px}.main-nav .nav-item{min-height:44px}.sidebar{overflow:visible}.workspace{padding:0 14px 24px}.topbar-controls{width:100%}.topbar-controls .field{flex:1;min-width:120px;max-width:none}.role-switch{display:none}.view-header h2,.crm-view-heading h2{font-size:25px}.view-header,.crm-view-heading{margin:18px 0}.knowledge-form{grid-template-columns:1fr}.action-dialog-shell{padding:20px}.action-dialog-shell footer{bottom:-20px}.view-actions .button{flex:1 1 auto}.crm-directory{grid-template-columns:1fr}.crm-data-list{grid-template-columns:1fr}.crm-contact-row small{max-width:100%;white-space:normal}.crm-record-grid>aside .button{width:100%}.crm-record{width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.crm-record-grid dl{grid-template-columns:90px minmax(0,1fr)}.crm-segments{max-width:100%;flex-wrap:wrap}.settings-panel,.crm-panel{padding:18px}.search-box input{min-width:0}.crm-settings-actions{flex-direction:column}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(forced-colors:active){.button,.crm-directory-card,.crm-card,.crm-stage{border:1px solid ButtonText}}

.crm-contact-row>.crm-stage{flex:0 0 auto;white-space:nowrap}.crm-contact-row>span:has(strong){flex:1;min-width:0}

@media(max-width:760px){.sidebar .brand-lockup{margin:0;padding:6px 10px}.sidebar .brand-lockup img{width:98px;height:auto}.main-nav{margin-top:10px}.topbar{padding:12px 0;min-height:0;gap:8px}.topbar h1{font-size:18px}.topbar>.topbar-controls{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px;align-items:end}.topbar-controls .field{min-width:0;max-width:none;margin:0}.topbar-controls .field span{font-size:10px}.topbar-controls .theme-toggle,.topbar-controls .logout-button{width:auto!important;min-width:0;margin:0;padding:8px;font-size:12px;white-space:nowrap}.theme-toggle #theme-icon{display:none}.topbar .eyebrow{display:none}.toolbar{padding:10px 0}.topbar-controls select{padding:9px 6px;font-size:12px}.topbar .role-switch{display:none}}

.crm-tenant-label{display:block;font-size:11px;font-weight:600;color:var(--teal-dark);margin:5px 0 9px;overflow-wrap:anywhere}

/* CRM interior: decision-first hierarchy and accessible analytical surfaces. */
.crm-dashboard-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px;align-items:start}.crm-dashboard-grid>.crm-panel{grid-column:span 6}.crm-dashboard-grid>.crm-panel:first-child{grid-column:span 7}.crm-dashboard-grid>.crm-panel:nth-child(2){grid-column:span 5}.crm-stats{margin:24px 0;gap:14px}.crm-stat{position:relative;overflow:hidden;padding:22px 20px;min-height:126px}.crm-stat:before{content:'';position:absolute;inset:0 auto 0 0;width:3px;background:var(--action);opacity:.8}.crm-stat.attention:before{background:var(--amber)}.crm-stat>strong{font-size:32px;line-height:1.05;letter-spacing:-1.2px}.crm-stat>small{display:block;line-height:1.45}.crm-panel-title{margin-bottom:18px}.crm-panel-title h3{font-size:17px;letter-spacing:-.2px}.crm-filterbar{padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--white)}.crm-analytics-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:0 0 22px;padding:16px 18px;border:1px solid var(--line);border-radius:14px;background:var(--white)}.crm-analytics-filters label{display:grid;gap:6px;min-width:150px;color:var(--ink-soft);font-size:12px;font-weight:650}.crm-analytics-filters input,.crm-analytics-filters select{width:100%;padding:9px 10px;background:var(--paper);border:1px solid var(--line);color:var(--ink)}.crm-chart{display:grid;gap:13px;padding:4px 0}.crm-chart-legend{display:flex;gap:12px;flex-wrap:wrap;color:var(--ink-soft);font-size:12px}.crm-chart-legend span{display:inline-flex;align-items:center;gap:6px}.crm-chart-legend span:before{content:'';width:8px;height:8px;border-radius:50%;background:var(--action)}.crm-bar-row{display:grid;grid-template-columns:minmax(90px,.7fr) minmax(100px,2fr) auto;gap:10px;align-items:center;font-size:12px}.crm-bar-row>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ink-soft)}.crm-bar-track{height:10px;border-radius:999px;background:var(--paper);overflow:hidden}.crm-bar-fill{display:block;height:100%;min-width:2px;border-radius:inherit;background:var(--action)}.crm-bar-row:nth-child(3n) .crm-bar-fill{background:#3c9cc0}.crm-bar-row:nth-child(3n+2) .crm-bar-fill{background:#b38647}.crm-insight{padding:16px 18px;border-left:3px solid var(--action);border-radius:0 10px 10px 0;background:var(--teal-soft);color:var(--ink)}.crm-insight strong{display:block;font-size:13px;margin-bottom:4px}.crm-insight p{margin:0;color:var(--ink-soft);font-size:13px;line-height:1.5}.subscription-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:18px}.subscription-card{display:grid;gap:16px;padding:24px;border:1px solid var(--line);border-radius:16px;background:var(--white);box-shadow:0 5px 14px #102d3b08}.subscription-card h3{margin:0;font-size:18px}.subscription-summary{padding:16px;border-radius:12px;background:var(--paper)}.subscription-summary strong{display:block;font-size:24px;letter-spacing:-.6px}.subscription-steps{display:grid;gap:10px;margin:0;padding:0;list-style:none}.subscription-steps li{display:flex;gap:10px;align-items:flex-start;color:var(--ink-soft);font-size:13px}.subscription-steps li:before{content:' ';width:9px;height:9px;border:2px solid var(--line-strong);border-radius:50%;margin-top:5px;flex:0 0 auto}.subscription-steps .is-done:before{border-color:var(--action);background:var(--action)}.crm-calendar,.crm-notifications{box-shadow:0 3px 12px #102d3b08}.crm-calendar-day:focus-visible{outline:3px solid var(--crm-focus);outline-offset:1px}.crm-notification strong{font-size:13px}.crm-notification-actions .crm-text-button{min-height:36px}.data-table tbody tr:hover{background:var(--paper)}.data-table th{position:sticky;top:0;background:var(--white);z-index:1}.crm-empty{padding:44px 24px}.crm-empty .button{margin-top:8px}
:root[data-theme="dark"] .crm-chart-legend span:before{background:var(--crm-focus)}:root[data-theme="dark"] .crm-insight{background:#163b3c}:root[data-theme="dark"] .crm-bar-track,:root[data-theme="dark"] .subscription-summary{background:#111e2b}
@media(max-width:900px){.crm-dashboard-grid>.crm-panel,.crm-dashboard-grid>.crm-panel:first-child,.crm-dashboard-grid>.crm-panel:nth-child(2){grid-column:span 12}.crm-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.crm-analytics-filters label{flex:1 1 150px}}
@media(max-width:480px){.crm-dashboard-grid{gap:14px}.crm-stats{grid-template-columns:1fr}.crm-stat{min-height:0;padding:18px}.crm-analytics-filters{padding:14px;align-items:stretch}.crm-analytics-filters .button{width:100%}.crm-bar-row{grid-template-columns:minmax(76px,1fr) minmax(78px,1.5fr) auto;font-size:11px}.crm-followup-grid{gap:14px}.crm-calendar-day,.crm-calendar-blank{min-height:38px}.crm-notification-actions{width:100%}.crm-notification-actions .crm-text-button{padding-left:4px;padding-right:4px}.subscription-card{padding:19px}}