/* All overrides are confined to the GHL view. Standalone styles are untouched. */
html.ghl-embedded {
  --ghl-font: Roboto, system-ui, -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Arial, sans-serif;
  --cream: #fff;
  --bg: #fff;
  --text: #182230;
  --border: #e4e7ec;
  --sidebar-w: 0px;
}
html.ghl-embedded body {
  display: block;
  background: var(--bg);
  color: var(--text);
  font-family: var(--ghl-font) !important;
  font-size: 14px;
}
html.ghl-embedded body :is(h1,h2,h3,h4,button,input,select,textarea,.btn,.stat-value,.stat-label,.page-h) {
  font-family: var(--ghl-font) !important;
  letter-spacing: normal;
}
html.ghl-embedded body > .sidebar,
html.ghl-embedded .main > .topbar,
html.ghl-embedded #mob-overlay { display: none !important; }
html.ghl-embedded body > .main {
  width: 100%; max-width: none; min-width: 0; margin: 0 !important;
}
html.ghl-embedded .main > .content {
  box-sizing: border-box; width: 100%; min-width: 0;
  padding: 24px !important; max-width: none; margin: 0;
  background: #fff !important;
}
html.ghl-embedded .ghl-workspace-nav {
  display: flex; align-items: center; gap: 4px; padding: 24px 24px 0;
  min-height: 48px; overflow-x: auto; background: #fff;
  border-bottom: 1px solid var(--border); scrollbar-width: thin;
}
html.ghl-embedded .ghl-workspace-nav a {
  display: inline-flex; align-items: center; min-height: 48px;
  padding: 0 13px; white-space: nowrap; border-bottom: 2px solid transparent;
  color: #667085; font-size: 13px; font-weight: 500; text-decoration: none;
}
html.ghl-embedded .ghl-workspace-nav a:hover { color: #155e6b; background: #f7fafb; }
html.ghl-embedded .ghl-workspace-nav a[aria-current=page] { color: #155e6b; border-bottom-color: #4f8795; }
html.ghl-embedded .ghl-workspace-account { margin-left: auto; padding: 0 12px; color: #667085; font-size: 12px; white-space: nowrap; }
html.ghl-embedded .ghl-workspace-heading {
  display: flex; justify-content: space-between; align-items: flex-start;
  flex-wrap: wrap; gap: 16px; margin: 0 0 22px;
}
html.ghl-embedded .ghl-workspace-heading h1 { margin: 0; font-size: 26px; line-height: 1.25; font-weight: 600; }
html.ghl-embedded .ghl-workspace-heading p { margin: 6px 0 0; color: #667085; font-size: 13px; line-height: 1.5; }
html.ghl-embedded .ghl-workspace-actions { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; margin-left: auto; justify-content: flex-end; }
html.ghl-embedded .content :is(.card,.stat-card) { border-color: var(--border); box-shadow: 0 1px 2px rgba(16,24,40,.03); }
html.ghl-embedded .content .page-header h1 { font-size: 26px; font-weight: 600; }
html.ghl-embedded .editor-grid { gap: 20px; }
html.ghl-embedded .editor-sidebar { top: 16px; }
@media (max-width: 1000px) {
  html.ghl-embedded .editor-grid { grid-template-columns: minmax(0,1fr) !important; }
  html.ghl-embedded .editor-sidebar { position: static !important; }
}
@media (max-width: 600px) {
  html.ghl-embedded .main > .content { padding: 16px !important; }
  html.ghl-embedded .ghl-workspace-nav { padding: 24px 8px 0; }
  html.ghl-embedded .ghl-workspace-heading h1 { font-size: 23px; }
  html.ghl-embedded .ghl-workspace-actions { width: 100%; }
  html.ghl-embedded .ghl-workspace-actions .btn { flex: 1; justify-content: center; }
}

/* Center the sign-in card within GHL without affecting standalone pages. */
html.ghl-embedded body:has(> .wrapper > .card) {
  display:flex; align-items:center; justify-content:center;
  min-height:100vh; min-height:100dvh; height:auto;
  padding:32px 24px; overflow-x:hidden; overflow-y:auto;
  background:#fff;
}
html.ghl-embedded body:has(> .wrapper > .card)::before,
html.ghl-embedded body:has(> .wrapper > .card)::after,
html.ghl-embedded body > .particle { display:none; }
html.ghl-embedded body > .wrapper { flex:0 1 420px; margin:auto; max-width:420px; }
html.ghl-embedded body > .wrapper > .card {
  border-radius:16px; box-shadow:0 8px 28px rgba(16,24,40,.08);
}
@media(max-width:480px), (max-height:640px) {
  html.ghl-embedded body:has(> .wrapper > .card) { padding:20px 16px; }
  html.ghl-embedded .wrapper .card-header { padding:24px 24px 20px; }
  html.ghl-embedded .wrapper .card-body { padding:24px; }
  html.ghl-embedded .wrapper .card-footer { padding:14px 24px; }
}
/* DR CEO interface theme: exclusively inside the verified GHL presentation. */
@font-face {
  font-family:'Geologica'; font-style:normal; font-weight:400 700;
  font-display:swap; src:url('geologica-latin-v1.woff2') format('woff2');
}
html.ghl-embedded,
html.ghl-embedded body {
  --ghl-font:'Geologica',system-ui,-apple-system,'Segoe UI',sans-serif;
  --gold:#7B83B3; --gold-dk:#555F94; --gold-light:#DDE0F0; --gold-pale:#F0F1F8;
  --blue:#555F94; --blue-pale:#F0F1F8; --blue-border:#DDE0F0;
  --r:16px; --r-lg:18px; --r-sm:10px;
  accent-color:#7B83B3;
}
html.ghl-embedded body,
html.ghl-embedded body :is(h1,h2,h3,h4,h5,h6,p,a,span,label,small,strong,th,td,button,input,select,textarea,.btn,.stat-value,.stat-label,.page-h) {
  font-family:var(--ghl-font) !important;
}
html.ghl-embedded .ghl-workspace-nav a { border-radius:10px 10px 0 0; }
html.ghl-embedded .ghl-workspace-nav a:hover { color:#555F94; background:#F0F1F8; }
html.ghl-embedded .ghl-workspace-nav a[aria-current=page] {
  color:#555F94; border-bottom-color:#7B83B3; background:#F0F1F8;
}
html.ghl-embedded :is(.card,.stat-card,.modal-content,.modal-box,.modal-card) { border-radius:16px; }
html.ghl-embedded :is(.card,.stat-card) { overflow:hidden; }
html.ghl-embedded :is(.btn,.btn-login,.copy-btn,.use-id-btn,.opcion-tab,.lang-toggle,.patient-search) { border-radius:10px; }
html.ghl-embedded :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { border-radius:10px; }
html.ghl-embedded :is(.btn-gold,.btn-primary,.btn-login,.copy-btn,.use-id-btn),
html.ghl-embedded :is(.opcion-tab.active,.lang-btn.active,.lang-toggle .active) {
  background:#7B83B3; border-color:#7B83B3; color:#141A30;
  box-shadow:0 2px 5px rgba(85,95,148,.12);
}
html.ghl-embedded :is(.btn-gold,.btn-primary,.btn-login,.copy-btn,.use-id-btn):hover {
  background:#6E77A7; border-color:#6E77A7; color:#101526;
  box-shadow:0 3px 7px rgba(85,95,148,.16);
}
html.ghl-embedded .stat-card.highlight { background:#7B83B3; border-color:#7B83B3; }
html.ghl-embedded .stat-card.highlight :is(.stat-label,.stat-value,.stat-sub) { color:#141A30; }
html.ghl-embedded :is(input,select,textarea):focus-visible {
  outline:2px solid #555F94; outline-offset:2px;
  border-color:#7B83B3; box-shadow:0 0 0 3px rgba(123,131,179,.12);
}
html.ghl-embedded .wrapper .card-header::after { background:#7B83B3; }
html.ghl-embedded .wrapper :is(.input-icon,.brand-name,.toggle-pass:hover) { color:#555F94; }
html.ghl-embedded :is(.guide-blue,.guide-gold,.alert-info) {
  background:#F0F1F8; border-color:#DDE0F0; color:#414A76;
}html.ghl-embedded body > main :is(a,summary) { color:#555F94; }
html.ghl-embedded body > main :is(.back,.back-button,form,button) { border-radius:12px; }
html.ghl-embedded body > main button:not(.secondary) { background:#7B83B3; color:#141A30; }
html.ghl-embedded { scrollbar-color:#7B83B3 #F0F1F8; }
html.ghl-embedded ::-webkit-scrollbar-thumb { background-color:#7B83B3; border-radius:10px; }html.ghl-embedded :is(.zone-filter-btn.active,.currency-toggle button.active,.currency-btn.active,.opcion-lang-toggle button.active,.cat-btn.active) {
  background:#7B83B3!important; border-color:#7B83B3!important; color:#171B2E!important;
}



/* Brand details v3. The independent app and patient landing retain their theme. */
/* Only cards filled with the brand lavender use white copy. */
html.ghl-embedded .stat-card.highlight,
html.ghl-embedded .stat-card.highlight :is(.stat-label,.stat-value,.stat-sub) { color:#fff!important; }
html.ghl-embedded, html.ghl-embedded body {
  --mid:#586174; --soft:#697386; --green:#218E62; --red:#B02F2F;
  --border-dk:#CED2E5;
}
html.ghl-embedded :is(.btn-gold,.btn-navy,.btn-primary,.btn-login,.copy-btn,.use-id-btn) {
  background:#7B83B3!important; border-color:#7B83B3!important; color:#fff!important;
  box-shadow:0 2px 5px rgba(85,95,148,.14)!important;
}
html.ghl-embedded :is(.btn-gold,.btn-navy,.btn-primary,.btn-login,.copy-btn,.use-id-btn):hover:not(:disabled) {
  background:#DDE0F0!important; border-color:#7B83B3!important; color:#202637!important;
  transform:none;
}
html.ghl-embedded :is(.btn,.btn-login) :is(span,svg) { color:inherit; }
html.ghl-embedded :is(.opcion-tab.active,.lang-btn.active,.lang-toggle .active,.zone-filter-btn.active,.currency-toggle button.active,.currency-btn.active,.opcion-lang-toggle button.active,.cat-btn.active,.odonto-filter-btn.active) {
  background:#7B83B3!important; border-color:#7B83B3!important; color:#fff!important;
}
html.ghl-embedded :is(.opcion-tab.active,.lang-btn.active,.lang-toggle .active,.zone-filter-btn.active,.currency-toggle button.active,.currency-btn.active,.opcion-lang-toggle button.active,.cat-btn.active,.odonto-filter-btn.active):hover {
  background:#DDE0F0!important; color:#202637!important;
}
html.ghl-embedded :is(.svc-card.is-active,.ghl-search-result,.stage-block-header,.proc-search-wrap,.add-proc-section,.item-row,.link-box,.legend-item) {
  background:#F7F8FC; border-color:#DDE0F0;
}
html.ghl-embedded :is(.svc-card.is-active .svc-check,.zone-proc-item.is-added .zone-proc-check) {
  background:#7B83B3; border-color:#7B83B3; color:#fff;
}
html.ghl-embedded :is(.proc-option:hover,.proc-opt-inline:hover,.proc-option.selected,.proc-opt-inline.selected) {
  background:#F0F1F8!important; border-color:#7B83B3!important;
}
html.ghl-embedded :is(.stage-badge,.stage-num-badge,.step-dot-circle.done,.step-dot-circle.active,.ghl-avatar,.color-dot) {
  background:#7B83B3!important; border-color:#7B83B3!important; color:#fff;
}
html.ghl-embedded :is(.field input,.field select,.custom-select-wrap select,.proc-trigger,.ghl-contact-card):focus {
  border-color:#7B83B3; box-shadow:0 0 0 3px rgba(123,131,179,.15)!important;
}
html.ghl-embedded :is(.ghl-contact-card:hover,.proc-dropdown.open .proc-trigger,.odonto-tooth-btn:hover) {
  border-color:#7B83B3; box-shadow:0 0 0 2px rgba(123,131,179,.12)!important;
}
html.ghl-embedded .odonto-tooth-hit:hover { background:rgba(123,131,179,.20); }
html.ghl-embedded .odonto-tooth-hit.selected { background:rgba(123,131,179,.42); }
html.ghl-embedded .odonto-tooth-hit.eliminated { background:rgba(176,47,47,.14); }
html.ghl-embedded :is(.card-header,.card-footer,.stage-header) { background:#F7F8FC; }
html.ghl-embedded :is([style*="background:#FAFAF8" i],[style*="background:#F5F0E8" i],[style*="background:#F8F6F0" i],[style*="background:#F9F7F3" i]) {
  background:#F7F8FC!important;
}
html.ghl-embedded .body-map {
  --bm-ink:#202637; --bm-parchment:#F7F8FC; --bm-card:#fff;
  --bm-gold:#7B83B3; --bm-gold-dk:#555F94; --bm-gold-pale:#F0F1F8;
  --bm-line:#E4E7EC; --bm-stone:#586174; --bm-stone-soft:#697386;
  --bm-green:#555F94;
  font-family:var(--ghl-font)!important;
}
html.ghl-embedded .body-map :is(button,span,div,p,summary) { font-family:var(--ghl-font)!important; }
html.ghl-embedded :is(.body-map__label-num,.body-map__label-num.is-green,.body-map__label-list-num,.body-map__label-list-num.is-green,.body-index__item.is-selected .body-index__num,.body-chip.is-added) {
  background:#7B83B3; color:#fff; border-color:#7B83B3;
}
html.ghl-embedded :is(.body-map__profile-button.is-active,.body-chip.is-added):hover { background:#DDE0F0; color:#202637; }
html.ghl-embedded .body-pin.is-selected .body-pin__ring { border-color:#7B83B3; animation:none; }
html.ghl-embedded .body-map__plate { background:#fff; border-radius:16px; }
html.ghl-embedded .body-map__label { border-radius:10px; }
html.ghl-embedded .body-index__item.is-selected .body-index__name { color:#555F94; }
html.ghl-embedded :is(.body-pin,.body-pin.is-selected) { background:transparent; }
html.ghl-embedded :is(.body-pin__num,.body-pin.is-selected .body-pin__num) {
  background:#7B83B3; color:#fff;
  box-shadow:0 1px 4px rgba(85,95,148,.3),0 0 0 1.5px #fff;
}
html.ghl-embedded a[href="workspace_users.php"],
html.ghl-embedded a[href="workspace_settings.php"] { display:none!important; }
html.ghl-embedded .ghl-workspace-nav a.ghl-workspace-signout {
  color:#555F94; min-height:34px; margin:0 0 0 8px; padding:0 12px;
  border:1px solid #DDE0F0; border-radius:10px; font-size:12px;
}
html.ghl-embedded .ghl-workspace-nav a.ghl-workspace-signout:hover { background:#F0F1F8; color:#202637; }
/* Compact sizing, requested 2026-10-18. Presentation inside GHL only. */
html.ghl-embedded body { font-size:13px; }
html.ghl-embedded .main > .content { padding:20px!important; }
html.ghl-embedded .ghl-workspace-nav { padding:16px 20px 0; gap:2px; }
html.ghl-embedded .ghl-workspace-nav a { min-height:40px; padding:0 11px; font-size:12px; }
html.ghl-embedded .ghl-workspace-account { font-size:11px; padding:0 10px; }
html.ghl-embedded .ghl-workspace-nav a.ghl-workspace-signout { min-height:30px; padding:0 10px; font-size:11px; }
html.ghl-embedded .ghl-workspace-heading { gap:12px; margin-bottom:18px; }
html.ghl-embedded :is(.ghl-workspace-heading h1,.content .page-header h1) { font-size:22px; }
html.ghl-embedded .ghl-workspace-heading p { font-size:12px; margin-top:5px; }
html.ghl-embedded .ghl-workspace-actions { gap:6px; }
html.ghl-embedded .editor-grid { gap:16px; }
html.ghl-embedded :is(.btn,.copy-btn,.use-id-btn) { font-size:12px; padding:6px 12px; }
html.ghl-embedded :is(.card-header,.card-head) { padding:13px 16px; font-size:13px; }
html.ghl-embedded :is(.card-body,.card-b) { padding:16px; }
html.ghl-embedded .stat-card { padding:12px; }
html.ghl-embedded .stat-value { font-size:20px; }
html.ghl-embedded .stat-label { font-size:10px; }
html.ghl-embedded :is(td,.table td) { font-size:12px; padding:10px 14px; }
html.ghl-embedded :is(th,.table th) { font-size:10px; padding:9px 14px; }
html.ghl-embedded :is(.opcion-tab,.lang-btn,.lang-toggle,.zone-chip,.svc-card,.patient-search) { font-size:12px; }
html.ghl-embedded :is(.form-control,.form-input,.form-select,.patient-search-input) { font-size:12px; }
html.ghl-embedded .wrapper .card-header { padding:28px 28px 24px; }
html.ghl-embedded .wrapper .card-body { padding:28px; }
html.ghl-embedded .wrapper .card-footer { padding:16px 24px; }
html.ghl-embedded .wrapper .btn-login { font-size:13px; padding:12px 16px; }
@media(max-width:600px) {
  html.ghl-embedded .main > .content { padding:16px!important; }
  html.ghl-embedded .ghl-workspace-nav { padding:14px 8px 0; }
  html.ghl-embedded .ghl-workspace-heading h1 { font-size:21px; }
}
/* DR CEO diagram palette. Unilaser retains the original treatment-icon colors. */
html.ghl-embedded .body-map__image,
html.ghl-embedded [data-odontogram-canvas] > svg > :is(image,line,path,text),
html.ghl-embedded #odonto-wrap > svg > :is(image,line,path,text),
html.ghl-embedded #odonto-wrap > svg > .tooth-g:not(.selected):not(.eliminated),
html.ghl-embedded .odonto-simple-grid .odonto-base,
html.ghl-embedded .stage-odonto > img {
  filter:var(--ghl-diagram-filter, none);
}
html.ghl-embedded [data-odontogram-canvas] { border-color:#DDE0F0!important; background:#fff!important; }
html.ghl-embedded [data-odontogram-canvas] + div { background:#F7F8FC!important; border-color:#DDE0F0!important; }
html.ghl-embedded [data-odontogram-canvas] + div > div { border-color:#DDE0F0!important; }
html.ghl-embedded [data-odontogram-canvas] + div span[style*="width:9px"],
html.ghl-embedded .legend-dot,
html.ghl-embedded .odonto-tooth-hit.has-proc::after { background:#7B83B3!important; }
/* DR CEO scrollbars. The standalone app retains its original theme. */
html.ghl-embedded,
html.ghl-embedded body,
html.ghl-embedded * { scrollbar-color:#7B83B3 #F0F1F8!important; scrollbar-width:thin; }
html.ghl-embedded::-webkit-scrollbar,
html.ghl-embedded ::-webkit-scrollbar { width:8px; height:8px; }
html.ghl-embedded::-webkit-scrollbar-thumb,
html.ghl-embedded ::-webkit-scrollbar-thumb { background:#7B83B3!important; border-radius:8px; border:0; }
html.ghl-embedded::-webkit-scrollbar-thumb:hover,
html.ghl-embedded ::-webkit-scrollbar-thumb:hover { background:#626C9E!important; }
html.ghl-embedded::-webkit-scrollbar-track,
html.ghl-embedded ::-webkit-scrollbar-track,
html.ghl-embedded::-webkit-scrollbar-corner,
html.ghl-embedded ::-webkit-scrollbar-corner { background:#F0F1F8!important; }
html.ghl-embedded::-webkit-scrollbar-button,
html.ghl-embedded ::-webkit-scrollbar-button { display:none; width:0; height:0; }
