/* CX24 R74 theme. Presentation only: no authority, media, storage or form logic. */
@font-face { font-family:Inter; src:url('inter-latin.woff2') format('woff2'); font-style:normal; font-weight:100 900; font-display:swap; }
:root {
  --background:#f6f8fb !important; --foreground:#202126 !important;
  --card:#fff !important; --card-foreground:#202126 !important;
  --popover:#fff !important; --popover-foreground:#202126 !important;
  --muted:#f1f3f7 !important; --muted-foreground:#646b7b !important;
  --border:#e1e5ed !important; --input:#c9d1de !important;
  --primary:#0a6cff !important; --primary-foreground:#fff !important;
  --accent:#edf3ff !important; --accent-foreground:#164fa8 !important;
  --ring:#0a6cff !important; --radius:12px;
  --shadow-sm:0 1px 2px rgba(24,24,27,.03),0 6px 20px -12px rgba(24,24,27,.12);
  --cx24-ribbon:#09090b; --cx24-ribbon-text:#f4f4f5;
  --cx24-ink:#202126; --cx24-muted:#646b7b;
  --cx24-texture-line:rgba(31,49,75,.04); --cx24-texture-fibre:rgba(31,49,75,.018);
}
:root[data-theme=dark] {
  --background:#101114 !important; --foreground:#f4f4f5 !important;
  --card:#18191d !important; --card-foreground:#f4f4f5 !important;
  --popover:#202126 !important; --popover-foreground:#f4f4f5 !important;
  --muted:#24262c !important; --muted-foreground:#b0b6c3 !important;
  --border:#353840 !important; --input:#515662 !important;
  --accent:#142748 !important; --accent-foreground:#9bc3ff !important;
  --shadow-sm:0 1px 2px rgba(0,0,0,.12),0 8px 24px -14px rgba(0,0,0,.48);
  --cx24-texture-line:rgba(220,231,249,.045); --cx24-texture-fibre:rgba(220,231,249,.02);
  --cx24-ink:#f4f4f5; --cx24-muted:#b0b6c3;
}
html body { font-family:Inter,'Noto Sans Arabic','Segoe UI',sans-serif !important; color:var(--foreground); background-color:var(--background); }
html body :is(button,input,select,textarea) { font-family:inherit; }
html body :is(h1,h2,h3,h4) { font-family:Inter,'Noto Sans Arabic','Segoe UI',sans-serif !important; letter-spacing:-.025em; }
html body :is(.card,.crm-dashboard-card,.crm-feature-panel,.crm-reminder-card,.crm-knowledge-card,.crm-team-card,.crm-monitor-card,.crm-settings-card,.crm-vault-card) {
  border-color:var(--border) !important; background-color:var(--card) !important;
  color:var(--foreground); border-radius:12px !important; box-shadow:var(--shadow-sm) !important;
}
html body :is(.card-header,.card-footer) { background:var(--card) !important; border-color:var(--border) !important; }
html body :is(.crm-feature-hero,.crm-page-hero) {
  --foreground:var(--cx24-ink) !important; --muted-foreground:var(--cx24-muted) !important;
  background-color:var(--card) !important; color:var(--foreground) !important;
  background-image:radial-gradient(ellipse at 96% 0%,rgba(10,108,255,.055),transparent 65%) !important;
  border:1px solid var(--border) !important; border-radius:12px !important;
  padding:28px 30px !important; box-shadow:var(--shadow-sm) !important;
}
html body #main-content :is(.crm-feature-hero,.crm-page-hero) :is(h1,h2),
html body .crm-feature-hero :is(h1,h2) {
  font-size:clamp(28px,3.2vw,40px) !important; font-weight:700 !important;
  color:var(--foreground) !important; letter-spacing:-.035em !important; line-height:1.12 !important;
}
.cx24-heading-accent { color:var(--primary); }
html.cx24-ribbon-ready body.crm-ignorre-shell #main-content :is(.crm-feature-hero,.crm-page-hero) :is(h1,h2) { color:var(--cx24-ink) !important; }
html.cx24-ribbon-ready body.crm-ignorre-shell #main-content .crm-performance-dashboard .crm-feature-hero :is(h1,h2) { font-size:clamp(28px,3.2vw,40px) !important; }
html body :is(.crm-feature-hero,.crm-page-hero) p { color:var(--muted-foreground) !important; max-width:72ch; line-height:1.65 !important; }
html body .crm-feature-kicker { background:transparent !important; border:0 !important; padding:0 !important; box-shadow:none !important; color:var(--muted-foreground) !important; font-size:11px !important; letter-spacing:.09em; text-transform:uppercase; }
html body :is(.btn,.crm-tool-button,.crm-icon-button,.crm-grid-menu>summary) { border-radius:7px !important; box-shadow:none; }
html body .btn-primary { background:var(--primary) !important; border-color:var(--primary) !important; color:#fff !important; }
html body .btn-primary:hover:not(:disabled) { background:#0757d5 !important; border-color:#0757d5 !important; }
html body .btn-outline-primary { color:var(--accent-foreground) !important; border-color:var(--input) !important; background:var(--card) !important; }
html body .btn-outline-primary:hover:not(:disabled) { background:var(--accent) !important; border-color:var(--primary) !important; }
html body :is(.form-control,.form-select) { background-color:var(--card) !important; color:var(--foreground) !important; border-radius:7px !important; }
html body :is(.form-control,.form-select):not(.is-invalid):not([aria-invalid=true]) { border-color:var(--input) !important; }
html body :is(a,button,input,select,textarea,summary):focus-visible { outline:2px solid var(--ring) !important; outline-offset:3px; }
html body .table { --bs-table-bg:var(--card); --bs-table-color:var(--foreground); --bs-table-border-color:var(--border); --bs-table-hover-bg:var(--muted); font-variant-numeric:tabular-nums; }
html body .table thead :is(th,td) { background:var(--muted) !important; color:var(--muted-foreground) !important; font-weight:600; }
html body .table :is(th,td) { border-color:var(--border) !important; }
html body .pagination { flex-wrap:wrap; gap:4px; max-width:100%; }
html body :is(.page-link,.crm-grid-menu-panel,.dropdown-menu) { background-color:var(--popover); color:var(--foreground); border-color:var(--border); }
/* Shell styling is activated only after all original links have been retained. */
html.cx24-ribbon-ready body { min-height:100dvh; overflow-x:hidden; }
html.cx24-ribbon-ready body.crm-ignorre-shell :is(#main-content,.content-wrapper,body>.d-flex>.flex-grow-1) {
  width:100% !important; max-width:100% !important; margin:0 !important;
  padding:24px 28px 40px !important; min-height:calc(100dvh - 210px); position:relative;
  background-color:var(--background) !important;
  background-image:repeating-linear-gradient(135deg,var(--cx24-texture-fibre) 0 1px,transparent 1px 6px),linear-gradient(var(--cx24-texture-line) 1px,transparent 1px),linear-gradient(90deg,var(--cx24-texture-line) 1px,transparent 1px) !important;
  background-size:12px 12px,64px 64px,64px 64px !important;
}
html.cx24-ribbon-ready body>.d-flex { display:block !important; min-height:0 !important; }
html.cx24-ribbon-ready body .crm-topbar {
  position:relative !important; inset:auto !important; margin:0 !important;
  width:100% !important; max-width:100% !important; min-height:62px !important; height:auto !important;
  border-radius:0 !important; border:0 !important; border-bottom:1px solid var(--border) !important;
  background:var(--card) !important; color:var(--foreground) !important;
  padding:10px 24px !important; display:flex !important; flex-wrap:wrap; gap:12px;
  z-index:1010; box-shadow:none !important; backdrop-filter:none !important;
}
html.cx24-ribbon-ready .crm-topbar-left { flex:0 0 auto !important; min-width:0; }
html.cx24-ribbon-ready .crm-topbar-right { flex:1 1 auto !important; max-width:100% !important; min-width:0 !important; justify-content:flex-end; flex-wrap:wrap !important; gap:8px; }
html.cx24-ribbon-ready :is(.crm-menu-toggle,.crm-page-heading,.crm-sidebar-backdrop,.crm-sidebar-mobile-close) { display:none !important; }
html.cx24-ribbon-ready .sidebar[hidden] { display:none !important; }
.cx24-brand { display:block; position:relative; width:122px; height:40px; flex:0 0 122px; }
.cx24-brand img { width:122px; height:40px; object-fit:contain; position:absolute; inset:0; }
.cx24-brand .cx24-wordmark { clip-path:inset(0 0 0 33%); filter:brightness(0); }
:root[data-theme=dark] .cx24-brand .cx24-wordmark { filter:none; }
html.cx24-ribbon-ready .crm-personal-menu { position:relative !important; margin:0 !important; flex:0 0 auto; width:auto !important; min-height:0 !important; background:transparent !important; border:0 !important; }
html.cx24-ribbon-ready .crm-personal-menu .crm-personal-trigger.crm-rail-account { width:38px !important; min-width:38px !important; height:38px !important; min-height:38px !important; margin:0 !important; border:1px solid var(--border) !important; border-radius:8px !important; background:var(--muted) !important; box-shadow:none !important; }
html.cx24-ribbon-ready .crm-personal-trigger-copy,
html.cx24-ribbon-ready .crm-personal-chevron { display:none !important; }
html.cx24-ribbon-ready .crm-personal-dropdown { position:absolute !important; left:auto !important; right:0 !important; top:calc(100% + 10px) !important; bottom:auto !important; width:min(340px,calc(100vw - 28px)); transform:none !important; z-index:1050; }
html.cx24-ribbon-ready .crm-personal-menu-rail .crm-personal-dropdown { background:var(--popover) !important; color:var(--foreground) !important; border-color:var(--border) !important; }
html.cx24-ribbon-ready .crm-personal-menu-rail .crm-personal-identity { background:var(--muted) !important; border-color:var(--border) !important; }
html.cx24-ribbon-ready .crm-personal-menu-rail :is(.crm-personal-identity strong,.crm-personal-links strong,.crm-personal-links>a) { color:var(--foreground) !important; }
html.cx24-ribbon-ready .crm-personal-menu-rail :is(.crm-personal-identity small,.crm-personal-links small) { color:var(--muted-foreground) !important; }
html.cx24-ribbon-ready .crm-personal-menu-rail .crm-personal-roles span { background:var(--accent) !important; color:var(--accent-foreground) !important; border-color:var(--border) !important; }
html.cx24-ribbon-ready .crm-personal-menu-rail .crm-personal-links>a:is(:hover,:focus-visible) { background:var(--muted) !important; }
.cx24-ribbon-shell { width:100%; min-width:0; background:var(--cx24-ribbon); color:var(--cx24-ribbon-text); position:relative; z-index:100; box-shadow:0 6px 16px -12px rgba(0,0,0,.5); }
html.cx24-ribbon-ready body.crm-page .cx24-ribbon-shell.sidebar { position:relative !important; inset:auto !important; display:block !important; width:100% !important; min-width:0 !important; max-width:100% !important; height:auto !important; min-height:0 !important; margin:0 !important; padding:0 !important; transform:none !important; opacity:1 !important; visibility:visible !important; overflow:visible !important; border:0 !important; border-radius:0 !important; background:#09090b !important; z-index:100 !important; }
.cx24-appbar { padding:0 20px; border-bottom:1px solid rgba(255,255,255,.1); overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:thin; }
.cx24-appbar .crm-rail-nav { position:static !important; inset:auto !important; transform:none !important; display:flex !important; flex-direction:row !important; gap:4px !important; width:max-content !important; min-width:100%; height:auto !important; padding:0 !important; margin:0 !important; overflow:visible !important; align-items:stretch; }
.cx24-appbar .crm-rail-indicator { display:none !important; }
.cx24-appbar .crm-rail-button { display:flex !important; align-items:center; gap:9px; flex:0 0 auto !important; width:auto !important; height:46px !important; min-width:0 !important; padding:0 12px !important; margin:0 !important; border:0 !important; border-bottom:2px solid transparent !important; border-radius:0 !important; box-shadow:none !important; background:transparent !important; color:#c6c8d0 !important; text-decoration:none; }
.cx24-appbar .crm-rail-button .crm-rail-tooltip { position:static !important; transform:none !important; display:block !important; visibility:visible !important; opacity:1 !important; background:none !important; border:0 !important; padding:0 !important; box-shadow:none !important; color:inherit !important; font-size:13px !important; line-height:1.3 !important; white-space:nowrap; pointer-events:none; }
.cx24-appbar .crm-rail-tooltip::after { display:none !important; }
.cx24-appbar .crm-rail-button :is(svg,.crm-lucide-icon) { width:18px !important; height:18px !important; flex:none; }
.cx24-appbar .crm-rail-button:is(:hover,.is-active) { color:#fff !important; background:rgba(255,255,255,.07) !important; }
.cx24-appbar .crm-rail-button.is-active { border-bottom-color:#63a5ff !important; }
.cx24-sectionbar { padding:0 24px; border-bottom:1px solid rgba(255,255,255,.1); overflow-x:auto; }
.cx24-sectionbar .crm-rail-panel-links { display:flex !important; flex-direction:row !important; gap:22px !important; padding:0 !important; width:max-content; min-width:100%; }
.cx24-sectionbar .crm-rail-panel-links>a { display:flex !important; align-items:center; flex:none; padding:11px 0 !important; min-height:38px !important; margin:0 !important; border:0 !important; border-bottom:2px solid transparent !important; border-radius:0 !important; background:transparent !important; color:#b6b8c4 !important; box-shadow:none !important; font-size:11px !important; font-weight:650; text-transform:uppercase; letter-spacing:.025em; text-decoration:none; }
.cx24-sectionbar .crm-rail-panel-links>a :is(svg,.crm-lucide-icon) { display:none; }
.cx24-sectionbar .crm-rail-panel-links>a:is(:hover,.is-current) { color:#fff !important; }
.cx24-sectionbar .crm-rail-panel-links>a.is-current { border-bottom-color:#63a5ff !important; }
.cx24-tools { display:flex; flex-wrap:wrap; gap:12px; padding:12px 24px 14px; min-width:0; }
.cx24-tool-group { min-width:0; max-width:100%; }
.cx24-tool-label { display:block; font-size:10px; line-height:1.4; letter-spacing:.1em; color:#a1a1aa; text-transform:uppercase; margin:0 0 6px 4px; font-weight:650; }
.cx24-tool-items { display:flex; flex-wrap:wrap; align-items:stretch; gap:3px; padding:5px; border:1px solid rgba(255,255,255,.13); background:linear-gradient(180deg,rgba(255,255,255,.018),transparent); }
html body .cx24-tool-items>:is(a,button) { display:flex !important; flex-direction:column; align-items:center; justify-content:flex-start; gap:7px; width:86px; min-height:66px; padding:8px 5px !important; border:0 !important; border-radius:4px !important; background:transparent !important; color:#e4e4e7 !important; text-decoration:none; text-align:center; font-size:12px !important; line-height:1.35 !important; box-shadow:none !important; }
.cx24-tool-items>:is(a,button)>span { max-width:100%; text-wrap:balance; }
html.cx24-ribbon-ready body.crm-page .cx24-tool-items>:is(a,button),
html.cx24-ribbon-ready body.crm-page .cx24-tool-items>:is(a,button)>span { font-size:12px !important; line-height:1.35 !important; }
html.cx24-ribbon-ready body.crm-page .cx24-tool-items>:is(a,button) { width:86px !important; min-height:66px !important; height:auto !important; }
.cx24-tool-items>:is(a,button):hover:not(:disabled) { background:rgba(255,255,255,.08) !important; color:#fff !important; }
.cx24-tool-items>:is(a,button):disabled { opacity:.4; }
.cx24-tool-items>:is(a,button):is(.btn-primary,.cx24-primary-tool) { background:#0a6cff !important; color:#fff !important; }
.cx24-tool-items :is(svg,.crm-lucide-icon,.bi) { width:21px; height:21px; font-size:21px; flex:none; }
.cx24-ribbon-shell :is(a,button,summary):focus-visible { outline-color:#81b6ff !important; outline-offset:2px; }
/* Data-sheet controls retain their original table, listeners and disposer. */
.cx24-tools .crm-grid-toolbar { display:flex !important; flex-wrap:wrap; gap:7px; margin:0 !important; padding:5px !important; border:1px solid rgba(255,255,255,.13) !important; border-radius:0 !important; background:transparent !important; color:#e4e4e7 !important; max-width:100%; min-height:76px; align-items:center; }
.cx24-tools .crm-grid-toolbar :is(.crm-tool-button,.crm-grid-menu>summary,.crm-table-width-controls button) { color:#e4e4e7 !important; background:rgba(255,255,255,.035) !important; border-color:rgba(255,255,255,.13) !important; }
.cx24-tools .crm-grid-toolbar :is(.crm-table-result-count,.crm-table-width-controls>span) { color:#b6b8c4; }
.cx24-tools .crm-grid-toolbar-spacer { display:none; }
.cx24-tools [data-cx24-table-tools] { flex:1 1 600px; }
.cx24-tools .crm-table-search { flex:1 1 160px !important; min-width:120px !important; max-width:180px !important; }
.cx24-tools .crm-grid-select { width:135px !important; min-width:0 !important; }
.cx24-tools .crm-table-search-area { min-width:0 !important; flex:1 1 auto !important; flex-wrap:wrap; }
html body .cx24-tools .crm-grid-toolbar :is(button,summary,input,select) { font-size:12px !important; }
.cx24-tools .crm-grid-search-area { flex-wrap:wrap; }
.cx24-tools .crm-grid-menu-panel { color:var(--foreground) !important; background:var(--popover) !important; border-color:var(--border) !important; box-shadow:0 14px 40px rgba(0,0,0,.22); }
.cx24-tools .crm-grid-menu-panel :is(button,input,select,label) { color:var(--foreground) !important; }
html body .crm-performance-dashboard .crm-outcome-chart-scroll { overflow-x:auto !important; overflow-y:visible !important; max-height:none !important; padding:12px 2px !important; min-width:0; }
html body .crm-performance-dashboard .crm-dashboard-chart.is-tall { height:340px !important; max-height:340px !important; min-width:100% !important; }
html body .crm-performance-dashboard :is(.crm-dashboard-card,.crm-dashboard-filter-card) { border-radius:12px !important; }
html body .crm-performance-dashboard .crm-pipeline-ribbon { grid-template-columns:repeat(auto-fit,minmax(135px,1fr)) !important; gap:10px; }
html body .crm-performance-dashboard .crm-pipeline-step { border-radius:8px !important; background:var(--card) !important; }
html body .crm-performance-dashboard [data-outcome=submitted] { --outcome-color:#0a6cff; }
html body .crm-performance-dashboard [data-outcome=qualified] { --outcome-color:#6d28d9; }
html body .crm-performance-dashboard [data-outcome=loggedin] { --outcome-color:#526174; }
html body .crm-performance-dashboard [data-outcome=booked] { --outcome-color:#047857; }
/* Pane geometry and media controls remain owned by Collaborate. */
html body :is(.crm-cw-panel,.crm-cw-header,.crm-chat-app,.crm-chat-channels,.crm-chat-people,.crm-chat-conversation-head,.crm-chat-composer,.crm-chat-dialog-card) { background-color:var(--card) !important; color:var(--foreground) !important; border-color:var(--border) !important; }
html body .crm-cw-panel { box-shadow:-16px 0 55px -24px rgba(0,0,0,.4) !important; }
html body .crm-cw-edge-tab { background:#0a6cff !important; color:#fff !important; border-color:#0a6cff !important; border-radius:8px 0 0 8px !important; }
html body .crm-chat-bubble { border-radius:10px !important; box-shadow:var(--shadow-sm); }
html body .crm-chat-message.is-own .crm-chat-bubble { background:var(--accent) !important; color:var(--foreground) !important; border-color:var(--border) !important; }
html body .crm-chat-channel.is-active { background:var(--accent) !important; color:var(--accent-foreground) !important; }
html body .crm-reminder-composer { background:#15171d !important; color:#f4f4f5 !important; }
/* Specialist knowledge/document/form headers use the same neutral/blue system. */
html body :is(.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero) {
  --foreground:var(--cx24-ink) !important; --muted-foreground:var(--cx24-muted) !important;
  background:var(--card) !important; color:var(--cx24-ink) !important; border:1px solid var(--border) !important;
  border-radius:12px !important; box-shadow:var(--shadow-sm) !important;
}
html body :is(.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero) :is(h1,h2) { color:var(--cx24-ink) !important; font-size:clamp(28px,3vw,40px) !important; line-height:1.12; }
html body :is(.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero) p { color:var(--cx24-muted) !important; }
/* Retain the TV wall's compact matrix, dynamic bank columns and live polling. */
html body.performance-display {
  --display-bg:#101114; --display-panel:#18191d; --display-line:#353840;
  --display-muted:#b0b6c3; --display-text:#f4f4f5; --display-cyan:#61a1ff;
  color:#f4f4f5 !important; background-color:#101114 !important;
  background-image:linear-gradient(rgba(220,231,249,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(220,231,249,.035) 1px,transparent 1px) !important;
  background-size:64px 64px !important;
}
html body.performance-display :is(.display-summary,.display-matrix-panel,.display-team-column) { background:#18191d !important; border-color:#353840 !important; border-radius:10px !important; box-shadow:0 1px 2px rgba(0,0,0,.12); }
html body.performance-display :is(.display-team-column>h3,.display-matrix thead th,.display-matrix tfoot td,.display-matrix tfoot th) { background:#22242b !important; color:#e4e4e7 !important; border-color:#353840 !important; }
html body.performance-display .display-matrix :is(td,.display-agent-name) { background:#18191d; border-color:#353840 !important; }
html body.performance-display .display-matrix tbody tr:nth-child(even) :is(td,.display-agent-name) { background:#1d1f25 !important; }
html body.performance-display :is(.display-pair strong,.display-legend strong,.is-booked) { color:#5fd5a0 !important; }
html body.performance-display :is(.display-eyebrow,.display-brand h1 .cx24-heading-accent) { color:#61a1ff !important; }
html body.performance-display :is(.display-matrix-footer,.display-pagination,.display-footer details>div) { background:#18191d !important; border-color:#353840 !important; }
html body.performance-display button { background:#24262c !important; border-color:#515662 !important; color:#f4f4f5 !important; }
@media(max-width:760px) {
  html.cx24-ribbon-ready body.crm-ignorre-shell :is(#main-content,.content-wrapper) { padding:18px 14px 30px !important; }
  html.cx24-ribbon-ready body .crm-topbar { padding:8px 14px !important; gap:8px; }
  html.cx24-ribbon-ready .crm-topbar-right { flex-basis:100% !important; justify-content:flex-start !important; }
  .cx24-brand { width:104px; flex-basis:104px; height:34px; }
  .cx24-brand img { width:104px; height:34px; }
  .cx24-appbar { padding-inline:8px; }
  .cx24-sectionbar { padding-inline:14px; }
  .cx24-tools { padding:10px 14px 12px; gap:10px; }
  .cx24-tool-items>:is(a,button) { width:76px; min-height:64px; font-size:11px !important; }
  html body :is(.crm-feature-hero,.crm-page-hero) { padding:22px 20px !important; }
  .cx24-tools .crm-grid-toolbar { width:100%; }
}
@media(prefers-reduced-motion:reduce) { .cx24-ribbon-shell * { transition:none !important; animation:none !important; } }
@media print {
  .cx24-ribbon-shell,.crm-topbar,.crm-collaborate-widget { display:none !important; }
  html.cx24-ribbon-ready body.crm-ignorre-shell #main-content { padding:0 !important; background:#fff !important; }
}

/* R75 completes the approved software demo geometry. No data/media positioning logic. */
html.cx24-ribbon-pending body>.d-flex>.sidebar:not(.cx24-ribbon-shell) { display:none !important; }
html.cx24-ribbon-pending body>.d-flex { display:block !important; }
html.cx24-ribbon-pending body>.d-flex>#main-content { margin:0 !important; width:100% !important; }
[data-cx24-loading-recovery] { padding:12px 20px; background:var(--card); color:var(--foreground); border-bottom:1px solid var(--border); font:14px Inter,sans-serif; }
[data-cx24-loading-recovery] button { margin-left:10px; padding:6px 10px; border:1px solid var(--input); border-radius:8px; background:var(--card); color:var(--foreground); }
:root { --foreground:#18181b !important; --card-foreground:#18181b !important; --muted-foreground:#52525b !important; --border:#e4e4e7 !important; --input:#d4d4d8 !important; --cx24-ink:#18181b; --cx24-muted:#52525b; --cx24-heading-accent:#0a6cff; --chart-1:#047857; --chart-2:#6d28d9; --chart-3:#526174; --chart-4:#92400e; }
:root[data-theme=dark] { --foreground:#fafafa !important; --card:#18181b !important; --card-foreground:#fafafa !important; --muted-foreground:#a1a1aa !important; --border:#3f3f46 !important; --input:#52525b !important; --cx24-ink:#fafafa; --cx24-muted:#a1a1aa; --cx24-heading-accent:#7aafff; }
.cx24-heading-accent { color:var(--cx24-heading-accent); }
html.cx24-ribbon-ready body .crm-topbar { padding:9px 24px !important; min-height:58px !important; gap:14px; }
html.cx24-ribbon-ready .crm-topbar-right { gap:7px !important; }
html.cx24-ribbon-ready .crm-global-search { width:220px !important; min-width:120px !important; max-width:260px !important; }
html.cx24-ribbon-ready .crm-global-search input { min-width:0 !important; width:100% !important; font-size:13px !important; }
html.cx24-ribbon-ready .crm-global-search kbd { display:none; }
html.cx24-ribbon-ready .crm-role-view button { font-size:12px !important; padding-inline:9px !important; }
html.cx24-ribbon-ready .crm-role-view button>[data-role-view-label] { display:none !important; }
html.cx24-ribbon-ready .crm-role-view-toggle b { display:inline-block !important; background:#eaf2ff !important; color:#1458b8 !important; }
html.cx24-ribbon-ready[data-theme=dark] .crm-role-view-toggle b { background:#152e53 !important; color:#bdd6ff !important; }
html.cx24-ribbon-ready .crm-role-view { max-width:156px; }
html.cx24-ribbon-ready .crm-role-view button { max-width:156px; }
.cx24-ribbon-shell { background-image:linear-gradient(110deg,rgba(255,255,255,.018),transparent 62%) !important; }
.cx24-appbar { padding-block:6px; scrollbar-width:thin; }
.cx24-appbar .crm-rail-nav { gap:2px !important; min-width:0; border:1px solid rgba(255,255,255,.13); border-radius:10px; background:rgba(255,255,255,.035); padding:3px !important; }
.cx24-appbar .crm-rail-button { height:36px !important; padding:0 10px !important; border-radius:7px !important; font-size:12px !important; }
.cx24-appbar .crm-rail-button .crm-rail-tooltip { font-size:12px !important; font-weight:550; }
.cx24-appbar .crm-rail-button.is-active { background:#3f3f46 !important; box-shadow:inset 0 -2px 0 #7aafff !important; border-color:transparent !important; }
.cx24-tools { gap:12px; align-items:flex-start; padding:12px 20px 14px; }
.cx24-tool-items { border-radius:12px; background:rgba(255,255,255,.045); padding:4px; gap:2px; }
html.cx24-ribbon-ready body.crm-page .cx24-tool-items>:is(a,button) { width:82px !important; min-height:72px !important; border-radius:8px !important; font-weight:550; }
.cx24-tool-icon { width:23px !important; height:23px !important; flex:none; }
.cx24-tool-items .cx24-command:disabled { opacity:.38; cursor:not-allowed; }
html.cx24-ribbon-ready body .cx24-tools .crm-grid-toolbar { min-height:82px; gap:3px; padding:4px !important; align-items:flex-start; border-radius:12px !important; background:rgba(255,255,255,.045) !important; width:auto !important; }
.cx24-tools [data-cx24-table-tools] { flex:0 1 auto; }
html.cx24-ribbon-ready body .cx24-tools .crm-grid-toolbar :is(.crm-grid-menu>summary,.cx24-search-tools>summary,.crm-table-width-controls button) { position:relative; display:flex !important; flex-direction:column; align-items:center; justify-content:flex-start; gap:8px; width:82px !important; height:72px !important; min-height:72px !important; padding:8px 5px !important; border:0 !important; background:transparent !important; border-radius:8px !important; color:#e4e4e7 !important; font-size:12px !important; line-height:1.35 !important; }
html.cx24-ribbon-ready body .cx24-tools .crm-grid-toolbar :is(.crm-grid-menu>summary,.cx24-search-tools>summary,.crm-table-width-controls button):hover { background:rgba(255,255,255,.08) !important; }
.cx24-tools .crm-grid-menu>summary em { display:none; }
.cx24-tools .crm-grid-menu>summary::after { display:none; }
.cx24-tools .crm-grid-menu>summary :is(svg,.crm-lucide-icon) { width:23px; height:23px; }
.cx24-tools .crm-table-result-count { display:none; }
.cx24-tools .crm-table-width-controls { margin:0 !important; padding:0 !important; border:0 !important; gap:2px; display:flex !important; }
.cx24-tools .crm-table-width-controls>span { display:none; }
.cx24-tools .crm-table-width-controls button::after { content:attr(data-cx24-width-label); font-size:12px; line-height:1.3; }
html.cx24-ribbon-ready body .cx24-tools .crm-grid-toolbar .crm-table-width-controls .crm-width-reset { font-size:0 !important; }
.cx24-tools .crm-table-width-controls button :is(svg,.crm-lucide-icon) { width:23px !important; height:23px !important; }
.cx24-tools .crm-table-width-controls .crm-width-reset::after { font-size:12px; }
.cx24-tools .crm-table-width-controls .crm-width-reset .cx24-tool-icon { margin-bottom:0; }
.cx24-search-tools { position:relative; }
.cx24-search-tools>summary { list-style:none; cursor:pointer; }
.cx24-search-tools>summary::-webkit-details-marker { display:none; }
.cx24-search-tools .crm-table-search-area { position:absolute; z-index:1020; top:calc(100% + 12px); left:0; display:none !important; width:min(500px,calc(100vw - 32px)); padding:14px; gap:10px; border:1px solid var(--border); border-radius:12px; background:var(--popover); box-shadow:0 14px 40px rgba(0,0,0,.22); }
.cx24-search-tools[open] .crm-table-search-area { display:flex !important; }
.cx24-search-tools .crm-table-search { flex:1 1 100% !important; max-width:100% !important; }
.cx24-search-tools .crm-grid-select { width:auto !important; flex:1 1 150px; }
.cx24-search-tools .crm-table-search-area :is(input,select) { background:var(--card) !important; color:var(--foreground) !important; border-color:var(--input) !important; }
.cx24-tools .crm-grid-toolbar>[hidden] { display:none !important; }
.cx24-tools .crm-grid-menu-panel { top:calc(100% + 12px); border-radius:12px !important; }
html body :is(.card,.crm-dashboard-card,.crm-dashboard-filter-card,.crm-feature-panel,.crm-knowledge-card,.crm-reminder-card,.crm-monitor-card,.crm-team-card,.crm-settings-card,.crm-vault-card) { border-radius:16px !important; }
html body :is(.crm-feature-hero,.crm-page-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero) { border-radius:16px !important; padding:28px 30px !important; }
html.cx24-ribbon-ready body.crm-ignorre-shell #main-content :is(.crm-feature-hero,.crm-page-hero) :is(h1,h2),html body :is(.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero) :is(h1,h2) { font-size:40px !important; font-weight:700 !important; line-height:1.08 !important; letter-spacing:-.035em !important; text-wrap:balance; }
html.cx24-ribbon-ready body.crm-ignorre-shell #main-content .crm-performance-dashboard .crm-feature-hero :is(h1,h2) { font-size:40px !important; }
html body :is(.crm-feature-hero,.crm-page-hero,.crm-knowledge-hero,.crm-vault-hero) { position:relative; isolation:isolate; }
html body :is(.crm-feature-hero,.crm-page-hero)::after { content:''; position:absolute; left:30px; right:30px; top:0; height:1px; background:linear-gradient(90deg,transparent,rgba(10,108,255,.2),transparent); pointer-events:none; }
html body :is(.card-header,.crm-dashboard-card>header,.crm-monitor-card>header) { border-color:var(--border) !important; }
html body :is(.card-header,.crm-dashboard-card>header,.crm-monitor-card>header) :is(h2,h3,h4,h5) { font-size:20px !important; font-weight:650 !important; line-height:1.3 !important; }
html body .crm-pipeline-stage { border-radius:12px !important; background:var(--card) !important; --journey-color:#526174; }
html body .crm-pipeline-stage[data-journey-stage=submitted] { --journey-color:#0a6cff; }
html body .crm-pipeline-stage[data-journey-stage=qualified] { --journey-color:#6d28d9; }
html body .crm-pipeline-stage[data-journey-stage=loggedin] { --journey-color:#526174; }
html body .crm-pipeline-stage[data-journey-stage=booked] { --journey-color:#047857; }
html body .crm-pipeline-stage[data-journey-stage=rework] { --journey-color:#92400e; }
html body .crm-pipeline-stage[data-journey-stage=backout] { --journey-color:#b91c1c; }
html body .crm-pipeline-stage b { font-variant-numeric:tabular-nums; }
html body .crm-pipeline-stage.is-booked { background:color-mix(in srgb,#047857 6%,var(--card)) !important; }
html body .crm-performance-dashboard .crm-race-progress-fill { background:#0a6cff !important; }
html body .crm-grid-menu-panel,.crm-personal-dropdown,.crm-global-results { border-radius:12px !important; }
html body :is(.crm-lead-dialog,.crm-workflow-dialog,.crm-tool-popup,.crm-chat-dialog-card) { background:var(--card) !important; color:var(--foreground) !important; border-color:var(--border) !important; border-radius:16px; }
html body :is(.crm-lead-dialog-head,.crm-chat-nav,.crm-chat-toolbar,.crm-chat-conversation-head,.crm-chat-composer,.crm-cw-header) { background-color:var(--card) !important; color:var(--foreground) !important; border-color:var(--border) !important; }
html body .crm-cw-header { background-image:linear-gradient(110deg,rgba(10,108,255,.045),transparent); }
html body .crm-chat-bubble { border-radius:12px !important; background:var(--muted) !important; border:1px solid var(--border) !important; }
html body .crm-chat-message.is-own .crm-chat-bubble { background:var(--accent) !important; }
html body .crm-cw-edge-tab { box-shadow:-3px 0 18px -8px rgba(10,108,255,.5); }
html body tr[data-cx24-selected=true]>td { box-shadow:inset 0 1px 0 rgba(10,108,255,.2),inset 0 -1px 0 rgba(10,108,255,.2); }
html body .table tbody tr:hover { background:var(--muted); }
@media(max-width:760px) {
  html.cx24-ribbon-ready body .crm-topbar { padding:8px 14px !important; }
  .cx24-appbar { padding-inline:10px; }
  .cx24-tools { padding-inline:14px; }
  html.cx24-ribbon-ready body.crm-page .cx24-tool-items>:is(a,button),html.cx24-ribbon-ready body .cx24-tools .crm-grid-toolbar :is(.crm-grid-menu>summary,.cx24-search-tools>summary,.crm-table-width-controls button) { width:72px !important; }
  html.cx24-ribbon-ready body.crm-ignorre-shell #main-content :is(.crm-feature-hero,.crm-page-hero) :is(h1,h2),html body :is(.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero) :is(h1,h2) { font-size:28px !important; }
  html.cx24-ribbon-ready body.crm-ignorre-shell #main-content .crm-performance-dashboard .crm-feature-hero :is(h1,h2) { font-size:28px !important; }
}

/* R76: the same square software geometry on every workspace and embedded page.
   Presentation only. Native form, grid, permission and media owners are retained. */
:root {
  --radius:0px !important;
  --bs-border-radius:0 !important;
  --bs-border-radius-sm:0 !important;
  --bs-border-radius-lg:0 !important;
  --bs-border-radius-xl:0 !important;
  --bs-border-radius-xxl:0 !important;
}
/* All cards/tiles/panels, including page-specific modules and popup contents.
   Deliberately not a universal selector: portraits and presence dots stay round. */
html body.crm-page :is([class*="card"],[class*="tile"],[class*="panel"],.card,.crm-feature-hero,.crm-page-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero,.crm-pipeline-stage,.crm-personal-tabs,.crm-personal-tab,.crm-app-tile,.crm-dashboard-card,.crm-feature-panel,.crm-grid-toolbar,.crm-grid-menu-panel,.crm-personal-dropdown,.crm-global-results,.crm-lead-dialog,.crm-workflow-dialog,.crm-tool-popup,.crm-chat-dialog-card,.crm-chat-bubble,.crm-cw-edge-tab,.crm-cw-panel,.crm-chat-conversation,.crm-chat-composer,.crm-cw-header,.crm-lead-dialog-head,.crm-race-card,.crm-race-track,.crm-race-lane,.crm-race-slot,.crm-race-prize,.crm-outcome-column,.crm-chart-legend,.crm-table-shell,.table-responsive,.display-summary-card,.display-agent,.display-matrix,.display-column,.crm-role-view-menu,.crm-role-view-toggle,.crm-personal-trigger),
html body :is([class*="card"],[class*="tile"],[class*="panel"],.card,.card-header,.card-footer,.crm-dashboard-card,.crm-dashboard-filter-card,.crm-feature-panel,.crm-knowledge-card,.crm-reminder-card,.crm-monitor-card,.crm-team-card,.crm-settings-card,.crm-vault-card,.crm-suite-card,.crm-feature-hero,.crm-page-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero,.crm-pipeline-stage,.crm-lead-dialog,.crm-workflow-dialog,.crm-tool-popup,.crm-chat-dialog-card,.crm-chat-bubble,.modal-content,.modal-header,.modal-footer,.crm-grid-menu-panel,.crm-personal-dropdown,.crm-global-results,.crm-cw-edge-tab,.crm-cw-panel,.crm-cw-widget,.crm-support-card,.crm-vault-folder,.crm-vault-file,.performance-display [class*="card"],.performance-display [class*="tile"],.performance-display [class*="panel"],.performance-display .display-summary,.performance-display .display-matrix,.performance-display .display-column) {
  border-radius:0 !important;
}
html.cx24-ribbon-ready body.crm-page .cx24-ribbon-shell :is(.crm-rail-nav,.crm-rail-button,.cx24-tool-group,.cx24-tool-items,.cx24-command,.crm-grid-toolbar,.crm-grid-menu>summary,.cx24-search-tools>summary,.crm-table-width-controls button,.crm-grid-menu-panel,.crm-table-search-area),
html.cx24-ribbon-ready body.crm-page .cx24-tool-items>:is(a,button),
html body :is(.btn,.crm-tool-button,.crm-icon-button,.crm-grid-menu>summary,.form-control,.form-select,.crm-grid-select,.crm-grid-search-input,.crm-personal-tab,.crm-role-view button,.crm-global-search input,[data-cx24-loading-recovery] button) {
  border-radius:0 !important;
}
/* Thin shared outlines replace the inconsistent rounded silhouettes. */
html body :is(.card,.crm-dashboard-card,.crm-feature-panel,.crm-suite-card,.crm-knowledge-card,.crm-vault-card,.crm-reminder-card,.crm-monitor-card) {
  border-color:var(--border) !important;
  box-shadow:0 1px 0 rgba(24,24,27,.025),0 4px 16px -12px rgba(24,24,27,.16) !important;
}
html body.performance-display :is(.display-summary,.display-matrix-panel,.display-team-column) { border-radius:0 !important; }
html body .crm-performance-dashboard .crm-pipeline-step,
html.cx24-ribbon-ready .crm-personal-menu .crm-personal-trigger.crm-rail-account { border-radius:0 !important; }
/* Some booked-form modules load their local stylesheet after the global theme.
   Their own radius tokens must also be square, without changing form layout. */
html body.crm-page-booked-form { --ignorre-radius:0px !important; --ignorre-control-radius:0px !important; }
html body :is(.crm-detail,.crm-prize-editor form,.crm-prize-disclosure,.crm-notification-toast,.crm-notification-icon) { border-radius:0 !important; }
.cx24-tools [data-cx24-table-tools]>.cx24-tool-items { padding:0; background:transparent; }
html.cx24-ribbon-ready body .cx24-tools .crm-grid-toolbar[hidden],
html body .cx24-ribbon-shell [hidden],.cx24-table-chooser[hidden],
html body .cx24-sectionbar .crm-rail-panel-links>a[hidden],
html body .crm-feature-actions>a[data-cx24-duplicate][hidden],
html body .crm-feature-hero .crm-dashboard-hero-actions>a[data-cx24-duplicate][hidden] { display:none !important; }
.cx24-table-chooser { display:flex; align-items:center; gap:8px; margin-top:7px; font-size:11px; color:#a1a1aa; }
.cx24-table-chooser select { border:1px solid #52525b; background:#18181b; color:#f4f4f5; border-radius:0; padding:4px 28px 4px 7px; width:min(240px,100%); min-width:120px; max-width:100%; font:inherit; font-size:12px; }
.cx24-table-chooser select:focus-visible { outline:2px solid #7aafff; outline-offset:2px; }
.cx24-tool-items { max-width:100%; }
.cx24-tools [data-cx24-table-tools] { max-width:100%; }
@media(max-width:760px) {
  .cx24-table-chooser { flex-wrap:wrap; }
  .cx24-tools [data-cx24-table-tools]>.cx24-tool-items { overflow:visible; }
}

/* R76 follow-through: auth surfaces use the same sharp black/blue workspace. */
html body.auth-page :is(.crm-auth-story,.crm-auth-form-brand,.crm-auth-status,.crm-auth-theme-toggle) { border-radius:0 !important; }
html body.auth-page .crm-auth-story {
  background:linear-gradient(135deg,#09090b,#111827) !important;
  border-color:#27272a !important;
  box-shadow:0 12px 36px -24px rgba(24,24,27,.3) !important;
}

/* One persistent application frame; native section/tools stay in their owner. */
html.cx24-workspace-host body { height:100dvh; min-height:0; overflow:hidden !important; }
html.cx24-workspace-host .cx24-ribbon-shell > :is(.cx24-sectionbar,.cx24-tools) { display:none !important; }
html.cx24-workspace-host.cx24-ribbon-ready body.crm-ignorre-shell #main-content { margin:0 !important; padding:0 !important; min-height:0 !important; width:100%; }
html.cx24-workspace-host .crm-feature-content { padding:0 !important; }
[data-crm-persistent-workspace] { position:relative; height:calc(100dvh - var(--cx24-navigation-header,110px)); min-height:0; width:100%; }
[data-crm-workspace-frames] { height:100%; width:100%; }
.cx24-workspace-frame { border:0; display:block; width:100%; height:100%; background:var(--background,#f6f8fb); }
.cx24-workspace-frame[data-staging] { position:absolute; inset:0; visibility:hidden; pointer-events:none; }
[data-crm-workspace-status] { position:absolute; top:8px; right:16px; z-index:3; max-width:calc(100% - 32px); margin:0; padding:8px 12px; border:1px solid var(--border,#d4d4d8); background:var(--card,#fff); color:var(--foreground,#18181b); font-size:13px; box-shadow:0 2px 10px #0000000d; }
[data-crm-workspace-status]:empty { display:none; }
[data-crm-workspace-retry] { position:absolute; z-index:4; right:16px; top:54px; }
html.cx24-workspace-leaf.cx24-ribbon-ready body.crm-page :is(.crm-topbar,.cx24-appbar) { display:none !important; }
html.cx24-workspace-leaf body { margin:0 !important; padding-top:0 !important; }
html.cx24-workspace-leaf .cx24-ribbon-shell { top:0 !important; }
html.cx24-workspace-leaf #main-content { margin-left:0 !important; }
html body :is(dialog,.crm-help-launcher,.crm-support-consent) { border-radius:0 !important; }
@media(max-width:760px) { [data-crm-workspace-status] { right:8px; max-width:calc(100% - 16px); } }
/* R77 live-preview correction: notices must never cover a native form's Close,
   Save or navigation buttons. A reserved strip shrinks only the content area. */
[data-crm-persistent-workspace] { display:flex; flex-direction:column; }
[data-crm-workspace-notice] { flex:none; display:flex; align-items:center; gap:12px; padding:8px 16px; border-bottom:1px solid var(--border,#d4d4d8); background:var(--card,#fff); }
[data-crm-workspace-notice]:has([data-crm-workspace-status]:empty) { display:none; }
[data-crm-workspace-status] { position:static; flex:1; padding:0; border:0; box-shadow:none; max-width:none; }
[data-crm-workspace-retry] { position:static; flex:none; }
[data-crm-workspace-frames] { flex:1; min-height:0; height:auto; }
html body :is(.crm-workflow-shell,.crm-workflow-confirm-card,.crm-workflow-pipeline,.crm-workflow-close,.crm-workflow-discard) { border-radius:0 !important; }
@media(max-width:760px) { [data-crm-workspace-notice] { padding:8px; flex-wrap:wrap; } [data-crm-workspace-status] { min-width:0; } }

/* R79 compact workspaces: reduced spacing, preserved readable text and native controls. */
html.cx24-ribbon-ready body.crm-ignorre-shell :is(#main-content,.content-wrapper,body>.d-flex>.flex-grow-1) { padding:16px 20px 28px !important; }
html.cx24-ribbon-ready body .crm-topbar { min-height:54px !important; padding:6px 20px !important; gap:8px; }
.cx24-appbar { padding-inline:16px; }
.cx24-appbar .crm-rail-button { height:40px !important; padding-inline:10px !important; }
.cx24-sectionbar { padding-inline:20px; }
.cx24-sectionbar .crm-rail-panel-links>a { min-height:32px !important; padding-block:8px !important; }
.cx24-tools { padding:8px 20px 9px; gap:8px; }
.cx24-tool-label { margin-bottom:3px; }
.cx24-tool-items { padding:3px; gap:2px; }
html.cx24-ribbon-ready body.crm-page .cx24-tool-items>:is(a,button) { width:78px !important; min-height:58px !important; padding:5px 4px !important; gap:4px; }
.cx24-tool-items>:is(a,button)>span { min-height:32px; display:flex; align-items:center; justify-content:center; }
.cx24-tools .crm-grid-toolbar { min-height:64px; padding:3px !important; }
html body .cx24-tool-items>button[aria-pressed=true] { background:#16417b !important; box-shadow:inset 0 -2px #6aa9ff !important; color:#fff !important; }
html body .cx24-tool-items>[hidden] { display:none !important; }
[data-cx24-followup-tools] { order:2; flex:0 1 100%; }
/* R80: one comfortable, sharp workspace theme. Presentation only. */
:root { --cx24-surface-shadow:0 1px 2px rgba(24,24,27,.04); --cx24-surface-space:20px 24px; --cx24-section-gap:20px; }
:root[data-theme=dark] { --cx24-surface-shadow:0 1px 2px rgba(0,0,0,.16); }
html.cx24-ribbon-ready body.crm-ignorre-shell :is(#main-content,.content-wrapper,body>.d-flex>.flex-grow-1) { padding:20px 24px 36px !important; }
/* Keep the persistent shell and native pane owners in charge of geometry. */
html.cx24-workspace-host.cx24-ribbon-ready body.crm-ignorre-shell #main-content { padding:0 !important; min-height:0 !important; }
html body :is(.crm-feature-hero,.crm-page-hero,.crm-suite-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero,.crm-attendance-heading) {
  background:var(--card) !important; color:var(--foreground) !important;
  border:1px solid var(--border) !important; border-radius:0 !important;
  box-shadow:var(--cx24-surface-shadow) !important;
  padding:24px !important; min-height:0 !important; margin:0 0 var(--cx24-section-gap) !important;
  gap:16px; align-items:center;
}
html body :is(.crm-feature-hero,.crm-page-hero,.crm-suite-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero)::before,
html body :is(.crm-feature-hero,.crm-page-hero,.crm-suite-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero)::after { display:none !important; }
html.cx24-ribbon-ready body.crm-ignorre-shell #main-content :is(.crm-feature-hero,.crm-page-hero,.crm-suite-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero,.crm-attendance-heading) :is(h1,h2),
html body :is(.crm-feature-hero,.crm-page-hero,.crm-suite-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero,.crm-attendance-heading) :is(h1,h2) {
  font-size:clamp(28px,2.65vw,34px) !important; font-weight:700 !important;
  line-height:1.2 !important; letter-spacing:-.035em !important;
  margin:6px 0 8px !important; color:var(--cx24-ink) !important;
}
html body :is(.crm-feature-hero,.crm-page-hero,.crm-suite-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero,.crm-attendance-heading) p { color:var(--muted-foreground) !important; font-size:15px !important; line-height:1.6 !important; margin:0 !important; max-width:80ch; }
html.cx24-ribbon-ready body.crm-ignorre-shell #main-content .crm-performance-dashboard .crm-feature-hero :is(h1,h2) { font-size:clamp(28px,2.65vw,34px) !important; }
html body :is(.crm-feature-hero,.crm-page-hero,.crm-suite-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero) :is(.crm-section-eyebrow,.crm-feature-kicker),
html body .crm-attendance-heading>div>span { color:var(--muted-foreground) !important; font-size:11px !important; letter-spacing:.08em; background:transparent !important; padding:0 !important; border:0 !important; }
html body :is(.crm-feature-hero,.crm-page-hero,.crm-suite-hero) :is(.btn-outline-light,.crm-coming-badge) { color:var(--accent-foreground) !important; background:var(--accent) !important; border:1px solid var(--border) !important; border-radius:0 !important; }
html body :is(.card,.crm-dashboard-card,.crm-dashboard-filter-card,.crm-feature-panel,.crm-suite-card,.crm-coming-card,.crm-knowledge-card,.crm-knowledge-section,.crm-vault-card,.crm-reminder-card,.crm-monitor-card,.crm-team-card,.crm-settings-card,.crm-support-card,.crm-analytics-card,.crm-review-card,.crm-work-panel,.crm-rule-card,.crm-kpi-card,.crm-quick-card,.crm-attendance-filters,.crm-attendance-table-wrap),
html body .crm-attendance-metrics>article {
  background:var(--card) !important; color:var(--foreground) !important;
  border:1px solid var(--border) !important; border-radius:0 !important;
  box-shadow:var(--cx24-surface-shadow) !important; min-width:0;
}
html body :is(.crm-dashboard-card,.crm-dashboard-filter-card,.crm-suite-card,.crm-coming-card,.crm-analytics-card,.crm-review-card,.crm-work-panel,.crm-rule-card,.crm-attendance-filters),
html body .crm-attendance-metrics>article { padding:var(--cx24-surface-space) !important; }
/* Panels with native separate header/body keep their original structure. */
html body :is(.card-header,.card-footer,.crm-feature-panel-head,.crm-feature-panel-body,.crm-suite-card-body,.crm-monitor-card-body,.card-body) { padding:var(--cx24-surface-space) !important; }
html body :is(.card-header,.card-footer,.crm-feature-panel-head) { background:var(--card) !important; color:var(--foreground) !important; border-color:var(--border) !important; }
html body :is(.crm-no-pad,.crm-bank-details,.crm-field-policy,.crm-security-events) { padding:0 !important; }
html body :is(.card-header,.crm-feature-panel-head,.crm-suite-card-head,.crm-dashboard-card>header,.crm-dashboard-filter-head,.crm-monitor-card>header) :is(h2,h3,h4,h5),
html body :is(.crm-coming-card,.crm-suite-card,.crm-work-panel)>:is(h2,h3) { font-size:20px !important; line-height:1.35 !important; font-weight:650 !important; color:var(--foreground) !important; }
html body :is(.crm-feature-panel-head,.crm-suite-card-head,.crm-dashboard-card>header,.crm-dashboard-filter-head,.crm-monitor-card>header) p { font-size:14px !important; line-height:1.55 !important; color:var(--muted-foreground) !important; margin-top:4px; }
html body .text-muted { color:var(--muted-foreground) !important; }
html body :is(.crm-knowledge-find,.crm-knowledge-library,.crm-knowledge-item,.crm-monitor-detail) { background:var(--card) !important; color:var(--foreground) !important; border:1px solid var(--border) !important; border-radius:0 !important; box-shadow:var(--cx24-surface-shadow) !important; }
html body :is(.crm-knowledge-find,.crm-knowledge-library,.crm-knowledge-item) { padding:var(--cx24-surface-space) !important; }
html body #main-content .crm-knowledge { max-width:none; }
html body .crm-knowledge-hero>i { color:var(--accent-foreground) !important; font-size:36px; }
html body :is(.crm-knowledge-find,.crm-knowledge-library) h2 { font-size:20px; font-weight:650; }
html body .crm-monitor-detail { --crm-surface:var(--card) !important; --crm-text:var(--foreground) !important; --crm-muted:var(--muted-foreground) !important; --crm-border:var(--border) !important; --crm-bg:var(--muted) !important; }
html body .crm-monitor-detail>header { background:var(--card) !important; color:var(--foreground) !important; }
html body :is(.crm-field,.crm-dbr-row,.crm-knowledge,.crm-attendance,.crm-security-rule-form) :is(button,select,textarea,input:not([type=checkbox]):not([type=radio])) { border-radius:0 !important; }
html body :is(.crm-metric,.crm-suite-stat,.crm-feature-stat) { background:var(--card) !important; color:var(--foreground) !important; border:1px solid var(--border) !important; padding:var(--cx24-surface-space) !important; min-height:0 !important; border-radius:0 !important; box-shadow:var(--cx24-surface-shadow) !important; }
html body .crm-metric-grid { gap:16px !important; margin-block:20px !important; }
html body .crm-metric-value { font-size:30px !important; line-height:1.2 !important; margin-block:8px !important; }
html body .crm-metric-icon { width:32px !important; height:32px !important; font-size:18px !important; border-radius:0 !important; }
html body .crm-coming-layout { grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin-bottom:20px; }
html body .crm-coming-card { min-height:160px !important; }
html body .crm-coming-card.is-primary { display:block; grid-column:1 / -1; grid-row:auto; min-height:0 !important; align-content:start; }
html body .crm-coming-card.is-primary h2 { max-width:none; font-size:24px !important; margin:8px 0; }
html body .crm-coming-card p { font-size:14px !important; line-height:1.6 !important; }
html body .crm-coming-card>i,html body .crm-coming-icon { width:36px; height:36px; margin:0 0 14px; background:var(--accent) !important; color:var(--accent-foreground) !important; border-radius:0 !important; box-shadow:none !important; font-size:20px; }
html body .crm-coming-card.is-primary .crm-coming-icon { float:left; margin:4px 16px 36px 0; }
/* Attendance has a native wrapper; avoid a second different page gutter. */
html body #main-content .crm-attendance { padding:0 !important; max-width:none; }
html body .crm-attendance-metrics { gap:16px; }
html body .crm-attendance-metrics>article strong { font-size:30px; }
html body .crm-attendance-table-wrap { border-radius:0 !important; }
/* Comfortable dashboard density uses the same surface as the other apps. */
html body #main-content .crm-performance-dashboard { gap:var(--cx24-section-gap) !important; }
html body #main-content .crm-performance-dashboard>.crm-feature-hero { padding:24px !important; }
html body #main-content .crm-performance-dashboard :is(.crm-dashboard-card,.crm-dashboard-filter-card) { padding:var(--cx24-surface-space) !important; margin:0 !important; }
html body #main-content .crm-performance-dashboard .crm-reporting-scope { gap:var(--cx24-section-gap) !important; }
html body #main-content .crm-performance-dashboard .crm-dashboard-card>header { margin-bottom:16px; gap:16px; align-items:center; }
html body #main-content .crm-performance-dashboard .crm-dashboard-eyebrow { font-size:11px; margin-bottom:4px; }
html body #main-content .crm-performance-dashboard .crm-pipeline-ribbon { grid-template-columns:repeat(6,minmax(0,1fr)) !important; gap:10px !important; border:0; }
html body #main-content .crm-performance-dashboard .crm-pipeline-ribbon.has-lead-pipeline { grid-template-columns:repeat(7,minmax(0,1fr)) !important; }
html body #main-content .crm-performance-dashboard .crm-pipeline-stage { min-height:124px !important; padding:16px 14px !important; grid-template-rows:auto auto auto; border:1px solid var(--border) !important; border-top:3px solid var(--journey-color,var(--primary)) !important; border-radius:0 !important; box-shadow:var(--cx24-surface-shadow) !important; gap:6px; }
html body #main-content .crm-performance-dashboard .crm-pipeline-stage strong { font-size:14px; }
html body #main-content .crm-performance-dashboard .crm-pipeline-stage b { font-size:30px !important; margin:0 !important; line-height:1.2; }
html body #main-content .crm-performance-dashboard .crm-pipeline-stage small { font-size:12px !important; line-height:1.4 !important; }
html body #main-content .crm-performance-dashboard .crm-pipeline-stage.is-selected { box-shadow:inset 0 0 0 2px var(--primary) !important; }
html body #main-content .crm-performance-dashboard .crm-dashboard-filter-head { margin:0 0 16px; align-items:center; }
html body #main-content .crm-performance-dashboard .crm-dashboard-filter-grid { grid-template-columns:minmax(180px,1.3fr) repeat(3,minmax(128px,1fr)) auto; gap:12px; }
html body #main-content .crm-performance-dashboard .crm-dashboard-filter-actions { grid-column:auto; align-self:end; }
html body #main-content .crm-performance-dashboard .crm-dashboard-filter-grid :is(input,select) { min-height:42px; font-size:15px !important; }
html body #main-content .crm-performance-dashboard .crm-dashboard-filter-actions .btn { min-height:42px; font-size:14px; padding:8px 12px; }
html body #main-content .crm-performance-dashboard .crm-outcome-filter { padding:0 0 16px !important; margin:0 0 16px; }
html body #main-content .crm-performance-dashboard .crm-outcome-filter-head { margin-bottom:12px; align-items:center; }
html body #main-content .crm-performance-dashboard .crm-outcome-filter-head h3 { font-size:20px !important; line-height:1.35; }
html body #main-content .crm-performance-dashboard .crm-outcome-filter-head p { font-size:14px !important; line-height:1.55 !important; }
html body #main-content .crm-performance-dashboard .crm-outcome-filter-groups { display:flex; flex-wrap:wrap; gap:12px 20px; }
html body #main-content .crm-performance-dashboard .crm-outcome-filter-groups>section { flex:1 1 340px; padding:0 !important; }
html body #main-content .crm-performance-dashboard .crm-outcome-filter-ribbon { display:flex !important; flex-wrap:wrap; gap:8px !important; }
html body #main-content .crm-performance-dashboard .crm-outcome-filter-chip { flex:1 0 auto; min-height:42px !important; padding:8px 10px !important; gap:8px; border-radius:0 !important; box-shadow:none !important; }
html body #main-content .crm-performance-dashboard .crm-outcome-filter-chip :is(span,strong) { font-size:14px; }
html body #main-content .crm-performance-dashboard #applyOutcomeFilter { margin-top:12px; padding:8px 12px; min-height:40px; font-size:14px; }
html body #main-content .crm-performance-dashboard .crm-outcome-canvas-summary { gap:12px 24px; margin-bottom:12px; }
html body #main-content .crm-performance-dashboard .crm-dashboard-chart.is-tall { height:var(--crm-compact-chart-height,340px) !important; max-height:none !important; }
html body #main-content .crm-performance-dashboard :is(.crm-dashboard-values,.crm-dashboard-prizes) { border-top:1px solid var(--border); margin-top:16px; padding-top:12px; }
html body #main-content .crm-performance-dashboard summary { font-size:14px; font-weight:600; cursor:pointer; color:var(--foreground); padding:6px 0; }
html body #main-content .crm-performance-dashboard .crm-race-month-progress { padding:12px 16px; gap:6px; margin:0 0 16px; border:1px solid var(--border); border-radius:0 !important; background:var(--muted); }
html body #main-content .crm-performance-dashboard .crm-race-month-track { height:5px; }
html body #main-content .crm-performance-dashboard .crm-race-month-track>i { background:var(--primary); box-shadow:none; }
html body #main-content .crm-performance-dashboard .crm-race-definitions summary { font-size:13px; font-weight:500; color:var(--muted-foreground); }
html body #main-content .crm-performance-dashboard .crm-race-definitions small { font-size:13px !important; line-height:1.55 !important; }
html body #main-content .crm-performance-dashboard .crm-booking-race-podium { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
html body #main-content .crm-performance-dashboard .crm-booking-race-card { display:grid; grid-template-columns:minmax(0,1fr) auto; grid-template-rows:auto auto auto auto; min-height:156px !important; gap:6px 12px; padding:16px !important; background:var(--card) !important; border-color:var(--border) !important; border-radius:0 !important; box-shadow:var(--cx24-surface-shadow) !important; align-content:start; }
html body #main-content .crm-performance-dashboard .crm-booking-race-card::after { display:none; }
html body #main-content .crm-performance-dashboard .crm-booking-race-place { position:static; grid-column:1; font-size:12px; }
html body #main-content .crm-performance-dashboard .crm-booking-race-card>strong { grid-column:1; grid-row:2; max-width:100%; font-size:16px; overflow-wrap:anywhere; }
html body #main-content .crm-performance-dashboard .crm-booking-race-card>b { grid-column:2; grid-row:1 / 3; align-self:center; font-size:30px; }
html body #main-content .crm-performance-dashboard .crm-booking-race-card>small { grid-column:1 / -1; grid-row:4; font-size:12px; font-weight:500; }
html body #main-content .crm-performance-dashboard .crm-race-track { grid-column:1 / -1; grid-row:3; height:32px; margin:4px 0; border-bottom-width:2px; }
html body #main-content .crm-performance-dashboard .crm-race-runner { font-size:23px; height:28px; bottom:2px; filter:none; }
html body #main-content .crm-performance-dashboard .crm-race-finish { font-size:18px; }
html body #main-content .crm-performance-dashboard .crm-race-rotation-controls { padding-top:12px; font-size:13px; }
html body #main-content .crm-performance-dashboard .crm-race-rotation-controls button { padding:7px 12px; min-height:36px; }
/* Pane colours match the workspace; its drag/resize/media layout is untouched. */
html body :is(.crm-cw-header,.crm-chat-conversation-head,.crm-chat-composer,.crm-chat-dialog-card,.crm-lead-dialog-head,.crm-workflow-confirm-card,.crm-tool-popup) { background:var(--card) !important; color:var(--foreground) !important; border-color:var(--border) !important; }
html body .crm-reminder-composer { background:var(--card) !important; color:var(--foreground) !important; }
@media(max-width:1050px) {
  html body #main-content .crm-performance-dashboard .crm-dashboard-filter-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  html body #main-content .crm-performance-dashboard .crm-dashboard-filter-actions { grid-column:1 / -1; }
  html body #main-content .crm-performance-dashboard :is(.crm-pipeline-ribbon,.crm-pipeline-ribbon.has-lead-pipeline) { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
  html body .crm-coming-layout { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:600px) {
  :root { --cx24-surface-space:16px; --cx24-section-gap:16px; }
  html.cx24-ribbon-ready body.crm-ignorre-shell #main-content { padding:16px 12px 28px !important; }
  html.cx24-workspace-host.cx24-ribbon-ready body.crm-ignorre-shell #main-content { padding:0 !important; }
  html body :is(.crm-feature-hero,.crm-page-hero,.crm-suite-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero,.crm-attendance-heading),html body #main-content .crm-performance-dashboard>.crm-feature-hero { padding:20px 16px !important; }
  html body #main-content .crm-performance-dashboard .crm-booking-race-podium { grid-template-columns:1fr; }
  html body #main-content .crm-performance-dashboard .crm-dashboard-filter-grid { grid-template-columns:1fr; }
  html body #main-content .crm-performance-dashboard :is(.crm-pipeline-ribbon,.crm-pipeline-ribbon.has-lead-pipeline) { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
  html body #main-content .crm-performance-dashboard .crm-dashboard-card>header { align-items:flex-start; flex-wrap:wrap; }
  html body .crm-coming-layout { grid-template-columns:1fr; }
  html body .crm-coming-card.is-primary { grid-column:auto; }
  html body .crm-coming-card.is-primary .crm-coming-icon { float:none; margin:0 0 14px; }
}

/* R80 C2: the native DBR popup uses the same sharp surface and blue accent. */
html body .crm-dbr-primary {
  padding:var(--cx24-surface-space) !important;
  border:1px solid var(--border) !important; border-radius:0 !important;
  background:var(--card) !important; color:var(--foreground) !important;
  box-shadow:var(--cx24-surface-shadow) !important;
}
html body .crm-dbr-primary>span { color:var(--primary) !important; font-size:11px; }
html body .crm-dbr-primary>strong { color:var(--primary); font-size:40px; font-weight:700; line-height:1.2; letter-spacing:-.035em; }
html body .crm-dbr-primary p { color:var(--muted-foreground) !important; font-size:14px; line-height:1.55; }
html body .crm-dbr-meter { height:6px; border-radius:0 !important; background:var(--muted) !important; }
html body .crm-dbr-meter i { border-radius:0 !important; background:var(--primary) !important; }
html body .crm-dbr-primary[data-tone="warning"] .crm-dbr-meter i { background:var(--warning) !important; }
html body .crm-dbr-primary[data-tone="danger"] .crm-dbr-meter i { background:var(--destructive) !important; }
html body .crm-dbr-layout :is(.crm-input-suffix,.crm-suite-card-head>div:first-child>span,.crm-dbr-projection>div,.crm-suite-disclaimer) { border-radius:0 !important; }
html body .crm-dbr-layout :is(.crm-field>span,.crm-dbr-row label>span,.crm-dbr-summary dt,.crm-dbr-summary dd) { font-size:13px; }
/* The pane header is an unclassed native header; do not change its geometry. */
html body .crm-cw-panel>header { background:var(--card) !important; color:var(--foreground) !important; border-color:var(--border) !important; }

/* R81: freeze the native section/tools ribbon in its own scrolling document.
   The outer persistent shell continues to own the apps and account header. */
html.cx24-ribbon-ready:not(.cx24-workspace-host) {
  scroll-padding-top:calc(var(--cx24-frozen-ribbon-height,0px) + 12px);
}
/* hidden on just the x axis creates a y scroll container and breaks sticky.
   clip does not. Do not change y overflow: native modal scroll locks still win. */
html.cx24-ribbon-ready:not(.cx24-workspace-host) body.crm-page {
  overflow-x:clip !important;
}
html.cx24-ribbon-ready:not(.cx24-workspace-host) body.crm-page .cx24-ribbon-shell.sidebar {
  position:sticky !important;
  inset:auto !important;
  top:0 !important;
}
/* Keep a usable data area on phones and short windows. Tools remain available
   in a single horizontal strip; menus use a bounded, unclipped native panel. */
@media (max-width:760px), (max-height:600px) {
  html.cx24-ribbon-ready:not(.cx24-workspace-host) .cx24-tools {
    flex-wrap:nowrap;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scrollbar-width:thin;
  }
  html.cx24-ribbon-ready:not(.cx24-workspace-host) .cx24-tools .cx24-tool-group {
    flex:0 0 auto;
    max-width:none;
  }
  html.cx24-ribbon-ready:not(.cx24-workspace-host) .cx24-tools .cx24-tool-items,
  html.cx24-ribbon-ready:not(.cx24-workspace-host) .cx24-tools .crm-grid-toolbar {
    flex-wrap:nowrap;
  }
  html.cx24-ribbon-ready:not(.cx24-workspace-host) .cx24-tools :is(.crm-grid-menu-panel,.cx24-search-tools .crm-table-search-area) {
    position:fixed !important;
    inset:auto 12px 12px !important;
    width:auto !important;
    max-width:calc(100vw - 24px);
    max-height:calc(100dvh - 24px);
    overflow-y:auto;
  }
}
@media print {
  html.cx24-ribbon-ready:not(.cx24-workspace-host) body.crm-page .cx24-ribbon-shell.sidebar {
    position:static !important;
  }
}

/* R81 C2: bound open ribbon menus on either edge without replacing native controls. */
html.cx24-ribbon-ready:not(.cx24-workspace-host) .cx24-tools :is(.crm-grid-menu-panel,.cx24-search-tools .crm-table-search-area) {
  left:var(--cx24-frozen-panel-left,0px) !important;
  right:auto !important;
  max-width:calc(100vw - 24px);
}
@media (max-width:760px), (max-height:600px) {
  html.cx24-ribbon-ready:not(.cx24-workspace-host) .cx24-tools :is(.crm-grid-menu-panel,.cx24-search-tools .crm-table-search-area) {
    inset:auto 12px 12px !important;
  }
}

/* R82: contextual sheet controls, consistent ribbon hover and a vivid Create group. */
html.cx24-ribbon-ready body.crm-page .cx24-tools .cx24-tool-items>:is(a,button):is(:hover,:focus-visible):not(:disabled) {
  background:#2b2e35 !important;color:#fff !important;border-color:transparent !important;box-shadow:none !important;
}
html.cx24-ribbon-ready body.crm-page .cx24-tools [data-cx24-create-tools]>.cx24-tool-label {color:#91bdff;}
html.cx24-ribbon-ready body.crm-page .cx24-tools [data-cx24-create-tools]>.cx24-tool-items {
  border-color:#387be2;background:linear-gradient(135deg,#16417b,#102750);box-shadow:inset 0 1px rgba(255,255,255,.08);
}
html.cx24-ribbon-ready body.crm-page .cx24-tools [data-cx24-create-tools]>.cx24-tool-items>:is(a,button) {
  background:transparent !important;color:#fff !important;
}
html.cx24-ribbon-ready body.crm-page .cx24-tools [data-cx24-create-tools]>.cx24-tool-items>:is(a,button):is(:hover,:focus-visible):not(:disabled) {
  background:#2155a0 !important;color:#fff !important;
}
.cx24-tools [data-cx24-followup-tools] {flex:1 1 520px;}
.cx24-tools [data-cx24-followup-tools]>.cx24-tool-items {display:grid;grid-template-columns:repeat(6,minmax(0,1fr));max-width:100%;}
html.cx24-ribbon-ready body.crm-page .cx24-tools [data-cx24-followup-tools]>.cx24-tool-items>:is(a,button) {width:auto !important;min-width:0;}
html.cx24-ribbon-ready body.crm-page .cx24-inline-sheet-card {overflow:visible !important;}
html.cx24-ribbon-ready body.crm-page .cx24-inline-sheet-card:has(.cx24-card-table-tools details[open]) {z-index:25 !important;}
html.cx24-ribbon-ready body.crm-page .cx24-inline-sheet-card>:is(.crm-feature-panel-head,.crm-suite-card-head,.card-header) {
  display:flex;flex-direction:row !important;flex-wrap:wrap;gap:12px;align-items:center;
}
.cx24-inline-sheet-card>:is(.crm-feature-panel-head,.crm-suite-card-head,.card-header)>div:first-child:not(.cx24-card-table-tools) {
  flex:1 1 280px;min-width:0;
}
.cx24-card-table-tools {display:flex;flex:0 1 auto;align-items:center;justify-content:flex-end;margin-left:auto;min-width:0;max-width:100%;}
.cx24-card-table-tools[hidden],.cx24-card-table-tools [hidden] {display:none !important;}
html.cx24-ribbon-ready body.crm-page .cx24-card-table-tools .crm-grid-toolbar {
  display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0 !important;padding:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;min-height:36px;max-width:100%;
}
.cx24-card-table-tools .crm-grid-toolbar-spacer {display:none;}
.cx24-card-table-tools .crm-table-result-count {font-size:12px;white-space:nowrap;}
.cx24-card-table-tools .crm-table-width-controls {margin:0;padding:0;gap:4px;}
.cx24-card-table-tools .crm-table-width-controls>span {display:none;}
html.cx24-ribbon-ready body.crm-page .cx24-card-table-tools :is(.crm-grid-menu>summary,.cx24-search-tools>summary,.crm-table-width-controls button) {
  display:inline-flex;flex-direction:row;align-items:center;justify-content:center;gap:6px;width:auto;min-width:36px;height:36px;min-height:36px !important;margin:0;padding:6px 9px !important;list-style:none;border:1px solid var(--border) !important;border-radius:0 !important;background:var(--card) !important;color:var(--foreground) !important;font-size:13px !important;line-height:1.3 !important;box-shadow:none !important;cursor:pointer;
}
.cx24-card-table-tools .crm-grid-menu>summary em,.cx24-card-table-tools .crm-grid-menu>summary::after {display:none;}
.cx24-card-table-tools summary::-webkit-details-marker {display:none;}
.cx24-card-table-tools :is(svg,.crm-lucide-icon,.cx24-tool-icon) {width:17px !important;height:17px !important;}
html.cx24-ribbon-ready body.crm-page .cx24-card-table-tools :is(summary,button):is(:hover,:focus-visible):not(:disabled) {
  background:var(--muted) !important;border-color:var(--input) !important;color:var(--foreground) !important;
}
.cx24-card-table-tools .crm-table-width-controls button:disabled {opacity:.45;cursor:not-allowed;}
html.cx24-ribbon-ready body.crm-page .cx24-card-table-tools :is(.crm-grid-menu-panel,.cx24-search-tools .crm-table-search-area) {
  position:absolute;left:var(--cx24-frozen-panel-left,0px);right:auto;top:var(--cx24-card-panel-top,calc(100% + 8px));bottom:var(--cx24-card-panel-bottom,auto);max-width:calc(100vw - 24px);max-height:var(--cx24-card-panel-height,520px);overflow-y:auto;border:1px solid var(--border);border-radius:0 !important;background:var(--popover);color:var(--foreground);box-shadow:0 12px 32px rgba(0,0,0,.18);z-index:1020;
}
.cx24-card-table-tools .crm-table-search-area {width:min(500px,calc(100vw - 24px));min-width:0;flex-wrap:wrap;}
.cx24-card-table-tools .crm-table-search-area :is(input,select) {font-size:14px !important;}
html.cx24-ribbon-ready body.crm-page .cx24-inline-sheet-card[data-attendance-results]>.cx24-card-table-tools {margin:0 0 12px;justify-content:flex-end;}
@media (max-width:760px), (max-height:600px) {
  .cx24-tools [data-cx24-followup-tools]>.cx24-tool-items {display:flex;flex-wrap:nowrap;}
  html.cx24-ribbon-ready body.crm-page .cx24-tools [data-cx24-followup-tools]>.cx24-tool-items>:is(a,button) {width:78px !important;min-width:78px;}
  html.cx24-ribbon-ready body.crm-page .cx24-card-table-tools :is(.crm-grid-menu-panel,.cx24-search-tools .crm-table-search-area) {
    position:fixed;inset:auto 12px 12px;width:auto;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);
  }
}
@media (max-width:760px) {
  .cx24-card-table-tools {flex-basis:100%;justify-content:flex-start;margin-left:0;}
  html.cx24-ribbon-ready body.crm-page .cx24-card-table-tools .crm-grid-menu>summary>span {display:inline;}
  .cx24-tools [data-cx24-followup-tools] {flex:0 0 auto;}
}
@media print {.cx24-card-table-tools {display:none !important;}}

/* R82 C5: compact leads retain card tools; intentionally hidden/parked tools remain hidden. */
html.cx24-ribbon-ready body.crm-page .cx24-card-table-tools .crm-grid-toolbar:not([hidden]) {display:flex !important;}

/* R83: one active working card; native controls and draft nodes stay mounted. */
html body [data-cx24-card-active="false"] {display:none !important;}
html body [data-cx24-card-active="true"] {min-width:0;max-width:100%;}
html body [data-cx24-card-layout] {display:block !important;grid-template-columns:minmax(0,1fr) !important;}
html body [data-cx24-card-layout]>.cx24-workspace-card {width:100% !important;margin:0 0 20px !important;grid-column:auto !important;}
html body .cx24-workspace-card {border-radius:0 !important;scroll-margin-top:calc(var(--cx24-frozen-ribbon-height,160px) + 16px);}
html body .cx24-card-workspace .crm-feature-hero {background:transparent !important;border:0 !important;box-shadow:none !important;padding:0 0 18px !important;min-height:0 !important;margin:0 !important;}
html body .cx24-card-workspace .crm-feature-hero :is(h1,h2) {font-size:clamp(26px,2.3vw,34px) !important;line-height:1.2 !important;}
html body .cx24-card-workspace .crm-feature-hero p {max-width:960px;font-size:14px !important;}
html body .cx24-workspace-card .cx24-card-local-controls {min-width:0;display:flex;flex-direction:column;gap:12px;padding:16px 20px;border-bottom:1px solid var(--border);}
html body .cx24-workspace-card .cx24-card-local-controls:empty {display:none;}
html body .cx24-card-local-controls>:is(form,.crm-toolbar,.crm-dashboard-filter-card,.crm-metric-grid,.crm-reminder-stats) {margin:0 !important;width:100% !important;max-width:100% !important;}
html body .cx24-card-local-controls .crm-dashboard-filter-card {background:transparent !important;border:0 !important;box-shadow:none !important;padding:0 !important;}
html body .cx24-card-local-controls>:is(.crm-feature-panel,.crm-suite-card) {background:transparent !important;border:0 !important;box-shadow:none !important;padding:0 !important;margin:0 !important;}
html body .cx24-card-summary {display:grid !important;grid-template-columns:repeat(auto-fit,minmax(130px,1fr)) !important;gap:12px !important;background:transparent !important;box-shadow:none !important;}
html body .cx24-card-summary>:is(article,.crm-metric) {background:transparent !important;box-shadow:none !important;border:0 !important;border-right:1px solid var(--border) !important;border-radius:0 !important;padding:8px 12px 8px 0 !important;min-height:0 !important;}
html body .cx24-card-summary>:last-child {border-right:0 !important;}
html body .cx24-card-summary .crm-metric-value {font-size:25px !important;}
html body .cx24-tools [data-cx24-card-sections] {flex:0 1 auto;min-width:0;max-width:100%;}
html body .cx24-tools [data-cx24-card-sections]>.cx24-tool-items {display:flex;flex-wrap:wrap;max-width:100%;}
html.cx24-ribbon-ready body.crm-page .cx24-tools [data-cx24-card-sections] .cx24-command {width:106px !important;min-height:64px;}
html.cx24-ribbon-ready body.crm-page .cx24-tools [data-cx24-card-sections] .cx24-command[aria-pressed="true"],
html body .cx24-card-local-ribbon .cx24-command[aria-pressed="true"] {background:#163d73 !important;color:#fff !important;box-shadow:inset 0 -3px #3b82f6 !important;}
html.cx24-ribbon-ready body.crm-page .cx24-tools [data-cx24-card-sections]>.cx24-tool-items>button.cx24-command[aria-pressed="true"]:is(:hover,:focus-visible):not(:disabled) {background:#163d73 !important;color:#fff !important;box-shadow:inset 0 -3px #3b82f6 !important;}
html body [data-cx24-native-card-tabs] {display:none !important;}
html body .cx24-card-switch-status {display:block;max-width:260px;color:#f8ce73;}
html body .cx24-card-local-ribbon {background:#111318;color:#fff;border:1px solid #292d36;padding:10px 14px;margin-bottom:16px;}
html body .cx24-card-local-ribbon .cx24-command {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:0;border-radius:0;padding:8px;width:128px;background:transparent;color:#cdd3df;font-size:13px;}
html body .cx24-card-local-ribbon .cx24-tool-icon {width:22px;height:22px;}
html body .cx24-card-local-ribbon .cx24-tool-items {display:flex;gap:4px;}
html body .crm-reminder-embedded [data-cx24-card-layout]>.cx24-workspace-card {position:static;}
@media(max-width:760px),(max-height:600px) {
  html body .cx24-tools [data-cx24-card-sections] {flex:0 0 auto;}
  html body .cx24-tools [data-cx24-card-sections]>.cx24-tool-items {flex-wrap:nowrap;}
  html.cx24-ribbon-ready body.crm-page .cx24-tools [data-cx24-card-sections] .cx24-command {width:90px !important;min-width:90px;}
  html body .cx24-workspace-card .cx24-card-local-controls {padding:12px;}
}

/* R84: a single honest, non-interactive Loans placeholder. */
html body .crm-feature-hero.crm-loans-coming-soon { min-height:280px; align-items:center; }
html body .crm-loans-coming-soon>div { width:100%; max-width:760px; }
html body .crm-loans-coming-soon .crm-loans-status { display:flex; align-items:center; gap:14px; margin:24px 0 18px; }
html body .crm-loans-coming-soon .crm-loans-status>i { display:grid; place-items:center; width:44px; height:44px; border:1px solid var(--border); background:var(--accent); color:var(--accent-foreground); font-size:22px; }
html body .crm-loans-coming-soon .crm-loans-secondary { margin-top:10px; font-size:14px !important; color:var(--muted-foreground); }
@media(max-width:760px) { html body .crm-feature-hero.crm-loans-coming-soon { min-height:240px; } }

/* R86: one sharp bank workspace, with bank destinations in the frozen ribbon. */
.cx24-bank-tools-source { display:flex; flex-wrap:wrap; gap:8px; margin:0 0 20px; padding:12px; border:1px solid var(--border); background:#101218; }
.cx24-bank-tools-source[hidden],html body [data-cx24-bank-panel][hidden],html body [data-cx24-bank-tab-status][hidden] { display:none !important; }
.cx24-bank-command { min-width:100px; max-width:160px; text-align:center; }
.cx24-bank-command>[data-cx24-bank-label] { max-width:100%; line-height:1.3; }
.cx24-bank-archived-label { font-size:10px; font-weight:500; line-height:1.1; opacity:.65; }
.cx24-bank-command.is-archived { opacity:.7; }
html body .cx24-ribbon-shell .cx24-bank-command[aria-current=page] { color:#fff !important; border-color:#3980f5 !important; background:#182e51 !important; box-shadow:inset 0 -2px #3980f5; }
html body .cx24-ribbon-shell .cx24-bank-add-command { border:1px solid #475569 !important; background:#171e29 !important; color:#fff !important; }
html body .cx24-ribbon-shell .cx24-bank-add-command:hover { background:#293447 !important; }
html body .cx24-bank-card { padding:0 !important; margin:0 0 24px !important; border-radius:0 !important; overflow:visible; }
.cx24-bank-card-head { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:22px 24px; border-bottom:1px solid var(--border); }
.cx24-bank-card-head h2 { margin:5px 0 0; font-size:25px; font-weight:650; letter-spacing:-.7px; }
.cx24-bank-card-head p { margin:7px 0 0; color:var(--muted-foreground); font-size:13px; }
.cx24-bank-state { display:inline-flex; align-items:center; gap:7px; flex-shrink:0; font-size:12px; color:var(--muted-foreground); }
.cx24-bank-state i { color:var(--primary); }
.cx24-bank-tabs { display:flex; flex-wrap:wrap; gap:4px; padding:8px 20px 0; border-bottom:1px solid var(--border); background:color-mix(in srgb,var(--card) 92%,var(--muted)); }
.cx24-bank-tabs button { display:flex; align-items:center; justify-content:center; gap:8px; padding:13px 14px; border:0; border-bottom:2px solid transparent; border-radius:0 !important; color:var(--muted-foreground); background:transparent; font:inherit; font-size:14px; font-weight:550; cursor:pointer; }
.cx24-bank-tabs button:hover { color:var(--foreground); background:var(--muted); }
.cx24-bank-tabs button[aria-selected=true] { color:var(--primary); background:var(--card); border-bottom-color:var(--primary); }
.cx24-bank-tabs button:focus-visible { outline:2px solid var(--primary); outline-offset:-3px; }
html body .cx24-bank-panel { padding:22px 24px !important; border:0 !important; box-shadow:none !important; background:transparent !important; border-radius:0 !important; margin:0 !important; min-width:0; }
.cx24-bank-panel>.crm-suite-card-head { padding:0 0 20px !important; margin:0 0 20px; border-bottom:1px solid var(--border); }
.cx24-bank-panel>.crm-suite-card-head h2 { font-size:19px; }
.cx24-bank-panel>.crm-inline-form { margin:0; padding:0; }
.cx24-bank-panel .crm-field-group { margin-top:18px; }
.cx24-bank-availability { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-top:24px; margin-top:24px; border-top:1px solid var(--border); }
.cx24-bank-availability h3 { margin:0; font-size:15px; font-weight:650; }
.cx24-bank-availability p { margin:7px 0 0; max-width:650px; font-size:13px; color:var(--muted-foreground); }
.cx24-bank-availability form { flex-shrink:0; }
.cx24-bank-panel article.rounded-3 { border-radius:0 !important; }
.cx24-bank-tab-status { margin:0; padding:12px 24px; border-bottom:1px solid var(--border); font-size:13px; color:var(--foreground); background:var(--muted); }
@media(max-width:760px) {
  .cx24-bank-card-head { flex-wrap:wrap; padding:18px 16px; }
  .cx24-bank-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); padding:6px 8px 0; gap:0; }
  .cx24-bank-tabs button { font-size:12px; padding:12px 6px; }
  html body .cx24-bank-panel { padding:18px 16px !important; }
  .cx24-bank-availability { align-items:flex-start; flex-direction:column; }
  .cx24-bank-card-head h2 { font-size:22px; }
}

/* R87: one geometry contract for every tools ribbon. App navigation, card
   controls, menus, forms and media retain their distinct native layouts. */
:root {
  --cx24-tool-width:112px;
  --cx24-tool-height:78px;
  --cx24-tool-icon-size:22px;
  --cx24-tool-label-height:32px;
  --cx24-tool-label-line:16px;
  --cx24-tool-padding-y:8px;
  --cx24-tool-padding-x:6px;
  --cx24-tool-icon-gap:6px;
  --cx24-tool-item-gap:4px;
  --cx24-tool-group-gap:12px;
}
html body .cx24-tools {gap:var(--cx24-tool-group-gap);align-items:flex-start;}
html body .cx24-tools .cx24-tool-label {margin:0 0 6px 4px;line-height:14px;}
html body .cx24-tools .cx24-tool-items {gap:var(--cx24-tool-item-gap);padding:4px;align-items:flex-start;}
html.cx24-ribbon-ready body.crm-page .cx24-tools .cx24-tool-items>[data-cx24-tool-command],
html.cx24-ribbon-ready body.crm-page .cx24-tools .crm-grid-toolbar [data-cx24-tool-command],
html body .cx24-card-local-ribbon .cx24-tool-items>[data-cx24-tool-command] {
  position:relative;
  display:flex !important;
  flex-direction:column !important;
  flex:0 0 var(--cx24-tool-width) !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:var(--cx24-tool-icon-gap) !important;
  box-sizing:border-box !important;
  width:var(--cx24-tool-width) !important;
  min-width:var(--cx24-tool-width) !important;
  max-width:var(--cx24-tool-width) !important;
  height:var(--cx24-tool-height) !important;
  min-height:var(--cx24-tool-height) !important;
  max-height:var(--cx24-tool-height) !important;
  margin:0 !important;
  padding:var(--cx24-tool-padding-y) var(--cx24-tool-padding-x) !important;
  border:1px solid transparent !important;
  border-radius:0 !important;
  font-size:12px !important;
  font-weight:550 !important;
  line-height:var(--cx24-tool-label-line) !important;
  text-align:center !important;
  text-decoration:none !important;
}
html body .cx24-tools [data-cx24-tool-command]>.cx24-tool-icon,
html body .cx24-card-local-ribbon [data-cx24-tool-command]>.cx24-tool-icon {
  display:block !important;
  flex:0 0 var(--cx24-tool-icon-size) !important;
  width:var(--cx24-tool-icon-size) !important;
  height:var(--cx24-tool-icon-size) !important;
  min-width:var(--cx24-tool-icon-size) !important;
  min-height:var(--cx24-tool-icon-size) !important;
  margin:0 !important;
  padding:0 !important;
  stroke-width:1.8 !important;
  overflow:visible;
}
html.cx24-ribbon-ready body.crm-page .cx24-tools .cx24-tool-items>[data-cx24-tool-command]>.cx24-tool-caption,
html.cx24-ribbon-ready body.crm-page .cx24-tools .crm-grid-toolbar [data-cx24-tool-command]>.cx24-tool-caption,
html body .cx24-card-local-ribbon [data-cx24-tool-command]>.cx24-tool-caption {
  display:-webkit-box !important;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  flex:0 0 var(--cx24-tool-label-height) !important;
  width:100% !important;
  min-height:var(--cx24-tool-label-height) !important;
  max-height:var(--cx24-tool-label-height) !important;
  margin:0 !important;
  padding:0 !important;
  font-size:12px !important;
  line-height:var(--cx24-tool-label-line) !important;
  letter-spacing:0 !important;
  white-space:normal !important;
  overflow-wrap:anywhere;
  text-wrap:balance;
  text-align:center;
  overflow:hidden;
}
/* Compact table-header controls keep their size, but use the same SVG canvas
   and stroke weight. Do not enlarge menu contents or form buttons. */
html body .cx24-card-table-tools .cx24-tool-icon {stroke-width:1.8 !important;}
html.cx24-ribbon-ready body.crm-page .cx24-tools .crm-grid-toolbar .crm-table-width-controls [data-cx24-tool-command] {font-size:0 !important;}
html.cx24-ribbon-ready body.crm-page .cx24-tools .crm-grid-toolbar .crm-table-width-controls [data-cx24-tool-command]::after {
  display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical;
  flex:0 0 var(--cx24-tool-label-height);width:100%;min-height:var(--cx24-tool-label-height);max-height:var(--cx24-tool-label-height);
  margin:0;padding:0;font-size:12px;line-height:var(--cx24-tool-label-line);text-align:center;overflow:hidden;
}
html body .cx24-tools [data-cx24-followup-tools]>.cx24-tool-items {display:flex;flex-wrap:wrap;}
html body .cx24-tools [data-cx24-tool-command]>.cx24-bank-archived-label {
  position:absolute;top:8px;right:4px;font-size:8px !important;line-height:10px !important;max-width:32px;opacity:.8;
}
html body .cx24-tools [data-cx24-tool-command]>.crm-action-count,
html body .cx24-tools [data-cx24-tool-command]>.badge {position:absolute;top:4px;right:4px;}
@media(max-width:760px),(max-height:600px) {
  :root {--cx24-tool-width:88px;}
  html body .cx24-tools [data-cx24-followup-tools]>.cx24-tool-items {flex-wrap:nowrap;}
}

/* R88: shared finish for native apps, embedded tools and Collaborate.
   Do not change chart/status meaning, permissions, media geometry or form flow. */
:root {
  --cx24-control-height:38px;
  --cx24-control-padding:8px 11px;
  --cx24-panel-heading-size:20px;
  --cx24-command-active:#173762;
}
html body.crm-page {
  --bs-body-color:var(--foreground);
  --bs-body-bg:var(--background);
  --bs-border-color:var(--border);
  --crm-text:var(--foreground);
  --crm-muted:var(--muted-foreground);
  --crm-surface:var(--card);
  --crm-border:var(--border);
}
html body.crm-page :is(.crm-profile-card,.crm-rule-card,.crm-review-card,.crm-work-panel,.crm-settings-card,.crm-vault-card,.crm-team-card,.crm-monitor-card) {
  background:var(--card) !important;color:var(--foreground) !important;
  border-color:var(--border) !important;border-radius:0 !important;
  box-shadow:var(--cx24-surface-shadow) !important;
}
html body.crm-page :is(.crm-profile-card,.crm-settings-card,.crm-vault-card,.crm-team-card,.crm-monitor-card,.crm-rule-card)>header,
html body.crm-page .cx24-bank-card-head {
  color:var(--foreground);background:var(--card);border-color:var(--border);
}
html body.crm-page :is(.crm-profile-card,.crm-settings-card,.crm-vault-card,.crm-team-card,.crm-monitor-card,.crm-rule-card)>header :is(h2,h3),
html body.crm-page .cx24-bank-card-head h2 {
  font-size:var(--cx24-panel-heading-size) !important;font-weight:650 !important;
  line-height:1.35 !important;letter-spacing:-.025em !important;
}
html body.crm-page :is(.crm-feature-hero,.crm-suite-hero,.crm-page-hero,.crm-knowledge-hero,.crm-vault-hero,.crm-attendance-heading) {
  background-image:none !important;
}
html body.crm-page :is(.crm-feature-hero,.crm-suite-hero,.crm-page-hero,.crm-knowledge-hero,.crm-vault-hero) .cx24-heading-accent {color:var(--primary) !important;}
html body.crm-page :is(.crm-toolbar,.crm-form-grid,.crm-field,.crm-dashboard-filter-card,.crm-profile-card,.crm-rule-form,.crm-security-rule-form) :is(input,select,textarea):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]):not([type=file]) {
  padding:var(--cx24-control-padding);
  font-size:14px;line-height:1.45;border-radius:0 !important;
  background-color:var(--card) !important;color:var(--foreground) !important;
}
html body.crm-page :is(.crm-toolbar,.crm-form-grid,.crm-field,.crm-dashboard-filter-card,.crm-profile-card,.crm-rule-form,.crm-security-rule-form) :is(input,select):not([type=checkbox]):not([type=radio]):not([type=range]):not([type=hidden]):not([type=file]) {min-height:var(--cx24-control-height);}
html body.crm-page :is(.crm-toolbar,.crm-form-grid,.crm-field,.crm-dashboard-filter-card,.crm-profile-card,.crm-rule-form) :is(input,select,textarea):not(.is-invalid):not([aria-invalid=true]):not([type=checkbox]):not([type=radio]):not([type=range]) {border-color:var(--input);}
html body.crm-page :is(.crm-field>span,.crm-form-grid label,.crm-toolbar label) {font-size:13px;line-height:1.45;}
html body.crm-page :is(.btn-light,.btn-outline-secondary,.btn-secondary,.crm-suite-hero .btn-outline-light):not([data-cx24-tool-command]) {
  background:var(--card) !important;color:var(--foreground) !important;
  border-color:var(--input) !important;border-radius:0 !important;box-shadow:none !important;
}
html body.crm-page :is(.btn-light,.btn-outline-secondary,.btn-secondary,.crm-suite-hero .btn-outline-light):not([data-cx24-tool-command]):hover:not(:disabled) {background:var(--muted) !important;border-color:var(--muted-foreground) !important;}
html body.crm-page :is(.nav-tabs,.cx24-bank-tabs) {border-color:var(--border);}
html body.crm-page .nav-tabs .nav-link {border-radius:0 !important;color:var(--muted-foreground);}
html body.crm-page .nav-tabs .nav-link.active {color:var(--primary);background:var(--card);border-color:var(--border);border-bottom-color:var(--primary);}
html body .cx24-ribbon-shell .cx24-tools [data-cx24-tool-command]:is([aria-pressed=true],[aria-current=page]) {
  background:var(--cx24-command-active) !important;color:#fff !important;
  box-shadow:inset 0 -3px #3b82f6 !important;
}
/* Same surfaces and sharp controls inside the independently owned chat frame. */
html body :is(.crm-cw-panel,.crm-collaborate-app,.crm-chat-dialog,.crm-work-dialog) {
  --crm-text:var(--foreground);--crm-muted:var(--muted-foreground);
  --crm-surface:var(--card);--crm-border:var(--border);
  border-color:var(--border);border-radius:0 !important;
}
html body :is(.crm-cw-panel>header,.crm-chat-channels,.crm-chat-people,.crm-chat-conversation-head,.crm-chat-composer,.crm-work-nav,.crm-chat-dialog-card,.crm-work-dialog-card) {
  background:var(--card) !important;color:var(--foreground) !important;border-color:var(--border) !important;
}
html body :is(.crm-chat-filter,.crm-chat-textarea,.crm-chat-search-box,.crm-chat-dialog-card,.crm-work-dialog-card,.crm-chat-channel,.crm-collaborate-person,.crm-work-panel button,.crm-work-nav button,.crm-cw-panel>header button) {border-radius:0 !important;}
html body .crm-chat-bubble {border-color:var(--border);border-radius:0 !important;box-shadow:none;}
html body .crm-chat-message:not(.is-own) .crm-chat-bubble {background:var(--card) !important;color:var(--foreground);}
html body .crm-chat-message.is-own .crm-chat-bubble {background:var(--accent) !important;color:var(--foreground);}
html body .crm-chat-receipt.is-seen {background:var(--accent) !important;color:var(--accent-foreground) !important;}
html body .crm-work-nav>.crm-work-new-conversation {background:var(--primary) !important;border-color:var(--primary) !important;color:var(--primary-foreground) !important;}
html body .crm-work-nav>.crm-work-new-conversation:hover {background:#0757d5 !important;}
/* Original CX24 symbol only. Never rotate the wordmark or redraw the logo. */
.cx24-brand-loader {display:block;width:44px;height:44px;object-fit:contain;flex:none;animation:cx24-loader-pulse 1.2s ease-in-out infinite;}
[data-cx24-workspace-loader] {
  position:absolute;z-index:5;top:12px;right:18px;display:grid;place-items:center;
  width:60px;height:60px;padding:8px;border:1px solid var(--border);
  background:var(--card);box-shadow:var(--cx24-surface-shadow);pointer-events:none;
}
[data-cx24-workspace-loader][data-initial] {top:50%;right:50%;transform:translate(50%,-50%);width:84px;height:84px;padding:18px;}
[data-cx24-workspace-loader][hidden] {display:none !important;}
html.cx24-ribbon-pending:not(.cx24-workspace-host) body::after {
  content:'';position:fixed;inset:0;z-index:1009;pointer-events:none;
  background:var(--background) url('cx24-mark.png?v=20260830r4') center/52px 52px no-repeat;
  opacity:0;animation:cx24-loader-reveal .12s ease-out .12s forwards;
}
[data-cx24-loading-recovery] {position:relative;z-index:1011;}
html body .crm-cw-loading {background:var(--card) !important;color:var(--foreground);}
html body .crm-cw-loading>.cx24-brand-loader {margin:0 auto 6px;}
html body .crm-cw-loading:has([data-cw-retry]:not([hidden]))>.cx24-brand-loader {animation:none;}
@keyframes cx24-loader-pulse {0%,100%{opacity:.6;transform:scale(.92)}50%{opacity:1;transform:scale(1)}}
@keyframes cx24-loader-reveal {to{opacity:1}}
@media(prefers-reduced-motion:reduce) {
  .cx24-brand-loader {animation:none;}
  html.cx24-ribbon-pending:not(.cx24-workspace-host) body::after {animation:none;opacity:1;}
}

/* R89: a native report view in Cards, with filters local to its one work card. */
html.cx24-ribbon-ready .cx24-booking-filters {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px 18px;
  padding: 18px;
  margin: 4px 0 16px;
  background: var(--crm-surface-muted, #f4f6fa);
  border: 1px solid var(--crm-border, #dce2ec);
}
html.cx24-ribbon-ready .cx24-booking-filters .crm-field { min-width: 0; margin: 0; }
html.cx24-ribbon-ready .cx24-booking-filters .crm-field > span { font-size: 13px; line-height: 1.4; }
html.cx24-ribbon-ready .cx24-booking-filter-actions {
  display: flex; align-items: flex-end; gap: 8px; flex-wrap: wrap; min-width: 0;
}
html.cx24-ribbon-ready .cx24-booking-total { display: grid; gap: 3px; text-align: right; }
html.cx24-ribbon-ready .cx24-booking-total strong { color: var(--crm-primary, #0a6cff); font-size: 30px; line-height: 1; font-variant-numeric: tabular-nums; }
html.cx24-ribbon-ready .cx24-booking-total span { font-size: 12px; color: var(--crm-text-muted, #66748a); }
html.cx24-ribbon-ready .cx24-booking-context { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; flex-wrap: wrap; margin-bottom: 16px; font-size: 13px; color: var(--crm-text-muted, #66748a); }
html.cx24-ribbon-ready .cx24-booking-context details { max-width: 640px; }
html.cx24-ribbon-ready .cx24-booking-context summary { cursor: pointer; color: var(--crm-text, #182438); font-weight: 600; }
html.cx24-ribbon-ready .cx24-booking-context details p { margin: 10px 0 0; font-size: 13px; line-height: 1.6; }
html.cx24-ribbon-ready .cx24-tools [data-cx24-booking-report-tool][aria-current="page"] {
  background: #173762 !important; color: #fff !important; box-shadow: inset 0 0 0 1px #3879cb !important;
}
html[data-theme="dark"].cx24-ribbon-ready .cx24-booking-filters { background: #101923; border-color: #293442; }
html[data-theme="dark"].cx24-ribbon-ready .cx24-booking-context summary { color: #ecf2fa; }
html[data-theme="dark"].cx24-ribbon-ready .cx24-booking-context,
html[data-theme="dark"].cx24-ribbon-ready .cx24-booking-total span { color: #a7b3c4; }
@media (max-width: 800px) {
  html.cx24-ribbon-ready .cx24-booking-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 14px; gap: 12px; }
}
@media (max-width: 480px) {
  html.cx24-ribbon-ready .cx24-booking-filters { grid-template-columns: minmax(0, 1fr); }
  html.cx24-ribbon-ready .cx24-booking-total { text-align: left; }
}

/* Guided workflows use the same black/blue CX24 chrome as the ribbon. */
html body .crm-workflow-header {
  background: var(--cx24-ribbon) !important;
  color: var(--cx24-ribbon-text) !important;
  border-color: #292c33 !important;
}
html body .crm-workflow-header strong { color: var(--cx24-ribbon-text) !important; }
html body .crm-workflow-kicker { color: #61a1ff !important; }
html body .crm-workflow-pipeline {
  background: var(--primary) !important;
  border-color: var(--primary) !important;
  color: var(--primary-foreground) !important;
}
html body .crm-workflow-pipeline:hover { background: #0757d5 !important; border-color: #0757d5 !important; }
html body .crm-workflow-pipeline:focus-visible { outline-color: var(--ring) !important; }
html body .crm-workflow-close { background: #202126 !important; border-color: #353840 !important; color: #f4f4f5 !important; }
html body .crm-workflow-close:hover { background: #2c3038 !important; border-color: var(--primary) !important; color: #fff !important; }
html body .crm-workflow-confirm-card p { color: var(--muted-foreground) !important; }
html body .crm-workflow-discard { background: var(--muted) !important; border-color: var(--input) !important; color: var(--foreground) !important; }

/* R90: Operations/review role badges use the CX24 blue light/dark tokens. */
#qualityReportScope .crm-feature-hero .crm-dashboard-role {
  color:var(--accent-foreground) !important;
  background:var(--accent) !important;
  border-color:var(--border) !important;
}

/* R91: Quality uses the same workspace heading and gutters as Leads/History. */
html.cx24-ribbon-ready body.crm-ignorre-shell #main-content #qualityReportScope>.crm-feature-hero {
  padding:0 0 18px !important; margin:0 !important; min-height:0 !important;
  background:transparent !important; border:0 !important; box-shadow:none !important;
}
html.cx24-ribbon-ready body.crm-ignorre-shell #main-content #qualityReportScope .crm-feature-hero :is(h1,h2) {
  font-size:clamp(28px,2.65vw,34px) !important; font-weight:700 !important;
  line-height:1.2 !important; letter-spacing:-.035em !important; color:var(--cx24-ink) !important;
}
html.cx24-ribbon-ready body.crm-ignorre-shell #main-content #qualityReportScope .crm-feature-hero p {font-size:14px !important;line-height:1.6 !important;margin:0 !important;}
html.cx24-ribbon-ready body.crm-ignorre-shell #main-content #qualityReportScope .crm-feature-kicker {
  background:transparent !important;border:0 !important;padding:0 !important;font-size:11px !important;color:var(--muted-foreground) !important;
}
html body #qualityReportScope .cx24-card-local-controls>.crm-quality-filters {padding:0 !important;border:0 !important;box-shadow:none !important;background:transparent !important;}
html body #qualityReportScope .crm-quality-journey {border-radius:0 !important;}
html body #main-content .crm-journey-drilldown[data-cx24-inline-drilldown] {
  margin:20px 0 0 !important;padding:20px 0 0 !important;border:0 !important;
  border-top:1px solid var(--border) !important;box-shadow:none !important;background:transparent !important;
}
html body #main-content .crm-compact-race {padding:0 0 18px !important;margin:0 0 18px !important;border:0 !important;border-bottom:1px solid var(--border) !important;background:transparent !important;box-shadow:none !important;}
html body #main-content .crm-compact-race>header {display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;flex-wrap:wrap;}
html body #main-content .crm-compact-race>header h2 {font-size:18px !important;margin:0;}
html body #main-content .crm-compact-race>header p {font-size:13px !important;margin:4px 0 0;color:var(--muted-foreground);}
html body #main-content .crm-compact-race .crm-race-month-progress {display:none;}
html body #main-content .crm-compact-race .crm-booking-race-card {min-height:88px !important;padding:12px 14px !important;gap:4px 12px;grid-template-rows:auto auto;box-shadow:none !important;}
html body #main-content .crm-compact-race .crm-booking-race-card>strong {font-size:15px;grid-row:2;}
html body #main-content .crm-compact-race .crm-booking-race-card>b {font-size:27px;}
html body #main-content .crm-compact-race :is(.crm-race-track,.crm-booking-race-card>small) {display:none;}
html body #main-content .crm-compact-race .crm-dashboard-prizes {margin-top:10px;padding-top:10px;}
html body .crm-application-review-notice {padding:16px;border:1px solid var(--border);background:var(--accent);color:var(--foreground);margin:12px 0;}
html body .crm-application-review-notice p {margin:6px 0 12px;}
.crm-country-search {margin-bottom:8px;}
.crm-country-search-status {display:block;font-size:12px;color:var(--muted-foreground);margin:5px 0 0;}
html body #main-content .crm-performance-dashboard .crm-dashboard-filter-grid:has(#reportingAgent) {grid-template-columns:repeat(5,minmax(0,1fr)) auto;}
@media(max-width:1100px) {html body #main-content .crm-performance-dashboard .crm-dashboard-filter-grid:has(#reportingAgent) {grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:700px) {html body #main-content .crm-compact-race .crm-booking-race-podium {grid-template-columns:1fr;}}
@media(max-width:700px) {html body #main-content .crm-performance-dashboard .crm-dashboard-filter-grid:has(#reportingAgent) {grid-template-columns:1fr;}}

/* R92: page headings are part of the workspace, never another white card. */
html body :is(.crm-feature-hero,.crm-page-hero,.crm-suite-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero,.crm-attendance-heading),
html.cx24-ribbon-ready body.crm-ignorre-shell #main-content :is(.crm-feature-hero,.crm-page-hero,.crm-suite-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero,.crm-attendance-heading) {
  background:transparent !important;background-image:none !important;border:0 !important;
  box-shadow:none !important;border-radius:0 !important;padding:0 0 18px !important;
  margin:0 !important;min-height:0 !important;
}
html body :is(.crm-feature-hero,.crm-page-hero,.crm-suite-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero,.crm-attendance-heading)::before,
html body :is(.crm-feature-hero,.crm-page-hero,.crm-suite-hero,.crm-knowledge-hero,.crm-vault-hero,.ignorre-application-hero,.crm-attendance-heading)::after {display:none !important;}
.crm-chat-download {display:inline-flex;align-items:center;gap:6px;padding:6px 8px;color:var(--primary,#0a6cff);font-size:12px;text-decoration:none;}
.crm-chat-download:hover,.crm-chat-download:focus-visible {text-decoration:underline;background:var(--accent);}

/* R93: the embedded reminder form uses the same blue tokens as the workspace.
   Override the legacy dark/cyan composer locally, including hover and inputs. */
html body .crm-reminder-composer {background:var(--card) !important;background-image:none !important;color:var(--foreground) !important;border-color:var(--border) !important;box-shadow:var(--cx24-surface-shadow,var(--shadow-sm)) !important;}
html body .crm-reminder-composer .crm-feature-panel-head {background:var(--card) !important;border-color:var(--border) !important;}
html body .crm-reminder-composer :is(.crm-feature-panel-head h3,.form-label,.crm-reminder-template-fieldset legend) {color:var(--foreground) !important;}
html body .crm-reminder-composer :is(.crm-feature-panel-head p,.form-text,.text-muted,.crm-reminder-selected-record>small) {color:var(--muted-foreground) !important;}
html body .crm-reminder-composer :is(.form-control,.form-select,textarea) {background:var(--card) !important;color:var(--foreground) !important;border-color:var(--input) !important;color-scheme:light;}
html[data-theme=dark] body .crm-reminder-composer :is(.form-control,.form-select,textarea) {color-scheme:dark;}
html body .crm-reminder-composer :is(.form-control,textarea)::placeholder {color:var(--muted-foreground) !important;}
html body .crm-reminder-composer .crm-reminder-timezone {background:var(--muted) !important;color:var(--muted-foreground) !important;border-color:var(--border) !important;}
html body .crm-reminder-composer .crm-reminder-timezone i {color:var(--primary) !important;}
html body .crm-reminder-composer .crm-reminder-templates button {background:var(--card) !important;color:var(--muted-foreground) !important;border-color:var(--border) !important;}
html body .crm-reminder-composer .crm-reminder-templates button:is(:hover,:focus-visible) {background:var(--accent) !important;color:var(--accent-foreground) !important;border-color:var(--primary) !important;}
html body .crm-reminder-composer .crm-reminder-selected-record {background:var(--accent) !important;border-color:var(--primary) !important;}
html body .crm-reminder-composer .crm-reminder-selected-record>strong {color:var(--foreground) !important;}
html body .crm-reminder-composer .crm-reminder-selected-record>span {color:var(--accent-foreground) !important;}

/* R94: CX24 | .ONN, matching the original TLD paired wordmarks. */
html body .crm-topbar-left {display:flex;align-items:center;gap:12px;}
.crm-brand-divider {display:block;flex:0 0 2px;width:2px;height:28px;background:#71717a;}
.crm-onn-brand {display:inline-flex;flex:none;align-items:center;line-height:0;color:#18181b;}
.crm-onn-brand>svg {display:block;width:94px;height:28px;flex:none;}
:root[data-theme=dark] .crm-onn-brand {color:#fff;}
:root[data-theme=dark] .crm-brand-divider {background:#8d8d98;}
html body.auth-page :is(.crm-auth-form-brand,.crm-auth-story-brand) {display:inline-flex;align-items:center;gap:12px;}
html body.auth-page .crm-onn-brand,html body.performance-display .crm-onn-brand {color:#fff;}
html body.auth-page .crm-brand-divider,html body.performance-display .crm-brand-divider {background:#8d8d98;}
html body .crm-auth-form-brand .crm-onn-brand>svg {width:94px;height:28px;}
html body .crm-auth-story-brand .crm-onn-brand>svg {width:104px;height:32px;}
@media(max-width:760px) {
  .crm-onn-brand>svg,html body .crm-auth-form-brand .crm-onn-brand>svg {width:85px;height:26px;}
  .crm-brand-divider {height:26px;}
  html body.performance-display .display-brand {flex-wrap:wrap;}
}
