.cbmg-icon-tooltip{position:relative;display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;background:#fff;border-radius:var(--cbmg-radius-sm);text-decoration:none!important;transition:transform .2s ease,box-shadow .2s ease;will-change:transform}.cbmg-icon-tooltip:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(0,0,0,.06)}.cbmg-icon-tooltip img{width:56px;height:56px;object-fit:contain;display:block;pointer-events:none}.cbmg-icon-tooltip::after{content:attr(data-tooltip);position:absolute;left:50%;top:-34px;transform:translateX(-50%) translateY(4px);opacity:0;visibility:hidden;pointer-events:none;background:#fff;color:var(--cbmg-primary);border-radius:var(--cbmg-radius-sm);padding:6px 10px;font-size:12px;font-weight:500;line-height:1;white-space:nowrap;transition:opacity .2s ease,transform .2s ease,visibility .2s ease;z-index:20}.cbmg-icon-tooltip:hover::after{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.cbmg-mode-toggle,.cbmg-theme-mode-toggle{appearance:none;border:0!important;inline-size:54px;block-size:30px;border-radius:999px;background:var(--cbmg-primary)!important;color:var(--cbmg-bg)!important;padding:3px!important;display:inline-flex!important;align-items:center!important;justify-content:flex-start!important;position:relative;box-shadow:inset 0 0 0 1px rgba(28,52,64,.12);cursor:pointer;transition:background-color .2s ease,color .2s ease,box-shadow .2s ease}.cbmg-mode-toggle::before,.cbmg-theme-mode-toggle::before{content:"☾";inline-size:24px;block-size:24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--cbmg-bg);color:var(--cbmg-primary);font-size:15px;line-height:1;transition:transform .2s ease,background-color .2s ease,color .2s ease}.cbmg-mode-toggle:hover,.cbmg-theme-mode-toggle:hover{box-shadow:0 8px 18px rgba(28,52,64,.12)}.cbmg-mode-toggle span,.cbmg-theme-mode-toggle span{display:none!important}html[data-cbmg-mode="night"] .cbmg-mode-toggle,html[data-cbmg-mode="night"] .cbmg-theme-mode-toggle{background:var(--cbmg-bg)!important;color:var(--cbmg-terracotta)!important;box-shadow:inset 0 0 0 1px rgba(244,242,238,.22)}html[data-cbmg-mode="night"] .cbmg-mode-toggle::before,html[data-cbmg-mode="night"] .cbmg-theme-mode-toggle::before{content:"☀";transform:translateX(24px);background:#F4F2EE;color:var(--cbmg-terracotta)}
.cbmg-pagination{display:flex;align-items:center;justify-content:center;gap:8px;margin:24px 0}.cbmg-pagination a,.cbmg-pagination button,.cbmg-pagination span{min-width:38px;height:38px;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--cbmg-radius-sm);border:1px solid var(--cbmg-border);background:var(--cbmg-surface);color:var(--cbmg-primary);font-weight:500;text-decoration:none;transition:box-shadow .2s ease,transform .2s ease,color .2s ease,border-color .2s ease}.cbmg-pagination .is-active{background:var(--cbmg-primary);color:#fff;border-color:var(--cbmg-primary)}.cbmg-pagination a:hover,.cbmg-pagination button:hover{color:var(--cbmg-terracotta);border-color:var(--cbmg-border);box-shadow:var(--cbmg-shadow);transform:translateY(-2px)}
.cbmg-floating-btn{position:fixed;right:24px;bottom:24px;z-index:9990;width:48px;height:48px;border-radius:var(--cbmg-radius-sm);border:0;background:var(--cbmg-surface);color:var(--cbmg-primary);box-shadow:var(--cbmg-shadow);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s ease,visibility .2s ease,transform .2s ease,background-color .2s ease,color .2s ease,box-shadow .2s ease}.cbmg-floating-btn.is-visible{opacity:1;visibility:visible;transform:translateY(0)}.cbmg-floating-btn:hover{background:var(--cbmg-primary);color:#fff;transform:translateY(-2px);box-shadow:var(--cbmg-shadow-hover)}.cbmg-popup-root{position:fixed;inset:0;z-index:10000;pointer-events:none}.cbmg-dse-error{padding:14px 16px;border-radius:var(--cbmg-radius);background:#fff5f5;color:#b42318;border:1px solid #f7c5c5;font-family:var(--cbmg-font)}
html[data-cbmg-mode="night"] .cbmg-floating-btn{background:var(--cbmg-surface);color:var(--cbmg-bg)}html[data-cbmg-mode="night"] .cbmg-floating-btn:hover{background:var(--cbmg-bg);color:var(--cbmg-primary)}

/* CBMG v1.0.3 refinements: independent floating controls have no side borders. */
.cbmg-floating-btn{border:0!important;box-shadow:var(--cbmg-shadow)!important;}
.cbmg-floating-btn:hover{border:0!important;background:var(--cbmg-primary)!important;color:#FFFFFF!important;transform:translateY(-2px)!important;}
html[data-cbmg-mode="night"] .cbmg-floating-btn{background:var(--cbmg-terracotta)!important;color:#FFFFFF!important;border:0!important;}
html[data-cbmg-mode="night"] .cbmg-floating-btn:hover{background:#FFFFFF!important;color:var(--cbmg-primary)!important;border:0!important;}


/* ============================================================
   CBMG DSE v1.0.5 — floating and tooltip refinements
   ============================================================ */
.cbmg-floating-btn:hover,
.cbmg-floating-btn:focus {
    border: 0 !important;
}
html[data-cbmg-mode="night"] .cbmg-floating-btn,
body.cbmg-night-mode .cbmg-floating-btn {
    background: var(--cbmg-terracotta) !important;
    color: #FFFFFF !important;
}
html[data-cbmg-mode="night"] .cbmg-floating-btn:hover,
html[data-cbmg-mode="night"] .cbmg-floating-btn:focus,
body.cbmg-night-mode .cbmg-floating-btn:hover,
body.cbmg-night-mode .cbmg-floating-btn:focus {
    background: #FFFFFF !important;
    color: var(--cbmg-primary) !important;
}
.cbmg-icon-tooltip::after {
    box-shadow: 0 8px 20px rgba(0,0,0,.08);
}
