/* DheLoop Accounting Professional Themes + CFO + Power BI V5.4 */
:root {
  --dhe-enhanced-topbar-height: 68px;
  --dhe-enhanced-content-max: 1720px;
  --dhe-enhanced-page-pad: clamp(18px, 2.2vw, 38px);
  --dhe-enhanced-radius: 20px;
  --dhe-enhanced-border: rgba(105, 130, 164, .22);
  --dhe-enhanced-shadow: 0 18px 52px rgba(25, 55, 91, .10);
  --dhe-enhanced-text: #10213d;
  --dhe-enhanced-muted: #65748c;
  --dhe-enhanced-blue: #1769f3;
  --dhe-enhanced-indigo: #6254d9;
  --dhe-enhanced-teal: #078c86;
  --dhe-enhanced-purple: #7a4bc4;
  --dhe-enhanced-cyan: #08a9c8;
  --dhe-enhanced-surface: rgba(255, 255, 255, .97);
  --dhe-enhanced-accent: var(--dhe-enhanced-blue);
  --dhe-enhanced-accent-soft: #eaf3ff;
}

#workspaceView.dhe-enhanced-ready {
  min-height: 100vh;
  background: linear-gradient(135deg, #f8fbff 0%, #eef5fc 58%, #f8fbff 100%);
  color: var(--dhe-enhanced-text);
}

#workspaceView.dhe-enhanced-ready[data-dhe-enhanced-area="cfo"] { --dhe-enhanced-accent: var(--dhe-enhanced-blue); --dhe-enhanced-accent-soft: #eaf3ff; }
#workspaceView.dhe-enhanced-ready[data-dhe-enhanced-area="management"] { --dhe-enhanced-accent: var(--dhe-enhanced-indigo); --dhe-enhanced-accent-soft: #f0edff; }
#workspaceView.dhe-enhanced-ready[data-dhe-enhanced-area="operations"] { --dhe-enhanced-accent: var(--dhe-enhanced-teal); --dhe-enhanced-accent-soft: #e8f8f5; }
#workspaceView.dhe-enhanced-ready[data-dhe-enhanced-area="reports"] { --dhe-enhanced-accent: var(--dhe-enhanced-purple); --dhe-enhanced-accent-soft: #f4edff; }

#workspaceView.dhe-enhanced-ready > .dhe-workspace-top,
#workspaceView.dhe-enhanced-ready > .dhe-demo-banner,
#workspaceView.dhe-enhanced-ready #dheExecutiveTopNav,
#workspaceView.dhe-enhanced-ready .dhe-sidebar { display: none !important; }

#workspaceView.dhe-enhanced-ready .dhe-workspace-layout {
  display: block !important;
  grid-template-columns: minmax(0, 1fr) !important;
  width: 100% !important;
  min-height: calc(100vh - var(--dhe-enhanced-topbar-height));
}

#workspaceView.dhe-enhanced-ready .dhe-workspace-main {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
  padding: var(--dhe-enhanced-page-pad) !important;
  overflow: visible !important;
}

#workspaceView.dhe-enhanced-ready .dhe-workspace-main > .dhe-workspace-page {
  width: min(100%, var(--dhe-enhanced-content-max));
  margin: 0 auto;
}

.dhe-enhanced-page { display: none; }
.dhe-enhanced-page.active { display: block; }

