/* CEOBI visual polish: theme contrast, elegant icons, and analytical gold frames */
:root{
  --cvp-font-ar:"IBM Plex Sans Arabic","Cairo","Segoe UI",Tahoma,sans-serif;
  --cvp-font-en:"IBM Plex Sans","Segoe UI",Arial,sans-serif;
  --cvp-gold:#d6b968;
  --cvp-gold-bright:#ead58f;
  --cvp-gold-deep:#9d7a2d;
  --cvp-gold-line:rgba(214,185,104,.58);
  --cvp-gold-soft:rgba(214,185,104,.12);
  --cvp-dark-bg:#071f35;
  --cvp-dark-surface:#0b2b42;
  --cvp-dark-surface-2:#10374f;
  --cvp-dark-text:#f5fafc;
  --cvp-dark-muted:#b8cbd3;
  --cvp-light-bg:#eef5f7;
  --cvp-light-surface:#ffffff;
  --cvp-light-surface-2:#f7fbfc;
  --cvp-light-text:#102b40;
  --cvp-light-muted:#526b79;
}
html,body,button,input,select,textarea{font-family:var(--cvp-font-ar)}
html[lang="en"],html[lang="en"] body,html[lang="en"] button,html[lang="en"] input,html[lang="en"] select,html[lang="en"] textarea{font-family:var(--cvp-font-en)}
body{font-synthesis:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6{font-weight:750;letter-spacing:0;line-height:1.35;text-wrap:balance}
p,li,dd,dt,label,button,input,select,textarea{line-height:1.7}

/* Explicit theme contrast prevents inherited low-contrast legacy colors. */
html:not([data-theme="dark"]),html[data-theme="light"]{
  color-scheme:light;
  --cvp-page:var(--cvp-light-bg);--cvp-surface:var(--cvp-light-surface);--cvp-surface-alt:var(--cvp-light-surface-2);
  --cvp-text:var(--cvp-light-text);--cvp-muted:var(--cvp-light-muted);--cvp-line:rgba(22,63,82,.16)
}
html[data-theme="dark"]{
  color-scheme:dark;
  --cvp-page:var(--cvp-dark-bg);--cvp-surface:var(--cvp-dark-surface);--cvp-surface-alt:var(--cvp-dark-surface-2);
  --cvp-text:var(--cvp-dark-text);--cvp-muted:var(--cvp-dark-muted);--cvp-line:rgba(159,207,215,.2)
}
body{color:var(--cvp-text)}
:is(main,section,article,aside,nav,header,footer) :is(h1,h2,h3,h4,h5,h6,strong,b){color:var(--cvp-text)}
:is(main,section,article,aside,nav,header,footer) :is(p,small,li,dd,dt,.muted,.description,.subtitle,.caption){color:var(--cvp-muted)}
a{color:inherit}
input,select,textarea{color:var(--cvp-text)!important;background:var(--cvp-surface)!important;border-color:var(--cvp-line)!important}
input::placeholder,textarea::placeholder{color:var(--cvp-muted)!important;opacity:.85}

/* Analytical gold frame applied to indicators, templates, report panels and interactive cards. */
:is(
 .ceobi-live-kpi,.ceobi-enterprise-kpi,.ceobi-kpi-card,.kpi-card,.metric-card,.indicator-card,
 .knowledge-tool-card,.tool-card,.template-card,.report-card,.resource-card,
 .ceobi-live-panel,.ceobi-enterprise-panel,.bi-analytics-preview,.bi-studio,
 [data-kpi],[data-indicator],[data-template]
){
  position:relative;
  border:1px solid var(--cvp-gold-line)!important;
  box-shadow:0 14px 34px rgba(5,24,38,.14),inset 0 0 0 1px rgba(255,255,255,.035)!important;
}
:is(
 .ceobi-live-kpi,.ceobi-enterprise-kpi,.ceobi-kpi-card,.kpi-card,.metric-card,.indicator-card,
 .knowledge-tool-card,.tool-card,.template-card,.report-card,.resource-card,
 .ceobi-live-panel,.ceobi-enterprise-panel,.bi-analytics-preview,.bi-studio,
 [data-kpi],[data-indicator],[data-template]
)::before{
  content:"";position:absolute;pointer-events:none;z-index:1;inset:6px;border:1px solid rgba(234,213,143,.2);border-radius:calc(inherit - 6px)
}
:is(.ceobi-live-kpi,.ceobi-enterprise-kpi,.ceobi-kpi-card,.kpi-card,.metric-card,.indicator-card)::after{
  content:"";position:absolute;pointer-events:none;z-index:2;inset-inline-start:18px;top:-1px;width:52px;height:2px;background:linear-gradient(90deg,transparent,var(--cvp-gold-bright),transparent)
}
:is(.ceobi-live-kpi,.ceobi-enterprise-kpi,.ceobi-kpi-card,.kpi-card,.metric-card,.indicator-card):hover,
:is(.knowledge-tool-card,.tool-card,.template-card,.report-card,.resource-card):hover{
  border-color:var(--cvp-gold-bright)!important;transform:translateY(-2px);box-shadow:0 18px 42px rgba(5,24,38,.2),0 0 0 1px rgba(214,185,104,.12)!important
}

/* Theme-aware card surfaces and readable KPI values. */
html[data-theme="dark"] :is(.ceobi-live-kpi,.ceobi-enterprise-kpi,.ceobi-kpi-card,.kpi-card,.metric-card,.indicator-card,.template-card,.report-card,.resource-card){background:linear-gradient(145deg,var(--cvp-dark-surface),var(--cvp-dark-surface-2))!important;color:var(--cvp-dark-text)!important}
html:not([data-theme="dark"]) :is(.ceobi-live-kpi,.ceobi-enterprise-kpi,.ceobi-kpi-card,.kpi-card,.metric-card,.indicator-card,.template-card,.report-card,.resource-card),html[data-theme="light"] :is(.ceobi-live-kpi,.ceobi-enterprise-kpi,.ceobi-kpi-card,.kpi-card,.metric-card,.indicator-card,.template-card,.report-card,.resource-card){background:linear-gradient(145deg,#fff,#f8fbfc)!important;color:var(--cvp-light-text)!important}
:is(.ceobi-live-kpi,.ceobi-enterprise-kpi,.ceobi-kpi-card,.kpi-card,.metric-card,.indicator-card) strong{color:var(--cvp-text)!important;text-shadow:none!important}
:is(.ceobi-live-kpi,.ceobi-enterprise-kpi,.ceobi-kpi-card,.kpi-card,.metric-card,.indicator-card) small{color:var(--cvp-muted)!important}

/* Unified elegant icon vessels. */
:is(.icon,.card-icon,.tool-icon,.report-icon,.feature-icon,.knowledge-tool-card__icon,.ceobi-icon-shell,[data-icon-shell]){
  width:44px;height:44px;min-width:44px;display:inline-grid!important;place-items:center!important;
  color:var(--cvp-gold-bright)!important;background:linear-gradient(145deg,rgba(214,185,104,.16),rgba(12,76,91,.16))!important;
  border:1px solid var(--cvp-gold-line)!important;border-radius:14px!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.04),0 8px 20px rgba(5,24,38,.14)!important;
  overflow:hidden;vertical-align:middle
}
:is(.icon,.card-icon,.tool-icon,.report-icon,.feature-icon,.knowledge-tool-card__icon,.ceobi-icon-shell,[data-icon-shell]) :is(svg,img){display:block;width:22px!important;height:22px!important;object-fit:contain;stroke:currentColor}
:is(.icon,.card-icon,.tool-icon,.report-icon,.feature-icon,.knowledge-tool-card__icon,.ceobi-icon-shell,[data-icon-shell]) i{font-size:1.1rem;line-height:1;color:inherit!important}
.ceobi-icon-fallback svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}

/* Gold accents for tabs, template controls and chart labels. */
:is(.tabs,.tab-list,.admin-tabs,.page-tabs,[role="tablist"]) [aria-selected="true"],
:is(.filter-chip,.period-chip,.ceobi-kpi-filter).is-active{
  color:var(--cvp-text)!important;border-color:var(--cvp-gold-line)!important;background:linear-gradient(135deg,var(--cvp-gold-soft),rgba(67,201,190,.1))!important
}
:is(.ceobi-bar-fill,.progress-fill,.kpi-progress){background:linear-gradient(90deg,var(--cvp-gold-deep),var(--cvp-gold-bright),#61d1c6)!important}

@media(max-width:820px){
  h1{font-size:clamp(1.9rem,8vw,2.6rem)!important}h2{font-size:clamp(1.45rem,6vw,2rem)!important}
  :is(.ceobi-live-kpi,.ceobi-enterprise-kpi,.ceobi-kpi-card,.kpi-card,.metric-card,.indicator-card){min-height:128px}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