.dhe-enhanced-topbar {
  position: sticky;
  top: 0;
  z-index: 1200;
  min-height: var(--dhe-enhanced-topbar-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 9px clamp(14px, 2vw, 34px);
  border-bottom: 1px solid var(--dhe-enhanced-border);
  background: rgba(255,255,255,.96);
  backdrop-filter: blur(18px);
  box-shadow: 0 8px 26px rgba(18,45,78,.07);
}

.dhe-enhanced-title-area,
.dhe-enhanced-user-area,
.dhe-enhanced-user { display: flex; align-items: center; }
.dhe-enhanced-title-area { min-width: 0; gap: 9px; }
.dhe-enhanced-user-area { flex: 0 0 auto; gap: 9px; }

.dhe-enhanced-title-copy { min-width: 0; line-height: 1.12; }
.dhe-enhanced-title-copy small {
  display: block;
  margin-bottom: 2px;
  color: #728098;
  font-size: 10.5px;
  font-weight: 850;
  letter-spacing: .07em;
  text-transform: uppercase;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.dhe-enhanced-title-copy h1 {
  max-width: 52vw;
  margin: 0;
  color: var(--dhe-enhanced-text);
  font-size: clamp(18px, 1.45vw, 24px);
  line-height: 1.15;
  letter-spacing: -.025em;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dhe-enhanced-icon-btn {
  width: 40px;
  height: 40px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 auto;
  border: 1px solid var(--dhe-enhanced-border);
  border-radius: 12px;
  background: #fff;
  color: #27466f;
  font-size: 18px;
  font-weight: 850;
  cursor: pointer;
  transition: transform .15s ease, box-shadow .15s ease, border-color .15s ease;
}
.dhe-enhanced-icon-btn:hover { transform: translateY(-1px); border-color: color-mix(in srgb, var(--dhe-enhanced-accent) 38%, #cfd9e7); box-shadow: 0 8px 20px rgba(23,70,120,.10); }

.dhe-enhanced-notification { position: relative; font-size: 9px; color: var(--dhe-enhanced-accent); }
.dhe-enhanced-notification b {
  position: absolute;
  top: -5px;
  right: -5px;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  display: grid;
  place-items: center;
  border: 2px solid #fff;
  border-radius: 999px;
  background: #d93c3c;
  color: #fff;
  font-size: 10px;
}

.dhe-enhanced-user {
  gap: 8px;
  padding: 4px 11px 4px 5px;
  border: 1px solid var(--dhe-enhanced-border);
  border-radius: 999px;
  background: #f8fbff;
  color: #2d4566;
  font-size: 13px;
  font-weight: 780;
}
.dhe-enhanced-avatar {
  width: 32px;
  height: 32px;
  display: inline-grid;
  place-items: center;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--dhe-enhanced-accent), var(--dhe-enhanced-cyan));
  color: #fff;
  font-weight: 900;
}

.dhe-enhanced-quick-create,
.dhe-enhanced-primary,
.dhe-enhanced-secondary {
  min-height: 42px;
  padding: 0 16px;
  border-radius: 12px;
  font-size: 13px;
  font-weight: 850;
  cursor: pointer;
}
.dhe-enhanced-quick-create,
.dhe-enhanced-primary {
  border: 0;
  background: linear-gradient(135deg, var(--dhe-enhanced-accent), color-mix(in srgb, var(--dhe-enhanced-accent) 65%, var(--dhe-enhanced-cyan)));
  color: #fff;
  box-shadow: 0 10px 22px color-mix(in srgb, var(--dhe-enhanced-accent) 18%, transparent);
}
.dhe-enhanced-quick-create span { margin-right: 4px; font-size: 17px; }
.dhe-enhanced-primary.wide { width: 100%; }
.dhe-enhanced-secondary { border: 1px solid var(--dhe-enhanced-border); background: #fff; color: #2f4c70; }

.dhe-enhanced-gear-menu,
.dhe-quick-create-menu {
  position: fixed;
  z-index: 1700;
  top: 63px;
  right: clamp(12px, 2vw, 30px);
  width: min(330px, calc(100vw - 24px));
  padding: 13px;
  border: 1px solid var(--dhe-enhanced-border);
  border-radius: 18px;
  background: rgba(255,255,255,.99);
  box-shadow: 0 24px 70px rgba(17,42,75,.22);
}
.dhe-quick-create-menu { right: clamp(160px, 15vw, 270px); }
.dhe-enhanced-gear-menu[hidden], .dhe-quick-create-menu[hidden], .dhe-module-drawer[hidden], .dhe-drawer-backdrop[hidden] { display: none !important; }

.dhe-enhanced-menu-head { padding: 4px 5px 12px; border-bottom: 1px solid #e8edf5; }
.dhe-enhanced-menu-head strong { display: block; color: var(--dhe-enhanced-text); font-size: 16px; }
.dhe-enhanced-menu-head span { display: block; margin-top: 3px; color: var(--dhe-enhanced-muted); font-size: 12px; }
.dhe-enhanced-gear-menu label { display: grid; grid-template-columns: 88px 1fr; align-items: center; gap: 10px; padding: 10px 5px 0; color: #53657f; font-size: 13px; font-weight: 750; }
.dhe-enhanced-gear-menu select { width: 100%; min-height: 38px; border: 1px solid #d9e2ef; border-radius: 10px; padding: 0 10px; background: #fff; color: #233a5c; font: inherit; }
.dhe-enhanced-menu-meta { display: flex; justify-content: space-between; gap: 12px; padding: 13px 5px; margin-top: 9px; border-top: 1px solid #e8edf5; color: #61718b; font-size: 13px; }
.dhe-enhanced-menu-meta b { color: #213b62; }
.dhe-enhanced-gear-menu > button,
.dhe-quick-create-menu > button {
  width: 100%;
  min-height: 42px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 10px;
  margin-top: 7px;
  padding: 0 12px;
  text-align: left;
  border: 1px solid #dfe7f2;
  border-radius: 10px;
  background: #f8fbff;
  color: #254166;
  font-size: 13px;
  font-weight: 800;
  cursor: pointer;
}
.dhe-enhanced-gear-menu > button { display: block; }
.dhe-enhanced-gear-menu > button:hover,
.dhe-quick-create-menu > button:hover { background: var(--dhe-enhanced-accent-soft); }
.dhe-enhanced-gear-menu > button.danger { color: #aa2f2f; background: #fff8f8; }
.dhe-quick-create-menu > button span { width: 28px; height: 28px; display: grid; place-items: center; border-radius: 8px; background: var(--dhe-enhanced-accent-soft); color: var(--dhe-enhanced-accent); }
.dhe-quick-create-menu > button i { font-style: normal; color: var(--dhe-enhanced-accent); }

.dhe-drawer-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1790;
  background: rgba(9,24,45,.34);
  backdrop-filter: blur(2px);
}
.dhe-module-drawer {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1800;
  width: min(380px, 92vw);
  height: 100vh;
  display: flex;
  flex-direction: column;
  background: #fff;
  box-shadow: 24px 0 70px rgba(13,37,67,.24);
}
.dhe-drawer-head { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 16px 18px; border-bottom: 1px solid #e5ebf3; }
.dhe-drawer-head small { display: block; color: #73839a; font-size: 10px; font-weight: 900; letter-spacing: .1em; }
.dhe-drawer-head strong { display: block; margin-top: 3px; color: var(--dhe-enhanced-text); font-size: 23px; }
.dhe-drawer-close { width: 38px; height: 38px; border: 1px solid #dbe4ef; border-radius: 11px; background: #fff; color: #334c6e; font-size: 25px; cursor: pointer; }
.dhe-drawer-search { display: flex; align-items: center; gap: 9px; margin: 16px 16px 8px; padding: 0 12px; border: 1px solid #dce5ef; border-radius: 12px; background: #f8fbff; }
.dhe-drawer-search input { width: 100%; min-height: 43px; border: 0; outline: 0; background: transparent; color: #233a5c; font-size: 14px; }
.dhe-drawer-content { overflow: auto; padding: 6px 16px 24px; }
.dhe-drawer-content section { margin-top: 18px; }
.dhe-drawer-content h3 { margin: 0 0 7px; color: #8290a5; font-size: 11px; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.dhe-drawer-content button { width: 100%; min-height: 43px; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 0 12px; border: 0; border-radius: 10px; background: transparent; color: #29415f; font-size: 14px; font-weight: 760; cursor: pointer; }
.dhe-drawer-content button:hover { background: var(--dhe-enhanced-accent-soft); color: var(--dhe-enhanced-accent); }

.dhe-enhanced-page-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px;
  margin: 4px auto 25px;
}
.dhe-enhanced-page-head h2 { margin: 4px 0 7px; color: var(--dhe-enhanced-text); font-size: clamp(30px, 2.7vw, 46px); line-height: 1.05; letter-spacing: -.043em; }
.dhe-enhanced-page-head p { max-width: 770px; margin: 0; color: var(--dhe-enhanced-muted); font-size: clamp(14px, 1.15vw, 17px); line-height: 1.55; }
.dhe-enhanced-eyebrow { color: var(--dhe-enhanced-accent); font-size: 11px; font-weight: 950; letter-spacing: .14em; }
.dhe-enhanced-context,
.dhe-enhanced-filter-row,
.dhe-report-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.dhe-enhanced-context span,
.dhe-enhanced-filter-row button,
.dhe-report-actions button { min-height: 38px; padding: 0 13px; display: inline-flex; align-items: center; border: 1px solid var(--dhe-enhanced-border); border-radius: 999px; background: rgba(255,255,255,.88); color: #415879; font-size: 12px; font-weight: 820; }
.dhe-enhanced-filter-row button,
.dhe-report-actions button { cursor: pointer; }

.dhe-enhanced-launch-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(18px, 2vw, 26px); }
.dhe-enhanced-launch-card {
  --card-accent: var(--dhe-enhanced-blue);
  --card-soft: #eaf3ff;
  position: relative;
  min-height: clamp(225px, 27vh, 298px);
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: end;
  gap: 21px;
  padding: clamp(24px, 2.8vw, 38px);
  overflow: hidden;
  text-align: left;
  border: 1px solid var(--dhe-enhanced-border);
  border-radius: 26px;
  background: linear-gradient(145deg, rgba(255,255,255,.99), color-mix(in srgb, var(--card-soft) 48%, #fff));
  box-shadow: var(--dhe-enhanced-shadow);
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
.dhe-enhanced-launch-card.accent-indigo { --card-accent: var(--dhe-enhanced-indigo); --card-soft: #f0edff; }
.dhe-enhanced-launch-card.accent-teal { --card-accent: var(--dhe-enhanced-teal); --card-soft: #e6f7f3; }
.dhe-enhanced-launch-card.accent-purple { --card-accent: var(--dhe-enhanced-purple); --card-soft: #f3ecff; }
.dhe-enhanced-launch-card::before { content: ''; position: absolute; width: 235px; height: 235px; right: -70px; top: -95px; border-radius: 50%; background: radial-gradient(circle, color-mix(in srgb, var(--card-accent) 18%, transparent), transparent 68%); }
.dhe-enhanced-launch-card:hover { transform: translateY(-4px); border-color: color-mix(in srgb, var(--card-accent) 34%, #d8e1ec); box-shadow: 0 28px 68px rgba(23,70,120,.15); }
.dhe-enhanced-launch-icon { align-self: start; width: 64px; height: 64px; display: grid; place-items: center; border-radius: 19px; color: #fff; background: linear-gradient(135deg, var(--card-accent), color-mix(in srgb, var(--card-accent) 60%, #0db8c9)); font-size: 29px; box-shadow: 0 14px 26px color-mix(in srgb, var(--card-accent) 22%, transparent); }
.dhe-enhanced-launch-copy strong { display: block; color: var(--dhe-enhanced-text); font-size: clamp(24px, 2.15vw, 34px); line-height: 1.1; letter-spacing: -.035em; }
.dhe-enhanced-launch-copy > span { display: block; max-width: 540px; margin-top: 11px; color: var(--dhe-enhanced-muted); font-size: clamp(14px, 1.05vw, 16px); line-height: 1.55; }
.dhe-enhanced-launch-copy small { display: inline-block; margin-top: 17px; color: var(--card-accent); font-size: 11px; font-weight: 920; letter-spacing: .09em; text-transform: uppercase; }
.dhe-enhanced-launch-arrow { width: 45px; height: 45px; display: grid; place-items: center; border-radius: 50%; background: var(--card-soft); color: var(--card-accent); font-size: 24px; font-weight: 900; }

.dhe-executive-kpi-grid,
.dhe-management-kpi-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 14px; margin-bottom: 20px; }
.dhe-executive-kpi-grid article,
.dhe-management-kpi-grid article { min-height: 116px; padding: 19px; border: 1px solid var(--dhe-enhanced-border); border-radius: 17px; background: #fff; box-shadow: 0 10px 28px rgba(25,57,93,.055); }
.dhe-executive-kpi-grid span,
.dhe-management-kpi-grid span { display: block; color: #6d7b91; font-size: 10.5px; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.dhe-executive-kpi-grid b,
.dhe-management-kpi-grid b { display: block; margin-top: 11px; color: var(--dhe-enhanced-text); font-size: clamp(21px, 1.7vw, 29px); letter-spacing: -.035em; }
.dhe-executive-kpi-grid small,
.dhe-management-kpi-grid small { display: block; margin-top: 6px; color: #8491a4; font-size: 12px; }

.dhe-enhanced-panel { border: 1px solid var(--dhe-enhanced-border); border-radius: var(--dhe-enhanced-radius); background: var(--dhe-enhanced-surface); box-shadow: var(--dhe-enhanced-shadow); overflow: hidden; }
.dhe-enhanced-panel-head { min-height: 76px; display: flex; justify-content: space-between; gap: 20px; align-items: center; padding: 18px 22px; border-bottom: 1px solid #e8edf4; }
.dhe-enhanced-panel-head h3 { margin: 0; color: var(--dhe-enhanced-text); font-size: 19px; }
.dhe-enhanced-panel-head p { margin: 4px 0 0; color: var(--dhe-enhanced-muted); font-size: 13px; }
.dhe-enhanced-panel-head > span { padding: 7px 11px; border-radius: 999px; background: var(--dhe-enhanced-accent-soft); color: var(--dhe-enhanced-accent); font-size: 11px; font-weight: 900; }

.dhe-cfo-layout { display: grid; grid-template-columns: minmax(0, 7fr) minmax(290px, 3fr); gap: 18px; align-items: stretch; }
.dhe-powerbi-placeholder { min-height: 520px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 36px; text-align: center; background: radial-gradient(circle at 50% 40%, rgba(242,200,17,.14), transparent 38%), linear-gradient(180deg,#fbfdff,#f2f7fd); }
.dhe-powerbi-placeholder h4 { margin: 17px 0 7px; color: var(--dhe-enhanced-text); font-size: 23px; }
.dhe-powerbi-placeholder p { margin: 0; color: var(--dhe-enhanced-muted); }
.dhe-powerbi-brand { height: 66px; display: flex; align-items: end; gap: 7px; }
.dhe-powerbi-brand i { display: block; width: 17px; border-radius: 5px 5px 2px 2px; background: #f2c811; }
.dhe-powerbi-brand i:nth-child(1){height:26px}.dhe-powerbi-brand i:nth-child(2){height:40px}.dhe-powerbi-brand i:nth-child(3){height:54px}.dhe-powerbi-brand i:nth-child(4){height:66px}
.dhe-powerbi-chart { width: min(650px, 92%); height: 135px; margin-top: 31px; display: flex; align-items: end; justify-content: center; gap: 14px; border-bottom: 1px solid #d7e1ef; }
.dhe-powerbi-chart i { width: clamp(22px, 4.5vw, 54px); border-radius: 8px 8px 0 0; background: linear-gradient(180deg,#f2c811,#e3a900); }

.dhe-cfo-decisions { padding: 19px; border: 1px solid var(--dhe-enhanced-border); border-radius: var(--dhe-enhanced-radius); background: #fff; box-shadow: var(--dhe-enhanced-shadow); }
.dhe-decision-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 15px; margin-bottom: 12px; }
.dhe-decision-head span { display: block; color: var(--dhe-enhanced-blue); font-size: 10px; font-weight: 930; letter-spacing: .1em; }
.dhe-decision-head h3 { margin: 4px 0 0; color: var(--dhe-enhanced-text); font-size: 21px; }
.dhe-decision-head > b { min-width: 38px; height: 38px; display: grid; place-items: center; border-radius: 12px; background: #eaf3ff; color: var(--dhe-enhanced-blue); }
.dhe-decision-item { position: relative; width: 100%; min-height: 99px; display: block; margin-top: 10px; padding: 14px 39px 13px 14px; text-align: left; border: 1px solid #e0e7f0; border-left: 4px solid #8da0b8; border-radius: 13px; background: #fbfdff; cursor: pointer; }
.dhe-decision-item.tone-danger { border-left-color: #d84b4b; }
.dhe-decision-item.tone-warning { border-left-color: #d99c21; }
.dhe-decision-item > span { color: #7b899d; font-size: 10px; font-weight: 900; text-transform: uppercase; }
.dhe-decision-item strong { display: block; margin-top: 5px; color: #203753; font-size: 14px; }
.dhe-decision-item small { display: block; margin-top: 5px; color: #75849a; font-size: 12px; line-height: 1.4; }
.dhe-decision-item > b { position: absolute; right: 14px; top: 42%; color: var(--dhe-enhanced-blue); }
.dhe-cfo-decisions .wide { margin-top: 13px; }

.dhe-management-layout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(340px, .85fr); gap: 18px; }
.dhe-management-bars { padding: 21px 23px 25px; }
.dhe-management-bars > div { display: grid; grid-template-columns: 150px 1fr 45px; align-items: center; gap: 12px; margin: 18px 0; }
.dhe-management-bars span { color: #445b79; font-size: 13px; font-weight: 780; }
.dhe-management-bars i { height: 11px; display: block; overflow: hidden; border-radius: 999px; background: #e9edf6; }
.dhe-management-bars i b { height: 100%; display: block; border-radius: inherit; background: linear-gradient(90deg,var(--dhe-enhanced-indigo),#8a7bea); }
.dhe-management-bars em { color: #5d6f88; font-size: 12px; font-style: normal; font-weight: 850; text-align: right; }
.dhe-management-action-list { padding: 8px 17px 17px; }
.dhe-management-action-list button { width: 100%; min-height: 68px; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 11px 8px; border: 0; border-bottom: 1px solid #e8edf5; background: transparent; text-align: left; cursor: pointer; }
.dhe-management-action-list button:last-child { border-bottom: 0; }
.dhe-management-action-list strong { display: block; color: #243b59; font-size: 14px; }
.dhe-management-action-list small { display: block; margin-top: 4px; color: #77869a; font-size: 12px; }
.dhe-management-action-list b { flex: 0 0 auto; color: var(--dhe-enhanced-indigo); font-size: 12px; }

.dhe-work-today { min-width: 205px; padding: 12px 15px; border: 1px solid #cfe5df; border-radius: 14px; background: #f0faf7; }
.dhe-work-today span { display: block; color: #56837a; font-size: 10px; font-weight: 900; letter-spacing: .08em; }
.dhe-work-today b { display: block; margin-top: 4px; color: #245e55; font-size: 13px; }
.dhe-work-today i { color: var(--dhe-enhanced-teal); font-style: normal; }
.dhe-work-queue { min-height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 18px; padding: 16px 20px; border: 1px solid #cfe5df; border-radius: 17px; background: linear-gradient(135deg,#fff,#eefaf7); }
.dhe-work-queue strong { display: block; color: #173f3b; font-size: 16px; }
.dhe-work-queue span { display: block; margin-top: 4px; color: #66807c; font-size: 13px; }
.dhe-work-queue button { border: 0; background: transparent; color: var(--dhe-enhanced-teal); font-size: 13px; font-weight: 900; cursor: pointer; }

.dhe-enhanced-function-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 15px; }
.module-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.focused-module-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.dhe-accounting-module-card,
.dhe-enhanced-function-card {
  position: relative;
  min-height: 164px;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 15px;
  padding: 21px;
  text-align: left;
  border: 1px solid var(--dhe-enhanced-border);
  border-radius: 19px;
  background: #fff;
  box-shadow: 0 12px 32px rgba(25,57,93,.065);
  cursor: pointer;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.dhe-accounting-module-card { min-height: 190px; align-items: start; }
.dhe-accounting-module-card:hover,
.dhe-enhanced-function-card:hover { transform: translateY(-3px); border-color: color-mix(in srgb, var(--dhe-enhanced-accent) 34%, #d8e1ec); box-shadow: 0 20px 44px rgba(23,70,120,.12); }
.dhe-accounting-module-icon,
.dhe-enhanced-function-icon { width: 51px; height: 51px; display: grid; place-items: center; border-radius: 15px; background: var(--dhe-enhanced-accent-soft); color: var(--dhe-enhanced-accent); font-size: 23px; }
.dhe-accounting-module-card strong,
.dhe-enhanced-function-card strong { display: block; color: var(--dhe-enhanced-text); font-size: 17px; line-height: 1.25; }
.dhe-accounting-module-card small,
.dhe-enhanced-function-card small { display: block; margin-top: 7px; color: var(--dhe-enhanced-muted); font-size: 12.5px; line-height: 1.45; }
.dhe-accounting-module-card em,
.dhe-enhanced-function-card em { display: inline-block; margin-top: 15px; padding: 6px 9px; border-radius: 999px; background: var(--dhe-enhanced-accent-soft); color: var(--dhe-enhanced-accent); font-size: 10px; font-style: normal; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; }
.dhe-accounting-module-card > b,
.dhe-enhanced-function-card > b { color: var(--dhe-enhanced-accent); font-size: 21px; }

.dhe-report-search { min-height: 50px; display: flex; align-items: center; gap: 10px; margin-bottom: 18px; padding: 0 16px; border: 1px solid var(--dhe-enhanced-border); border-radius: 14px; background: #fff; box-shadow: 0 10px 26px rgba(25,57,93,.05); }
.dhe-report-search input { width: 100%; min-height: 48px; border: 0; outline: 0; background: transparent; color: #273e5c; font-size: 14px; }
.dhe-report-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; }
.dhe-report-card { min-height: 120px; display: grid; grid-template-columns: auto 1fr auto auto; align-items: center; gap: 15px; padding: 18px 19px; text-align: left; border: 1px solid var(--dhe-enhanced-border); border-radius: 17px; background: #fff; box-shadow: 0 10px 28px rgba(25,57,93,.06); cursor: pointer; }
.dhe-report-card:hover { border-color: color-mix(in srgb, var(--dhe-enhanced-purple) 36%, #d8e1ec); transform: translateY(-2px); }
.dhe-report-icon { width: 49px; height: 49px; display: grid; place-items: center; border-radius: 14px; background: #f3edff; color: var(--dhe-enhanced-purple); font-size: 22px; }
.dhe-report-card strong { display: block; color: var(--dhe-enhanced-text); font-size: 16px; }
.dhe-report-card small { display: block; margin-top: 5px; color: var(--dhe-enhanced-muted); font-size: 12px; line-height: 1.4; }
.dhe-report-card em { padding: 6px 8px; border-radius: 999px; background: #f5f1fb; color: #7251a5; font-size: 10px; font-style: normal; font-weight: 850; white-space: nowrap; }
.dhe-report-card > b { color: var(--dhe-enhanced-purple); font-size: 20px; }

#workspaceView.dhe-enhanced-ready .dhe-workspace-page:not(.dhe-enhanced-page) { padding-top: 3px; }
#workspaceView.dhe-enhanced-ready .dhe-workspace-page:not(.dhe-enhanced-page) > :first-child { margin-top: 0 !important; }
#workspaceView.dhe-enhanced-ready .dhe-workspace-page:not(.dhe-enhanced-page) .dhe-page-header,
#workspaceView.dhe-enhanced-ready .dhe-workspace-page:not(.dhe-enhanced-page) .dhe-module-header,
#workspaceView.dhe-enhanced-ready .dhe-workspace-page:not(.dhe-enhanced-page) .dhe-section-header { margin-top: 0 !important; }
#workspaceView.dhe-enhanced-ready button,
#workspaceView.dhe-enhanced-ready input,
#workspaceView.dhe-enhanced-ready select,
#workspaceView.dhe-enhanced-ready textarea { font-size: 14px; }
#workspaceView.dhe-enhanced-ready table { font-size: 13.5px; }

@media (max-width: 1320px) {
  .dhe-executive-kpi-grid,
  .dhe-management-kpi-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .module-grid,
  .focused-module-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 1080px) {
  .dhe-cfo-layout,
  .dhe-management-layout { grid-template-columns: 1fr; }
  .dhe-powerbi-placeholder { min-height: 430px; }
  .dhe-report-grid { grid-template-columns: 1fr; }
}

@media (max-width: 860px) {
  :root { --dhe-enhanced-topbar-height: 64px; }
  .dhe-enhanced-topbar { gap: 7px; padding: 8px 11px; }
  .dhe-enhanced-user #dheEnhancedUserName { display: none; }
  .dhe-enhanced-user { padding: 4px; border: 0; background: transparent; }
  .dhe-enhanced-quick-create { width: 40px; padding: 0; font-size: 0; }
  .dhe-enhanced-quick-create span { margin: 0; font-size: 20px; }
  .dhe-quick-create-menu { right: 62px; }
  .dhe-enhanced-launch-grid { grid-template-columns: 1fr; }
  .dhe-enhanced-launch-card { min-height: 205px; }
  .dhe-enhanced-page-head { align-items: flex-start; flex-direction: column; }
  .dhe-enhanced-context,
  .dhe-enhanced-filter-row,
  .dhe-report-actions { justify-content: flex-start; }
  .dhe-executive-kpi-grid,
  .dhe-management-kpi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .dhe-enhanced-function-grid,
  .module-grid,
  .focused-module-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 580px) {
  .dhe-enhanced-notification { display: none; }
  .dhe-enhanced-title-copy h1 { max-width: 48vw; font-size: 17px; }
  .dhe-enhanced-title-copy small { display: none; }
  .dhe-enhanced-icon-btn { width: 38px; height: 38px; }
  .dhe-enhanced-page-head h2 { font-size: 31px; }
  .dhe-enhanced-launch-card { min-height: 205px; grid-template-columns: 1fr auto; align-items: end; }
  .dhe-enhanced-launch-icon { grid-column: 1 / -1; }
  .dhe-enhanced-launch-copy strong { font-size: 25px; }
  .dhe-executive-kpi-grid,
  .dhe-management-kpi-grid,
  .dhe-enhanced-function-grid,
  .module-grid,
  .focused-module-grid { grid-template-columns: 1fr; }
  .dhe-report-card { grid-template-columns: auto 1fr auto; }
  .dhe-report-card em { display: none; }
  .dhe-work-queue { align-items: flex-start; flex-direction: column; }
  .dhe-management-bars > div { grid-template-columns: 1fr 45px; }
  .dhe-management-bars i { grid-column: 1 / -1; grid-row: 2; }
  .dhe-powerbi-placeholder { min-height: 330px; padding: 24px 13px; }
  .dhe-powerbi-chart { gap: 6px; }
}


/* =========================================================
   V5 CFO executive workspace and complete-function coverage
   ========================================================= */
.dhe-cfo-toolbar { display:flex; justify-content:flex-end; gap:8px; flex-wrap:wrap; }
.dhe-cfo-toolbar button,
.dhe-enhanced-panel-head button { min-height:38px; padding:0 13px; border:1px solid var(--dhe-enhanced-border); border-radius:999px; background:#fff; color:#36506f; font-size:11px; font-weight:850; cursor:pointer; }
.dhe-cfo-toolbar button.primary { border-color:transparent; background:linear-gradient(135deg,#2563eb,#08aeb7); color:#fff; }
.dhe-cfo-context-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1px; margin-bottom:14px; overflow:hidden; border:1px solid var(--dhe-enhanced-border); border-radius:15px; background:#dfe7f1; }
.dhe-cfo-context-strip > span { min-height:68px; padding:13px 15px; background:rgba(255,255,255,.96); }
.dhe-cfo-context-strip small { display:block; color:#7c8ca1; font-size:9px; font-weight:900; letter-spacing:.09em; }
.dhe-cfo-context-strip b { display:block; margin-top:6px; color:#1f3858; font-size:13px; }
.dhe-cfo-kpi-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
.dhe-cfo-kpi-grid article { min-height:108px; }
.dhe-cfo-risk-strip { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; margin-bottom:18px; }
.dhe-cfo-risk-strip button { min-height:72px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:13px 15px; text-align:left; border:1px solid #dfe7f1; border-radius:14px; background:#fff; cursor:pointer; }
.dhe-cfo-risk-strip span { color:#667a96; font-size:11px; font-weight:800; }
.dhe-cfo-risk-strip b { min-width:34px; height:34px; display:grid; place-items:center; border-radius:11px; background:#eef4ff; color:#1d5dd6; font-size:16px; }
.dhe-cfo-executive-grid { display:grid; grid-template-columns:minmax(0,1fr) 330px; gap:18px; align-items:start; }
.dhe-cfo-main-stack { display:grid; gap:18px; min-width:0; }
.dhe-cfo-performance-panel { padding-bottom:4px; }
.dhe-cfo-performance-bars { display:grid; gap:16px; padding:18px 20px 22px; }
.dhe-cfo-performance-bars > div { display:grid; grid-template-columns:100px minmax(0,1fr) 145px; gap:13px; align-items:center; }
.dhe-cfo-performance-bars span { color:#526985; font-size:12px; font-weight:850; }
.dhe-cfo-performance-bars i { height:12px; overflow:hidden; border-radius:999px; background:#e8eef6; }
.dhe-cfo-performance-bars i b { display:block; width:4%; height:100%; border-radius:inherit; background:linear-gradient(90deg,#2463eb,#0db6b6); transition:width .25s ease; }
.dhe-cfo-performance-bars > div:nth-child(2) i b { background:linear-gradient(90deg,#7c5ce4,#be6ad8); }
.dhe-cfo-performance-bars > div:nth-child(3) i b { background:linear-gradient(90deg,#0b9b77,#3bc9a4); }
.dhe-cfo-performance-bars em { color:#233b5a; font-size:12px; font-style:normal; font-weight:850; text-align:right; }
.dhe-cfo-insight-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.dhe-cfo-insight-card dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:0; padding:16px 18px 19px; }
.dhe-cfo-insight-card dl div { min-height:76px; padding:13px; border:1px solid #e3eaf3; border-radius:13px; background:#f9fbfe; }
.dhe-cfo-insight-card dt { color:#78889d; font-size:10px; font-weight:850; text-transform:uppercase; }
.dhe-cfo-insight-card dd { margin:7px 0 0; color:#173354; font-size:15px; font-weight:900; }
.dhe-powerbi-placeholder.compact { min-height:340px; }
.dhe-cfo-quick-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:13px; }
.dhe-cfo-quick-actions button { min-height:42px; padding:8px; border:1px solid #dde6f0; border-radius:11px; background:#f8fbff; color:#36506f; font-size:10px; font-weight:850; cursor:pointer; }
#dheFunctionCoverage, #dheCfoCoverage { color:#0b8c7e; }

@media (max-width: 1250px) {
  .dhe-cfo-executive-grid { grid-template-columns:1fr; }
  .dhe-cfo-decisions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .dhe-cfo-decisions .dhe-decision-head,
  .dhe-cfo-decisions .wide,
  .dhe-cfo-decisions .dhe-cfo-quick-actions { grid-column:1 / -1; }
  .dhe-decision-item { margin-top:0; }
}
@media (max-width: 980px) {
  .dhe-cfo-context-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dhe-cfo-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dhe-cfo-risk-strip { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .dhe-cfo-insight-grid { grid-template-columns:1fr; }
}
@media (max-width: 620px) {
  .dhe-cfo-toolbar { justify-content:flex-start; }
  .dhe-cfo-context-strip,
  .dhe-cfo-kpi-grid,
  .dhe-cfo-risk-strip,
  .dhe-cfo-decisions { grid-template-columns:1fr; }
  .dhe-cfo-performance-bars > div { grid-template-columns:1fr; gap:6px; }
  .dhe-cfo-performance-bars em { text-align:left; }
  .dhe-cfo-insight-card dl { grid-template-columns:1fr; }
  .dhe-cfo-quick-actions { grid-template-columns:1fr; }
}


/* =========================================================
   V5.4 professional semantic themes and executive analytics
   ========================================================= */
:root,
html[data-dhe-theme="light"] {
  --d54-bg:#f3f6fa;--d54-surface:#ffffff;--d54-surface-raised:#ffffff;--d54-surface-muted:#f7f9fc;
  --d54-text:#17263c;--d54-heading:#0c1f3a;--d54-muted:#63748b;--d54-border:#dbe3ec;--d54-border-strong:#c7d2df;
  --d54-accent:#225fc7;--d54-accent-2:#0f8f87;--d54-positive:#138a63;--d54-warning:#b97617;--d54-danger:#c44343;
  --d54-chart-1:#2866d6;--d54-chart-2:#e08a2e;--d54-chart-3:#159570;--d54-chart-4:#0b91a7;--d54-chart-5:#7a5cc8;
  --d54-shadow:0 14px 38px rgba(28,50,82,.08);--d54-shadow-raised:0 22px 58px rgba(28,50,82,.12);
}
html[data-dhe-theme="midnight"] {
  --d54-bg:#0a1422;--d54-surface:#101f32;--d54-surface-raised:#14263c;--d54-surface-muted:#172b43;
  --d54-text:#e7eef8;--d54-heading:#f7fbff;--d54-muted:#9cafc5;--d54-border:#293e56;--d54-border-strong:#3a536d;
  --d54-accent:#6b94f5;--d54-accent-2:#38c5bc;--d54-positive:#45c89a;--d54-warning:#e3a64c;--d54-danger:#ef7777;
  --d54-chart-1:#6b94f5;--d54-chart-2:#f0a95a;--d54-chart-3:#45c89a;--d54-chart-4:#46c6d8;--d54-chart-5:#a78bfa;
  --d54-shadow:0 14px 38px rgba(0,0,0,.25);--d54-shadow-raised:0 24px 64px rgba(0,0,0,.34);
}
html[data-dhe-theme="black"] {
  --d54-bg:#050506;--d54-surface:#0e0e10;--d54-surface-raised:#151517;--d54-surface-muted:#19191c;
  --d54-text:#e9e9ed;--d54-heading:#ffffff;--d54-muted:#a5a5af;--d54-border:#2b2b31;--d54-border-strong:#414149;
  --d54-accent:#8e72e8;--d54-accent-2:#32b8c7;--d54-positive:#55c995;--d54-warning:#dfa24b;--d54-danger:#ed6a6a;
  --d54-chart-1:#8e72e8;--d54-chart-2:#e3a24e;--d54-chart-3:#55c995;--d54-chart-4:#3cc1d1;--d54-chart-5:#d16ea8;
  --d54-shadow:0 14px 38px rgba(0,0,0,.42);--d54-shadow-raised:0 26px 70px rgba(0,0,0,.58);
}
html[data-dhe-theme="emerald"] {
  --d54-bg:#071712;--d54-surface:#0c251d;--d54-surface-raised:#103027;--d54-surface-muted:#14382d;
  --d54-text:#e8f8f1;--d54-heading:#f4fff9;--d54-muted:#9cc5b5;--d54-border:#275345;--d54-border-strong:#39705f;
  --d54-accent:#34b88a;--d54-accent-2:#58c8c1;--d54-positive:#61cf9f;--d54-warning:#d5a04b;--d54-danger:#e87575;
  --d54-chart-1:#34b88a;--d54-chart-2:#e2a34e;--d54-chart-3:#6ad5a8;--d54-chart-4:#50c7cf;--d54-chart-5:#8d80d9;
  --d54-shadow:0 14px 38px rgba(0,0,0,.28);--d54-shadow-raised:0 24px 64px rgba(0,0,0,.38);
}
html[data-dhe-theme="sand"] {
  --d54-bg:#f2ece1;--d54-surface:#fffaf2;--d54-surface-raised:#fffdf8;--d54-surface-muted:#f8f0e4;
  --d54-text:#45382a;--d54-heading:#2f261d;--d54-muted:#786a5a;--d54-border:#ddcdb7;--d54-border-strong:#cbb698;
  --d54-accent:#a9652c;--d54-accent-2:#3e8b82;--d54-positive:#4e8764;--d54-warning:#a96f21;--d54-danger:#b84e4e;
  --d54-chart-1:#a9652c;--d54-chart-2:#d29445;--d54-chart-3:#4e8764;--d54-chart-4:#3e8b82;--d54-chart-5:#7f6aa8;
  --d54-shadow:0 14px 38px rgba(91,66,39,.10);--d54-shadow-raised:0 24px 60px rgba(91,66,39,.15);
}
html[data-dhe-theme="slate"] {
  --d54-bg:#151a22;--d54-surface:#202731;--d54-surface-raised:#262f3b;--d54-surface-muted:#2b3542;
  --d54-text:#e9edf4;--d54-heading:#ffffff;--d54-muted:#aab6c5;--d54-border:#3a4656;--d54-border-strong:#526174;
  --d54-accent:#8295e8;--d54-accent-2:#44b8bc;--d54-positive:#55bd8e;--d54-warning:#daa04e;--d54-danger:#e16f71;
  --d54-chart-1:#8295e8;--d54-chart-2:#e0a251;--d54-chart-3:#55bd8e;--d54-chart-4:#45bac7;--d54-chart-5:#a680d5;
  --d54-shadow:0 14px 38px rgba(0,0,0,.28);--d54-shadow-raised:0 24px 64px rgba(0,0,0,.38);
}

#workspaceView.dhe-enhanced-ready {
  --dhe-enhanced-border:var(--d54-border);--dhe-enhanced-shadow:var(--d54-shadow);--dhe-enhanced-text:var(--d54-heading);
  --dhe-enhanced-muted:var(--d54-muted);--dhe-enhanced-surface:var(--d54-surface);--dhe-enhanced-accent:var(--d54-accent);
  min-height:100vh;background:var(--d54-bg)!important;color:var(--d54-text)!important;
  font-family:Inter,"Segoe UI",Roboto,Arial,sans-serif;
}
#workspaceView.dhe-enhanced-ready .dhe-workspace-main { background:var(--d54-bg)!important; }
.dhe-enhanced-topbar { background:color-mix(in srgb,var(--d54-surface) 94%,transparent)!important;border-color:var(--d54-border)!important;box-shadow:0 6px 24px color-mix(in srgb,var(--d54-shadow) 72%,transparent)!important; }
.dhe-enhanced-title-copy h1,.dhe-enhanced-page-head h2,.dhe-cfo-board-card h3,.dhe-powerbi-modal-card h3 { color:var(--d54-heading)!important; }
.dhe-enhanced-title-copy small,.dhe-enhanced-page-head p,.dhe-cfo-board-card p,.dhe-cfo-board-card small { color:var(--d54-muted)!important; }
.dhe-enhanced-icon-btn,.dhe-enhanced-user,.dhe-enhanced-gear-menu,.dhe-quick-create-menu,.dhe-module-drawer { background:var(--d54-surface)!important;color:var(--d54-text)!important;border-color:var(--d54-border)!important; }
.dhe-enhanced-user { background:var(--d54-surface-muted)!important; }
.dhe-enhanced-avatar,.dhe-enhanced-primary,.dhe-enhanced-quick-create,.dhe-cfo-toolbar button.primary,.dhe-powerbi-modal-actions .primary,.dhe-powerbi-empty .primary { background:var(--d54-accent)!important;color:#fff!important;box-shadow:none!important; }
.dhe-enhanced-launch-card,.dhe-enhanced-function-card,.dhe-report-card,.dhe-enhanced-panel { background:var(--d54-surface)!important;color:var(--d54-text)!important;border-color:var(--d54-border)!important;box-shadow:var(--d54-shadow)!important; }
.dhe-enhanced-launch-card:hover,.dhe-enhanced-function-card:hover,.dhe-report-card:hover { border-color:var(--d54-border-strong)!important;box-shadow:var(--d54-shadow-raised)!important; }
.dhe-enhanced-launch-copy strong,.dhe-enhanced-function-card strong,.dhe-report-card strong { color:var(--d54-heading)!important; }
.dhe-enhanced-launch-copy span,.dhe-enhanced-function-card small,.dhe-report-card small { color:var(--d54-muted)!important; }
.dhe-enhanced-context span,.dhe-enhanced-filter-row button,.dhe-cfo-toolbar button,.dhe-enhanced-panel-head button { background:var(--d54-surface)!important;color:var(--d54-text)!important;border-color:var(--d54-border)!important; }
.dhe-enhanced-gear-menu select,.dhe-module-drawer input,.dhe-powerbi-modal input { background:var(--d54-surface-muted)!important;color:var(--d54-text)!important;border-color:var(--d54-border)!important;color-scheme:inherit; }
.dhe-module-drawer section button,.dhe-quick-create-menu button,.dhe-enhanced-gear-menu button { color:var(--d54-text)!important;border-color:var(--d54-border)!important; }

.dhe-cfo-brief-strip { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 0 18px;border:1px solid var(--d54-border);border-radius:16px;background:var(--d54-surface);box-shadow:var(--d54-shadow);overflow:hidden; }
.dhe-cfo-brief-strip span { min-height:68px;padding:14px 18px;border-right:1px solid var(--d54-border); }
.dhe-cfo-brief-strip span:last-child { border-right:0; }
.dhe-cfo-brief-strip small { display:block;font-size:9px;font-weight:800;letter-spacing:.11em;color:var(--d54-muted); }
.dhe-cfo-brief-strip b { display:block;margin-top:7px;color:var(--d54-heading);font-size:13px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.dhe-cfo-summary-grid { display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:18px; }
.dhe-cfo-summary-grid button { min-height:112px;padding:17px 18px;text-align:left;border:1px solid var(--d54-border);border-radius:16px;background:var(--d54-surface);box-shadow:var(--d54-shadow);cursor:pointer;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease; }
.dhe-cfo-summary-grid button:hover { transform:translateY(-2px);border-color:var(--d54-border-strong);box-shadow:var(--d54-shadow-raised); }
.dhe-cfo-summary-grid span { display:block;color:var(--d54-muted);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase; }
.dhe-cfo-summary-grid b { display:block;margin-top:12px;color:var(--d54-heading);font-size:clamp(20px,1.55vw,28px);line-height:1;font-weight:780;letter-spacing:-.035em; }
.dhe-cfo-summary-grid small { display:block;margin-top:9px;color:var(--d54-muted);font-size:10px; }
.dhe-cfo-primary-grid { display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;margin-bottom:18px;align-items:stretch; }
.dhe-cfo-board-card { min-width:0;border:1px solid var(--d54-border);border-radius:18px;background:var(--d54-surface);box-shadow:var(--d54-shadow);overflow:hidden; }
.dhe-cfo-card-head { min-height:76px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid var(--d54-border); }
.dhe-cfo-card-head.compact { min-height:auto; }
.dhe-cfo-card-head small { display:block;margin-bottom:5px;font-size:9px;font-weight:850;letter-spacing:.12em;color:var(--d54-accent)!important; }
.dhe-cfo-card-head h3 { margin:0;font-size:18px;line-height:1.2;letter-spacing:-.02em; }
.dhe-cfo-card-head p { margin:5px 0 0;font-size:11px;line-height:1.45; }
.dhe-cfo-card-head button,.dhe-powerbi-actions button { min-height:36px;padding:0 12px;border:1px solid var(--d54-border);border-radius:10px;background:var(--d54-surface-muted);color:var(--d54-text);font-size:10px;font-weight:750;cursor:pointer;white-space:nowrap; }
.dhe-chart-stage { position:relative;min-height:300px;padding:8px 14px 12px; }
.dhe-chart-stage.small { min-height:245px; }
.dhe-chart-stage svg { width:100%;height:auto;display:block;overflow:visible; }
.dhe-chart-empty { min-height:230px;display:grid;place-items:center;padding:24px;color:var(--d54-muted);font-size:12px;text-align:center; }
.dhe-chart-legend { display:flex;align-items:center;gap:18px;padding:13px 20px 0;color:var(--d54-muted);font-size:10px;font-weight:750; }
.dhe-chart-legend span:before { content:"";width:9px;height:9px;display:inline-block;margin-right:6px;border-radius:3px;background:currentColor; }
.dhe-chart-legend .series-1 { color:var(--d54-chart-1); }.dhe-chart-legend .series-2 { color:var(--d54-chart-2); }.dhe-chart-legend .series-3 { color:var(--d54-chart-3); }
.dhe-chart-grid-line { stroke:var(--d54-border);stroke-width:1; }.dhe-chart-zero-line { stroke:var(--d54-danger);stroke-width:1.25;stroke-dasharray:4 5; }
.dhe-chart-axis-label,.dhe-chart-legend-label,.dhe-chart-legend-value,.dhe-chart-budget-label { fill:var(--d54-muted);font-family:Inter,"Segoe UI",Arial,sans-serif;font-size:10px; }
.dhe-chart-line { stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke; }
.dhe-chart-point { stroke:var(--d54-surface);stroke-width:2;vector-effect:non-scaling-stroke; }
.dhe-chart-area { opacity:.14; }.dhe-chart-bar { opacity:.94; }.dhe-chart-fill { stroke:none; }
.dhe-chart-series-1 { color:var(--d54-chart-1);stroke:var(--d54-chart-1);fill:var(--d54-chart-1); }
.dhe-chart-series-2 { color:var(--d54-chart-2);stroke:var(--d54-chart-2);fill:var(--d54-chart-2); }
.dhe-chart-series-3 { color:var(--d54-chart-3);stroke:var(--d54-chart-3);fill:var(--d54-chart-3); }
.dhe-chart-series-4 { color:var(--d54-chart-4);stroke:var(--d54-chart-4);fill:var(--d54-chart-4); }
.dhe-chart-series-5 { color:var(--d54-chart-5);stroke:var(--d54-chart-5);fill:var(--d54-chart-5); }
.dhe-chart-donut { fill:none;stroke-width:24;transform:rotate(-90deg);transform-origin:center; }
.dhe-chart-donut-total { fill:var(--d54-heading);font-size:16px;font-weight:800;font-family:Inter,"Segoe UI",Arial,sans-serif; }
.dhe-chart-donut-caption { fill:var(--d54-muted);font-size:9px;font-family:Inter,"Segoe UI",Arial,sans-serif; }
.dhe-cfo-action-card { padding-bottom:12px; }
.dhe-cfo-action-card .dhe-cfo-card-head > b { min-width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:color-mix(in srgb,var(--d54-accent) 12%,var(--d54-surface-muted));color:var(--d54-accent);font-size:16px; }
.dhe-cfo-action-row { width:calc(100% - 24px);min-height:58px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:10px 12px 0;padding:10px 12px;text-align:left;border:1px solid var(--d54-border);border-radius:12px;background:var(--d54-surface-muted);color:var(--d54-text);cursor:pointer; }
.dhe-cfo-action-row span small { display:block;margin-bottom:3px;font-size:8px;font-weight:850;letter-spacing:.1em; }.dhe-cfo-action-row strong { color:var(--d54-heading);font-size:11px; }
.dhe-cfo-action-row > b { min-width:31px;height:31px;display:grid;place-items:center;border-radius:9px;background:var(--d54-surface);color:var(--d54-heading); }
.dhe-cfo-action-row.danger > b { color:var(--d54-danger); }.dhe-cfo-action-row.warning > b { color:var(--d54-warning); }
.dhe-cfo-action-links { display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px; }.dhe-cfo-action-links button { min-height:38px;border:1px solid var(--d54-border);border-radius:10px;background:var(--d54-surface);color:var(--d54-text);font-size:9.5px;font-weight:750;cursor:pointer; }
.dhe-cfo-analytics-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:18px; }
.dhe-chart-meta { display:flex;justify-content:space-between;gap:12px;padding:11px 20px 0;color:var(--d54-muted);font-size:9.5px;font-weight:700; }
.dhe-powerbi-workbench { margin-bottom:28px; }
.dhe-powerbi-actions { display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end; }.dhe-powerbi-actions span { padding:7px 10px;border-radius:999px;background:color-mix(in srgb,var(--d54-warning) 12%,var(--d54-surface-muted));color:var(--d54-warning);font-size:9px;font-weight:800; }.dhe-powerbi-actions span.connected { background:color-mix(in srgb,var(--d54-positive) 12%,var(--d54-surface-muted));color:var(--d54-positive); }
.dhe-powerbi-heads { display:flex;gap:7px;padding:13px 18px;overflow-x:auto;border-bottom:1px solid var(--d54-border); }.dhe-powerbi-heads button { min-height:34px;padding:0 12px;border:1px solid var(--d54-border);border-radius:9px;background:var(--d54-surface-muted);color:var(--d54-muted);font-size:9.5px;font-weight:750;white-space:nowrap;cursor:pointer; }.dhe-powerbi-heads button.active { border-color:var(--d54-accent);background:color-mix(in srgb,var(--d54-accent) 12%,var(--d54-surface));color:var(--d54-accent); }
.dhe-powerbi-canvas { min-height:440px;background:var(--d54-surface-muted); }.dhe-powerbi-canvas iframe { width:100%;height:600px;border:0;background:#fff; }.dhe-powerbi-empty { min-height:440px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:34px;text-align:center;color:var(--d54-text); }.dhe-powerbi-empty h4 { margin:16px 0 7px;color:var(--d54-heading);font-size:20px; }.dhe-powerbi-empty p { max-width:650px;margin:0;color:var(--d54-muted);font-size:12px;line-height:1.6; }.dhe-powerbi-empty > div:last-child { display:flex;gap:9px;margin-top:19px;flex-wrap:wrap;justify-content:center; }.dhe-powerbi-empty button { min-height:40px;padding:0 14px;border:1px solid var(--d54-border);border-radius:10px;background:var(--d54-surface);color:var(--d54-text);font-size:10px;font-weight:750;cursor:pointer; }
.dhe-powerbi-mark { height:62px;display:flex!important;align-items:flex-end;gap:6px;margin:0!important; }.dhe-powerbi-mark i { width:14px;border-radius:4px 4px 2px 2px;background:#f2c811; }.dhe-powerbi-mark i:nth-child(1){height:24px}.dhe-powerbi-mark i:nth-child(2){height:37px}.dhe-powerbi-mark i:nth-child(3){height:50px}.dhe-powerbi-mark i:nth-child(4){height:62px}
.dhe-powerbi-modal { position:fixed;inset:0;z-index:1800;display:grid;place-items:center;padding:24px;background:rgba(2,8,18,.66);backdrop-filter:blur(6px); }.dhe-powerbi-modal[hidden] { display:none!important; }.dhe-powerbi-modal-card { width:min(920px,100%);max-height:calc(100vh - 48px);overflow:auto;border:1px solid var(--d54-border-strong);border-radius:18px;background:var(--d54-surface);color:var(--d54-text);box-shadow:var(--d54-shadow-raised); }.dhe-powerbi-modal-head { display:flex;justify-content:space-between;gap:18px;padding:20px 22px;border-bottom:1px solid var(--d54-border); }.dhe-powerbi-modal-head small { color:var(--d54-accent);font-size:9px;font-weight:850;letter-spacing:.12em; }.dhe-powerbi-modal-head h3 { margin:5px 0 0;font-size:20px; }.dhe-powerbi-modal-head p { margin:6px 0 0;color:var(--d54-muted);font-size:11px; }.dhe-powerbi-modal-head button { width:36px;height:36px;border:1px solid var(--d54-border);border-radius:10px;background:var(--d54-surface-muted);color:var(--d54-text);cursor:pointer; }.dhe-powerbi-url-field { display:block;padding:18px 22px 8px; }.dhe-powerbi-url-field span,.dhe-powerbi-map-grid span { display:block;margin-bottom:7px;color:var(--d54-muted);font-size:9px;font-weight:800;text-transform:uppercase;letter-spacing:.06em; }.dhe-powerbi-url-field input,.dhe-powerbi-map-grid input { width:100%;min-height:42px;padding:0 12px;border:1px solid var(--d54-border);border-radius:10px;background:var(--d54-surface-muted);color:var(--d54-text);outline:none; }.dhe-powerbi-map-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;padding:12px 22px 17px; }.dhe-powerbi-security-note { margin:0 22px;padding:12px 14px;border:1px solid var(--d54-border);border-radius:10px;background:var(--d54-surface-muted);color:var(--d54-muted);font-size:10px;line-height:1.5; }.dhe-powerbi-config-error { min-height:22px;padding:8px 22px 0;color:var(--d54-danger);font-size:10px;font-weight:750; }.dhe-powerbi-modal-actions { display:flex;justify-content:flex-end;gap:9px;padding:16px 22px 20px; }.dhe-powerbi-modal-actions button { min-height:40px;padding:0 16px;border:1px solid var(--d54-border);border-radius:10px;background:var(--d54-surface-muted);color:var(--d54-text);font-weight:750;cursor:pointer; }
html.dhe-modal-open { overflow:hidden; }

@media(max-width:1280px){.dhe-cfo-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.dhe-cfo-primary-grid{grid-template-columns:1fr}.dhe-cfo-action-card{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0}.dhe-cfo-action-card>.dhe-cfo-card-head,.dhe-cfo-action-card>.dhe-cfo-action-links{grid-column:1/-1}.dhe-cfo-analytics-grid{grid-template-columns:1fr 1fr}.dhe-cfo-analytics-grid>:last-child{grid-column:1/-1}}
@media(max-width:860px){.dhe-cfo-brief-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.dhe-cfo-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dhe-cfo-analytics-grid{grid-template-columns:1fr}.dhe-cfo-analytics-grid>:last-child{grid-column:auto}.dhe-powerbi-map-grid{grid-template-columns:1fr}.dhe-powerbi-canvas iframe{height:520px}}
@media(max-width:620px){.dhe-cfo-brief-strip,.dhe-cfo-summary-grid,.dhe-cfo-action-card{grid-template-columns:1fr}.dhe-cfo-brief-strip span{border-right:0;border-bottom:1px solid var(--d54-border)}.dhe-cfo-brief-strip span:last-child{border-bottom:0}.dhe-cfo-card-head{flex-direction:column}.dhe-cfo-toolbar{justify-content:flex-start}.dhe-chart-stage{padding-left:4px;padding-right:4px}.dhe-powerbi-modal{padding:10px}.dhe-powerbi-empty{padding:24px 14px}.dhe-powerbi-canvas iframe{height:470px}}


/* DheLoop Accounting V5.5 — interactive controls, report preferences and real management filters */
.dhe-enhanced-action-toast{position:fixed;right:24px;bottom:24px;z-index:100000;max-width:min(420px,calc(100vw - 32px));padding:13px 17px;border-radius:14px;background:var(--d54-text,#102342);color:var(--d54-surface,#fff);box-shadow:0 18px 48px rgba(15,35,66,.22);font-weight:750;opacity:0;transform:translateY(12px);pointer-events:none;transition:.2s ease}
.dhe-enhanced-action-toast.show{opacity:1;transform:translateY(0)}
.dhe-enhanced-action-toast[data-tone="success"]{background:var(--d54-success,#087f5b)}
.dhe-enhanced-action-toast[data-tone="error"]{background:var(--d54-danger,#c92a2a)}
.dhe-enhanced-filter-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.dhe-enhanced-filter-row label{display:grid;gap:4px;min-width:150px;padding:7px 12px;border:1px solid var(--d54-border);border-radius:14px;background:var(--d54-surface)}
.dhe-enhanced-filter-row label span{font-size:10px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:var(--d54-muted)}
.dhe-enhanced-filter-row select{width:100%;border:0;background:transparent;color:var(--d54-text);font:inherit;font-weight:750;outline:none;cursor:pointer}
.dhe-management-filter-status{margin-bottom:14px;padding:10px 12px;border-radius:12px;background:var(--d54-soft);color:var(--d54-muted);font-size:12px;font-weight:750}
.dhe-report-actions button.active{background:var(--d54-primary);border-color:var(--d54-primary);color:#fff;box-shadow:0 8px 20px color-mix(in srgb,var(--d54-primary) 25%,transparent)}
.dhe-report-search b{margin-left:auto;padding:6px 10px;border-radius:999px;background:var(--d54-soft);color:var(--d54-muted);font-size:11px;white-space:nowrap}
.dhe-report-grid{align-items:stretch}
.dhe-report-card-shell{position:relative;min-width:0}
.dhe-report-card-shell .dhe-report-card{width:100%;height:100%;padding-right:52px}
.dhe-report-favorite{position:absolute;right:14px;top:14px;z-index:2;width:34px;height:34px;border:1px solid var(--d54-border);border-radius:50%;background:var(--d54-surface);color:var(--d54-muted);font-size:19px;line-height:1;cursor:pointer;transition:.18s ease}
.dhe-report-favorite:hover,.dhe-report-favorite.active{transform:translateY(-1px);border-color:var(--d54-warning,#e6a700);color:var(--d54-warning,#e6a700);background:color-mix(in srgb,var(--d54-warning,#e6a700) 10%,var(--d54-surface))}
.dhe-report-empty{grid-column:1/-1;padding:28px;border:1px dashed var(--d54-border);border-radius:18px;background:var(--d54-surface);color:var(--d54-muted);text-align:center;font-weight:700}
#workspaceView [disabled]{cursor:not-allowed!important;filter:saturate(.65);opacity:.58}
@media(max-width:760px){.dhe-enhanced-filter-row{width:100%}.dhe-enhanced-filter-row label{min-width:0;flex:1 1 100%}.dhe-enhanced-action-toast{right:16px;bottom:16px}.dhe-report-search b{display:none}}
